chats: getAllMessages
Espacio de nombres: microsoft.graph
Obtener todos los mensajes de todos los chats en los que un usuario participa, incluidos los chats individuales, los chats en grupo y los chats de reuniones.
Nota: Se trata de una API de uso medido que admite los
model=A
modelos de pago ymodel=B
. Para obtener más información, consulte Modelos de pago. Si no especifica un modelo de pago en la consulta, se usará el modo de evaluación predeterminado.En función del modelo de pago que elija, también puede ser necesaria una licencia.
Esta API está disponible en las siguientes implementaciones nacionales de nube.
Servicio global | Gobierno de EE. UU. L4 | Us Government L5 (DOD) | China operada por 21Vianet |
---|---|---|---|
✅ | ❌ | ❌ | ❌ |
Permissions
Elija el permiso o los permisos marcados como con privilegios mínimos para esta API. Use un permiso o permisos con privilegios superiores solo si la aplicación lo requiere. Para obtener más información sobre los permisos delegados y de aplicación, consulte Tipos de permisos. Para obtener más información sobre estos permisos, consulte la referencia de permisos.
Tipo de permiso | Permisos con privilegios mínimos | Permisos con privilegios más altos |
---|---|---|
Delegado (cuenta profesional o educativa) | No admitida. | No admitida. |
Delegado (cuenta personal de Microsoft) | No admitida. | No admitida. |
Aplicación | Chat.Read.All | Chat.ReadWrite.All |
Solicitud HTTP
GET /users/{id | user-principal-name}/chats/getAllMessages
Parámetros de consulta opcionales
Puede usar el parámetro de consulta model
, que admite los valores A
y B
, en función del modelo de pago y licenciaspreferido, tal como se indica en los ejemplos siguientes.
GET /users/{id | user-principal-name}/chats/getAllMessages?model=A
GET /users/{id | user-principal-name}/chats/getAllMessages?model=B
Si no se especifica ningún model
parámetro, se usa el modo de evaluación .
Este método también admite parámetros de intervalo de fechas para personalizar la respuesta, como se muestra en el ejemplo siguiente.
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 admite el parámetro de $filter
consulta. En la tabla siguiente se enumeran ejemplos.
Escenario | parámetro $filter |
Posibles valores |
---|---|---|
Obtención de mensajes enviados por tipo de identidad de usuario | $filter=from/user/userIdentityType eq '{teamworkUserIdentityType}' | aadUser, onPremiseAadUser, anonymousGuest, federatedUser, personalMicrosoftAccountUser, skypeUser, phoneUser |
Obtención de mensajes enviados por tipo de aplicación | $filter=from/application/applicationIdentityType eq '{teamworkApplicationIdentity}' | aadApplication, bot, tenantBot, office365Connector, outgoingWebhook |
Obtención de mensajes enviados por id. de usuario | $filter=from/user/id eq '{oid}' | |
Obtener mensajes de control (evento del sistema) | $filter=messageType eq 'systemEventMessage' | |
Excluir mensajes de control (evento del sistema) | $filter=messageType ne 'systemEventMessage' |
Nota: Estas cláusulas de filtro se pueden combinar mediante el
or
operador . Una cláusula de filtro puede aparecer más de una vez en una consulta y puede filtrar por un valor diferente cada vez que aparezca dentro de la consulta.
Encabezados de solicitud
Encabezado | Valor |
---|---|
Authorization | {token} de portador. Obligatorio. Obtenga más información sobre la autenticación y la autorización. |
Respuesta
Si se ejecuta correctamente, este método devuelve un código de respuesta 200 OK
y una lista de chatMessages en el cuerpo de la respuesta.
Errores
Esta API tiene requisitos de licencia y pago. Si no se cumplen estos requisitos, la API devuelve uno de los siguientes errores.
Ejemplo de tipo de error | Código de estado | Ejemplo de mensaje de error |
---|---|---|
No se cumple el requisito de licencia de E5 | 402 (Pago obligatorio) |
"...needs a valid license to access this API..."
"...tenant needs a valid license to access this API..."
|
Se superó la capacidad de evaluación | 402 (Pago obligatorio) | "...evaluation mode capacity has been exceeded. Use a valid billing model..." |
Ejemplo
Solicitud
GET https://graph.microsoft.com/v1.0/users/0b4f1cf6-54c8-4820-bbb7-2a1f4257ade5/chats/getAllMessages?$top=2
Respuesta
Nota: Se puede acortar el objeto de respuesta que se muestra aquí para mejorar la legibilidad.
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": []
}
]
}