0

Ich habe eine funktionierende Anwendung, die E-Mail-Webhook-Ereignisse von MS-Graph API empfangen. Ich habe festgestellt, dass ich das Abonnement nicht mit der SubscriptionId zurückfinden konnte, ich erhalte einen Fehler 404. Ich kann das Abonnement auch nicht mit der ID löschen.Microsoft Graph Api Webhook-Abonnement über Rest Api funktioniert nicht mehr

suchte ich weiter und bemerkte, dass ich keine neue Abonnements mehr erstellen: Die Anwendung in Azure AD registriert ist eine Service-Anwendung (Daemon)

Meine Anwendung automatisch erneuert die Abonnements und jedes Mal, es tat, dass ich eine 202 Antwort, aber irgendwie geht das Abonnement verloren.

Anfrage:

POST: https://graph.microsoft.com/beta/subscriptions

{ "changeType": "created,updated,deleted", "notificationUrl": "https://myapi.azurewebsites.net/GraphWebhook/Inbox", "resource": "Users/[email protected]/mailFolders('inbox')/messages", "expirationDateTime":"2016-10-25T20:23:45.9356913Z", "clientState": "subscription-identifier" }

Antwort:

"error": { 
"code": "ExtensionError", 
"message": "Operation: Create; Exception: [Status Code: NotFound; Reason: Not Found]", 
"innerError": { 
    "request-id": "681ac550-be6f-4882-9b6b-e089c36ad38e", 
    "date": "2016-10-25T10:13:25" 
} 

Hat jemand irgendwelche Ideen?

UPDATE: Jetzt wieder aus heiterem Himmel arbeiten.

Antwort

1

Die API unterstützt sowohl die Benutzer-ID als auch die Benutzer-E-Mail-Adresse als Teil des Ressourcenpfads, und sie ändert sich NICHT. Um zu überprüfen, ob es API Problem oder eine Ressource Problem ist, könnten Sie versuchen, Ihre Ressource zuzugreifen mit graph explorer:

GET https://graph.microsoft.com/beta/users/[email protected]/mailFolders (‚Posteingang‘)/Nachrichten

In Bezug auf den Fehler, den Sie gesehen haben, als Abonnement zu schaffen, es sieht aus wie ein Exchange-Problem bezogen auf this.

Hoffe, das hilft.

+0

Gibt es eine Möglichkeit, alle Abonnements abzufragen, die an ein bestimmtes Postfach gebunden sind? Ich kann so etwas in der Dokumentation nicht finden. –

+0

Nein, im Moment wird es nicht von der API unterstützt. Sie können nur nach einem bestimmten Abonnement mit der Abonnement-ID suchen. –

Verwandte Themen