Outlook message subscription reveived nothing about lifecycle event "reauthorizationRequired"

yuanhang yan 0 Reputation points
2024-11-23T15:20:28.2766667+00:00

When I create a subscription for outlook message using the Microsoft Graph API change notifications, I successfully created it with notificationUrl and lifecycleNotificationUrl. But only 'lifecycleEvent=missed' messages can be received by lifecycle notification url. I waited until my subscription expired and didn't get 'subscriptionRemoved ' message or 'reauthorizationRequired' message.

However, other Q&A mentioned that when a subscription is created with an expiration time of less than 1 hour, the endpoint will be received notified of reauthorizationRequired immediately. So my current situation must be abnormal.https://learn.microsoft.com/en-us/answers/questions/737296/why-am-i-receiving-reauthorizationrequired-lifecyc

I have seen the same problem in other Q&A, but there is no logical solution.https://learn.microsoft.com/en-us/answers/questions/896956/why-cant-mail-subscription-receive-reauthorization

My biggest problem at the moment is that I can't reauthorize or renew a subscription because I can't receive a subscriptionRemoved or reauthorizationRequired notification.

My reference documents are as follows:

https://learn.microsoft.com/en-us/graph/change-notifications-delivery-webhooks?tabs=http#notificationurl-validation

https://learn.microsoft.com/en-us/graph/change-notifications-lifecycle-events?tabs=http

https://learn.microsoft.com/en-us/graph/api/subscription-post-subscriptions?view=graph-rest-1.0&tabs=http

https://learn.microsoft.com/en-us/graph/api/resources/subscription?view=graph-rest-1.0

Configure the following when creating a subscription:

POST https://graph.microsoft.com/v1.0/subscriptions
{
changeType: "created,updated",
notificationUrl: `${host}/teams/notification`,
lifecycleNotificationUrl: `${host}/teams/lifecycleNotification`,
resource: "/me/messages?  $select=Subject,bodyPreview,importance,receivedDateTime,from,toRecipients",
includeResourceData: true,
encryptionCertificate: "<base64 encoded cert>",
encryptionCertificateId: "testcert1",
expirationDateTime: <2160 minutes (1.5 days) from now>
}



The log of the missed notification is as follows:

24112311440055118361-2024-11-23t11:4:00.552463+ 00:00-Laravel-INFO-outlook/lifecycle_callback-lifecycle callback from outlook params:  {"value":[{"tenantId":"<tenantId>","subscriptionId":"<subscriptionId>","su BscriptionExpirationDateTime ":" the 2024-11-24 T04: within.  468551 + 00:00, "" lifecycleEvent" : "missed", "clientState SecretClientSt" :" ate","resourceData":null,"resource":"Subscriptions/6ca05fxxxxxx"}]}

Microsoft Graph
Microsoft Graph
A Microsoft programmability model that exposes REST APIs and client libraries to access data on Microsoft 365 services.
12,576 questions
0 comments No comments
{count} votes

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.