Estou trabalhando na implementação de um recurso de recall de e-mail usando a API beta do MS Graph. Para verificar se a API está funcional, testei o endpoint no Graph Explorer, mas encontrei um erro.
Enviei uma solicitação POST para:
https://graph.microsoft.com/beta/me/mailFolders/sentitems/messages/AAMkAGUyM2ExYmJiLWMzYWItNGI3Ny1iMDUyLWI0OTIyNzAyODVhMwBGAAAAAABFhmG_ZR5kTpWkPkKe6D2sBwDMA-lWCJwxSZ24LJrXBZC4AAAAAAEJAADaUQ84mKTlTqFYQVwWHYPlAAEcRQSeAAA=/recall
e recebeu o seguinte erro:
{
"error": {
"code": "BadRequest",
"message": "Empty Payload. JSON content expected.",
"innerError": {
"date": "2024-11-11T06:33:26",
"request-id": "5d807648-ce8c-4681-a26b-5a13fb3ad2e8",
"client-request-id": "c7676654-f60e-5c82-1492-a2bbf94c71cb"
}
}
}
De acordo com a documentação da MS, a chamada de API para recuperar uma mensagem na pasta "itens enviados" deve funcionar com uma solicitação POST como a que usei. Aqui está o exemplo fornecido pelo guia oficial:
Aqui estão os links para o guia: https://github.com/microsoftgraph/microsoft-graph-docs-contrib/blob/main/api-reference/beta/api/message-recall.md https://learn.microsoft.com/en-us/graph/api/message-recall?view=graph-rest-beta
Eu também esperava poder usar um código como esse, mas não consegui encontrar uma função de recuperação em Mensagens no SDK:
var graphServiceClient = GetGraphServiceClient_Beta();
var result = graphServiceClient.Users[userinfo.UserPrincipalName].MailFolders["sentitems"].Messages[messageId].recall.PostAsync().Result;
Minhas perguntas:
- Como posso usar com sucesso o endpoint da API de recall no MS Graph?
- Existe uma maneira de enviar uma solicitação de recall usando o MS Graph Beta SDK no .NET? (Já configurei o MS Graph Beta SDK, versão 5.86.0.)
Qualquer ajuda ou orientação seria apreciada. Obrigado!
Você está faltando
{}
no corpo da solicitação.Mesmo que você adicione
{}
ao corpo da solicitação, não posso garantir que o endpoint funcionará. Ainda é abeta
versão. Às vezes funciona bem para mim, às vezes retorna a exceçãoO Graph API .NET SDK
beta
ainda não implementarecall
o método.