2016-01-04 3 views
0

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

$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

Спасибо. Это было связано с https. – singularity

Смежные вопросы