Использование /users/{user-id}
- это единственный шаблон, который будет работать с учетными данными клиента. В вашем случае это должно работать, поэтому, возможно, это проблема с id
, который вы используете.
Чтобы убедиться, что я не даю вам неверную информацию, я просто протестировал это с помощью токена только для приложения из потока учетных данных клиента. Разбирая этот токен на https://jwt.ms, я вижу утверждение roles
примерно так:
"roles": [
"User.Read.All"
]
Если сначала сделал GET /users?$select=displayname,id
, и этот пользователь был включен в ответ :
{
"displayName": "Adele Vance",
"id": "3103c7b9-cfe6-4cd3-a696-f88909b9a609"
}
Это id
для использования в вашем findRooms
вызове. Я набрал GET /users/3103c7b9-cfe6-4cd3-a696-f88909b9a609/findrooms
и получил следующий ответ:
{
"@odata.context": "https://graph.microsoft.com/beta/$metadata#Collection(microsoft.graph.emailAddress)",
"value": [
{
"name": "Conf Room Adams",
"address": "Adams@M365x330971.onmicrosoft.com"
},
{
"name": "Conf Room Baker",
"address": "Baker@M365x330971.onmicrosoft.com"
},
{
"name": "Conf Room Crystal",
"address": "Crystal@M365x330971.onmicrosoft.com"
},
{
"name": "Conf Room Hood",
"address": "Hood@M365x330971.onmicrosoft.com"
},
{
"name": "Conf Room Rainier",
"address": "Rainier@M365x330971.onmicrosoft.com"
},
{
"name": "Conf Room Stevens",
"address": "Stevens@M365x330971.onmicrosoft.com"
}
]
}