Пространство имен: microsoft.graph
Важно!
API версии /beta в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.
Обновите коллекцию relatedContact объекта educationUser .
Примечание.
Обновление связанныхконтактов заменяет всю коллекцию. Невозможно добавить, удалить или обновить один контакт.
Этот API доступен в следующих национальных облачных развертываниях.
| Глобальная служба |
Правительство США L4 |
Правительство США L5 (DOD) |
Китай управляется 21Vianet |
| ✅ |
❌ |
❌ |
❌ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
| Тип разрешения |
Разрешения с наименьшими привилегиями |
Более высокие привилегированные разрешения |
| Делегированные (рабочая или учебная учетная запись) |
Не поддерживается. |
Не поддерживается. |
| Делегированные (личная учетная запись Майкрософт) |
Не поддерживается. |
Не поддерживается. |
| Для приложений |
EduRoster.ReadWrite.All |
Недоступно. |
HTTP-запрос
PATCH /education/users/{id}
Текст запроса
В тексте запроса укажите представление связанной коллекцииContact в формате JSON.
В следующей таблице показаны свойства, необходимые при обновлении educationUser.
Важно!
Это обновление должно быть отдельной операцией. Его нельзя сочетать с обновлениями других свойств educationUser .
Например, для обновления связанныхcontacts и displayName требуется два отдельных запроса.
Отклик
В случае успешного выполнения этот метод возвращает код отклика 200 OK и обновленный объект educationUser в теле отклика.
Примеры
Запрос
PATCH https://graph.microsoft.com/beta/education/users/{educationUserId}
Content-Type: application/json
{
"relatedContacts": [
{
"displayName": "Father Time",
"emailAddress": "father@time.com",
"mobilePhone": "4251231234",
"relationship": "guardian",
"accessConsent": true
},
{
"displayName": "Mother Nature",
"emailAddress": "mother@nature.co.uk",
"mobilePhone": "3251231234",
"relationship": "parent",
"accessConsent": true
}
]
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new EducationUser
{
RelatedContacts = new List<RelatedContact>
{
new RelatedContact
{
DisplayName = "Father Time",
EmailAddress = "father@time.com",
MobilePhone = "4251231234",
Relationship = ContactRelationship.Guardian,
AccessConsent = true,
},
new RelatedContact
{
DisplayName = "Mother Nature",
EmailAddress = "mother@nature.co.uk",
MobilePhone = "3251231234",
Relationship = ContactRelationship.Parent,
AccessConsent = true,
},
},
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Education.Users["{educationUser-id}"].PatchAsync(requestBody);
// Code snippets are only available for the latest major version. Current major version is $v0.*
// Dependencies
import (
"context"
msgraphsdk "github.com/microsoftgraph/msgraph-beta-sdk-go"
graphmodels "github.com/microsoftgraph/msgraph-beta-sdk-go/models"
//other-imports
)
requestBody := graphmodels.NewEducationUser()
relatedContact := graphmodels.NewRelatedContact()
displayName := "Father Time"
relatedContact.SetDisplayName(&displayName)
emailAddress := "father@time.com"
relatedContact.SetEmailAddress(&emailAddress)
mobilePhone := "4251231234"
relatedContact.SetMobilePhone(&mobilePhone)
relationship := graphmodels.GUARDIAN_CONTACTRELATIONSHIP
relatedContact.SetRelationship(&relationship)
accessConsent := true
relatedContact.SetAccessConsent(&accessConsent)
relatedContact1 := graphmodels.NewRelatedContact()
displayName := "Mother Nature"
relatedContact1.SetDisplayName(&displayName)
emailAddress := "mother@nature.co.uk"
relatedContact1.SetEmailAddress(&emailAddress)
mobilePhone := "3251231234"
relatedContact1.SetMobilePhone(&mobilePhone)
relationship := graphmodels.PARENT_CONTACTRELATIONSHIP
relatedContact1.SetRelationship(&relationship)
accessConsent := true
relatedContact1.SetAccessConsent(&accessConsent)
relatedContacts := []graphmodels.RelatedContactable {
relatedContact,
relatedContact1,
}
requestBody.SetRelatedContacts(relatedContacts)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
users, err := graphClient.Education().Users().ByEducationUserId("educationUser-id").Patch(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
EducationUser educationUser = new EducationUser();
LinkedList<RelatedContact> relatedContacts = new LinkedList<RelatedContact>();
RelatedContact relatedContact = new RelatedContact();
relatedContact.setDisplayName("Father Time");
relatedContact.setEmailAddress("father@time.com");
relatedContact.setMobilePhone("4251231234");
relatedContact.setRelationship(ContactRelationship.Guardian);
relatedContact.setAccessConsent(true);
relatedContacts.add(relatedContact);
RelatedContact relatedContact1 = new RelatedContact();
relatedContact1.setDisplayName("Mother Nature");
relatedContact1.setEmailAddress("mother@nature.co.uk");
relatedContact1.setMobilePhone("3251231234");
relatedContact1.setRelationship(ContactRelationship.Parent);
relatedContact1.setAccessConsent(true);
relatedContacts.add(relatedContact1);
educationUser.setRelatedContacts(relatedContacts);
EducationUser result = graphClient.education().users().byEducationUserId("{educationUser-id}").patch(educationUser);
const options = {
authProvider,
};
const client = Client.init(options);
const educationUser = {
relatedContacts: [
{
displayName: 'Father Time',
emailAddress: 'father@time.com',
mobilePhone: '4251231234',
relationship: 'guardian',
accessConsent: true
},
{
displayName: 'Mother Nature',
emailAddress: 'mother@nature.co.uk',
mobilePhone: '3251231234',
relationship: 'parent',
accessConsent: true
}
]
};
await client.api('/education/users/{educationUserId}')
.version('beta')
.update(educationUser);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\EducationUser;
use Microsoft\Graph\Beta\Generated\Models\RelatedContact;
use Microsoft\Graph\Beta\Generated\Models\ContactRelationship;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new EducationUser();
$relatedContactsRelatedContact1 = new RelatedContact();
$relatedContactsRelatedContact1->setDisplayName('Father Time');
$relatedContactsRelatedContact1->setEmailAddress('father@time.com');
$relatedContactsRelatedContact1->setMobilePhone('4251231234');
$relatedContactsRelatedContact1->setRelationship(new ContactRelationship('guardian'));
$relatedContactsRelatedContact1->setAccessConsent(true);
$relatedContactsArray []= $relatedContactsRelatedContact1;
$relatedContactsRelatedContact2 = new RelatedContact();
$relatedContactsRelatedContact2->setDisplayName('Mother Nature');
$relatedContactsRelatedContact2->setEmailAddress('mother@nature.co.uk');
$relatedContactsRelatedContact2->setMobilePhone('3251231234');
$relatedContactsRelatedContact2->setRelationship(new ContactRelationship('parent'));
$relatedContactsRelatedContact2->setAccessConsent(true);
$relatedContactsArray []= $relatedContactsRelatedContact2;
$requestBody->setRelatedContacts($relatedContactsArray);
$result = $graphServiceClient->education()->users()->byEducationUserId('educationUser-id')->patch($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Education
$params = @{
relatedContacts = @(
@{
displayName = "Father Time"
emailAddress = "father@time.com"
mobilePhone = "4251231234"
relationship = "guardian"
accessConsent = $true
}
@{
displayName = "Mother Nature"
emailAddress = "mother@nature.co.uk"
mobilePhone = "3251231234"
relationship = "parent"
accessConsent = $true
}
)
}
Update-MgBetaEducationUser -EducationUserId $educationUserId -BodyParameter $params
# Code snippets are only available for the latest version. Current version is 1.x
from msgraph_beta import GraphServiceClient
from msgraph_beta.generated.models.education_user import EducationUser
from msgraph_beta.generated.models.related_contact import RelatedContact
from msgraph_beta.generated.models.contact_relationship import ContactRelationship
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = EducationUser(
related_contacts = [
RelatedContact(
display_name = "Father Time",
email_address = "father@time.com",
mobile_phone = "4251231234",
relationship = ContactRelationship.Guardian,
access_consent = True,
),
RelatedContact(
display_name = "Mother Nature",
email_address = "mother@nature.co.uk",
mobile_phone = "3251231234",
relationship = ContactRelationship.Parent,
access_consent = True,
),
],
)
result = await graph_client.education.users.by_education_user_id('educationUser-id').patch(request_body)
Отклик
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-Type: application/json
{
"id": "4b712dc5-2dc5-4b71-c52d-714bc52d714b",
"relatedContacts": [
{
"displayName": "Father Time",
"emailAddress": "father@time.com",
"mobilePhone": "4251231234",
"relationship": "guardian",
"accessConsent": true
},
{
"displayName": "Mother Nature",
"emailAddress": "mother@nature.co.uk",
"mobilePhone": "3251231234",
"relationship": "parent",
"accessConsent": true
}
]
}