trabalho em equipe: sendActivityNotificationToRecipients

Namespace: microsoft.graph

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

Para obter mais informações, confira o envio de notificações de atividade do Teams.

Essa API está disponível nas seguintes implantações nacionais de nuvem.

Serviço global Governo dos EUA L4 GOVERNO DOS EUA L5 (DOD) China operada pela 21Vianet

Permissões

Escolha a permissão ou as permissões marcadas como menos privilegiadas para essa API. Use uma permissão ou permissões privilegiadas mais altas somente se o aplicativo exigir. Para obter detalhes sobre permissões delegadas e de aplicativo, consulte Tipos de permissão. Para saber mais sobre essas permissões, consulte a referência de permissões.

Tipo de permissão Permissões menos privilegiadas Permissões privilegiadas mais altas
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 usa o consentimento específico do recurso. As permissões RSC pertencem aos destinatários individuais na carga.

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.

Observação: o token fornecido deve estar a pelo menos 45 minutos da expiração. A chamada de API retornará uma 412 Precondition Failed resposta se o token expirar dentro de 45 minutos.

Corpo da solicitação

No corpo da solicitação, 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á sendo falado.
activityType Cadeia de caracteres O tipo de atividade. Os tipos de atividade devem ser declarados no manifesto do aplicativo teams.
chainId Int64 Opcional. A ID da cadeia da notificação. Usado para substituir uma notificação anterior. Use o mesmo chainId em solicitações subsequentes para substituir a notificação anterior.
previewText itemBody O texto de visualização da notificação. O Microsoft Teams mostra apenas os primeiros 150 caracteres.
Templateparameters Coleção keyValuePair Os valores das variáveis de modelo definidas na entrada do feed de atividade correspondente ao activityType no manifesto do aplicativo teams.
teamsAppId String Opcional. A ID do aplicativo Teams do aplicativo Teams associada à notificação. Usado para desambiguar aplicativos instalados quando vários aplicativos com o mesmo Microsoft Entra ID ID do aplicativo são instalados para o mesmo usuário destinatário. Evite compartilhar Microsoft Entra ID IDs de aplicativo entre aplicativos do Teams.
destinatários coleção teamworkNotificationRecipient Destinatários da notificação. Há suporte apenas para destinatários do tipo aadUserNotificationRecipient . Há um limite superior de 100 destinatários em uma única solicitação.

O recurso a seguir tem suporte 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 usuários sobre solicitações de aprovação de financiamento pendentes

O exemplo a seguir mostra como enviar uma notificação de feed de atividades para vários usuários em massa. Este exemplo notifica vários stakeholders sobre solicitações de aprovação de financiamento 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 usuários sobre um evento usando um tópico personalizado

Se você quiser vincular um aspecto que não seja representado pelo Microsoft Graph ou quiser personalizar o nome, você poderá definir a origem do topic para text e passar um valor personalizado para ele. WebUrl é necessário ao usar 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