Пространство имен: microsoft.graph
Важно!
API версии /beta
в Microsoft Graph могут быть изменены. Использование этих API в производственных приложениях не поддерживается. Чтобы определить, доступен ли API в версии 1.0, используйте селектор версий.
Создание курса. При этом будет также создана универсальная группа. При использовании этого API для создания класса в группу добавляются специальные свойства, которые добавляют такие функции, как назначения и специальная обработка в Microsoft Teams при создании команд с помощью группы. Обратите внимание, что этот API создает только универсальную группу и не создает команду. Microsoft Teams предоставляет пользовательский интерфейс для преподавателей, чтобы создавать команды для собственных классов с помощью групп, созданных этим API.
Этот API доступен в следующих национальных облачных развертываниях.
Глобальная служба |
Правительство США L4 |
Правительство США L5 (DOD) |
Китай управляется 21Vianet |
✅ |
❌ |
❌ |
❌ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения |
Разрешения с наименьшими привилегиями |
Более высокие привилегированные разрешения |
Делегированные (рабочая или учебная учетная запись) |
Не поддерживается. |
Не поддерживается. |
Делегированные (личная учетная запись Майкрософт) |
Не поддерживается. |
Не поддерживается. |
Для приложений |
EduRoster.ReadWrite.All |
Недоступно. |
HTTP-запрос
POST /education/classes
Тело запроса
В теле запроса предоставьте описание объекта educationClass в формате JSON.
Отклик
При успешном выполнении этот метод возвратит код отклика 201 Created
и объект educationClass в теле отклика.
Пример
Запрос
Ниже показан пример запроса.
POST https://graph.microsoft.com/beta/education/classes
Content-type: application/json
{
"description": "Health Level 1",
"classCode": "Health 501",
"displayName": "Health 1",
"externalId": "11019",
"externalName": "Health Level 1",
"externalSource": "sis",
"mailNickname": "fineartschool.net"
}
// Code snippets are only available for the latest version. Current version is 5.x
// Dependencies
using Microsoft.Graph.Beta.Models;
var requestBody = new EducationClass
{
Description = "Health Level 1",
ClassCode = "Health 501",
DisplayName = "Health 1",
ExternalId = "11019",
ExternalName = "Health Level 1",
ExternalSource = EducationExternalSource.Sis,
MailNickname = "fineartschool.net",
};
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=csharp
var result = await graphClient.Education.Classes.PostAsync(requestBody);
mgc-beta education classes create --body '{\
"description": "Health Level 1",\
"classCode": "Health 501",\
"displayName": "Health 1",\
"externalId": "11019",\
"externalName": "Health Level 1",\
"externalSource": "sis",\
"mailNickname": "fineartschool.net"\
}\
'
// 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.NewEducationClass()
description := "Health Level 1"
requestBody.SetDescription(&description)
classCode := "Health 501"
requestBody.SetClassCode(&classCode)
displayName := "Health 1"
requestBody.SetDisplayName(&displayName)
externalId := "11019"
requestBody.SetExternalId(&externalId)
externalName := "Health Level 1"
requestBody.SetExternalName(&externalName)
externalSource := graphmodels.SIS_EDUCATIONEXTERNALSOURCE
requestBody.SetExternalSource(&externalSource)
mailNickname := "fineartschool.net"
requestBody.SetMailNickname(&mailNickname)
// To initialize your graphClient, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=go
classes, err := graphClient.Education().Classes().Post(context.Background(), requestBody, nil)
// Code snippets are only available for the latest version. Current version is 6.x
GraphServiceClient graphClient = new GraphServiceClient(requestAdapter);
EducationClass educationClass = new EducationClass();
educationClass.setDescription("Health Level 1");
educationClass.setClassCode("Health 501");
educationClass.setDisplayName("Health 1");
educationClass.setExternalId("11019");
educationClass.setExternalName("Health Level 1");
educationClass.setExternalSource(EducationExternalSource.Sis);
educationClass.setMailNickname("fineartschool.net");
EducationClass result = graphClient.education().classes().post(educationClass);
const options = {
authProvider,
};
const client = Client.init(options);
const educationClass = {
description: 'Health Level 1',
classCode: 'Health 501',
displayName: 'Health 1',
externalId: '11019',
externalName: 'Health Level 1',
externalSource: 'sis',
mailNickname: 'fineartschool.net'
};
await client.api('/education/classes')
.version('beta')
.post(educationClass);
<?php
use Microsoft\Graph\Beta\GraphServiceClient;
use Microsoft\Graph\Beta\Generated\Models\EducationClass;
use Microsoft\Graph\Beta\Generated\Models\EducationExternalSource;
$graphServiceClient = new GraphServiceClient($tokenRequestContext, $scopes);
$requestBody = new EducationClass();
$requestBody->setDescription('Health Level 1');
$requestBody->setClassCode('Health 501');
$requestBody->setDisplayName('Health 1');
$requestBody->setExternalId('11019');
$requestBody->setExternalName('Health Level 1');
$requestBody->setExternalSource(new EducationExternalSource('sis'));
$requestBody->setMailNickname('fineartschool.net');
$result = $graphServiceClient->education()->classes()->post($requestBody)->wait();
Import-Module Microsoft.Graph.Beta.Education
$params = @{
description = "Health Level 1"
classCode = "Health 501"
displayName = "Health 1"
externalId = "11019"
externalName = "Health Level 1"
externalSource = "sis"
mailNickname = "fineartschool.net"
}
New-MgBetaEducationClass -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_class import EducationClass
from msgraph_beta.generated.models.education_external_source import EducationExternalSource
# To initialize your graph_client, see https://learn.microsoft.com/en-us/graph/sdks/create-client?from=snippets&tabs=python
request_body = EducationClass(
description = "Health Level 1",
class_code = "Health 501",
display_name = "Health 1",
external_id = "11019",
external_name = "Health Level 1",
external_source = EducationExternalSource.Sis,
mail_nickname = "fineartschool.net",
)
result = await graph_client.education.classes.post(request_body)
Отклик
Ниже показан пример отклика.
Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 201 Created
Content-type: application/json
{
"id": "11019",
"description": "Health Level 1",
"classCode": "Health 501",
"createdBy": {
"user": {
"displayName": "Susana Rocha",
"id": "14012",
}
},
"displayName": "Health 1",
"externalId": "11019",
"externalName": "Health Level 1",
"externalSource": "sis",
"mailNickname": "fineartschool.net"
}