Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Namespace: microsoft.graph
Importante
As APIs na versão /beta no Microsoft Graph estão sujeitas a alterações. Não há suporte para o uso dessas APIs em aplicativos de produção. Para determinar se uma API está disponível na v1.0, use o seletor Versão.
Criar e enviar uma notificação direcionada a um usuário por meio do Microsoft Graph. A notificação é armazenada no armazenamento do feed de notificação do Microsoft Graph e é enviada a todos os clientes de aplicativo em todos os pontos de extremidade de dispositivo aos quais o usuário está conectado.
Essa API está disponível nas seguintes implantações de nuvem nacional.
| Serviço global | Governo dos EUA L4 | US Government L5 (DOD) | China operada pela 21Vianet |
|---|---|---|---|
| ✅ | ❌ | ❌ | ❌ |
Permissões
Escolha a(s) permissão(s) marcada(s) como menos privilegiada(s) para essa API. Use uma permissão ou permissões com privilégios mais altos 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 com privilégios mais elevados |
|---|---|---|
| Delegado (conta corporativa ou de estudante) | Notifications.ReadWrite.CreatedByApp | Indisponível. |
| Delegado (conta pessoal da Microsoft) | Notifications.ReadWrite.CreatedByApp | Indisponível. |
| Aplicativo | Sem suporte. | Sem suporte. |
Solicitação HTTP
POST /me/notifications/
Cabeçalhos de solicitação
| Nome | Descrição |
|---|---|
| Authorization | O cabeçalho de autorização é usado para passar as credenciais da parte chamadora. {token} de portador. Obrigatório. |
| X-UNS-ID | A UserNotificationSubscriptionId que é retornada pelo serviço de notificação do Microsoft Graph após a criação de uma assinatura e é usada para direcionar o usuário específico. Obrigatório. |
| Content-type | application/json. Obrigatório. |
Corpo da solicitação
No corpo da solicitação, forneça uma representação JSON de um objeto de notificação .
Resposta
Se for bem-sucedido, esse método retornará um código de 201 Created resposta que indica que a notificação foi criada e armazenada com êxito. Em seguida, a notificação é distribuída para todos os pontos de extremidade especificados com uma assinatura válida.
A tabela a seguir lista os possíveis códigos de erro e resposta que podem ser retornados.
| Código de erro | Descrição |
|---|---|
| HttpStatusCode.BadRequest | O corpo é uma matriz (não há suporte para várias notificações). |
| HttpStatusCode.BadRequest | O corpo não corresponde ao contrato da API. |
| HttpStatusCode.Forbidden | O chamador está na lista de bloqueados. |
| HttpStatusCode.MethodNotAllowed | Não há suporte para o método HTTP usado. |
| HttpStatusCode.BadRequest | Cabeçalhos sem suporte estão presentes na solicitação. Não há suporte para dois cabeçalhos: if-modified-since If-Range |
| HttpStatusCode.UnsupportedMediaType | O cabeçalho Content-Encoding está presente e tem valores de algoritmo de compactação diferentes de Deflate ou Gzip. |
| HttpStatusCode.BadRequest | Carga inválida. |
| HttpStatusCode.Forbidden | O chamador não está autorizado a agir em nome do usuário ou enviar uma notificação ao usuário. |
| HttpStatusCode.Unauthorized | O corpo da solicitação contém tipos de dados de atividade inválidos. |
| HttpStatusCode.OK | Atividade criada com êxito. |
| HttpStatusCode.NotAcceptable | A solicitação foi limitada ou o servidor está ocupado. |
Exemplo
Solicitação
O exemplo a seguir mostra uma solicitação.
POST https://graph.microsoft.com/beta/me/notifications/
Content-type: application/json
{
"targetHostName": "graphnotifications.sample.windows.com",
"appNotificationId": "testDirectToastNotification",
"expirationDateTime": "2019-10-30T23:59:00.000Z",
"payload": {
"visualContent": {
"title": "Hello World!",
"body": "Notifications are Great!"
}
},
"targetPolicy": {
"platformTypes": [
"windows",
"ios",
"android"
]
},
"priority": "High",
"groupName": "TestGroup",
"displayTimeToLive": "60"
}
Resposta
O exemplo a seguir mostra a resposta correspondente.
HTTP/1.1 201
client-request-id: 71e62feb-8d72-4912-8b2c-4cee9d89e781
content-length: 356
content-type: application/json
location: https://graph.microsoft.com/beta/me/activities/119081f2-f19d-4fa8-817c-7e01092c0f7d
request-id: 71e62feb-8d72-4912-8b2c-4cee9d89e781
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#users('graphnotify%40contoso.com')/notifications/$entity",
"displayTimeToLive": 59,
"expirationDateTime": "2019-10-28T22:05:36.25Z",
"groupName": "TestGroup",
"id": "119081f2-f19d-4fa8-817c-7e01092c0f7d",
"priority": "High",
"payload": {
"visualContent": {
"title": "Hello World!",
"body": "Notifications are Great!"
}
}
}