tickets:read and tickets:write. Add ticket_fields:read if you use custom fields. Your company must have Desk entitlement.
Create a ticket from your source system
data.id alongside your source record. API-created ticket numbers use the API- prefix and a unique identifier. The external integration is recorded as the ticket’s creator.
If you lose the response, retry the same payload with the same key. See idempotency.
Update progress
assignee_id as an empty string to remove the assignee. Custom field keys are the UUIDs returned by GET /api/v1/ticket-fields; supplied values merge with existing values. Required fields cannot be cleared.
Link an existing conversation
Retrieve a conversation using a credential withconversations:read, then supply its opaque ID as conversation_id when creating a ticket. This additionally requires Chat entitlement. A conversation from another company is unavailable.
Retrieve changes
PollGET /api/v1/tickets?updated_since=2026-10-01T00:00:00Z, follow pagination, and upsert results into your system by ticket ID. Use overlapping windows to account for live updates. Customer webhook subscriptions are not included in this release.