trabalho em equipa: sendActivityNotificationToRecipients

Namespace: microsoft.graph

Enviar notificações do feed de atividades para vários utilizadores, em massa.

Para obter mais informações, veja Enviar notificações de atividade do Teams.

Esta API está disponível nas seguintes implementações de cloud nacionais.

Serviço global US Government L4 US Government L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a permissão ou permissões marcadas como menos privilegiadas para esta API. Utilize uma permissão ou permissões com privilégios mais elevados apenas se a sua aplicação o exigir. Para obter detalhes sobre as permissões delegadas e de aplicação, veja Tipos de permissão. Para saber mais sobre estas permissões, veja a referência de permissões.

Tipo de permissão Permissões com menos privilégios Permissões com privilégios superiores
Delegado (conta corporativa ou de estudante) TeamsActivity.Send Indisponível.
Delegado (conta pessoal da Microsoft) Sem suporte. Sem suporte.
Application TeamsActivity.Send.User TeamsActivity.Send

Nota: A TeamsActivity.Send.User permissão utiliza o consentimento específico do recurso. As permissões RSC dizem respeito aos destinatários individuais no payload.

Solicitação HTTP

POST /teamwork/sendActivityNotificationToRecipients

Cabeçalhos de solicitação

Nome Descrição
Autorização {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização.
Content-Type application/json. Obrigatório.

Nota: o token fornecido tem de estar, pelo menos, a 45 minutos da expiração. A chamada à API devolverá uma 412 Precondition Failed resposta se o token expirar dentro de 45 minutos.

Corpo da solicitação

No corpo do pedido, forneça uma representação JSON dos parâmetros.

A tabela a seguir mostra os parâmetros que podem ser usados com esta ação.

Parâmetro Tipo Descrição
topic teamworkActivityTopic O tópico da notificação. Especifica o recurso que está a ser falado.
activityType Cadeia de caracteres O tipo de atividade tem de ser declarado no manifesto da aplicação Teams, exceto no systemDefaulttipo de atividade Reservada, que fornece texto de forma livre na Actor+Reason linha da notificação.
chainId Int64 Opcional. O ID da cadeia da notificação. Utilizado para substituir uma notificação anterior. Utilize o mesmo chainId nos pedidos subsequentes para substituir a notificação anterior.
previewText itemBody O texto de pré-visualização da notificação. O Microsoft Teams só mostra os primeiros 150 carateres.
templateParameters Coleção keyValuePair Os valores das variáveis de modelo definidas na entrada do feed de atividades correspondente ao activityType no manifesto da aplicação Teams.
teamsAppId String Opcional. O ID da aplicação Teams da aplicação Teams associada à notificação. Utilizado para desambiguar aplicações instaladas quando são instaladas várias aplicações com o mesmo ID da aplicação Microsoft Entra ID para o mesmo utilizador destinatário. Evite partilhar IDs da aplicação Microsoft Entra ID entre aplicações do Teams.
destinatários teamworkNotificationRecipient collection Destinatários da notificação. Apenas os destinatários do tipo aadUserNotificationRecipient são suportados. Existe um limite superior de 100 destinatários num único pedido.

O recurso seguinte é suportado ao definir o source valor da propriedade do tópico como entityUrl:

Resposta

Se tiver êxito, esta ação retornará um código de resposta 202 Accepted.

Exemplos

Exemplo 1: Notificar vários utilizadores sobre pedidos de aprovação financeira pendentes

O exemplo seguinte mostra como enviar uma notificação do feed de atividades a vários utilizadores em massa. Este exemplo notifica vários intervenientes sobre pedidos de aprovação financeira pendentes.

Solicitação

POST https://graph.microsoft.com/v1.0/teamwork/sendActivityNotificationToRecipients
Content-Type: application/json

{
    "topic": {
        "source": "entityUrl",
        "value": "https://graph.microsoft.com/v1.0/appCatalogs/teamsApps/{teamsAppId}"
    },
    "activityType": "pendingFinanceApprovalRequests",
    "previewText": {
        "content": "Internal spending team has a pending finance approval requests"
    },
    "recipients": [
    	{
        	"@odata.type": "microsoft.graph.aadUserNotificationRecipient",
        	"userId": "569363e2-4e49-4661-87f2-16f245c5d66a"
    	},
    	{
        	"@odata.type": "microsoft.graph.aadUserNotificationRecipient",
        	"userId": "ab88234e-0874-477c-9638-d144296ed04f"
    	},
    	{
        	"@odata.type": "microsoft.graph.aadUserNotificationRecipient",
        	"userId": "01c64f53-69aa-42c7-9b7f-9f75195d6bfc"
    	}
    ],
    "templateParameters": [
        {
            "name": "pendingRequestCount",
            "value": "5"
        }
    ] 
}

Resposta

HTTP/1.1 202 Accepted

Exemplo 2: Notificar vários utilizadores sobre um evento através de um tópico personalizado

Se quiser associar um aspeto que não seja representado pelo Microsoft Graph ou personalizar o nome, pode definir a origem do topic para text e transmitir um valor personalizado para o mesmo. o webUrl é necessário ao utilizar topic a origem como text.

Solicitação

POST https://graph.microsoft.com/v1.0/teamwork/sendActivityNotificationToRecipients
Content-Type: application/json

{
    "topic": {
        "source": "text",
        "value": "Deployment Approvals Channel",
        "webUrl": "https://teams.microsoft.com/l/message/19:448cfd2ac2a7490a9084a9ed14cttr78c@thread.skype/1605223780000?tenantId=c8b1bf45-3834-4ecf-971a-b4c755ee677d&groupId=d4c2a937-f097-435a-bc91-5c1683ca7245&parentMessageId=1605223771864&teamName=Approvals&channelName=Azure%20DevOps&createdTime=1605223780000"
    },
    "activityType": "deploymentApprovalRequired",
    "previewText": {
        "content": "New deployment requires your approval"
    },
    "templateParameters": [
        {
            "name": "deploymentId",
            "value": "6788662"
        }
    ],
    "recipients": [
    	{
        	"@odata.type": "microsoft.graph.aadUserNotificationRecipient",
        	"userId": "569363e2-4e49-4661-87f2-16f245c5d66a"
    	},
    	{
        	"@odata.type": "microsoft.graph.aadUserNotificationRecipient",
        	"userId": "ab88234e-0874-477c-9638-d144296ed04f"
    	},
    	{
        	"@odata.type": "microsoft.graph.aadUserNotificationRecipient",
        	"userId": "01c64f53-69aa-42c7-9b7f-9f75195d6bfc"
    	}
    ]
}

Resposta

HTTP/1.1 202 Accepted