> For the complete documentation index, see [llms.txt](https://everyday-digital.gitbook.io/falkor-dev-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://everyday-digital.gitbook.io/falkor-dev-docs/pathways/webhooks/enrolments.md).

# Enrolments

The Enrolments Webhook delivers an **enrolment payload** any time when a **user starts or completes a pathway** and when their **progress updates**. The payload contains an array of `enrolments` in the data property, and each enrolment object contains the information on the user and their pathway `status`.

### Payload Example

```
{
  "type": "enrolments",
  "data": {
    "pathway" : {
      "name": "Pathway Name",
      "ID": "FA-HCPG-06RF"
    }
    "enrolments": [
      {
        "email": "test@example.com",
        "firstname": "Test",
        "lastname": "User",
        "country": "South Africa",
        "city": "Cape Town",
        "status": {
          "level": 2,
          "state": "In Progress",
          "progress": 90,
          "version": "1.2.3",
          "timestamp": "2020-10-09T14:59:06+02:00"
          "joined": "2020-10-07T12:00:06+02:00"
        }
      },
      {
        "email": "test2@example",
        "firstname": "Test2",
        "lastname": "User",
        "country": "South Africa",
        "city": "Johannesburg",
        "status": {
          "level": 1,
          "state": "In Progress",
          "progress": 50,
          "version": "1.1.6",
          "timestamp": "2020-10-02T12:33:33+02:00",
          "joined": "2020-10-01T12:00:06+02:00"
        }
      },
      ...etc
    ]
  }
}
```

### Payload Definitions

| Key            | Type                                             |
| -------------- | ------------------------------------------------ |
| **pathway**    | Object. The name and SKU of the related pathway. |
| **enrolments** | Array. List of User Enrolments.                  |

### User Enrollment

| Key           | Type                                           |
| ------------- | ---------------------------------------------- |
| **email**     | String. The user's email.                      |
| **firstname** | String. The user's first name(s).              |
| **lastname**  | String. The user's last name.                  |
| **country**   | String. The user's country.                    |
| **city**      | String. The user's city.                       |
| **status**    | Object. The user's progression on the pathway. |

### Status

| Key           | Type                                                                            |
| ------------- | ------------------------------------------------------------------------------- |
| **level**     | Int. The current level the user is on.                                          |
| **state**     | String. The current state of the user on the pathway (In Progress or Complete). |
| **progress**  | Float. The percentage of the pathway that the user has completed.               |
| **version**   | String. The published version of the pathway the user is on.                    |
| **timestamp** | String. A timestamp when the status was last updated.                           |
| **joined**    | String. A timestamp when the user was first enrolled on the pathway.            |
