---
title: "Create a ticket type"
method: POST
path: "/ticket_types"
tags: ["Ticket Types"]
---

# Create a ticket type

`POST /ticket_types`

You can create a new ticket type.
> 📘 Creating ticket types.
>
> Every ticket type will be created with two default attributes: _default_title_ and _default_description_.
> For the `icon` propery, use an emoji from [Twemoji Cheatsheet](https://twemoji-cheatsheet.vercel.app/)

## Headers

- `Intercom-Version` '1.0' | '1.1' | '1.2' | '1.3' | '1.4' | '2.0' | '2.1' | '2.2' | '2.3' | '2.4' | '2.5' | '2.6' | '2.7' | '2.8' | '2.9' | '2.10' | '2.11' | '2.12' | '2.13' | '2.14' — Intercom API version.</br>By default, it's equal to the version set in the app package.

## Request body

- CreateTicketTypeRequest, nullable — The request payload for creating a ticket type. You can copy the `icon` property for your ticket type from [Twemoji Cheatsheet](https://twemoji-cheatsheet.vercel.app/)
  - `name` string, required — The name of the ticket type.
  - `description` string — The description of the ticket type.
  - `category` 'Customer' | 'Back-office' | 'Tracker' — Category of the Ticket Type.
  - `icon` string — The icon of the ticket type.
  - `is_internal` boolean — Whether the tickets associated with this ticket type are intended for internal use only or will be shared with customers. This is currently a limited attribute.

## Response `200`

Ticket type created

- TicketType, nullable — A ticket type, used to define the data fields to be captured in a ticket.
  - `type` string — String representing the object's type. Always has the value `ticket_type`.
  - `id` string — The id representing the ticket type.
  - `category` 'Customer' | 'Back-office' | 'Tracker' — Category of the Ticket Type.
  - `name` string — The name of the ticket type
  - `description` string — The description of the ticket type
  - `icon` string — The icon of the ticket type
  - `workspace_id` string — The id of the workspace that the ticket type belongs to.
  - `ticket_type_attributes` TicketTypeAttributeList — A list of attributes associated with a given ticket type.
    - `type` string — String representing the object's type. Always has the value `ticket_type_attributes.list`.
    - `ticket_type_attributes` TicketTypeAttribute[] — A list of ticket type attributes associated with a given ticket type.
      - `type` string — String representing the object's type. Always has the value `ticket_type_attribute`.
      - `id` string — The id representing the ticket type attribute.
      - `workspace_id` string — The id of the workspace that the ticket type attribute belongs to.
      - `name` string — The name of the ticket type attribute
      - `description` string — The description of the ticket type attribute
      - `data_type` string — The type of the data attribute (allowed values: "string list integer decimal boolean datetime files")
      - `input_options` object — Input options for the attribute
      - `order` integer — The order of the attribute against other attributes
      - `required_to_create` boolean — Whether the attribute is required or not for teammates.
      - `required_to_create_for_contacts` boolean — Whether the attribute is required or not for contacts.
      - `visible_on_create` boolean — Whether the attribute is visible or not to teammates.
      - `visible_to_contacts` boolean — Whether the attribute is visible or not to contacts.
      - `default` boolean — Whether the attribute is built in or not.
      - `ticket_type_id` integer — The id of the ticket type that the attribute belongs to.
      - `archived` boolean — Whether the ticket type attribute is archived or not.
      - `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.
  - `ticket_states` object — A list of ticket states associated with a given ticket type.
    - `type` string — String representing the object's type. Always has the value `list`.
    - `data` TicketState[] — A list of ticket states associated with a given ticket type.
      - `type` string — String representing the object's type. Always has the value `ticket_state`.
      - `id` string — The id of the ticket state
      - `category` 'submitted' | 'in_progress' | 'waiting_on_customer' | 'resolved' — The category of the ticket state
      - `internal_label` string — The state the ticket is currently in, in a human readable form - visible in Intercom
      - `external_label` string — The state the ticket is currently in, in a human readable form - visible to customers, in the messenger, email and tickets portal.
  - `archived` boolean — Whether the ticket type is archived or not.
  - `created_at` integer — The date and time the ticket type was created.
  - `updated_at` integer — The date and time the ticket type was last updated.

## Other responses

- `401` — Unauthorized

---

[API](https://skmtc.dev/intercom/apis/intercom-api.md) · [All operations](https://skmtc.dev/intercom/apis/intercom-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/intercom/intercom-api/revisions/22f103e7e006/schema)
