POST /api/v2/tickets

Create Ticket

Servers

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

Request body fields

Name Type Required Description
ticket Object No
ticket.sharing_agreement_ids[] Array No

An array of the numeric IDs of sharing agreements. Note that this replaces any existing agreements

ticket.email_ccs[] Array No

An array of objects that represent agent or end users email CCs to add or delete from the ticket. See Setting email CCs

ticket.email_ccs[].action String No

Valid values:

  • "put"
  • "delete"
ticket.email_ccs[].user_email String No
ticket.email_ccs[].user_name String No
ticket.email_ccs[].user_id String No
ticket.via Object No

An object explaining how the ticket was created. See the Via object reference

ticket.via.source Object No

For some channels a source object gives more information about how or why the ticket or event was created

ticket.via.source.to Object No
ticket.via.source.to.name String No
ticket.via.source.to.address String No
ticket.via.source.from Object No
ticket.via.source.from.id Integer No
ticket.via.source.from.name String No
ticket.via.source.from.title String No
ticket.via.source.from.address String No
ticket.via.source.rel String No
ticket.via.channel No

This tells you how the ticket or event was created. Examples: "web", "mobile", "rule", "system". May be a string name or an integer channel ID.

ticket.updated_stamp String No

Datetime of last update received from API. See the safe_update property

ticket.metadata Object No

Custom metadata hash that can be set by API clients

ticket.ticket_form_id Integer No

Enterprise only. The id of the ticket form to render for the ticket

ticket.subject String No

The value of the subject field for this ticket

ticket.email_cc_ids[] Array No

The ids of agents or end users currently CC'ed on the ticket. See CCs and followers resources in the Support Help Center

ticket.organization_id Integer No

The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships

ticket.tpe_voice_comment Object No

A TPE voice comment for Talk Partner Edition tickets

ticket.tpe_voice_comment.ivr_time_spent Integer No
ticket.tpe_voice_comment.disconnection_reason String No
ticket.tpe_voice_comment.recording_type String No
ticket.tpe_voice_comment.dnis String No
ticket.tpe_voice_comment.completion_status String No
ticket.tpe_voice_comment.to_line String No
ticket.tpe_voice_comment.video_recording_url String No
ticket.tpe_voice_comment.callback_requested_at String No
ticket.tpe_voice_comment.talk_time Integer No
ticket.tpe_voice_comment.app_id Integer No
ticket.tpe_voice_comment.to_line_nickname String No
ticket.tpe_voice_comment.exceeded_queue_time Boolean No
ticket.tpe_voice_comment.voicemail Boolean No
ticket.tpe_voice_comment.from_line String No
ticket.tpe_voice_comment.agent_id Integer No
ticket.tpe_voice_comment.language String No
ticket.tpe_voice_comment.callback_number String No
ticket.tpe_voice_comment.call_id Integer No
ticket.tpe_voice_comment.voicemail_requested_at String No
ticket.tpe_voice_comment.call_started_at String No
ticket.tpe_voice_comment.connection_attempts Integer No
ticket.tpe_voice_comment.via_id Integer No
ticket.tpe_voice_comment.end_user_location String No
ticket.tpe_voice_comment.call_recording_consent String No
ticket.tpe_voice_comment.recording_url String No
ticket.tpe_voice_comment.sentiment_trend String No
ticket.tpe_voice_comment.author_id Integer No
ticket.tpe_voice_comment.queue_time Integer No
ticket.tpe_voice_comment.longest_hold_time Integer No
ticket.tpe_voice_comment.time_to_answer Integer No
ticket.tpe_voice_comment.wait_time Integer No
ticket.tpe_voice_comment.ivr_destination_group_name String No
ticket.tpe_voice_comment.consultation_time Integer No
ticket.tpe_voice_comment.external_id String No
ticket.tpe_voice_comment.from_line_nickname String No
ticket.tpe_voice_comment.app_name String No
ticket.tpe_voice_comment.call_connected_at String No
ticket.tpe_voice_comment.overflowed_to String No
ticket.tpe_voice_comment.sentiment_call String No
ticket.tpe_voice_comment.call_recording_consent_keypress String No
ticket.tpe_voice_comment.extension String No
ticket.tpe_voice_comment.answering_machine_detection_status String No
ticket.tpe_voice_comment.call_recording_consent_action String No
ticket.tpe_voice_comment.duration Integer No
ticket.tpe_voice_comment.sentiment_agent String No
ticket.tpe_voice_comment.transcript String No
ticket.tpe_voice_comment.direction String No
ticket.tpe_voice_comment.call_type String No
ticket.tpe_voice_comment.title String No
ticket.tpe_voice_comment.summary String No
ticket.tpe_voice_comment.call_disposition String No
ticket.tpe_voice_comment.intent String No
ticket.tpe_voice_comment.outside_business_hours Boolean No
ticket.tpe_voice_comment.public Boolean No
ticket.tpe_voice_comment.hold_time Integer No
ticket.tpe_voice_comment.short_summary String No
ticket.tpe_voice_comment.queue_name String No
ticket.tpe_voice_comment.line_type String No
ticket.tpe_voice_comment.recording_time Integer No
ticket.tpe_voice_comment.end_user_id Integer No
ticket.tpe_voice_comment.call_ended_at String No
ticket.tpe_voice_comment.quality_score Integer No
ticket.tpe_voice_comment.sentiment_customer String No
ticket.tpe_voice_comment.phone_name String No
ticket.tpe_voice_comment.recorded Boolean No
ticket.tpe_voice_comment.number_of_holds Integer No
ticket.id Integer No

The ticket ID. Ignored on update requests - included for client convenience.

ticket.priority String No

The urgency with which the ticket should be addressed.

Valid values:

  • "high"
  • "normal"
  • "low"
  • "urgent"
ticket.voice_comment Object No

A voice comment for Talk tickets. See Creating voicemail tickets

ticket.voice_comment.to String No

Dialed phone number

ticket.voice_comment.call_duration Integer No

Duration of the call in seconds

ticket.voice_comment.answered_by_id Integer No

The agent who answered the call

ticket.voice_comment.transcription_text String No

Transcription of the call

ticket.voice_comment.location String No

Location of the caller

ticket.voice_comment.recording_url String No

URL of the recording

ticket.voice_comment.from String No

Incoming phone number

ticket.forum_topic_id Integer No

The ID of a forum topic to link this ticket to

ticket.tde_workspace Object No

TDE workspace information for the ticket

ticket.tde_workspace.previous_workspace Object No
ticket.tde_workspace.previous_workspace.id Integer No
ticket.tde_workspace.previous_workspace.title String No
ticket.tde_workspace.type String No

Valid values:

  • "DELETE"
  • "ADD"
  • "CHANGE"
ticket.tde_workspace.workspace Object No
ticket.tde_workspace.workspace.id Integer No
ticket.tde_workspace.workspace.title String No
ticket.collaborators[] Array No

POST requests only. Users to add as cc's when creating a ticket. See Setting Collaborators

ticket.collaborators[].email String No
ticket.collaborators[].name String No
ticket.due_at String No

If this is a ticket of type "task" it has a due date. Due date format uses ISO 8601 format.

ticket.satisfaction_probability Number No

The predicted satisfaction probability score

ticket.type String No

The type of this ticket.

Valid values:

  • "incident"
  • "problem"
  • "question"
  • "task"
ticket.origin_zrn String No

The Zendesk Resource Name (ZRN) of the origin for this ticket

ticket.status String No

The state of the ticket.

If your account has activated custom ticket statuses, this is the ticket's status category. See custom ticket statuses.

Valid values:

  • "open"
  • "hold"
  • "new"
  • "pending"
  • "closed"
  • "solved"
ticket.fields[] Array No

Alias for custom_fields. Custom field values to set on the ticket. Each entry specifies a field ID and its value.

ticket.fields[].id Integer Yes

The ID of the custom field

ticket.fields[].value No

The value to assign to the custom field. Type depends on the field configuration:

  • Text/textarea: string
  • Checkbox: boolean or "true"/"false" string
  • Dropdown/tagger: string or array of strings (multi-select)
  • Number/decimal: number or string representation
  • Date: string (ISO 8601 format)
ticket.safe_update Boolean No

Optional boolean. Prevents updates with outdated ticket data (updated_stamp property required when true)

ticket.followers[] Array No

An array of objects that represent agent followers to add or delete from the ticket. See Setting followers

ticket.followers[].action String No

Valid values:

  • "put"
  • "delete"
ticket.followers[].user_email String No
ticket.followers[].user_id String No
ticket.requester Object No

Alternative to requester_id for specifying the ticket requester.

Can be provided as:

  • Email string: "user@example.com"
  • User ID integer: 12345
  • User object: {name: "John Doe", email: "john@example.com"}

If both requester and requester_id are provided, requester_id takes precedence.

When creating a ticket, if the user doesn't exist, they may be created automatically depending on account settings.

ticket.requester_id Integer No

The user who requested this ticket

ticket.additional_collaborators[] Array No

An array of numeric IDs, emails, or objects containing name and email properties. See Setting Collaborators. An email notification is sent to them when the ticket is updated

ticket.additional_collaborators[].email String No
ticket.additional_collaborators[].name String No
ticket.brand_id Integer No

Enterprise only. The id of the brand this ticket is associated with

ticket.via_followup_source_id Integer No

POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating a follow-up ticket

ticket.tags[] Array No

The array of tags applied to this ticket

ticket.raw_subject String No

The dynamic content placeholder, if present, or the "subject" value, if not. See Dynamic Content Items

ticket.external_id String No

An id you can use to link Zendesk Support tickets to local records

ticket.sharing_agreements Object No

Sharing agreement configuration for the ticket. Can be a single object or array of objects.

ticket.description String No

The initial description/content of the ticket. Sets the body of the first comment on the ticket. Only applies when creating a ticket.

ticket.attribute_value_ids[] Array No

An array of the IDs of attribute values to be associated with the ticket

ticket.follower_ids[] Array No

The ids of agents currently following the ticket. See CCs and followers resources

ticket.assignee_id Integer No

The agent currently assigned to the ticket

ticket.custom_status_id Integer No

The custom ticket status id of the ticket. See custom ticket statuses

ticket.custom_fields[] Array No

Custom field values to set on the ticket. Each entry specifies a field ID and its value. See Setting custom field values

ticket.custom_fields[].id Integer Yes

The ID of the custom field

ticket.custom_fields[].value No

The value to assign to the custom field. Type depends on the field configuration:

  • Text/textarea: string
  • Checkbox: boolean or "true"/"false" string
  • Dropdown/tagger: string or array of strings (multi-select)
  • Number/decimal: number or string representation
  • Date: string (ISO 8601 format)
ticket.problem_id Integer No

For tickets of type "incident", the ID of the problem the incident is linked to

ticket.suspension_type_id Integer No

The suspension type ID when recovering a suspended ticket

ticket.assignee_email String No

The email address of the agent to assign the ticket to

ticket.macro_id Integer No

A single macro ID to be recorded in the ticket audit

ticket.url String No

URL field

ticket.system_metadata Object No

System metadata for the ticket, typically set by internal clients

ticket.system_metadata.client String No
ticket.system_metadata.ip_address String No
ticket.collaborator_ids[] Array No

The ids of users currently CC'ed on the ticket

ticket.suspended_ticket_id Integer No

The ID of the suspended ticket being recovered

ticket.recipient String No

The original recipient e-mail address of the ticket

ticket.comment Object Yes
ticket.comment.via Object No

Describes how the object was created. See the Via object reference

ticket.comment.via.source Object No

For some channels a source object gives more information about how or why the ticket or event was created

ticket.comment.via.channel String No

This tells you how the ticket or event was created. Examples: "web", "mobile", "rule", "system"

ticket.comment.public Boolean No

true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it

ticket.comment.metadata Object No

System information (web client, IP address, etc.) and comment flags, if any. See Comment flags

ticket.comment.id Integer No

Automatically assigned when the comment is created

ticket.comment.plain_body String No

The comment presented as plain text. See Bodies

ticket.comment.attachments[] Array No

Attachments, if any. See Attachment

ticket.comment.attachments[].content_type String No

The content type of the image. Example value: "image/png"

ticket.comment.attachments[].inline Boolean No

If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false

ticket.comment.attachments[].size Integer No

The size of the image file in bytes

ticket.comment.attachments[].deleted Boolean No

If true, the attachment has been deleted

ticket.comment.attachments[].height Integer No

The height of the image file in pixels. If height is unknown, returns null

ticket.comment.attachments[].url String No

A URL to access the attachment details

ticket.comment.attachments[].width Integer No

The width of the image file in pixels. If width is unknown, returns null

ticket.comment.attachments[].thumbnails[] Array No

An array of attachment objects. Note that photo thumbnails do not have thumbnails

ticket.comment.attachments[].thumbnails[].content_type String No

The content type of the image. Example value: "image/png"

ticket.comment.attachments[].thumbnails[].inline Boolean No

If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false

ticket.comment.attachments[].thumbnails[].size Integer No

The size of the image file in bytes

ticket.comment.attachments[].thumbnails[].deleted Boolean No

If true, the attachment has been deleted

ticket.comment.attachments[].thumbnails[].height Integer No

The height of the image file in pixels. If height is unknown, returns null

ticket.comment.attachments[].thumbnails[].url String No

A URL to access the attachment details

ticket.comment.attachments[].thumbnails[].width Integer No

The width of the image file in pixels. If width is unknown, returns null

ticket.comment.attachments[].thumbnails[].malware_access_override Boolean No

If true, you can download an attachment flagged as malware. If false, you can't download such an attachment.

ticket.comment.attachments[].thumbnails[].mapped_content_url String No

The URL the attachment image file has been mapped to

ticket.comment.attachments[].thumbnails[].file_name String No

The name of the image file

ticket.comment.attachments[].thumbnails[].content_url String No

A full URL where the attachment image file can be downloaded. The file may be hosted externally so take care not to inadvertently send Zendesk authentication credentials. See Working with url properties

ticket.comment.attachments[].thumbnails[].id Integer No

Automatically assigned when created

ticket.comment.attachments[].thumbnails[].malware_scan_result String No

The result of the malware scan. There is a delay between the time the attachment is uploaded and when the malware scan is completed. Usually the scan is done within a few seconds, but high load conditions can delay the scan results. Possible values: "malware_found", "malware_not_found", "failed_to_scan", "not_scanned"

ticket.comment.attachments[].malware_access_override Boolean No

If true, you can download an attachment flagged as malware. If false, you can't download such an attachment.

ticket.comment.attachments[].mapped_content_url String No

The URL the attachment image file has been mapped to

ticket.comment.attachments[].file_name String No

The name of the image file

ticket.comment.attachments[].content_url String No

A full URL where the attachment image file can be downloaded. The file may be hosted externally so take care not to inadvertently send Zendesk authentication credentials. See Working with url properties

ticket.comment.attachments[].id Integer No

Automatically assigned when created

ticket.comment.attachments[].malware_scan_result String No

The result of the malware scan. There is a delay between the time the attachment is uploaded and when the malware scan is completed. Usually the scan is done within a few seconds, but high load conditions can delay the scan results. Possible values: "malware_found", "malware_not_found", "failed_to_scan", "not_scanned"

ticket.comment.author_id Integer No

The id of the comment author. If null or omitted on create, defaults to the authenticated user. See Author id

ticket.comment.audit_id Integer No

The id of the ticket audit record. See Show Audit

ticket.comment.body String No

The comment string. See Bodies

ticket.comment.type String No

Comment or VoiceComment. The JSON object for adding voice comments to tickets is different. See Adding voice comments to tickets

ticket.comment.html_body String No

The comment formatted as HTML. See Bodies

ticket.comment.uploads[] Array No

List of tokens received from uploading files for comment attachments. The files are attached by creating or updating tickets with the tokens. See Attaching files in Tickets

ticket.comment.created_at String No

The time the comment was created

ticket.macro_ids[] Array No

POST requests only. List of macro IDs to be recorded in the ticket audit

ticket.group_id Integer No

The group this ticket is assigned to

ticket.submitter_id Integer No

The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket.

If not specified, defaults to the authenticated user.

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.