Compartir a través de


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 y model=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": []
        }
    ]
}

Límites específicos del servicio de Microsoft Graph