Summarize Support Transcript
POST/api/support/ai/summarize
Turns a conversation between a customer and the in-app AI assistant into a ticket subject and a summary for the support agent, ready to be sent to Create Support Ticket. Nothing is stored — this only prepares the text.
support:writeGrant this scope to your token under Settings → Developer → Personal Access Tokens.
Request body
transcript(string, required, 10–65,000 characters) — the conversation, plain text. Only the first 60,000 characters are sent to the model
Response fields (data)
subject(string) — a specific ticket subject naming the feature and the problem; at most 120 characterssummary(string) — 2–5 sentences for an agent: what the customer is trying to do, what went wrong, what the assistant already tried, and what is still open; at most 1,500 charactersai(boolean) — true when the model produced the text; false when the built-in fallback was used instead
Fallback behaviour: the request never fails because of the model. When AI is disabled for the platform, the transcript contains prompt-injection patterns, the model errors, or the model returns an empty subject or summary, the response is still 200 with ai: false: subject is the first non-empty line of the transcript (with a leading User: / Assistant: style prefix stripped, max 100 characters, or Question from the AI assistant when empty) and summary is the transcript itself collapsed to single spaces and cut to 600 characters.
Authentication: Bearer token with the support:write scope, or an authenticated session. Customer endpoints run in tenant context — send the X-Tenant-Id header or call from a tenant subdomain.
Request
Responses
- 200
- 401
- 403
- 422
- 429
OK
Response Headers
Unauthorized
Response Headers
Forbidden — the token lacks a required scope, the endpoint is not available to API tokens, or the user behind the token lacks the permission. A human must adjust the token scopes or user permissions; do not retry.
Unprocessable Content
Response Headers
Rate limited — platform limit is 1,000 requests/min; individual tokens may carry lower limits. Honor the Retry-After header before retrying. See the Rate Limits guide.