# Update an existing attribute for a ticket type

You can update an existing attribute for a ticket type.

Endpoint: PUT /ticket_types/{ticket_type_id}/attributes/{id}
Version: Preview
Security: bearerAuth

## Path parameters:

  - `ticket_type_id` (string, required)
    The unique identifier for the ticket type which is given by Intercom.

  - `id` (string, required)
    The unique identifier for the ticket type attribute which is given by Intercom.

## Header parameters:

  - `Intercom-Version` (string)

## Request fields (application/json):

  - `name` (string)
    The name of the ticket type attribute
    Example: Bug Priority

  - `description` (string)
    The description of the attribute presented to the teammate or contact
    Example: Priority level of the bug

  - `required_to_create` (boolean)
    Whether the attribute is required to be filled in when teammates are creating the ticket in Inbox.
    Example: false

  - `required_to_create_for_contacts` (boolean)
    Whether the attribute is required to be filled in when contacts are creating the ticket in Messenger.
    Example: false

  - `visible_on_create` (boolean)
    Whether the attribute is visible to teammates when creating a ticket in Inbox.
    Example: true

  - `visible_to_contacts` (boolean)
    Whether the attribute is visible to contacts when creating a ticket in Messenger.
    Example: true

  - `multiline` (boolean)
    Whether the attribute allows multiple lines of text (only applicable to string attributes)
    Example: false

  - `list_items` (string)
    A comma delimited list of items for the attribute value (only applicable to list attributes)
    Example: Low Priority,Medium Priority,High Priority

  - `allow_multiple_values` (boolean)
    Whether the attribute allows multiple files to be attached to it (only applicable to file attributes)
    Example: false

  - `archived` (boolean)
    Whether the attribute should be archived and not shown during creation of the ticket (it will still be present on previously created tickets)
    Example: false

## Response 200 fields (application/json):

  - `type` (string)
    String representing the object's type. Always has the value `ticket_type_attribute`.
    Example: ticket_type_attribute

  - `id` (string)
    The id representing the ticket type attribute.
    Example: 1

  - `workspace_id` (string)
    The id of the workspace that the ticket type attribute belongs to.
    Example: ecahpwf5

  - `name` (string)
    The name of the ticket type attribute
    Example: Title

  - `description` (string)
    The description of the ticket type attribute
    Example: Bug title.

  - `data_type` (string)
    The type of the data attribute (allowed values: "string list integer decimal boolean datetime files")
    Example: string

  - `input_options` (object)
    Input options for the attribute
    Example: multiline: true

  - `order` (integer)
    The order of the attribute against other attributes
    Example: 1

  - `required_to_create` (boolean)
    Whether the attribute is required or not for teammates.
    Example: false

  - `required_to_create_for_contacts` (boolean)
    Whether the attribute is required or not for contacts.
    Example: false

  - `visible_on_create` (boolean)
    Whether the attribute is visible or not to teammates.
    Example: false

  - `visible_to_contacts` (boolean)
    Whether the attribute is visible or not to contacts.
    Example: false

  - `default` (boolean)
    Whether the attribute is built in or not.
    Example: true

  - `ticket_type_id` (integer)
    The id of the ticket type that the attribute belongs to.
    Example: 42

  - `archived` (boolean)
    Whether the ticket type attribute is archived or not.
    Example: false

  - `created_at` (integer)
    The date and time the ticket type attribute was created.

  - `updated_at` (integer)
    The date and time the ticket type attribute was last updated.

## Response 401 fields (application/json):

  - `type` (string, required)
    The type is error.list
    Example: error.list

  - `request_id` (string)
    Example: f93ecfa8-d08a-4325-8694-89aeb89c8f85

  - `errors` (array, required)
    An array of one or more error objects

  - `errors.code` (string, required)
    A string indicating the kind of error, used to further qualify the HTTP response code
    Example: unauthorized

  - `errors.message` (string)
    Optional. Human readable description of the error.
    Example: Access Token Invalid

  - `errors.field` (string)
    Optional. Used to identify a particular field or query parameter that was in error.
    Example: email

