> ## Documentation Index
> Fetch the complete documentation index at: https://docs.accessowl.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Onboarding Events

AccessOwl emits webhook events throughout the onboarding lifecycle. All onboarding event payloads share a common `data` structure:

| Field           | Type   | Description                                           |
| --------------- | ------ | ----------------------------------------------------- |
| `affected_user` | object | The employee being onboarded                          |
| `manager`       | object | The employee's manager                                |
| `created_by`    | object | The actor who initiated the onboarding                |
| `created_at`    | string | ISO 8601 timestamp of when the onboarding was created |
| `scheduled_for` | string | ISO 8601 timestamp of the planned provisioning date   |

<Tabs>
  <Tab title="onboarding.scheduled">
    Fired when a new onboarding is scheduled—either manually or via an HRIS integration.

    ```json theme={null}
    {
      "affected_user": {
        "departments": [
          "Engineering"
        ],
        "email": "john.doe@example.com",
        "full_name": "John Doe",
        "id": "8b15e986-84ac-4dbc-8e66-c82ebf3d2fc2",
        "job_title": "Software Engineer",
        "location": "Berlin",
        "manager": {
          "email": "jane.manager@example.com",
          "full_name": "Jane Manager",
          "id": "435c2e4c-2b3d-4c96-84ee-5667d671e1c1"
        },
        "starting_at": "2022-07-16T23:42:00Z",
        "teams": [
          "Backend"
        ]
      },
      "created_at": "2022-07-13T23:42:00Z",
      "created_by": {
        "email": "admin@example.com",
        "full_name": "Admin User",
        "id": "5a3e57df-2d08-46be-b5bd-b3ea505a3d26",
        "type": "manual"
      },
      "scheduled_for": "2022-07-16T23:42:00Z"
    }
    ```
  </Tab>

  <Tab title="onboarding.applications_selected">
    Fired when applications have been selected and assigned to the new employee's onboarding. This event is emitted after an admin or automated policy determines which applications the new hire should receive access to.

    The `data` object includes one additional field:

    | Field                   | Type  | Description                                                                                |
    | ----------------------- | ----- | ------------------------------------------------------------------------------------------ |
    | `assigned_applications` | array | List of applications assigned to the onboarding, each with their resources and permissions |

    ```json theme={null}
    {
      "affected_user": {
        "departments": [
          "Engineering"
        ],
        "email": "john.doe@example.com",
        "full_name": "John Doe",
        "id": "8b15e986-84ac-4dbc-8e66-c82ebf3d2fc2",
        "job_title": "Software Engineer",
        "location": "Berlin",
        "manager": {
          "email": "jane.manager@example.com",
          "full_name": "Jane Manager",
          "id": "435c2e4c-2b3d-4c96-84ee-5667d671e1c1"
        },
        "starting_at": "2022-07-16T23:42:00Z",
        "teams": [
          "Backend"
        ]
      },
      "assigned_applications": [
        {
          "id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
          "title": "Google Workspace",
          "objects": [
            {
              "id": "f1e2d3c4-b5a6-7890-abcd-ef1234567890",
              "title": "Engineering Team Drive",
              "entitlements": [
                {
                  "id": "11111111-2222-3333-4444-555555555555",
                  "title": "Editor"
                },
                {
                  "id": "66666666-7777-8888-9999-aaaaaaaaaaaa",
                  "title": "Viewer"
                }
              ]
            }
          ]
        },
        {
          "id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
          "title": "Slack",
          "objects": [
            {
              "id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
              "title": "#engineering",
              "entitlements": []
            }
          ]
        }
      ],
      "created_at": "2022-07-13T23:42:00Z",
      "created_by": {
        "email": "admin@example.com",
        "full_name": "Admin User",
        "id": "5a3e57df-2d08-46be-b5bd-b3ea505a3d26",
        "type": "manual"
      },
      "scheduled_for": "2022-07-16T23:42:00Z"
    }
    ```
  </Tab>

  <Tab title="onboarding.finished">
    Fired when all provisioning steps for an onboarding have been completed.

    The `data` object includes one additional field:

    | Field         | Type   | Description                                         |
    | ------------- | ------ | --------------------------------------------------- |
    | `finished_at` | string | ISO 8601 timestamp of when the onboarding completed |

    ```json theme={null}
    {
      "affected_user": {
        "departments": [
          "Engineering"
        ],
        "email": "john.doe@example.com",
        "full_name": "John Doe",
        "id": "8b15e986-84ac-4dbc-8e66-c82ebf3d2fc2",
        "job_title": "Software Engineer",
        "location": "Berlin",
        "manager": {
          "email": "jane.manager@example.com",
          "full_name": "Jane Manager",
          "id": "435c2e4c-2b3d-4c96-84ee-5667d671e1c1"
        },
        "starting_at": "2022-07-12T23:42:00Z",
        "teams": [
          "Backend"
        ]
      },
      "created_at": "2022-07-09T23:42:00Z",
      "created_by": {
        "email": "admin@example.com",
        "full_name": "Admin User",
        "id": "5a3e57df-2d08-46be-b5bd-b3ea505a3d26",
        "type": "manual"
      },
      "finished_at": "2022-07-13T23:42:00Z",
      "scheduled_for": "2022-07-12T23:42:00Z"
    }
    ```
  </Tab>
</Tabs>
