# Authentication
Source: https://developers.ever.day/api-reference/authentication
How to authenticate requests in the Everday API
## Authentication
All Everday API endpoints require authentication using an **API key**.\
Each organization is assigned a **unique API key**, which must be included in every request.
### Authenticating Requests
To authenticate API requests, include your API key in the request header:
```bash theme={null}
curl -X GET "https://api.ever.day/skillsets" \
-H "x-api-key: YOUR_API_KEY"
```
# Import Unclassified Data
Source: https://developers.ever.day/api-reference/import/import-unclassified
post /import/unclassified
Accepts unstructured or semi-structured data from external systems for later
classification and processing into the workforce graph.
Each item may include optional hints (entity type, entity id), a creation timestamp,
a raw payload object, and free-form metadata.
# Introduction
Source: https://developers.ever.day/api-reference/introduction
Overview of the Everday API
Welcome to the Everday API documentation. Here, you'll find everything you
need to integrate skill intelligence, manage skill passports, and optimize
workforce decisions.
## What is the Everday API?
The **Everday API** enables organizations to **manage and assess workforce skills** through structured skill passports, smart matching, and proficiency insights.
The API is designed to help businesses:
* Track and manage workforce skills efficiently.
* Conduct skill assessments and generate structured insights.
* Enable smart workforce planning and decision-making.
For detailed information, see the relevant sections on **Authentication**, **Localization**, and specific API endpoints.
# Localization
Source: https://developers.ever.day/api-reference/localization
Language support in the Everday API
## Localization
The Everday API supports multiple languages to ensure a seamless experience for different users. You can specify the desired response language by including the `Accept-Language` header in your request.
### Supported Languages
| Language | Code |
| ----------------- | ---- |
| English (default) | `en` |
| Dutch | `nl` |
### Using the `Accept-Language` Header
To receive API responses in a specific language, include the `Accept-Language` header in your request. If the header is omitted or contains an unsupported value, the API defaults to **English (`en`)**.
#### **Example Request (Dutch Response)**
```bash theme={null}
curl -X GET "https://api.ever.day/skillsets" \
-H "x-api-key: YOUR_API_KEY" \
-H "Accept-Language: nl"
```
# Create Onboarding Token
Source: https://developers.ever.day/api-reference/onboarding/create-onboarding-token
post /onboarding/token
Generates an onboarding token, returning a unique link with a signature.
The API consumer is responsible for sending the invitation or redirecting users to this link.
# Get Onboarding Token
Source: https://developers.ever.day/api-reference/onboarding/get-onboarding-token
get /onboarding/token/{publicIdentifier}
Retrieves the onboarding token details and status for a user.
# Revoke Onboarding Token
Source: https://developers.ever.day/api-reference/onboarding/revoke-onboarding-token
delete /onboarding/token/{publicIdentifier}
Revokes an onboarding token, invalidating the onboarding link.
# Get Profile Details
Source: https://developers.ever.day/api-reference/profiles/get-profile-details
get /profiles/{publicIdentifier}
Retrieves detailed information about a specific profile, including certifications, education, and work history. **This endpoint does not include smart match results.**
# Get Skillset Details
Source: https://developers.ever.day/api-reference/skillsets/get-skillset-details
get /skillsets/{id}
Retrieve detailed information about a specific skillset, including its associated skills.
# List Skillsets
Source: https://developers.ever.day/api-reference/skillsets/list-skillsets
get /skillsets
Retrieve a list of all available skillsets. This endpoint returns only the `id`, `name`, and `description` of each skillset.
# Get Smart Match Results
Source: https://developers.ever.day/api-reference/smart-match/get-smart-match-results
get /smart-match/{publicIdentifier}/{skillsetId}
Retrieve the smart match results for a specific passport and skillset.
# Initiate Smart Matches
Source: https://developers.ever.day/api-reference/smart-match/initiate-smart-match
post /smart-match
Starts a smart match process for a given passport and a list of skillsets.
The results will be sent via a webhook.
# Introduction
Source: https://developers.ever.day/api-reference/webhook/introduction
Learn how to receive real-time updates from Everday via webhooks
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.
## 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.
Contact Everday Support to register or update your webhook URL.
***
## 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"
}
}'
```
# Receive Webhook Events
Source: https://developers.ever.day/api-reference/webhook/receive-webhook-events
post /webhook
Everday will send a POST request to this endpoint whenever a relevant event occurs. Clients must implement a listener to process these events.