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

# Webhooks

> Receive real-time updates and data payloads in your external systems.

Webhooks alert your external systems the moment a candidate takes action. Add your destination URL to subscribe to the following core events.

## Set up outbound webhooks

### Available webhook events

| Event                        | Trigger                                                         | Use Case                                               |
| ---------------------------- | --------------------------------------------------------------- | ------------------------------------------------------ |
| `interview.started`          | Candidate clicks the link and enters the interview lobby.       | Update candidate status in your ATS to "Interviewing". |
| `interview.in_progress`      | Candidate actively begins answering the AI's questions.         | Track real-time engagement and drop-off rates.         |
| `interview.completed`        | The AI or candidate officially concludes the interview session. | Notify team members via Slack or email.                |
| `interview.report_available` | Scoring engine finishes processing; scorecard is ready.         | Trigger downstream review workflows.                   |

## Pre-launch checklist

* [ ] API Key is generated and securely stored in your environment variables.
* [ ] API Key is included in the header of all GET, POST, and PATCH requests.
* [ ] Integration is configured for the correct, active Interviewer.
* [ ] Webhook receiving endpoints are live and configured to accept POST requests.

<Warning>
  **Common mistakes to avoid**

  * **Missing headers**: Forgetting to include the API key will result in `401 Unauthorized` errors.
  * **Ignoring retries**: Failing to handle duplicate webhook events. Ensure your system processes webhook IDs idempotently.
  * **Wrong Interviewer context**: Pushing or fetching candidates from the wrong Interviewer ID.
  * **Timeout failures**: Webhook endpoint taking too long to respond. Always return a `200 OK` status immediately before processing heavy data.
</Warning>

[Custom Attributes: Managing Additional Fields](https://www.notion.so/Custom-Attributes-Managing-Additional-Fields-312088c97d9680eba3a8d1f624ba7c26?pvs=21)
