Как получить список классов с прикрепленным идентификатором их владельца?

Я могу получить список пользователей, позвонив /education/usersи список классов через /education/classes; но есть ли способ получить классы с включенным внешним ключом?

Пока что единственный способ сделать это - использовать /education/users/{id}/classes, но я не хочу называть это для каждого пользователя.

Пример того, что возвращается вышеупомянутыми конечными точками:

/education/users:

{
    "surname"=>"Wyatt", 
    "usageLocation"=>"CA", 
    "userPrincipalName"=>"DWyatt@fairviewss.onmicrosoft.com", 
    "userType"=>"Member", 
    "middleName"=>"Robert", 
    "externalSource"=>"sis", 
    "primaryRole"=>"teacher", 
    "teacher"=>{
        "teacherNumber"=>"105", 
        "externalId"=>"14005"
    }
}

education/classes:

{
    "id"=>"6981f588-c561-4156-8eb9-d733360e3d76", 
    "description"=>"Super science", 
    "displayName"=>"Science", 
    "mailNickname"=>"Science"
}, 
{
    "id"=>"788ee4cd-82a4-4c39-a9e5-0ce6c1877a09", 
    "description"=>"Math", 
    "displayName"=>"Math", 
    "mailNickname"=>"Math"
}, 
{
    "id"=>"9c4af1e4-98eb-4cb0-9288-95b5defe4579", 
    "description"=>nil, 
    "displayName"=>"Science - Biology 1", 
    "mailNickname"=>"Section_11018", 
    "classCode"=>"11018", 
    "externalName"=>"Science - Biology 1", 
    "externalId"=>"11018", 
    "externalSource"=>"sis", 
    "term"=>{
        "externalId"=>"12000", 
        "startDate"=>"2017-07-01", 
        "endDate"=>"2018-06-30", 
        "displayName"=>"SY1516"
    }
}

Я уверен, что что-то не так, просто я не уверен, что.

1 ответ

Вы можете включить учителей в список классов, используя $expand=teachers:

/v1.0/education/classes?$expand=teachers 

Если вы выполните это в Graph Explorer, вы получите коллекцию class объекты, включая учителей, связанных с каждым классом:

{
    "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#education/classes",
    "value": [{
            "id": "ef18b112-d6dc-4b56-8cee-85f82dbe8a7d",
            "description": "Presentation Skills 101 training",
            "displayName": "Presentation Skills 101",
            "mailNickname": "PresentationSkills101",
            "teachers@odata.context": "https://graph.microsoft.com/v1.0/$metadata#education/classes('ef18b112-d6dc-4b56-8cee-85f82dbe8a7d')/users",
            "teachers": [{
                "id": "48d31887-5fad-4d73-a9f5-3c356e68a038",
                "accountEnabled": true,
                "displayName": "Megan Bowen",
                "givenName": "Megan",
                "surname": "Bowen",
                "userPrincipalName": "MeganB@M365x214355.onmicrosoft.com",
                "userType": "Member",
                "primaryRole": "teacher"
            }]
        }
    }
    ...
Другие вопросы по тегам