# Create applicant

Create a new applicant object in the system

Endpoint: POST /applicants
Version: 1.0
Security: API-Key

## Request fields (application/json):

  - `body` (object) — one of:
    - KYC applicant (a person):
      - `type` (string, required)
        A type of an applicant object. PERSON type is used for KYC process, and COMPANY type is used for KYB process
        Enum: "PERSON"
      - `first_name` (string,null)
        The first name of a person
      - `middle_name` (string,null)
        The middle name of a person
      - `last_name` (string,null)
        The last name of a person
      - `dob` (string,null)
        The date of birth of a person, formatted as “YYYY-MM-DD” according to ISO 8601
      - `gender` (string,null)
        The gender of a person. M indicates male; F indicates female
        Enum: "M", "F"
      - `pep` (boolean,null)
        The status of a person as a politically exposed person (PEP)
        Enum: true, false
      - `residence_country` (string,null)
        A residence country of an object. A two-letter country code according to ISO 3166-2
      - `nationality` (string,null)
        A nationality country of a person. A two-letter country code according to ISO 3166-2
      - `phone` (string,null)
        The phone number of a person or a company
      - `email` (string,null)
        The email address of a person or a company
      - `telegram_username` (string,null)
        A username of an object in Telegram instant messaging service
      - `wallet_address` (string,null)
        A cryptocurrency wallet address of an object
      - `external_applicant_id` (string,null)
        A unique identifier of your user in your system
      - `custom_field_1` (string,null)
        A custom parameter to store additional data for an object by your managers
      - `custom_field_2` (string,null)
        A custom parameter to store additional data for an object by your managers
      - `custom_field_3` (string,null)
        A custom parameter to store additional data for an object by your managers
      - `custom_field_4` (string,null)
        A custom parameter to store additional data for an object by your managers
      - `custom_field_5` (string,null)
        A custom parameter to store additional data for an object by your managers
    - KYB applicant (a company):
      - `type` (string, required)
        A type of an applicant object. PERSON type is used for KYC process, and COMPANY type is used for KYB process
        Enum: "COMPANY"
      - `company_name` (string, required)
        A name of a company
      - `business_activity_id` (string, required)
        A business activity identifier of a an object. The full list of business activities and their identifiers is accessible in “Business activities” section
      - `registration_country` (string,null, required)
        A registration country of an object. A two-letter country code according to ISO 3166-2
      - `phone` (string,null, required)
        The phone number of a person or a company
      - `email` (string,null, required)
        The email address of a person or a company
      - `external_applicant_id` (string,null)
        A unique identifier of your user in your system

## Response 200 fields (application/json):

  - `applicant_id` (string)
    A unique identifier of an applicant, that is assigned by our system after an applicant object was created with a “Create an applicant” request

## Response 400 fields (application/json):

  - `type` (string)
    Example: "bad_request"

  - `errors` (array)

## Response 402 fields (application/json):

  - `type` (string)
    Example: "insufficient_funds"

  - `errors` (array)

## Response 422 fields (application/json):

  - `type` (string)
    Example: "validation"

  - `errors` (array)

  - `errors.parameter` (string)
    Example: "parameter_name"

  - `errors.message` (string)
    Example: "parameter_name is not valid"

## Response 429 fields (application/json):

  - `type` (string)
    Example: "limit_exceeded"

  - `errors` (array)

  - `errors.message` (string)
    Example: "The limit for creating applicants has been exceeded (last minute)"

## Response 500 fields (application/json):

  - `type` (string)
    Example: "internal_server"

  - `errors` (array)


