> For the complete documentation index, see [llms.txt](https://docs.cekat.ai/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.cekat.ai/api-documentation/tickets/create-a-ticket.md).

# Create a ticket

Creates a ticket on a board from one of the board's templates. `status` and `priority` default to the template's defaults. If the template has a product field, send the products in `products`.

```json
{"openapi":"3.0.3","info":{"title":"Cekat Open API","version":"1.0.0"},"tags":[{"name":"Tickets","description":"Create, list and update support tickets and the products attached to them.\n\nBefore creating tickets, call `GET /api/ticket_settings` to get your ticket boards (each board's `id` is the `board_id`) and their status IDs, and `GET /api/ticket_templates` to get the templates for each board and their fields.\n\nPriority is a number: `0` Low, `1` Medium, `2` High, `3` Urgent. Status is a status `id` from the board's `statuses`, or `done`.\n"}],"servers":[{"url":"https://api.cekat.ai","description":"Production"}],"security":[{"CekatApiKey":[]},{"BearerAuth":[]}],"components":{"securitySchemes":{"CekatApiKey":{"type":"apiKey","in":"header","name":"api_key","description":"Your business's Cekat API key, from **Settings → Developers & API** in the Cekat dashboard (https://chat.cekat.ai/developers?section=apikeys). Available on the Business and Enterprise plans."},"BearerAuth":{"type":"http","scheme":"bearer","description":"The same Cekat API key, sent as `Authorization: Bearer YOUR_API_KEY`. Accepted only by endpoints under `/api/...`."}},"schemas":{"TicketFieldValue":{"type":"object","properties":{"field_name":{"type":"string","description":"The field's name from the ticket template."},"field_value":{"description":"The value. Its format depends on the field type."}}},"Ticket":{"type":"object","description":"A ticket. List responses also include the template, products and conversation. Additional fields may be present.","additionalProperties":true,"properties":{"id":{"type":"string","format":"uuid"},"public_ticket_id":{"type":"integer","description":"The ticket number shown in Cekat."},"board_id":{"type":"string","format":"uuid"},"ticket_template_id":{"type":"string","format":"uuid"},"title":{"type":"string"},"description":{"type":"string","nullable":true},"status":{"type":"string","description":"A status ID from the board's `statuses`, or `done`."},"priority":{"type":"integer","enum":[0,1,2,3],"description":"0 Low, 1 Medium, 2 High, 3 Urgent."},"field_values":{"type":"array","items":{"$ref":"#/components/schemas/TicketFieldValue"}},"assigned_to":{"type":"array","description":"Agent IDs assigned to the ticket.","items":{"type":"string"}},"attachments":{"type":"array","items":{"type":"string"}},"conversation_id":{"type":"string","format":"uuid","nullable":true},"created_by":{"type":"string","nullable":true},"created_at":{"type":"string","format":"date-time"},"updated_at":{"type":"string","format":"date-time"}}},"ApiError":{"type":"object","description":"Error body returned by the `/api/...` endpoints.","properties":{"success":{"type":"boolean"},"message":{"type":"string"},"statusCode":{"type":"integer"},"error":{"type":"object","properties":{"message":{"type":"string"}}},"correlationId":{"type":"string","description":"Request ID. Include it when contacting Cekat support."}}},"RateLimitError":{"type":"object","properties":{"message":{"type":"string"}}}},"responses":{"ApiUnauthorized":{"description":"The API key is missing or invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"TooManyRequests":{"description":"Rate limit exceeded. Wait and retry.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RateLimitError"}}}}}},"paths":{"/api/tickets/create":{"post":{"tags":["Tickets"],"operationId":"CreateTicket","summary":"Create a ticket","description":"Creates a ticket on a board from one of the board's templates. `status` and `priority` default to the template's defaults. If the template has a product field, send the products in `products`.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["title","board_id","ticket_template_id"],"properties":{"title":{"type":"string"},"board_id":{"type":"string","format":"uuid"},"ticket_template_id":{"type":"string","format":"uuid","description":"Must belong to `board_id`."},"description":{"type":"string"},"status":{"type":"string","description":"A status ID from the board. Defaults to the template's default status."},"priority":{"type":"integer","enum":[0,1,2,3],"description":"Defaults to the template's default priority."},"field_values":{"type":"array","description":"Values for the template's fields.","items":{"$ref":"#/components/schemas/TicketFieldValue"}},"assigned_to":{"type":"array","description":"Agent IDs to assign.","items":{"type":"string"}},"conversation_id":{"type":"string","format":"uuid","description":"Link the ticket to a conversation."},"attachments":{"type":"array","description":"Attachment URLs.","items":{"type":"string"}},"products":{"type":"array","description":"Products, for templates with a product field.","items":{"type":"object","properties":{"product_id":{"type":"string","format":"uuid"},"quantity":{"type":"integer"},"adjusted_price":{"type":"number"}}}}}}}}},"responses":{"201":{"description":"Ticket created.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string"},"data":{"$ref":"#/components/schemas/Ticket"},"labels":{"description":"Labels added to the linked conversation by the template, if any."}}}}}},"400":{"description":"A required field is missing, the template doesn't belong to the board, no status or priority could be set, or a field value or product is invalid.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ApiError"}}}},"401":{"$ref":"#/components/responses/ApiUnauthorized"},"429":{"$ref":"#/components/responses/TooManyRequests"}}}}}}
```
