Skip to main content
WEBHOOK
course_lesson_interaction.completed
{
  "id": "msg_xxxxxxxxxxxxxxxxxxxxxxxx",
  "api_version": "v1",
  "timestamp": "2025-01-01T00:00:00.000Z",
  "type": "course_lesson_interaction.completed",
  "data": {
    "id": "crsli_xxxxxxxxxxxx",
    "completed": true,
    "created_at": "2023-12-01T05:00:00.401Z",
    "lesson": {
      "id": "lesn_xxxxxxxxxxxxx",
      "title": "<string>"
    },
    "user": {
      "id": "user_xxxxxxxxxxxxx",
      "name": "<string>",
      "username": "<string>"
    },
    "course": {
      "id": "cors_xxxxxxxxxxxxx",
      "title": "<string>",
      "experience": {
        "id": "exp_xxxxxxxxxxxxxx"
      }
    }
  }
}

Headers

webhook-signature
string
required

The signature of the webhook request with the webhook version prepended

Example:

"v1,BASE64ENCODEDSIGNATURE"

webhook-timestamp
string
required

The timestamp in seconds since the Unix epoch that the webhook was sent at on the server

Example:

"1727606400"

Body

application/json
id
string
required

A unique ID for every single webhook request

Example:

"msg_xxxxxxxxxxxxxxxxxxxxxxxx"

api_version
string
required

The API version for this webhook

Allowed value: "v1"
Example:

"v1"

timestamp
string<date-time>
required

The timestamp in ISO 8601 format that the webhook was sent at on the server

Example:

"2025-01-01T00:00:00.000Z"

type
string
required

The webhook event type

Allowed value: "course_lesson_interaction.completed"
Example:

"course_lesson_interaction.completed"

data
object
required

A lesson interaction tracking user progress in courses

Response

200

Return a 200 status to indicate that the data was received successfully

I