Skip to main content
POST
Score conversation

Body

application/json
messages
object[]
required

Conversation transcript items in chronological order. Each item requires external_id, kind, content, author, and timestamp. Use kind=comment for internal notes.

Required array length: 1 - 50 elements
Example:
ticket_id
string
required

Stable ticket or conversation ID from the source system. CraftCX rejects duplicate imports for the same source_account_id and ticket_id, falling back to source when source_account_id is omitted.

Minimum string length: 1
Example:

"ticket_123"

source
string
default:custom

Source system for this import. Defaults to custom. CraftCX uses source to namespace message external_id values. Ticket imports use source_account_id when supplied, otherwise source.

Minimum string length: 1
Example:

"zendesk"

source_account_id
string

Stable account ID within the source system, such as a Zendesk subdomain or HubSpot Hub ID. When supplied, CraftCX uses it with ticket_id to identify imports and reject duplicates. Adding or changing source_account_id later creates a separate import namespace from earlier requests.

Minimum string length: 1
Example:

"acme-support"

subject
string

Optional ticket or conversation subject from the source system.

Example:

"Billing question"

Response

external_ticket_id
string
required

The ticket ID from the source system.

Example:

"ticket_123"

id
string
required

The CraftCX ticket ID for the accepted import.

Example:

"pfh0haxfpzowht3oi213cqos"

source
string
required

The source namespace used for import identity.

Example:

"zendesk"

status
enum<string>
required

The import receipt status.

Available options:
accepted
Example:

"accepted"