# Retrieve form URL

Retrieve URL for a form

Endpoint: POST /forms/{form_id}/urls
Version: 1.0
Security: API-Key

## Security:

  - `API-Key` (unknown)
    apiKey in header API-Key

## Path parameters:

  - `form_id` (string | null, required)

## Request 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
    Example: da0ebf0ade0bfad0ebf0adeb0fade0bfad0e

  - `external_applicant_id` (string | null)
    A unique identifier of your user in your system
    Example: ad0ebf0a-de0b-fad0-ebf0-adeb0fade0bf

  - `redirect_url` (string | null)
    The URL in your system to which a user will be redirected after completing and submitting a form
    Example: https://kyc.example.com/complete

## Response 200:

  - `200` (unknown)
    **OK**
The request was successful, and our system returned an expected response.

## Response 200 fields (application/json):

  - `form_id` (string | null)
    A unique identifier of a form, assigned by our system after it is created in the Dashboard
    Example: da0ebf0ade0bfad0ebf0adeb0fade0bfad0e

  - `form_url` (string)
    A one-time URL to a form that includes a form token. The form remains open for completion via the URL until a user completes it
    Example: https://forms-new.kycaid.com/da0ebf0ade0bfad0ebf0adeb0fade0bfad0e

  - `verification_id` (string | null)
    A unique identifier for a verification, assigned by our system after a verification is created using the “Create a verification" request
    Example: da0ebf0ade0bfad0ebf0adeb0fade0bfad0e

  - `form_token` (string)
    A unique token for a form, generated by our system, and included as part of a form URL
    Example: da0ebf0ade0bfad0ebf0adeb0fade0bfad0e

  - `verification_attempts_left` (integer | null)
    A number of verification attempts available for a user, set in form settings in the Dashboard. A `null` value means “not limited”. It equals `0` if set in the settings
    Example: 5

## Response 400:

  - `400` (unknown)
    **Bad Request**
Our system could not process the request due to invalid syntax, missing parameters, or incorrect data format. Check the request structure and try again.

## Response 400 fields (application/json):

  - `type` (string)
    Example: bad_request

  - `errors` (array)

## Response 402:

  - `402` (unknown)
    **Payment Required**
Access to the requested resource is restricted until a payment is successfully processed. Ensure your account has a valid payment method or sufficient funds to complete this action.

## Response 402 fields (application/json):

  - `type` (string)
    Example: insufficient_funds

  - `errors` (array)

## Response 404:

  - `404` (unknown)
    **Not Found**
The requested resource does not exist or can’t be found in our system.

## Response 404 fields (application/json):

  - `type` (string)
    Example: not_found

  - `errors` (array)

  - `errors.parameter` (string)
    Example: form_id

  - `errors.message` (string)
    Example: Form was not found

## Response 409:

  - `409` (unknown)
    **409 Conflict**
The error is returned by our system when a request can’t be processed due to a conflict with the current state of the resource.

## Response 409 fields (application/json):

  - `type` (string)
    Example: flow

  - `errors` (array)

  - `errors.parameter` (string)
    Example: applicant_id

  - `errors.message` (string)
    Example: Applicant is not compatible with this form

## Response 422:

  - `422` (unknown)
    **Unprocessable Content**
Our system understands the request but can’t process it due to invalid fields in the request body.

## Response 422 fields (application/json):

  - `type` (string)
    Example: validation

  - `errors` (array)

  - `errors.parameter` (string)
    Example: form_id

  - `errors.message` (string)
    Example: Form ID is not valid.

## Response 429:

  - `429` (unknown)
    **Too Many Requests**
This response indicates that a user has sent too many requests in a given amount of time.

## Response 429 fields (application/json):

  - `type` (string)
    Example: flow

  - `errors` (array)

  - `errors.parameter` (string)
    Example: limit_exceeded

  - `errors.message` (string)
    Example: Rate limit exceeded

## Response 500:

  - `500` (unknown)
    **Internal Server Error**
This response indicates that our system encountered an unexpected condition that prevented it from fulfilling the request.

## Response 500 fields (application/json):

  - `type` (string)
    Example: internal_server

  - `errors` (array)

## Response 502:

  - `502` (unknown)
    **Bad Gateway**
This response indicates that our system is unable to reach or communicate properly with an upstream server it relies on, the URL provided is incorrect, or a required token is missing from the request.

