support

POST /v1/tickets/{ticketId}/messages

Reply to a support ticket.

Bütün support nöqtələri

Doğrulama

API açarını bearer token kimi göndərin. Açar tickets.reply icazəsinə malik olmalıdır; bu icazəsi olmayan açar 404 deyil, 403 xətası ilə rədd edilir.

Bu endpoint heç bir təşkilat ID-si tələb etmir. Sizin açarınız artıq aid olduğu təşkilatı müəyyən edir və cavab həmin təşkilat üçün məhdudlaşdırılır.

Sınaqdan keçir

Bucaqlı mötərizələrdə olan hór şeyi öz qiymətlərinizlə, açar yertutucusunu isə idarə panelinizdən bir açarla əvəz edin.

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

Sistemə daxil olmusunuz? İdarə panelinizdəki API konsolu real təşkilatınızın identifikatorunu və öz açarınızı avtomatik doldurur, sorğunu canlı API-yə qarşı icra edir ki, siz faktiki cavabı görə biləsiniz. Bu son nöqtəni API konsolunda açın

Təfərrüatlar

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`.

Parametrlər

AdTipTələb olunurNədir
ticketId (path)UuidBəliThe ticket's id.

Sorğu gövdəsi

AdTipTələb olunurNədir
bodystringBəli

Cavab

AdTipTələb olunurNədir
idUuidBəliUUIDv7 identifier — sortable by creation time (docs/02 §8).
org_idUuidBəliUUIDv7 identifier — sortable by creation time (docs/02 §8).
subjectstringBəli
statusTicketStatusBəliWhere 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`…
priorityTicketPriorityBəliHow urgent the ticket is. The customer may propose one; staff decide.
channelstringBəliHow the ticket reached us — `dashboard`, `api` or `staff`. Server-decided; an open string so a future channel is additive on both sides.
site_idobjectXeyr
invoice_idobjectXeyr
on_behalf_of_org_idobjectXeyrThe **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_nameobjectBəliThe 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_atobjectXeyr
resolved_atobjectXeyr
closed_atobjectXeyr
last_message_atobjectXeyr
reopened_countintegerBəli
message_countintegerBəliCustomer-visible messages in the thread — internal notes are not counted.
created_atstringBəli
updated_atstringBəli
messagesTicketMessage[]BəliThe customer-visible thread in chronological order.

Bu son nöqtənin qaytara biləcəyi xətalar

401 · 403 · 404 · 422 · 429