support

POST /v1/tickets

Open a support ticket.

Todos os endpoints de support

Autenticação

Envie uma chave de API como um token de portador. A chave deve ter a permissão tickets.reply; uma chave sem ela é recusada com 403, e não 404.

Onde vai o ID da sua organização

Este endpoint aceita org_id como um campo no corpo JSON.

O ID da sua organização está na tela de chaves de API no seu painel, ao lado da própria chave. É o mesmo ID em todas as chamadas que você fizer.

Experimente

Substitua qualquer item entre colchetes por seus próprios valores e o espaço reservado para a chave por uma chave do seu painel.

curl -X POST https://api.zinndigital.com/v1/tickets \
  -H "Authorization: Bearer zdk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "subject": <string>, "body": <string> }'

Conectado? O console da API no seu painel preenche o ID da sua organização real e a sua própria chave, e executa a requisição contra a API de produção para que você possa ver a resposta real. Abra este endpoint no console da API

Detalhes

Opens a ticket in `open` with the supplied `body` as its first message, and publishes `ticket.created` (which sends the customer a localized acknowledgement via the notification consumer). `channel` is server-decided — it is not accepted from the client. A supplied `site_id` or `invoice_id` must belong to the same org or the request is a `404`. Requires `tickets.reply`.

Corpo da requisição

NomeTipoObrigatórioO que é
subjectstringSim
bodystringSimThe customer's description — becomes the first message in the thread.
priorityTicketPriorityNãoHow urgent the ticket is. The customer may propose one; staff decide.
site_idstringNãoThe site this is about. Must belong to the same org or the request is a 404.
invoice_idstringNãoThe invoice this is about. Must belong to the same org or the request is a 404.
org_idstringNãoThe organization to open it in. Required only when the caller holds `tickets.reply` in more than one org.
on_behalf_of_org_idstringNãoThe client org this is about — a reseller escalating to Zinn® on their client's behalf. Must be a **descendant** of the ticket's org or the request is a `404`; your client never…

Resposta

NomeTipoObrigatórioO que é
idUuidSimUUIDv7 identifier — sortable by creation time (docs/02 §8).
org_idUuidSimUUIDv7 identifier — sortable by creation time (docs/02 §8).
subjectstringSim
statusTicketStatusSimWhere a ticket sits in its lifecycle. `open` = waiting on us; `pending` = waiting on the customer; `solved` = we believe it is resolved and a customer reply reopens it; `closed`…
priorityTicketPrioritySimHow urgent the ticket is. The customer may propose one; staff decide.
channelstringSimHow the ticket reached us — `dashboard`, `api` or `staff`. Server-decided; an open string so a future channel is additive on both sides.
site_idobjectNão
invoice_idobjectNão
on_behalf_of_org_idobjectNãoThe **client org** a reseller opened this ticket about. Null on every ordinary ticket. ⛔ Validated as a descendant of the ticket's own org and `404`d otherwise, so it can never…
assignee_nameobjectSimThe owning agent's display name (first name), or null while unassigned. The customer sees a **name** so they know a person owns their ticket; the agent's id and email are staff-…
first_response_atobjectNão
resolved_atobjectNão
closed_atobjectNão
last_message_atobjectNão
reopened_countintegerSim
message_countintegerSimCustomer-visible messages in the thread — internal notes are not counted.
created_atstringSim
updated_atstringSim
messagesTicketMessage[]SimThe customer-visible thread in chronological order.

Erros que este endpoint pode retornar

401 · 403 · 404 · 422 · 429