# Candidates

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates" method="get" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates" method="post" expanded="true" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

This endpoint allows for the creation of candidate profiles directly within TalentLyft, either associated with a specific job or without being linked to any job. This functionality can be particularly useful in several scenarios:

**Using Your Custom Application Form:** If your website hosts a custom job application form that you prefer to continue using, you can enable candidates to apply through your form. Subsequently, you can utilize this API to seamlessly import the candidate details into your TalentLyft account.

**Migrating Existing Candidates:** For those who already have a candidate database, whether in a spreadsheet or another system, this API provides an efficient method to transfer all those candidate profiles into TalentLyft.

**Integrating with Other Systems:** This API facilitates the integration of TalentLyft with any other system that maintains people profiles, allowing for a smooth transfer of these profiles into TalentLyft.

By leveraging this API, you can ensure a streamlined process of managing and creating candidate profiles, enhancing your recruitment workflow.

### **Request Body**

| Name                   | Type    | Description                                                                                |
| ---------------------- | ------- | ------------------------------------------------------------------------------------------ |
| FirstName              | string  | The candidate’s first name                                                                 |
| LastName               | string  | The candidate’s last name                                                                  |
| JobId                  | integer | Job id                                                                                     |
| StageId                | integer | Stage id, if not provided applied                                                          |
| Applied                | boolean | Candidates are considered as applied and receiving the "thank you for applying" email.     |
| IsProspect             | boolean | Candidates are considered as sourced and not receiving the "thank you for applying" email. |
| Disqualified           | boolean | If `true`, it will mark the candidate as diqualified                                       |
| DisqualifiedAt         | string  | If you leave this field empty, we will use the current timestamp                           |
| DisqualificationReason | integer | The candidate’s disqualification reason id                                                 |
| Created                | string  | ISO 8601                                                                                   |
| CoverLetter            | string  | The candidate’s cover letter                                                               |
| Summary                | string  | The candidate’s summary                                                                    |
| Title                  | string  | The candidate’s job title                                                                  |
| Company                | string  | The candidate’s company                                                                    |
| Location               | object  | Explained below                                                                            |
| Avatar                 | object  | Explained below                                                                            |
| Tags                   | array   | Array of tags as strings                                                                   |
| Skills                 | array   | Array of skills as strings                                                                 |
| Resume                 | object  | Candidate’s resume. Explained below.                                                       |
| Attachments            | array   | Explained below                                                                            |
| Emails                 | array   | Array of emails. Explained below                                                           |
| PhoneNumbers           | array   | Array of phone numbers. Explained below                                                    |
| SocialNetworks         | array   | Array of website/social network addresses. Explained below                                 |
| Answers                | array   | Explained below                                                                            |
| Projects               | array   | Explained below                                                                            |
| Experiences            | array   | Explained below                                                                            |
| Educations             | array   | Explained below                                                                            |
| Languages              | array   | Explained below                                                                            |
| Source                 | object  | Explained below                                                                            |
| Compliance             | object  | Explained below                                                                            |

### Candidate's avatar <a href="#candidates-avatar" id="candidates-avatar"></a>

Candidate’s avatar is a object.

| Parameter   | Required | Type     | Description                                                                                                                            |
| ----------- | -------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| FileName    | no       | `string` | Name of the image file with extension (resume.pdf, cv.docx)                                                                            |
| Content     | yes\*    | `string` | Base64 encoded content of the attachment (if you are providing content, you do not need to provide url). String must be UTF-8 encoded. |
| Url         | yes\*    | `string` | Url of the image (if you are providing the url, you do not need to provide the content).                                               |
| ContentType | no       | `string` | MIME type, one of the following types: `image/jpeg`, `image/png`                                                                       |

### Candidate's resume <a href="#candidates-resume" id="candidates-resume"></a>

Candidate’s resume is a object.

| Parameter   | Required | Type     | Description                                                                                                                                                                        |
| ----------- | -------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FileName    | yes      | `string` | Name of the file with extension (resume.pdf, cv.docx)                                                                                                                              |
| Content     | yes\*    | `string` | Base64 encoded content of the attachment (if you are providing content, you do not need to provide url). String must be UTF-8 encoded.                                             |
| Url         | yes\*    | `string` | Url of the resume (if you are providing the url, you do not need to provide the content).                                                                                          |
| ContentType | no       | `string` | MIME type, one of the following types: `text/html`, `text/plain`, `application/pdf`, `application/msword, application/vnd.openxmlformats-officedocument.wordprocessingml.document` |

### Candidate's attachments <a href="#candidates-attachments" id="candidates-attachments"></a>

Candidate’s attachment is a list of entries. Each entry containing the following fields:

| Parameter   | Required | Type     | Description                                                                                                                                                                                                                            |
| ----------- | -------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| FileName    | yes      | `string` | Name of the file with extension (resume.pdf, cv.docx)                                                                                                                                                                                  |
| Content     | yes\*    | `string` | Base64 encoded content of the attachment (if you are providing content, you do not need to provide url). String must be UTF-8 encoded.                                                                                                 |
| Url         | yes\*    | `string` | Url of the attachment (if you are providing the url, you do not need to provide the content).                                                                                                                                          |
| ContentType | no       | `string` | MIME type, one of the following types: `text/html`, `text/plain`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/pdf`, `application/zip`, `application/x-7z-compressed` |

### Candidate's location <a href="#candidates-location" id="candidates-location"></a>

Candidate’s location is a object.

| Parameter   | Required | Type     | Description                                                    |
| ----------- | -------- | -------- | -------------------------------------------------------------- |
| CountryCode | yes      | `string` | [ISO 3166-1](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) |
| City        | yes\*    | `string` | City                                                           |
| ZipCode     | yes\*    | `string` | Zip code                                                       |
| Address     | no       | `string` | Full address                                                   |

### Candidate's emails <a href="#candidates-emails" id="candidates-emails"></a>

Candidate’s email is a list of entries. Each entry containing the following fields:

| Parameter | Required | Type     | Description                                                            |
| --------- | -------- | -------- | ---------------------------------------------------------------------- |
| Value     | yes      | `string` | The candidate's email                                                  |
| Type      | no       | `string` | One of the following types: `email`, `email_personal` or `email_work`. |

### Candidate's phones <a href="#candidates-phones" id="candidates-phones"></a>

Candidate’s phone is a list of entries. Each entry containing the following fields:

| Parameter | Required | Type     | Description                                                                        |
| --------- | -------- | -------- | ---------------------------------------------------------------------------------- |
| Value     | yes      | `string` | Name of the file with extension (resume.pdf, cv.docx)                              |
| Type      | no       | `string` | One of the following types: `phone`, `phone_mobile`, `phone_home` and `phone_work` |

### Candidate's social networks <a href="#candidates-social-networks" id="candidates-social-networks"></a>

Candidate’s social networks is a list of entries. Each entry containing the following fields:

| Parameter | Required | Type     | Description                                                                                                                                                                                                                                                                                                                                                                                 |
| --------- | -------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Value     | yes      | `string` | The candidate's URL                                                                                                                                                                                                                                                                                                                                                                         |
| Type      | yes\*    | `string` | One of the following types: `angellist`, `aboutme`, `crunchbase`, `behance`, `bitbucket`, `dribble`, `facebook`, `github`, `googleplus`, `linkedin`, `meetup`, `mixcloud`, `pinterest`, `quora`, `reddit`, `slideshare`, `soundcloud`, `stackexchange`, `stackoverflow`, `stumbleupon`, `tumblr`, `twitter`, `vimeo`, `vk`, `xing`, `youtube`, `instagram`, `klout`, `codeproject`, `other` |

### Candidate's answers <a href="#candidates-answers" id="candidates-answers"></a>

Each talentlyft job can have a list of associated questions that can be retrieved from the `/jobs/:id/form` endpoint. For each question, an answer can be provided by adding the answers list in the posted data. For each question, add to the answers list the following attributes based on question’s type.

**Questions types: `text`, `textarea`, `address`, `date`, `url`**

| Parameter | Required | Type     | Description                |
| --------- | -------- | -------- | -------------------------- |
| Id        | yes      | `int`    | The question key           |
| Body      | yes      | `string` | One of the following types |

**Questions types: `checkbox`, `radio`, `select`, `yesNo`**

| Parameter | Required | Type    | Description                                                                                      |
| --------- | -------- | ------- | ------------------------------------------------------------------------------------------------ |
| Id        | yes      | `int`   | The question key                                                                                 |
| Choices   | yes      | `array` | Choices ids, for single answer questions (radio, select, yesNo) provide only one selected choice |

**Questions types: `file`**

| Required         | Type  | Description |                                                                                                                                                                                                                                        |
| ---------------- | ----- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Id               | yes   | `string`    | The question key                                                                                                                                                                                                                       |
| File.FileName    | yes   | `string`    | Name of the file with extension (resume.pdf, cv.docx)                                                                                                                                                                                  |
| File.Content     | yes\* | `string`    | Base64 encoded content of the attachment (if you are providing content, you do not need to provide url). String must be UTF-8 encoded.                                                                                                 |
| File.Url         | yes\* | `string`    | Url of the answer (if you are providing the url, you do not need to provide the content).                                                                                                                                              |
| File.ContentType | no    | `string`    | MIME type, one of the following types: `text/html`, `text/plain`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document`, `application/pdf`, `application/zip`, `application/x-7z-compressed` |

### Candidate's projects <a href="#candidates-projects" id="candidates-projects"></a>

Candidate’s project is a list of entries. Each entry containing the following fields:

| Parameter   | Required | Type     | Description                                        |
| ----------- | -------- | -------- | -------------------------------------------------- |
| ProjectName | yes      | `string` |                                                    |
| ProjectUrl  | no       | `string` |                                                    |
| Description | no       | `string` |                                                    |
| From        | no       | `date`   | [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) |
| To          | no       | `date`   | [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) |

### Candidate's experiences <a href="#candidates-experiences" id="candidates-experiences"></a>

Candidate’s experience is a list of entries. Each entry containing the following fields:

| Parameter   | Required | Type     | Description                                        |
| ----------- | -------- | -------- | -------------------------------------------------- |
| Title       | yes      | `string` |                                                    |
| Company     | yes      | `string` |                                                    |
| Description | no       | `string` |                                                    |
| From        | no       | `date`   | [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) |
| To          | no       | `date`   | [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) |

### Candidate's education <a href="#candidates-education" id="candidates-education"></a>

Candidate’s education is a list of entries. Each entry containing the following fields:

| Parameter   | Required | Type     | Description                                        |
| ----------- | -------- | -------- | -------------------------------------------------- |
| Institution | yes      | `string` |                                                    |
| Degree      | yes      | `string` |                                                    |
| Description | no       | `string` |                                                    |
| From        | no       | `date`   | [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) |
| To          | no       | `date`   | [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) |

### Candidate's languages <a href="#candidates-languages" id="candidates-languages"></a>

Candidate’s language is a list of entries. Each entry containing the following fields:

| Parameter           | Required | Type     | Description                                                                                                           |
| ------------------- | -------- | -------- | --------------------------------------------------------------------------------------------------------------------- |
| LanguageIso         | yes      | `string` | [ISO 3166-1](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) alpha-2 code                                           |
| LanguageProficiency | yes      | `string` | One of the following types: `elementary`, `limited_working`, `professional_working`, `full_professional` and `native` |

### Candidate's source <a href="#candidates-source" id="candidates-source"></a>

| Parameter  | Required | Type     | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| ---------- | -------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| SourceType | no       | `string` | <p>One of the following types:</p><ul><li><code>JobBoard</code> - job board</li><li><code>Recruiter</code> - external recruiter</li><li><code>Referral</code> - employee referral</li><li><code>CareersPage</code> - organic, direct traffic, referral url, JsWidget and other</li><li><code>Sourced</code> - sourced or manually uploaded</li><li><code>Social</code> - social network shares or FacebookTab App</li><li><code>Campaigns</code> - email or sms campaigns</li><li><code>Paid</code> - paid search, paid social...</li><li><code>CandidateRediscovery</code> - TalentLyft smart assistant</li></ul> |
| SourceBy   | no       | `string` | If `SourceType` is one of the following types: `Recruiter` or`Sourced`SourcBy must be Id of the team members. If `SourceType`is Referral SourceBy must be Employee uid                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| SourceFrom | no       | `string` | Job board name: Indeed, ZipRecruiter or social media: facebook, twitter.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |

### Compliance <a href="#compliance" id="compliance"></a>

| Parameter                 | Required | Type      | Description |
| ------------------------- | -------- | --------- | ----------- |
| Gdpr.RetentionConsent     | no       | `boolean` |             |
| Gdpr.PrivacyPolicyConsent | no       | `boolean` |             |
| Gdpr.ShareConsent         | no       | `boolean` |             |

#### &#x20; <a href="#undefined-3" id="undefined-3"></a>

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}" method="get" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}" method="put" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/tags" method="put" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/skills" method="put" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/note" method="post" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/log\_activity" method="post" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/evaluations" method="post" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/activities" method="get" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/applications/{applicationId}" method="get" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/applications/{applicationId}/education" method="post" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/applications/{applicationId}/education/{educationId}" method="put" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/applications/{applicationId}/education/{educationId}" method="delete" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/applications/{applicationId}/experience" method="post" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/applications/{applicationId}/experience/{experienceId}" method="put" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/applications/{applicationId}/experience/{experienceId}" method="delete" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/contacts" method="get" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/contacts" method="post" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/contacts/{contactId}" method="put" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}

{% openapi src="<https://api.talentlyft.com/swagger/v2/swagger.json>" path="/v2/candidates/{id}/contacts/{contactId}" method="delete" %}
<https://api.talentlyft.com/swagger/v2/swagger.json>
{% endopenapi %}
