Создание learningCourseActivity

Пространство имен: microsoft.graph

Создайте объект learningCourseActivity .

Учебный курс может быть одним из двух типов:

Используйте этот метод для создания любого типа действия.

Примечание. Поставщик может управлять действиями курса обучения только в том случае , если для isCourseAcitvitySyncEnabled задано значение true. Чтобы обновить значение, используйте метод Update learningProvider .

Этот API доступен в следующих национальных облачных развертываниях.

Глобальная служба Правительство США L4 Правительство США L5 (DOD) Китай управляется 21Vianet

Разрешения

Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.

Тип разрешения Разрешения с наименьшими привилегиями Более высокие привилегированные разрешения
Делегированные (рабочая или учебная учетная запись) Не поддерживается. Не поддерживается.
Делегированные (личная учетная запись Майкрософт) Не поддерживается. Не поддерживается.
Приложение LearningAssignedCourse.ReadWrite.All LearningSelfInitiatedCourse.ReadWrite.All

HTTP-запрос

POST /employeeExperience/learningProviders/{registrationId}/learningCourseActivities

Заголовки запросов

Имя Описание
Авторизация Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации.
Content-Type application/json. Обязательно.

Текст запроса

В тексте @odata.type запроса укажите тип создаваемого ресурса learningCourseActivity (learningAssignment или learningSelfInitiated) и включите свойства этого типа, как указано в следующей таблице.

Свойство Тип Описание
assignedDateTime DateTimeOffset Назначенная дата для действия курса. Необязательный параметр.
assignmentType assignmentType Тип назначения для действия курса. Возможные значения: required, recommended, unknownFutureValue. Обязательно.
assignerUserId String Microsoft Entra ID назначателя. Необязательный параметр.
completedDateTime DateTimeOffset Дата и время завершения назначения. Необязательный параметр.
completionPercentage Int32 Процент пройденного пользователем курса. Необязательный параметр. Если задано значение, оно должно находиться между 0 и 100 (включительно).
dueDateTime DateTimeOffset Дата выполнения действия курса. Необязательный параметр.
externalCourseActivityId String Идентификатор действия курса, созданный поставщиком. Необязательный параметр.
id String Созданный идентификатор для запроса, который можно использовать для дальнейшего взаимодействия с API-интерфейсами действий курса.
learningContentId String Идентификатор учебного содержимого, созданного в Viva Learning. Обязательно.
learningProviderId String Идентификатор регистрации поставщика. Обязательно.
learnerUserId String Microsoft Entra ID учащегося, которому назначено действие. Обязательно.
notes String Заметки о действии курса. Необязательный параметр.
registrationId String Идентификатор поставщика. Идентификатор создается при регистрации поставщика в Viva Learning. Обязательно.
startedDateTime DateTimeOffset Дата и время, когда учащийся начал самостоятельно инициированный курс. Необязательный параметр.
status courseStatus Состояние действия курса. Возможные значения: notStarted, inProgress, completed. Обязательно.

Отклик

В случае успешного выполнения этот метод возвращает код отклика 201 Created и объект learningCourseActivity типа learningAssignment или learningSelfInitiated в тексте ответа.

В случае неудачи этот метод возвращает один из приведенных ниже ответов:

Сценарий Код HTTP Код Сообщение Сведения
Запрещено 403 Запрещено У вас нет достаточного плана обслуживания для этого запроса.
Недопустимый запрос 400 badRequest Этот поставщик не включен для данного клиента.
Недопустимый запрос 400 badRequest Возникла проблема с вашим запросом. Убедитесь, что введенный идентификатор регистрации действителен или зарегистрирован для вашего клиента.
Внутренняя ошибка сервера. 500 internalServerError Внутренняя ошибка сервера.
Регулирование запроса 429 tooManyRequests {"code": "tooManyRequests", "message": "Повторите попытку после {noOfMinutes} minutes"}.
Служба недоступна 503 serviceUnavailable {"code": "serviceUnavailable","message": "Повторите попытку после {noOfMinutes} minutes"}.
Сбой проверки нескольких полей 400 badRequest badRequest {"code": "badRequest","message": "Поле ввода {fieldName}не должно быть пустым"}, {"code": "badRequest", "message": "Поле ввода {fieldName} требуется"}, {"code": "badRequest", "message": "Поле ввода {fieldName}длина превышена, чем {expectedLength}"}.
Запрещено 403 Поставщик недействителен для создания действия курса для заданного содержимого обучения Если параметр registrationId/learningProviderId не соответствует поставщику, с помощью которого создается learningContent.
Запрещено 403 Пользовательская лицензия недействительна для выполнения операции Если у пользователя, для которого создается назначение, нет лицензии уровня "Премиум".

Примеры

Пример 1. Создание назначенного действия курса обучения

В следующем примере показано, как создать действие learningAssignment .

Запрос

Ниже показан пример запроса.

POST https://graph.microsoft.com/v1.0/employeeExperience/learningProviders/01e8f81b-3060-4dec-acf0-0389665a0a38/learningCourseActivities
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.learningAssignment",
  "assignedDateTime": "2021-05-11T22:57:17+00:00",
  "assignmentType": "required",
  "assignerUserId": "cea1684d-57dc-438d-a9d1-e666ec1a7f3d",
  "completedDateTime": null,
  "completionPercentage": 20,
  "dueDateTime": {
    "dateTime": "2022-09-22T16:05:00.0000000",
    "timeZone": "UTC"
  },
  "externalCourseActivityId": "12a2228a-e020-11ec-9d64-0242ac120002",
  "learningContentId": "57baf9dc-e020-11ec-9d64-0242ac120002",
  "learningProviderId": "01e8f81b-3060-4dec-acf0-0389665a0a38",
  "learnerUserId": "7ba2228a-e020-11ec-9d64-0242ac120002",
  "notes": {
    "contentType": "text",
    "content": "required assignment added for user"
  },
  "status": "notStarted"
}

Отклик

Ниже показан пример отклика.

HTTP/1.1 201 Created
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.learningAssignment",
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#learningProviders('13727311-e7bb-470d-8b20-6a23d9030d70')/learningCourseActivities('7ba2228a-e020-11ec-9d64-0242ac120002')$entity",
  "assignedDateTime": "2021-05-11T22:57:17+00:00",
  "assignmentType": "required",
  "assignerUserId": "cea1684d-57dc-438d-a9d1-e666ec1a7f3d",
  "completedDateTime": null,
  "completionPercentage": 20,
  "externalCourseActivityId": "12a2228a-e020-11ec-9d64-0242ac120002",
  "id": "7ba2228a-e020-11ec-9d64-0242ac120002:749c8786-99bb-4b3b-8d5d-586428f6aaa3",
  "dueDateTime": {
    "dateTime": "2022-09-22T16:05:00.0000000",
    "timeZone": "UTC"
  },
  "learningContentId": "57baf9dc-e020-11ec-9d64-0242ac120002",
  "learningProviderId": "01e8f81b-3060-4dec-acf0-0389665a0a38",
  "learnerUserId": "7ba2228a-e020-11ec-9d64-0242ac120002",
  "notes": {
    "contentType": "text",
    "content": "required assignment added for user"
  },
  "status": "notStarted"
}

Пример 2. Создание самостоятельно инициируемого действия курса обучения

В следующем примере создается действие learningSelfInitiated .

Запрос

Ниже показан пример запроса.

POST https://graph.microsoft.com/v1.0/employeeExperience/learningProviders/01e8f81b-3060-4dec-acf0-0389665a0a38/learningCourseActivities
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.learningSelfInitiatedCourse",
  "completedDateTime": null,
  "completionPercentage": 20,
  "externalCourseActivityId": "12a2228a-e020-11ec-9d64-0242ac120002",
  "learningContentId": "57baf9dc-e020-11ec-9d64-0242ac120002",
  "learnerUserId": "7ba2228a-e020-11ec-9d64-0242ac120002",
  "startedDateTime": "2021-05-21T22:57:17+00:00",
  "status": "inProgress"
}

Отклик

Ниже приводится пример отклика.

HTTP/1.1 201 Created
Content-Type: application/json

{
  "@odata.type": "#microsoft.graph.learningSelfInitiatedCourse",
  "@odata.context": "https://graph.microsoft.com/v1.0/$metadata#learningProviders('13727311-e7bb-470d-8b20-6a23d9030d70')/learningCourseActivities('be2f4d76-e020-11ec-9d64-0242ac120002')$entity",
  "completedDateTime": null,
  "completionPercentage": 20,
  "externalCourseActivityId": "12a2228a-e020-11ec-9d64-0242ac120002",
  "id": "7ba2228a-e020-11ec-9d64-0242ac120002:749c8786-99bb-4b3b-8d5d-586428f6aaa3",
  "learningContentId": "57baf9dc-e020-11ec-9d64-0242ac120002",
  "learningProviderId": "01e8f81b-3060-4dec-acf0-0389665a0a38",
  "learnerUserId": "7ba2228a-e020-11ec-9d64-0242ac120002",
  "startedDateTime": "2021-05-21T22:57:17+00:00",
  "status": "inProgress"
}