# Update custom field

This endpoint updates a custom field.

Endpoint: PUT /v3/companies/{companyId}/custom-fields/{customFieldId}
Version: v3
Security: Bearer

## Security:

  - `Bearer` (unknown)
    http bearer

## Path parameters:

  - `companyId` (string, required)
    Identifier for company.

  - `customFieldId` (string, required)
    Identifier for custom field.

## Request fields (application/json):

  - `id` (string, required)
    Custom field id.

  - `name` (string, required)
    Name of this field to be viewed by the user and consumed by mid-office systems.
    Example: Air Reason Code

  - `description` (object)
    User-facing description of the custom field.

  - `description.value` (string, required)
    Description of the custom field.
    Example: This field will capture the reason for out of policy booking

  - `includeLocations` (array)

  - `managementTags` (array)

  - `managementTags.key` (string, required)
    The name or identifier of the tag.
    Example: OOP Reason Code

  - `managementTags.value` (string, required)
    The display name of the tag, used as an alternative on the management page.
    Example: Out of Policy Code

  - `respondOnlyOnceLevel` (string)
    User can respond this field only once at given level.
    Enum: "TRIP"

  - `captureStep` (string)
    Point in the booking flow at which a custom field's answer is captured.
    Enum: "AT_CHECKOUT", "AFTER_SEARCH_CLICK", "BEFORE_SEARCH_CRITERIA"

## Response 200:

  - `200` (unknown)
    Updated Successfully

## Response 400:

  - `400` (unknown)
    Bad request

## Response 400 fields (application/json):

  - `debugIdentifier` (string)
    Link to debug the error internally.

  - `errorMessages` (array)

  - `errorMessages.errorCode` (string)
    Error code to identify the specific errors.

  - `errorMessages.message` (string)
    Message containing details of error.

  - `errorMessages.errorParameters` (array)
    Error message parameters.

  - `errorMessages.errorParameters.name` (string)
    Parameter name

  - `errorMessages.errorParameters.value` (string)
    Parameter value

  - `errorMessages.errorDetail` (string)
    More details about the error.

## Response 401:

  - `401` (unknown)
    Unauthorized

## Response 401 fields (application/json):

  - `debugIdentifier` (string)
    Link to debug the error internally.

  - `errorMessages` (array)

  - `errorMessages.errorCode` (string)
    Error code to identify the specific errors.

  - `errorMessages.message` (string)
    Message containing details of error.

  - `errorMessages.errorParameters` (array)
    Error message parameters.

  - `errorMessages.errorParameters.name` (string)
    Parameter name

  - `errorMessages.errorParameters.value` (string)
    Parameter value

  - `errorMessages.errorDetail` (string)
    More details about the error.

## Response 403:

  - `403` (unknown)
    Forbidden

## Response 403 fields (application/json):

  - `debugIdentifier` (string)
    Link to debug the error internally.

  - `errorMessages` (array)

  - `errorMessages.errorCode` (string)
    Error code to identify the specific errors.

  - `errorMessages.message` (string)
    Message containing details of error.

  - `errorMessages.errorParameters` (array)
    Error message parameters.

  - `errorMessages.errorParameters.name` (string)
    Parameter name

  - `errorMessages.errorParameters.value` (string)
    Parameter value

  - `errorMessages.errorDetail` (string)
    More details about the error.

## Response 404:

  - `404` (unknown)
    The specified resource was not found.

## Response 404 fields (application/json):

  - `debugIdentifier` (string)
    Link to debug the error internally.

  - `errorMessages` (array)

  - `errorMessages.errorCode` (string)
    Error code to identify the specific errors.

  - `errorMessages.message` (string)
    Message containing details of error.

  - `errorMessages.errorParameters` (array)
    Error message parameters.

  - `errorMessages.errorParameters.name` (string)
    Parameter name

  - `errorMessages.errorParameters.value` (string)
    Parameter value

  - `errorMessages.errorDetail` (string)
    More details about the error.

