2017-02-08 13 views
0

Я пытаюсь создать и прочитать контакт в общем почтовом ящике с помощью API-интерфейса Microsoft Graph. До сих пор мне удалось создать контакт с расширением, как это:Прочтите контакт с расширением данных из общего почтового ящика

POST https://graph.microsoft.com/beta/users/<SMB-ID>/contacts 
"extensions":[ 
    { 
     "@odata.type": "#Microsoft.Graph.OpenTypeExtension", 
     "extensionName": "specialdata", 
     "key1": "yes" 
    }] 

Response: 
{ 
    ... 
    "extensions": [ 
    { 
    "@odata.type": "#microsoft.graph.openTypeExtension", 
    "id": "Microsoft.OutlookServices.OpenTypeExtension.specialdata", 
    "key1": "yes" 
    } 
    ] 
} 

Моя проблема заключается в том, что я могу прочитать контакт без расширения, но не с ним через GET. Оба способа, описанные в docs, не работают.

GET https://graph.microsoft.com/beta/users/<SMB-ID>/contacts?$expand=extensions($filter=id eq 'specialdata') 
Response: 
{ 
"error": { 
"code": "ErrorAccessDenied", 
"message": "Access is denied. Check credentials and try again.", 
"innerError": { 
    "request-id": "441d4fd6-52a5-460a-a972-cddcd87222ee", 
    "date": "2017-02-08T14:40:48" 
    } 
} 
} 

Объем моего Носитель Знак выглядит следующим образом:

"scp": 
" 
Calendars.Read.Shared 
Calendars.ReadWrite.Shared 
Contacts.Read.Shared 
Contacts.ReadWrite.Shared 
full_access_as_user 
Mail.Read.Shared 
Mail.ReadWrite.Shared 
Mail.Send.Shared 
User.Read" 

Я отсутствует разрешение на графике, общий почтовый ящик или это не поддерживается функция?

ответ

1

Ваш URL-адрес GET выглядит неправильно. Из этого вы пытаетесь перечислить все под пользовательским объектом. Поскольку это контакт, попробуйте:

GET https://graph.microsoft.com/beta/users/<SMB-ID>/contacts?$expand=extensions($filter=id eq 'specialdata') 
+0

Привет, Джейсон, ваше право, и я исправил вопрос. Я использовал правильный URL, но скопировал в него вопрос. – Chris

+0

А, ок. Я также вижу это при попытке запросить общий почтовый ящик. Я также не могу отправлять сообщения в расширения по существующему контакту. Позвольте мне сделать рытье. –

+0

Thx! Я просто хочу дать некоторый контекст, чтобы избежать решения для неправильного варианта использования: Моя цель - обмениваться электронной почтой, контактами и календарем для 2-5 пользователей. Все они должны быть помечены или расширены, что является причиной того, что я ищу расширения данных. Если это звучит нормально, пожалуйста, продолжайте копать :-) – Chris