Create learningCourseActivity

Namespace: microsoft.graph

Important

APIs under the /beta version in Microsoft Graph are subject to change. Use of these APIs in production applications is not supported. To determine whether an API is available in v1.0, use the Version selector.

Create a new learningCourseActivity object.

A learning course activity can be one of two types:

Use this method to create either type of activity.

Permissions

One of the following permissions is required to call this API. To learn more, including how to choose permissions, see Permissions.

Permission type Permissions (from least to most privileged)
Delegated (work or school account) Not supported.
Delegated (personal Microsoft account) Not supported.
Application LearningAssignedCourse.ReadWrite.All, LearningSelfInitiatedCourse.ReadWrite.All

HTTP request

POST /employeeExperience/learningProviders/{registrationId}/learningCourseActivities

Request headers

Name Description
Authorization Bearer {token}. Required.
Content-Type application/json. Required.

Request body

In the request body, use @odata.type to specify the type of learningCourseActivity resource that you're creating (learningAssignment or learningSelfInitiated), and include the properties of that type, as listed in the following table.

Property Type Description
assignedDateTime DateTimeOffset Assigned date for the course activity. Optional.
assignmentType assignmentType The assignment type for the course activity. Possible values are: required, recommended, unknownFutureValue. Required.
assignerUserId String The user ID of the assigner. Optional.
completedDateTime DateTimeOffset The date and time when the assignment was completed. Optional.
completionPercentage Int32 The percentage of the course completed by the user. Optional. If a value is provided, it must be between 0 and 100 (inclusive).
dueDateTime DateTimeOffset Due date for the course activity. Optional.
externalCourseActivityId String A course activity ID generated by the provider. Optional.
id String The generated ID for a request that can be used to make further interactions to the course activity APIs.
learningContentId String The ID of the learning content created in Viva Learning. Required.
learningProviderId String The registration ID of the provider. Required.
learnerUserId String The user ID of the learner to whom the activity is assigned. Required.
notes String Notes for the course activity. Optional.
registrationId String ID of the provider. The ID is generated when the provider registers on Viva Learning. Required.
startedDateTime DateTimeOffset The date and time when the self-initiated course was started by the learner. Optional.
status courseStatus The status of the course activity. Possible values are: notStarted, inProgress, completed. Required.

Response

If successful, this method returns a 201 Created response code and a learningCourseActivity object of type learningAssignment or learningSelfInitiated in the response body.

Examples

Example 1: Create an assigned learning course activity

The following example shows how to create a learningAssignment activity.

Request

The following example shows the request.

POST https://graph.microsoft.com/beta/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"
}

Response

The following example shows the response.

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

{
  "@odata.type": "#microsoft.graph.learningAssignment",
  "@odata.context": "https://graph.microsoft.com/beta/$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"
}

Example 2: Create a self-initiated learning course activity

The following example creates a learningSelfInitiated activity.

Request

The following example shows the request.

POST https://graph.microsoft.com/beta/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"
}

Response

The following example shows the response.

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

{
  "@odata.type": "#microsoft.graph.learningSelfInitiatedCourse",
  "@odata.context": "https://graph.microsoft.com/beta/$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"
}