# Clean Employee API

## Overview

This section covers basic information on the Clean Employee API endpoints.\
To learn more about the API and its endpoints, follow the links below:

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>Clean Employee API endpoints</td><td><a href="#clean-employee-endpoints">#clean-employee-endpoints</a></td></tr><tr><td>Request types</td><td><a href="#request-types">#request-types</a></td></tr><tr><td>Rate limits</td><td><a href="#rate-limits">#rate-limits</a></td></tr><tr><td>Credits</td><td><a href="#credits">#credits</a></td></tr></tbody></table>

## Clean Employee endpoints

Clean Employee API features **two search** and **two collect** endpoints.\
Use the endpoints with any API-compatible application to retrieve Clean Employee data.

| Request type | Endpoint                                                     | Function                                                             |
| ------------ | ------------------------------------------------------------ | -------------------------------------------------------------------- |
| POST         | */v2/employee\_clean/search/es\_dsl*                         | Search for relevant employee profiles using Elasticsearch DSL schema |
| POST         | */v2/employee\_clean/search/es\_dsl/preview*                 | Retrieves a small set of partial data using Elasticsearch queries    |
| GET          | */v2/employee\_clean/collect/{employee\_id}*                 | Collect employee data using IDs                                      |
| GET          | */v2/employee\_clean/collect/{profile\_url/shorthand\_name}* | Collect Clean Employee data using profile URLs or shorthand names\*  |

\*📌 Full profile URL example: [www.professional-network.com/john-doe.\\](http://www.professional-network.com/john-doe.\\)
Shorthand name example: john-doe.

### Bulk Collect

Use the following endpoints to retrieve Clean Employee API data in bulk:

| Request type | Endpoint and function                                       |
| ------------ | ----------------------------------------------------------- |
| POST         | */v2/data\_requests/employee\_clean/id\_file*               |
| POST         | */v2/data\_requests/employee\_clean/es\_dsl*                |
| POST         | */v2/data\_requests/employee\_clean/shorthand\_names*       |
| POST         | */v2/data\_requests/employee\_clean/urls*                   |
| GET          | */v2/data\_requests/{data\_request\_id}/files*              |
| GET          | */v2/data\_requests/{data\_request\_id}/files/{file\_name}* |

### Webhook subscriptions

Webhooks enable you to receive automatic, event-driven notifications when changes are detected in your subscribed employee profiles.

Use the following endpoints to subscribe to profile changes in employee data:

| Request type | Endpoint                                    |
| ------------ | ------------------------------------------- |
| POST         | */v2/subscriptions/employee\_clean/es\_dsl* |
| POST         | */v2/subscriptions/employee\_clean/ids*     |

And use the following endpoints to subscribe to employee experience updates:

| Request type | Endpoint                                                        |
| ------------ | --------------------------------------------------------------- |
| POST         | */v2/subscriptions/experience\_changes/employee\_clean/es\_dsl* |
| POST         | */v2/subscriptions/experience\_changes/employee\_clean/ids*     |
| POST         | */v2/subscriptions/experience\_changes/employee\_clean/all*     |

Learn more about <a href="clean-employee-api/endpoints/webhook-subscriptions" class="button secondary">Webhook subscriptions</a>

## Request types

{% hint style="warning" %}
All Clean Employee API requests must be made over HTTPS. Requests made over HTTP will fail or be redirected to HTTPS.
{% endhint %}

Clean data API supports two types of requests:

* **Search** endpoints support POST requests only.
* **Collect** endpoints support the GET requests only.

| Request type | Endpoint and function                                        |
| ------------ | ------------------------------------------------------------ |
| POST         | */v2/employee\_clean/search/es\_dsl*                         |
| POST         | */v2/employee\_clean/search/es\_dsl/preview*                 |
| GET          | */v2/employee\_clean/collect/{employee\_id}*                 |
| GET          | */v2/employee\_clean/collect/{profile\_url/shorthand\_name}* |

## Rate limits

Clean Employee API endpoints restrict the requests allowed per second.

{% columns %}
{% column %}
Search endpoints

Collection endpoints

Bulk Collect search and collection endpoints
{% endcolumn %}

{% column %}
18 requests per second

54 requests per second

27 requests per second
{% endcolumn %}
{% endcolumns %}

## Credits

**One** search **credit** is deducted for **one** **successful** (200) **request** in the search endpoints:

* */v2/employee\_clean/search/es\_dsl*
* */v2/employee\_clean/search/es\_dsl/preview*

**One** collect **credit** is deducted for **one** **successful** (200) **request** in the collection endpoints:

* */v2/employee\_clean/collect/{employee\_id}*
* */v2/employee\_clean/collect/{profile\_url/shorthand\_name}*

{% hint style="warning" %}
Remember that making one Bulk Collect request will consume more credits as you get bigger data batches.
{% endhint %}

***

Read more about the credits in the following topic:

<table data-view="cards"><thead><tr><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td>General information about credits</td><td><a href="../api-introduction/credits">credits</a></td></tr></tbody></table>
