chatMessage: delta
Namespace: microsoft.graph
Recupere a lista de mensagens (sem as respostas) em um canal de uma equipe. Usando a consulta Delta, você pode obter mensagens novas ou atualizadas em um canal.
Observação: Delta retornará apenas as mensagens dos últimos oito meses. Você pode usar GET /teams/{team-id}/channels/{channel-id}/messages para recuperar mensagens mais antigas.
A consulta Delta é compatível tanto com sincronização completa que recupera todos as mensagens num canal especificado quanto com a sincronização incremental que recupera as mensagens que foram adicionadas ou alteradas no canal desde a última sincronização. Normalmente, você faria uma sincronização total inicial e, logo depois, obteria periodicamente alterações incrementais para esse modo de exibição de mensagens.
Para obter as respostas de uma mensagem, utilize use a operação listar respostas da mensagem ou a operação obter resposta da mensagem.
Uma solicitação GET com a função delta traz como resultado uma destas opções:
- Uma
@odata.nextLink
(que contém uma URL com uma chamada de função delta e umaskipToken
) ou - Uma
@odata.deltaLink
(que contém uma URL com uma chamada de função delta edeltaToken
).
Os tokens de estado são opacos para o cliente. Para continuar com uma rodada de controle de alterações, copie e aplique a @odata.nextLink
URL ou @odata.deltaLink
retornada da última solicitação GET para a próxima chamada de função delta para a mesma exibição de calendário. Um @odata.deltaLink
retornado em uma resposta significa que a fase atual do rastreamento de alterações está concluída. Você pode salvar e usar a @odata.deltaLink
URL quando começar a recuperar mais alterações (mensagens alteradas ou postadas após a aquisição @odata.deltaLink
).
Para obter mais informações, consulte a documentação da consulta Delta.
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) | ChannelMessage.Read.All | Group.Read.All, Group.ReadWrite.All |
Delegado (conta pessoal da Microsoft) | Sem suporte. | Sem suporte. |
Application | ChannelMessage.Read.Group | ChannelMessage.Read.All, Group.Read.All, Group.ReadWrite.All |
Observação
A permissão ChannelMessage.Read.Group usa o consentimento específico do recurso.
Solicitação HTTP
GET /teams/{team-id}/channels/{channel-id}/messages/delta
Parâmetros de consulta
O controle de alterações nas mensagens de canal gera uma série de uma ou mais chamadas de função delta. Se você usar qualquer parâmetro de consulta (diferente de $deltatoken
e $skiptoken
), especifique-o na primeira solicitação delta. O Microsoft Graph codifica automaticamente todos os parâmetros especificados na parte do token da URL @odata.nextLink
ou @odata.deltaLink
fornecida na resposta.
Você só precisa especificar uma vez antecipadamente os parâmetros de consulta desejados.
Em solicitações subsequentes, copie e aplique a URL @odata.nextLink
ou @odata.deltaLink
da resposta anterior, já que essa URL inclui os parâmetros codificados desejados.
Parâmetro de consulta | Tipo | Descrição |
---|---|---|
$deltatoken |
string | Um token de estado retornado na URL @odata.deltaLink da chamada de função delta anterior, indicando a conclusão daquela série de controle de alterações. Salve e aplique toda a URL @odata.deltaLink , incluindo esse token na primeira solicitação da próxima série de controle de alterações desse conjunto. |
$skiptoken |
string | Um token de estado retornado na URL@odata.nextLink da chamada de função delta anterior indicando que há mais alterações a serem controladas. |
Parâmetros de consulta OData opcionais
Os seguintes parâmetros de consulta OData são compatível com esta API:
-
$top
representa o número máximo de mensagens a serem buscadas em uma chamada. O limite máximo é 50. -
$skip
representa quantas mensagens ignorar no início da lista. -
$filter
permite retornar mensagens que atendem a certos critérios. A única propriedade que permite a filtragem élastModifiedDateTime
, e somente os operadores gt são compatíveis. Por exemplo,../messages/delta?$filter=lastModifiedDateTime gt 2019-02-27T07:13:28.000z
irá buscar qualquer cadeia de resposta (cada mensagem de postagem de canal e mensagens de resposta associadas)criada ou alterada após a data e hora especificada. -
$expand
permite expandir propriedades para cada mensagem de canal. Apenas respostas são suportadas. Se uma mensagem de canal contiver mais de 1000 respostas,replies@odata.nextLink
será fornecida para paginação.
Observação: para o parâmetro de consulta
$expand
, consulte Listar Mensagens do Canal.
Cabeçalhos de solicitação
Cabeçalho | Valor |
---|---|
Autorização | {token} de portador. Obrigatório. Saiba mais sobre autenticação e autorização. |
Corpo da Solicitação
Não forneça um corpo de solicitação para esse método.
Resposta
Se bem sucedido, este método retorna um código de resposta 200 OK
e uma coleção de objetos chatMessage no corpo da resposta. A resposta também inclui uma URL @odata.nextLink
ou uma URL @odata.deltaLink
.
Exemplos
Exemplo 1: sincronização inicial
O exemplo a seguir mostra uma série de três solicitações para sincronizar as mensagens num dado canal. Há cinco mensagens no canal.
- Etapa 1:solicitação inicial e resposta.
- Etapa 2:segunda solicitação e resposta
- Etapa 3: terceira solicitação e resposta final.
Para economizar tempo, as respostas de exemplo exibem apenas um subconjunto das propriedades para um evento. Em uma chamada real, a maior parte das propriedades dos eventos são retornadas.
Consulte também o que você faz para recuperar alterações adicionais.
Solicitação inicial
Neste exemplo, as mensagens do canal estão sendo sincronizadas pela primeira vez, portanto a solicitação de sincronização inicial não inclui nenhum token de estado. Esta rodada retorna todos os eventos nessa exibição de calendário.
A solicitação especifica o cabeçalho de solicitação opcional, odata.top, retornando 2 eventos de cada vez.
GET https://graph.microsoft.com/v1.0/teams/fbe2bf47-16c8-47cf-b4a5-4b9b187c508b/channels/19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2/messages/delta?$top=2
Resposta inicial da solicitação
A resposta inclui duas mensagens e um @odata.nextLink
cabeçalho de resposta com um skipToken
. A URL @odata.nextLink
indica que há mais mensagens na pasta a serem obtidas.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(chatMessage)",
"@odata.nextLink": "https://graph.microsoft.com/v1.0/teams/fbe2bf47-16c8-47cf-b4a5-4b9b187c508b/channels/19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2/messages/delta?$skiptoken=-FG3FPHv7HuyuazNLuy3eXlzQGbEjYLUsW9-pYkmXgn5KGsaOwrCoor2W23dGNNM1KtAX4AyvpFQNVsBgsEwUOX9lw8x9zDumgJy-C-UbjZLlZDQACyC9FyrVelZus9n.--rshdLwy_WBFJd8anPXJPbSUtUD7r3V4neB5tcrG58",
"value": [
{
"@odata.type": "#microsoft.graph.chatMessage",
"replyToId": null,
"etag": "1606515483514",
"messageType": "message",
"createdDateTime": "2020-11-27T22:18:03.514Z",
"lastModifiedDateTime": "2020-11-27T22:18:03.514Z",
"lastEditedDateTime": null,
"deletedDateTime": null,
"subject": null,
"summary": null,
"chatId": null,
"importance": "normal",
"locale": "en-us",
"webUrl": "https://teams.microsoft.com/l/message/19%3A4a95f7d8db4c4e7fae857bcebe0623e6%40thread.tacv2/1606515483514?groupId=fbe2bf47-16c8-47cf-b4a5-4b9b187c508b&tenantId=2432b57b-0abd-43db-aa7b-16eadd115d34&createdTime=1606515483514&parentMessageId=1606515483514",
"policyViolation": null,
"eventDetail": null,
"id": "1606515483514",
"from": {
"application": null,
"device": null,
"conversation": null,
"user": {
"@odata.type": "#microsoft.graph.teamworkUserIdentity",
"id": "8ea0e38b-efb3-4757-924a-5f94061cf8c2",
"displayName": "Robin Kline",
"userIdentityType": "aadUser",
"tenantId": "e61ef81e-8bd8-476a-92e8-4a62f8426fca"
}
},
"body": {
"contentType": "text",
"content": "Test"
},
"channelIdentity": {
"teamId": "fbe2bf47-16c8-47cf-b4a5-4b9b187c508b",
"channelId": "19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2"
},
"attachments": [],
"mentions": [],
"reactions": [],
"messageHistory": []
},
{
"@odata.type": "#microsoft.graph.chatMessage",
"replyToId": null,
"etag": "1606691795113",
"messageType": "message",
"createdDateTime": "2020-11-29T23:16:35.113Z",
"lastModifiedDateTime": "2020-11-29T23:16:35.113Z",
"lastEditedDateTime": null,
"deletedDateTime": null,
"subject": null,
"summary": null,
"chatId": null,
"importance": "normal",
"locale": "en-us",
"webUrl": "https://teams.microsoft.com/l/message/19%3A4a95f7d8db4c4e7fae857bcebe0623e6%40thread.tacv2/1606691795113?groupId=fbe2bf47-16c8-47cf-b4a5-4b9b187c508b&tenantId=2432b57b-0abd-43db-aa7b-16eadd115d34&createdTime=1606691795113&parentMessageId=1606691795113",
"policyViolation": null,
"eventDetail": null,
"id": "1606691795113",
"from": {
"application": null,
"device": null,
"conversation": null,
"user": {
"@odata.type": "#microsoft.graph.teamworkUserIdentity",
"id": "8ea0e38b-efb3-4757-924a-5f94061cf8c2",
"displayName": "Robin Kline",
"userIdentityType": "aadUser",
"tenantId": "e61ef81e-8bd8-476a-92e8-4a62f8426fca"
}
},
"body": {
"contentType": "text",
"content": "HelloWorld 11/29/2020 3:16:31 PM -08:00"
},
"channelIdentity": {
"teamId": "fbe2bf47-16c8-47cf-b4a5-4b9b187c508b",
"channelId": "19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2"
},
"attachments": [],
"mentions": [],
"reactions": [],
"messageHistory": []
}
]
}
Segunda solicitação
A segunda solicitação especifica a URL @odata.nextLink
retornada na resposta anterior. Observe que não é mais necessário especificar os mesmos parâmetros principais definidos na solicitação inicial, pois o skipToken
na URL @odata.nextLink
os codifica e inclui.
GET https://graph.microsoft.com/v1.0/teams/fbe2bf47-16c8-47cf-b4a5-4b9b187c508b/channels/19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2/messages/delta?$skiptoken=-FG3FPHv7HuyuazNLuy3eXlzQGbEjYLUsW9-pYkmXgn5KGsaOwrCoor2W23dGNNM1KtAX4AyvpFQNVsBgsEwUOX9lw8x9zDumgJy-C-UbjZLlZDQACyC9FyrVelZus9n.--rshdLwy_WBFJd8anPXJPbSUtUD7r3V4neB5tcrG58
Resposta da segunda solicitação
A segunda resposta retorna as 2 próximas mensagens e um @odata.nextLink
cabeçalho de resposta com umskipToken
, indicando que há mais mensagens para se obter no canal.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(chatMessage)",
"@odata.nextLink": "https://graph.microsoft.com/v1.0/teams/fbe2bf47-16c8-47cf-b4a5-4b9b187c508b/channels/19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2/messages/delta?$skiptoken=8UusBixEHS9UUau6uGcryrA6FpnWwMJbuTYILM1PArHxnZzDVcsHQrijNzCyIVeEauMQsKUfMhNjLWFs1o4sBS_LofJ7xMftZUfec_pijuT6cAk5ugcWCca9RCjK7iVj.DKZ9w4bX9vCR7Sj9P0_qxjLAAPiEZgxlOxxmCLMzHJ4",
"value": [
{
"@odata.type": "#microsoft.graph.chatMessage",
"replyToId": null,
"etag": "1606691812117",
"messageType": "message",
"createdDateTime": "2020-11-29T23:16:52.117Z",
"lastModifiedDateTime": "2020-11-29T23:16:52.117Z",
"lastEditedDateTime": null,
"deletedDateTime": null,
"subject": null,
"summary": null,
"chatId": null,
"importance": "normal",
"locale": "en-us",
"webUrl": "https://teams.microsoft.com/l/message/19%3A4a95f7d8db4c4e7fae857bcebe0623e6%40thread.tacv2/1606691812117?groupId=fbe2bf47-16c8-47cf-b4a5-4b9b187c508b&tenantId=2432b57b-0abd-43db-aa7b-16eadd115d34&createdTime=1606691812117&parentMessageId=1606691812117",
"policyViolation": null,
"id": "1606691812117",
"from": {
"application": null,
"device": null,
"conversation": null,
"user": {
"@odata.type": "#microsoft.graph.teamworkUserIdentity",
"id": "8ea0e38b-efb3-4757-924a-5f94061cf8c2",
"displayName": "Robin Kline",
"userIdentityType": "aadUser",
"tenantId": "e61ef81e-8bd8-476a-92e8-4a62f8426fca"
}
},
"body": {
"contentType": "text",
"content": "HelloWorld 11/29/2020 3:16:51 PM -08:00"
},
"channelIdentity": {
"teamId": "fbe2bf47-16c8-47cf-b4a5-4b9b187c508b",
"channelId": "19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2"
},
"attachments": [],
"mentions": [],
"reactions": [],
"messageHistory": []
},
{
"@odata.type": "#microsoft.graph.chatMessage",
"replyToId": null,
"etag": "1606691846203",
"messageType": "message",
"createdDateTime": "2020-11-29T23:17:26.203Z",
"lastModifiedDateTime": "2020-11-29T23:17:26.203Z",
"lastEditedDateTime": null,
"deletedDateTime": null,
"subject": null,
"summary": null,
"chatId": null,
"importance": "normal",
"locale": "en-us",
"webUrl": "https://teams.microsoft.com/l/message/19%3A4a95f7d8db4c4e7fae857bcebe0623e6%40thread.tacv2/1606691846203?groupId=fbe2bf47-16c8-47cf-b4a5-4b9b187c508b&tenantId=2432b57b-0abd-43db-aa7b-16eadd115d34&createdTime=1606691846203&parentMessageId=1606691846203",
"policyViolation": null,
"id": "1606691846203",
"from": {
"application": null,
"device": null,
"conversation": null,
"user": {
"@odata.type": "#microsoft.graph.teamworkUserIdentity",
"id": "8ea0e38b-efb3-4757-924a-5f94061cf8c2",
"displayName": "Robin Kline",
"userIdentityType": "aadUser",
"tenantId": "e61ef81e-8bd8-476a-92e8-4a62f8426fca"
}
},
"body": {
"contentType": "text",
"content": "HelloWorld 11/29/2020 3:17:25 PM -08:00"
},
"channelIdentity": {
"teamId": "fbe2bf47-16c8-47cf-b4a5-4b9b187c508b",
"channelId": "19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2"
},
"attachments": [],
"mentions": [],
"reactions": [],
"messageHistory": []
}
]
}
Terceira solicitação
A terceira solicitação continua a usar a URL @odata.nextLink
mais recente retornada da última solicitação de sincronização.
GET https://graph.microsoft.com/v1.0/teams/fbe2bf47-16c8-47cf-b4a5-4b9b187c508b/channels/19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2/messages/delta?$skiptoken=8UusBixEHS9UUau6uGcryrA6FpnWwMJbuTYILM1PArHxnZzDVcsHQrijNzCyIVeEauMQsKUfMhNjLWFs1o4sBS_LofJ7xMftZUfec_pijuT6cAk5ugcWCca9RCjK7iVj.DKZ9w4bX9vCR7Sj9P0_qxjLAAPiEZgxlOxxmCLMzHJ4
Resposta da terceira solicitação
A terceira resposta retorna as únicas mensagens restantes no canal e um @odata.deltaLink
cabeçalho de resposta com um deltaToken
que indica que todas as mensagens no canal foram lidas. Salve e use a URL @odata.deltaLink
para consultar novas mensagens a partir desse ponto em diante.
HTTP/1.1 200 OK
Content-type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#Collection(chatMessage)",
"@odata.deltaLink": "https://graph.microsoft.com/v1.0/teams/fbe2bf47-16c8-47cf-b4a5-4b9b187c508b/channels/19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2/messages/delta?$deltatoken=aQdvS1VwGCSRxVmZJqykmDik_JIC44iCZpv-GLiA2VnFuE5yG-kCEBROb2iaPT_y_eMWVQtBO_ejzzyIxl00ji-tQ3HzAbW4liZAVG88lO3nG_6-MBFoHY1n8y21YUzjocG-Cn1tCNeeLPLTzIe5Dw.EP9gLiCoF2CE_e6l_m1bTk2aokD9KcgfgfcLGqd1r_4",
"value": [
{
"@odata.type": "#microsoft.graph.chatMessage",
"replyToId": null,
"etag": "1611351582080",
"messageType": "message",
"createdDateTime": "2021-01-22T21:39:42.08Z",
"lastModifiedDateTime": "2021-01-22T21:39:42.08Z",
"lastEditedDateTime": null,
"deletedDateTime": null,
"subject": null,
"summary": null,
"chatId": null,
"importance": "normal",
"locale": "en-us",
"webUrl": "https://teams.microsoft.com/l/message/19%3A4a95f7d8db4c4e7fae857bcebe0623e6%40thread.tacv2/1611351582080?groupId=fbe2bf47-16c8-47cf-b4a5-4b9b187c508b&tenantId=2432b57b-0abd-43db-aa7b-16eadd115d34&createdTime=1611351582080&parentMessageId=1611351582080",
"policyViolation": null,
"id": "1611351582080",
"from": {
"application": null,
"device": null,
"conversation": null,
"user": {
"@odata.type": "#microsoft.graph.teamworkUserIdentity",
"id": "8ea0e38b-efb3-4757-924a-5f94061cf8c2",
"displayName": "Robin Kline",
"userIdentityType": "aadUser",
"tenantId": "e61ef81e-8bd8-476a-92e8-4a62f8426fca"
}
},
"body": {
"contentType": "text",
"content": "HelloWorld 1/22/2021 1:39:39 PM -08:00"
},
"channelIdentity": {
"teamId": "fbe2bf47-16c8-47cf-b4a5-4b9b187c508b",
"channelId": "19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2"
},
"attachments": [],
"mentions": [],
"reactions": [],
"messageHistory": []
},
{
"@odata.type": "#microsoft.graph.chatMessage",
"replyToId": null,
"etag": "1611351603178",
"messageType": "message",
"createdDateTime": "2021-01-22T21:40:03.178Z",
"lastModifiedDateTime": "2021-01-22T21:40:03.178Z",
"lastEditedDateTime": null,
"deletedDateTime": null,
"subject": null,
"summary": null,
"chatId": null,
"importance": "normal",
"locale": "en-us",
"webUrl": "https://teams.microsoft.com/l/message/19%3A4a95f7d8db4c4e7fae857bcebe0623e6%40thread.tacv2/1611351603178?groupId=fbe2bf47-16c8-47cf-b4a5-4b9b187c508b&tenantId=2432b57b-0abd-43db-aa7b-16eadd115d34&createdTime=1611351603178&parentMessageId=1611351603178",
"policyViolation": null,
"id": "1611351603178",
"from": {
"application": null,
"device": null,
"conversation": null,
"user": {
"@odata.type": "#microsoft.graph.teamworkUserIdentity",
"id": "8ea0e38b-efb3-4757-924a-5f94061cf8c2",
"displayName": "Robin Kline",
"userIdentityType": "aadUser",
"tenantId": "e61ef81e-8bd8-476a-92e8-4a62f8426fca"
}
},
"body": {
"contentType": "text",
"content": "HelloWorld 1/22/2021 1:40:00 PM -08:00"
},
"channelIdentity": {
"teamId": "fbe2bf47-16c8-47cf-b4a5-4b9b187c508b",
"channelId": "19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2"
},
"attachments": [],
"mentions": [],
"reactions": [],
"messageHistory": []
}
]
}
Exemplo 2: recuperar alterações adicionais
Usando a @odata.deltaLink
da última solicitação na última rodada, você pode obter apenas as mensagens que foram alteradas (sendo adicionadas ou atualizadas) nesse canal desde então. Sua solicitação deve se parecer com a seguinte, supondo que você prefira manter o mesmo tamanho máximo de página na resposta:
Solicitação
GET https://graph.microsoft.com/v1.0/teams/fbe2bf47-16c8-47cf-b4a5-4b9b187c508b/channels/19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2/messages/delta?$deltatoken=aQdvS1VwGCSRxVmZJqykmDik_JIC44iCZpv-GLiA2VnFuE5yG-kCEBROb2iaPT_y_eMWVQtBO_ejzzyIxl00ji-tQ3HzAbW4liZAVG88lO3nG_6-MBFoHY1n8y21YUzjocG-Cn1tCNeeLPLTzIe5Dw.EP9gLiCoF2CE_e6l_m1bTk2aokD9KcgfgfcLGqd1r_4
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.deltaLink": "https://graph.microsoft.com/v1.0/teams/fbe2bf47-16c8-47cf-b4a5-4b9b187c508b/channels/19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2/messages/delta?$deltatoken=aQdvS1VwGCSRxVmZJqykmDik_JIC44iCZpv-GLiA2VnFuE5yG-kCEBROb2iaPT_yjz2nsMoh1gXNtXii7s78HapCi5woifXqwXlVNxICh8wUUnvE2gExsa8eZ2Vy_ch5rVIhm067_1mUPML3iYUVyg.3o0rhgaBUduuxOr98An5pjBDP5JjKUiVWku3flSiOsk",
"value": [
{
"@odata.type": "#microsoft.graph.chatMessage",
"replyToId": null,
"etag": "1616989510408",
"messageType": "message",
"createdDateTime": "2021-03-29T03:45:10.408Z",
"lastModifiedDateTime": "2021-03-29T03:45:10.408Z",
"lastEditedDateTime": null,
"deletedDateTime": null,
"subject": null,
"summary": null,
"chatId": null,
"importance": "normal",
"locale": "en-us",
"webUrl": "https://teams.microsoft.com/l/message/19%3A4a95f7d8db4c4e7fae857bcebe0623e6%40thread.tacv2/1616989510408?groupId=fbe2bf47-16c8-47cf-b4a5-4b9b187c508b&tenantId=2432b57b-0abd-43db-aa7b-16eadd115d34&createdTime=1616989510408&parentMessageId=1616989510408",
"policyViolation": null,
"id": "1616989510408",
"from": {
"application": null,
"device": null,
"conversation": null,
"user": {
"@odata.type": "#microsoft.graph.teamworkUserIdentity",
"id": "8ea0e38b-efb3-4757-924a-5f94061cf8c2",
"displayName": "Robin Kline",
"userIdentityType": "aadUser",
"tenantId": "e61ef81e-8bd8-476a-92e8-4a62f8426fca"
}
},
"body": {
"contentType": "text",
"content": "Hello World 28th March 2021"
},
"channelIdentity": {
"teamId": "fbe2bf47-16c8-47cf-b4a5-4b9b187c508b",
"channelId": "19:4a95f7d8db4c4e7fae857bcebe0623e6@thread.tacv2"
},
"attachments": [],
"mentions": [],
"reactions": [],
"messageHistory": []
}
]
}