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

# Introduction

> Learn how to receive real-time updates from Everday via webhooks

<Note>
  Webhooks allow your system to receive real-time updates from Everday whenever
  key events occur, such as onboarding updates, profile creation, and smart
  match results.
</Note>

## What are Webhooks?

Everday uses **webhooks** to send real-time notifications when important events happen, such as:

* **Onboarding updates** (created, accepted, revoked).
* **Profile creation** (when a new skill passport is generated).
* **Smart match results** (when a match between a passport and a skillset is completed).

When an event occurs, Everday sends a **`POST` request** to your webhook URL containing details about the event.

***

## Providing Your Webhook URL

To start receiving webhooks, you need to **provide Everday with your webhook URL**.

1. **Set up an API endpoint** on your system to receive webhook events.
2. **Send the URL to Everday** so it can be configured on our side.
3. **Ensure your endpoint is publicly accessible** and can handle JSON `POST` requests.

<Callout>
  Contact Everday Support to register or update your webhook URL.
</Callout>

***

## Authenticating Webhooks

All webhook requests include an **API key** for authentication.\
Your server must verify the request by checking the **`x-api-key`** header.

### Example Webhook Request

```bash theme={null}
curl -X POST "https://yourdomain.com/webhook" \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "event": "profile.created",
    "data": {
      "profileId": "profile-123",
      "publicIdentifier": "john-doe-1234",
      "createdAt": "2024-02-12T12:00:00Z"
    }
  }'
```
