# Update an identification document

Update an existing identification document on a personal profile. Not
applicable to business profiles.

This endpoint performs a full replacement of the document details. Any
fields not provided in the request body will be set to null on the stored
document. Partners must provide all fields they wish to retain. 

Only partners with a KYC partner onboarding model
are permitted to use this endpoint. Non-KYC partners will receive a 400 error.

Endpoint: PUT /v1/profiles/{profileId}/verification-documents
Security: UserToken

## Path parameters:

  - `profileId` (integer, required)
    Profile ID.

## Request fields (application/json):

  - `clientId` (string, required)
    The partner's client ID.
    Example: "mercury"

  - `firstName` (string)
    Person first name in document.
    Example: "Oliver"

  - `lastName` (string)
    Person last name in document.
    Example: "Wilson"

  - `type` (string, required)
    Document type.
    Enum: "DRIVERS_LICENCE", "IDENTITY_CARD", "GREEN_CARD", "MY_NUMBER", "PASSPORT", "SSN", "EMIRATES_EMPLOYER", "EMIRATES_PLACE_OF_BIRTH", "CPF_CNPJ", "FINANCIAL_CAPACITY_BR", "OTHER"

  - `uniqueIdentifier` (string)
    Document number or value. Must be digits only when SSN or FINANCIAL_CAPACITY_BR.
    Example: "AA299822313"

  - `issueDate` (string)
    Document issue date.
    Example: "2017-12-31"

  - `issuerCountry` (string)
    Issued by country code. For example "US".
    Example: "EE"

  - `issuerState` (string)
    Issued by state code. For example "NY".

  - `expiryDate` (string)
    Document expiry date.
    Example: "2027-12-31"

  - `nationality` (string)
    2 characters ISO country code.

  - `sex` (string)
    Sex as stated in the document.
    Enum: "MALE", "FEMALE"

  - `placeOfBirth` (string)
    Place of birth as stated in the document.
    Example: "London"

## Response 200 fields (application/json):

  - `errorMessage` (string,null)

  - `success` (boolean)
    Example: true

## Response 400 fields (application/json):

  - `errors` (array)

  - `errors.code` (string)
    Example: "not.allowed.for.clientId"

  - `errors.message` (string)

  - `errors.field` (string)


