support

POST /v1/tickets/{ticketId}/messages

Reply to a support ticket.

Todos los endpoints de support

Autenticación

Envía una clave de API como token de portador. La clave debe tener el permiso tickets.reply; una clave que no lo tenga se rechazará con un código 403, no 404.

Este endpoint no requiere ningún id de organización. Su clave ya identifica la organización a la que pertenece, y la respuesta está delimitada a ella.

Pruébalo

Reemplaza cualquier elemento entre corchetes angulares por tus propios valores, y el marcador de posición key con una clave de tu panel de control.

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

¿Has iniciado sesión? La consola de la API en tu panel de control rellena el ID de tu organización real y tu propia clave, y ejecuta la solicitud contra la API en vivo para que puedas ver la respuesta real. Abre este endpoint en la consola de la API

Detalles

Appends a customer message and returns the thread to `open`. Replying to a `solved` ticket reopens it. A **closed** ticket is rejected with a `422` whose error code is the stable `TICKET_CLOSED`, so a client can offer "reopen" without string-matching a translated message. Requires `tickets.reply`.

Parámetros

NombreTipoObligatorio¿Qué es esto?
ticketId (path)UuidThe ticket's id.

Cuerpo de la solicitud

NombreTipoObligatorio¿Qué es esto?
bodystring

Respuesta

NombreTipoObligatorio¿Qué es esto?
idUuidUUIDv7 identifier — sortable by creation time (docs/02 §8).
org_idUuidUUIDv7 identifier — sortable by creation time (docs/02 §8).
subjectstring
statusTicketStatusWhere 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`…
priorityTicketPriorityHow urgent the ticket is. The customer may propose one; staff decide.
channelstringHow the ticket reached us — `dashboard`, `api` or `staff`. Server-decided; an open string so a future channel is additive on both sides.
site_idobjectNo
invoice_idobjectNo
on_behalf_of_org_idobjectNoThe **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_nameobjectThe 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_atobjectNo
resolved_atobjectNo
closed_atobjectNo
last_message_atobjectNo
reopened_countinteger
message_countintegerCustomer-visible messages in the thread — internal notes are not counted.
created_atstring
updated_atstring
messagesTicketMessage[]The customer-visible thread in chronological order.

Errores que este endpoint puede devolver

401 · 403 · 404 · 422 · 429