chats: getAllMessages
Namespace: microsoft.graph
Obtenha todas mensagens de todos os chats em que um usuário é participante, incluindo chats individuais, chats em grupo e chats de reunião.
Nota: Esta é uma API com tráfego limitado que suporta os
model=A
modelos de pagamento emodel=B
. Para obter detalhes, veja Modelos de pagamento. Se não especificar um modelo de pagamento na consulta, será utilizado o modo de avaliação predefinido.Dependendo do modelo de pagamento que escolher, também poderá ser necessária uma licença.
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) | Sem suporte. | Sem suporte. |
Delegado (conta pessoal da Microsoft) | Sem suporte. | Sem suporte. |
Aplicativo | Chat.Read.All | Chat.ReadWrite.All |
Solicitação HTTP
GET /users/{id | user-principal-name}/chats/getAllMessages
Parâmetros de consulta opcionais
Você pode usar o model
parâmetro de consulta, que suporta os valores A
e B
, com base no preferido modelo de licenciamento e pagamento, como mostrado nos seguintes exemplos.
GET /users/{id | user-principal-name}/chats/getAllMessages?model=A
GET /users/{id | user-principal-name}/chats/getAllMessages?model=B
Se não for especificado nenhum model
parâmetro, será utilizado o modo de avaliação .
Este método também suporta parâmetros de intervalo de datas para personalizar a resposta, conforme mostrado no exemplo seguinte.
GET /users/{id}/chats/getAllMessages?$top=50&$filter=lastModifiedDateTime gt 2020-06-04T18:03:11.591Z and lastModifiedDateTime lt 2020-06-05T21:00:09.413Z
Este método suporta o $filter
parâmetro de consulta. A tabela seguinte lista exemplos.
Cenário | Parâmetro $filter |
Valores possíveis |
---|---|---|
Obter mensagens enviadas por tipo de identidade de utilizador | $filter=from/user/userIdentityType eq '{teamworkUserIdentityType}' | aadUser, onPremiseAadUser, anonymousGuest, federatedUser, personalMicrosoftAccountUser, skypeUser, phoneUser |
Obter mensagens enviadas por tipo de aplicação | $filter=from/application/applicationIdentityType eq '{teamworkApplicationIdentity}' | aadApplication, bot, tenantBot, office365Connector, outgoingWebhook |
Obter mensagens enviadas pelo ID de utilizador | $filter=from/user/id eq '{oid}' | |
Obter mensagens de controlo (evento do sistema) | $filter=messageType eq "systemEventMessage" | |
Excluir mensagens de controlo (evento do sistema) | $filter=messageType ne "systemEventMessage" |
Nota: Estas cláusulas de filtro podem ser associadas com o
or
operador . Uma cláusula de filtro pode aparecer mais do que uma vez numa consulta e pode filtrar um valor diferente sempre que for apresentada na consulta..
Cabeçalhos de solicitação
Cabeçalho | Valor |
---|---|
Autorização | {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
Resposta
Se bem-sucedido, este método retorna um código de resposta 200 OK
e uma coleção de objetos event no corpo da resposta.
Erros
Esta API tem requisitos de licenciamento e pagamento. Se estes requisitos não forem cumpridos, a API devolve um dos seguintes erros.
Tipo de erro de exemplo | Código de status | Mensagem de erro de exemplo |
---|---|---|
Requisito de licença E5 não atendido | 402 (Pagamento Obrigatório) |
"...needs a valid license to access this API..."
"...tenant needs a valid license to access this API..."
|
Capacidade de avaliação excedida | 402 (Pagamento Obrigatório) | "...evaluation mode capacity has been exceeded. Use a valid billing model..." |
Exemplo
Solicitação
GET https://graph.microsoft.com/v1.0/users/0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5/chats/getAllMessages?$top=2
Resposta
Observação: o objeto de resposta mostrado aqui pode ser encurtado para legibilidade.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(chatMessage)",
"@odata.count": 2,
"@odata.nextLink": "https://graph.microsoft.com/v1.0/users('0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5')/chats/getallMessages?$top=2&$skiptoken=U2tpcFZhbHVlPTIjTWFpbGJveEZvbGRlcj1NYWlsRm9sZGVycy9UZWFtc01lc3NhZ2VzRGF0YQ%3d%3d",
"value": [
{
"@odata.type": "#microsoft.graph.chatMessage",
"id": "1621973534864",
"replyToId": null,
"etag": "1621973534864",
"messageType": "message",
"createdDateTime": "2021-05-25T20:12:14.864Z",
"lastModifiedDateTime": "2021-05-25T20:12:14.864Z",
"lastEditedDateTime": null,
"deletedDateTime": null,
"subject": null,
"summary": null,
"chatId": "19:3c9e92a344704332bbf5bda58f4d37b1@thread.v2",
"importance": "normal",
"locale": "en-us",
"webUrl": null,
"channelIdentity": null,
"policyViolation": null,
"eventDetail": null,
"from": {
"application": null,
"device": null,
"user": {
"id": "0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5",
"displayName": "user1 a",
"userIdentityType": "aadUser"
}
},
"body": {
"contentType": "text",
"content": "Hello user2, user 3"
},
"attachments": [],
"mentions": [],
"reactions": []
},
{
"@odata.type": "#microsoft.graph.chatMessage",
"id": "1622762567488",
"replyToId": null,
"etag": "1622762567488",
"messageType": "message",
"createdDateTime": "2021-06-03T23:22:47.488Z",
"lastModifiedDateTime": "2021-06-03T23:22:47.488Z",
"lastEditedDateTime": null,
"deletedDateTime": null,
"subject": null,
"summary": null,
"chatId": "19:0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5_0d7c63d3-1306-4eec-8f21-588a70fb6ef1@unq.gbl.spaces",
"importance": "normal",
"locale": "en-us",
"webUrl": null,
"channelIdentity": null,
"policyViolation": null,
"eventDetail": null,
"from": {
"application": null,
"device": null,
"user": {
"id": "0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5",
"displayName": "user1 a",
"userIdentityType": "aadUser"
}
},
"body": {
"contentType": "text",
"content": "hi user2"
},
"attachments": [],
"mentions": [],
"reactions": []
}
]
}
Conteúdo relacionado
Limites de limitação específicos do serviço do Microsoft Graph