Ошибка подписки на уведомления — Outlook Mail API

Я пытаюсь подписаться на уведомления от Outlook Mail API.
Однако я продолжаю получать ошибку 400.
Ref:
msdn.microsoft.com/en-us/office/office365/api/notify-rest-operations

$url = 'outlook.office.com/api/v2.0/me/subscriptions';
$headers = array(
"Authorization: Bearer ".$access_token ,
"Accept: application/json",
"X-AnchorMailbox: ".$user_email
);
$curl = curl_init($url);

$data = '{
"@odata.type":"#Microsoft.OutlookServices.PushSubscription",
"Resource": "outlook.office.com/api/v2.0/me/messages",
"NotificationURL": "mydomain.com/listener.php",
"ChangeType": "Created"}';

$headers[] = "Content-Type: application/json";
curl_setopt($curl, CURLOPT_POST, true);
curl_setopt($curl, CURLOPT_POSTFIELDS,$data);
$response = curl_exec($curl);

Я еще не настроил своего слушателя. Ошибка 400 из-за слушателя? Или что-то еще?. Похоже, аутентификация прошла успешно

0

Решение

Есть два вопроса с этим запросом на подписку
1 — для уведомлений Outlook / Office365 требуется безопасный канал; Т.е. NotificationURL должен быть «https». Это, вероятно, причина вашей ошибки 400.
2- NotificationURL должен быть запущен, так как служба выполняет проверку этого URL-адреса перед принятием подписки.

Пожалуйста, документы https://msdn.microsoft.com/office/office365/APi/notify-rest-operations или начать концепции https://dev.outlook.com/RestGettingStarted/Concepts/Webhooks для дополнительной информации.

Благодарю.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]