POST /api/v2/tickets/create_many
Accepts an array of up to 100 ticket objects. Note: Every ticket created with this endpoint may be affected by your business rules, which can include sending email notifications to your end users. If you are importing historical tickets or creating more than 1000 tickets, consider using the Ticket Bulk Import endpoint.
This endpoint returns a job_status JSON object and queues a background job to do the work. Use the Show Job Status endpoint to check for the job's completion. Only a certain number of jobs can be queued or running at the same time. See Job limit for more information.
Allowed For
- Agents
Servers
- https://{subdomain}.{domain}.com
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 |
|---|---|---|---|
tickets[] |
Array | No | |
tickets[].sharing_agreement_ids[] |
Array | No |
An array of the numeric IDs of sharing agreements. Note that this replaces any existing agreements |
tickets[].email_ccs[] |
Array | No |
Write only. An array of objects that represent agent or end users email CCs to add or delete from the ticket. See Setting email CCs. Ignored when CCs and followers is not enabled |
tickets[].email_ccs[].action |
String | No |
Valid values:
|
tickets[].email_ccs[].user_email |
String | No | |
tickets[].email_ccs[].user_name |
String | No | |
tickets[].email_ccs[].user_id |
Integer | No | |
tickets[].via |
Object | No |
An object explaining how the ticket was created. See the Via object reference |
tickets[].via.source |
Object | No |
For some channels a source object gives more information about how or why the ticket or event was created |
tickets[].via.source.to |
Object | No | |
tickets[].via.source.to.name |
String | No | |
tickets[].via.source.to.address |
String | No | |
tickets[].via.source.from |
Object | No | |
tickets[].via.source.from.id |
Integer | No | |
tickets[].via.source.from.name |
String | No | |
tickets[].via.source.from.title |
String | No | |
tickets[].via.source.from.address |
String | No | |
tickets[].via.source.rel |
String | No | |
tickets[].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. |
|
tickets[].updated_stamp |
String | No |
Write only. Datetime of last update received from API. See the |
tickets[].followup_ids[] |
Array | No |
The ids of the followups created from this ticket. Ids are only visible once the ticket is closed |
tickets[].metadata |
Object | No |
Write only. Metadata for the audit. In the |
tickets[].ticket_form_id |
Integer | No |
Enterprise only. The id of the ticket form to render for the ticket |
tickets[].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 |
tickets[].subject |
String | No |
The value of the subject field for this ticket. See Subject |
tickets[].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 |
tickets[].tpe_voice_comment |
Object | No |
Write only. A TPE voice comment for Talk Partner Edition tickets |
tickets[].tpe_voice_comment.ivr_time_spent |
Integer | No | |
tickets[].tpe_voice_comment.disconnection_reason |
String | No | |
tickets[].tpe_voice_comment.recording_type |
String | No | |
tickets[].tpe_voice_comment.dnis |
String | No | |
tickets[].tpe_voice_comment.completion_status |
String | No | |
tickets[].tpe_voice_comment.to_line |
String | No | |
tickets[].tpe_voice_comment.video_recording_url |
String | No | |
tickets[].tpe_voice_comment.callback_requested_at |
String | No | |
tickets[].tpe_voice_comment.talk_time |
Integer | No | |
tickets[].tpe_voice_comment.app_id |
Integer | No | |
tickets[].tpe_voice_comment.to_line_nickname |
String | No | |
tickets[].tpe_voice_comment.exceeded_queue_time |
Boolean | No | |
tickets[].tpe_voice_comment.voicemail |
Boolean | No | |
tickets[].tpe_voice_comment.from_line |
String | No | |
tickets[].tpe_voice_comment.agent_id |
Integer | No | |
tickets[].tpe_voice_comment.language |
String | No | |
tickets[].tpe_voice_comment.callback_number |
String | No | |
tickets[].tpe_voice_comment.call_id |
Integer | No | |
tickets[].tpe_voice_comment.voicemail_requested_at |
String | No | |
tickets[].tpe_voice_comment.call_started_at |
String | No | |
tickets[].tpe_voice_comment.connection_attempts |
Integer | No | |
tickets[].tpe_voice_comment.via_id |
Integer | No | |
tickets[].tpe_voice_comment.end_user_location |
String | No | |
tickets[].tpe_voice_comment.call_recording_consent |
String | No | |
tickets[].tpe_voice_comment.recording_url |
String | No | |
tickets[].tpe_voice_comment.sentiment_trend |
String | No | |
tickets[].tpe_voice_comment.author_id |
Integer | No | |
tickets[].tpe_voice_comment.queue_time |
Integer | No | |
tickets[].tpe_voice_comment.longest_hold_time |
Integer | No | |
tickets[].tpe_voice_comment.time_to_answer |
Integer | No | |
tickets[].tpe_voice_comment.wait_time |
Integer | No | |
tickets[].tpe_voice_comment.ivr_destination_group_name |
String | No | |
tickets[].tpe_voice_comment.consultation_time |
Integer | No | |
tickets[].tpe_voice_comment.external_id |
String | No | |
tickets[].tpe_voice_comment.from_line_nickname |
String | No | |
tickets[].tpe_voice_comment.app_name |
String | No | |
tickets[].tpe_voice_comment.call_connected_at |
String | No | |
tickets[].tpe_voice_comment.overflowed_to |
String | No | |
tickets[].tpe_voice_comment.sentiment_call |
String | No | |
tickets[].tpe_voice_comment.call_recording_consent_keypress |
String | No | |
tickets[].tpe_voice_comment.extension |
String | No | |
tickets[].tpe_voice_comment.answering_machine_detection_status |
String | No | |
tickets[].tpe_voice_comment.call_recording_consent_action |
String | No | |
tickets[].tpe_voice_comment.duration |
Integer | No | |
tickets[].tpe_voice_comment.sentiment_agent |
String | No | |
tickets[].tpe_voice_comment.transcript |
String | No | |
tickets[].tpe_voice_comment.direction |
String | No | |
tickets[].tpe_voice_comment.call_type |
String | No | |
tickets[].tpe_voice_comment.title |
String | No | |
tickets[].tpe_voice_comment.summary |
String | No | |
tickets[].tpe_voice_comment.call_disposition |
String | No | |
tickets[].tpe_voice_comment.intent |
String | No | |
tickets[].tpe_voice_comment.outside_business_hours |
Boolean | No | |
tickets[].tpe_voice_comment.public |
Boolean | No | |
tickets[].tpe_voice_comment.hold_time |
Integer | No | |
tickets[].tpe_voice_comment.short_summary |
String | No | |
tickets[].tpe_voice_comment.queue_name |
String | No | |
tickets[].tpe_voice_comment.line_type |
String | No | |
tickets[].tpe_voice_comment.recording_time |
Integer | No | |
tickets[].tpe_voice_comment.end_user_id |
Integer | No | |
tickets[].tpe_voice_comment.call_ended_at |
String | No | |
tickets[].tpe_voice_comment.quality_score |
Integer | No | |
tickets[].tpe_voice_comment.sentiment_customer |
String | No | |
tickets[].tpe_voice_comment.phone_name |
String | No | |
tickets[].tpe_voice_comment.recorded |
Boolean | No | |
tickets[].tpe_voice_comment.number_of_holds |
Integer | No | |
tickets[].id |
Integer | No |
Automatically assigned when the ticket is created |
tickets[].priority |
String | No |
The urgency with which the ticket should be addressed Valid values:
|
tickets[].voice_comment |
Object | No |
Write only. A voice comment for Talk tickets. See Creating voicemail tickets |
tickets[].voice_comment.to |
String | No |
Dialed phone number |
tickets[].voice_comment.call_duration |
Integer | No |
Duration of the call in seconds |
tickets[].voice_comment.answered_by_id |
Integer | No |
The agent who answered the call |
tickets[].voice_comment.transcription_text |
String | No |
Transcription of the call |
tickets[].voice_comment.location |
String | No |
Location of the caller |
tickets[].voice_comment.recording_url |
String | No |
URL of the recording |
tickets[].voice_comment.from |
String | No |
Incoming phone number |
tickets[].forum_topic_id |
Integer | No |
The topic in the Zendesk Web portal this ticket originated from, if any. The Web portal is deprecated |
tickets[].collaborators[] |
Array | No |
Write only. Users to add as cc's when creating a ticket. See Setting Collaborators |
tickets[].collaborators[].email |
String | No | |
tickets[].collaborators[].name |
String | No | |
tickets[].tde_workspace |
Object | No |
Write only. TDE workspace information for the ticket |
tickets[].tde_workspace.previous_workspace |
Object | No | |
tickets[].tde_workspace.previous_workspace.id |
Integer | No | |
tickets[].tde_workspace.previous_workspace.title |
String | No | |
tickets[].tde_workspace.type |
String | No |
Valid values:
|
tickets[].tde_workspace.workspace |
Object | No | |
tickets[].tde_workspace.workspace.id |
Integer | No | |
tickets[].tde_workspace.workspace.title |
String | No | |
tickets[].due_at |
String | No |
If this is a ticket of type "task" it has a due date. Due date format uses ISO 8601 format |
tickets[].satisfaction_probability |
Number | No |
The predicted satisfaction probability score |
tickets[].from_messaging_channel |
Boolean | No |
If true, the ticket's via type is a messaging channel. |
tickets[].type |
String | No |
The type of this ticket Valid values:
|
tickets[].origin_zrn |
String | No |
Write only. The Zendesk Resource Name (ZRN) of the origin for this ticket |
tickets[].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:
|
tickets[].fields[] |
Array | No |
Alias for custom_fields. Custom field values to set on the ticket. Each entry specifies a field ID and its value. |
tickets[].fields[].id |
Integer | Yes |
The ID of the custom field |
tickets[].fields[].value |
No |
The value to assign to the custom field. Type depends on the field configuration:
|
|
tickets[].safe_update |
Boolean | No |
Write only. Optional boolean. When true and an |
tickets[].followers[] |
Array | No |
Write only. An array of objects that represents agent followers to add or delete from the ticket. See Setting followers. Ignored when CCs and followers is not enabled |
tickets[].followers[].action |
String | No |
Valid values:
|
tickets[].followers[].user_email |
String | No | |
tickets[].followers[].user_name |
String | No | |
tickets[].followers[].user_id |
Integer | No | |
tickets[].requester |
Object | No |
Write only. Alternative to requester_id for specifying the ticket requester. Can be provided as:
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. |
tickets[].via_id |
Integer | No |
Write only. For more information, see the Via object reference |
tickets[].has_incidents |
Boolean | No |
Is true if a ticket is a problem type and has one or more incidents linked to it. Otherwise, the value is false. |
tickets[].requester_id |
Integer | No |
The user who requested this ticket |
tickets[].additional_collaborators[] |
Array | No |
Write only. 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 |
tickets[].additional_collaborators[].email |
String | No | |
tickets[].additional_collaborators[].name |
String | No | |
tickets[].brand_id |
Integer | No |
The id of the brand this ticket is associated with. See Setting up multiple brands |
tickets[].submitter |
Object | No |
Write only. Alternative to submitter_id for specifying the ticket submitter. Can be provided as a user email string or user ID integer. |
tickets[].via_followup_source_id |
Integer | No |
Write only. The id of a closed ticket when creating a follow-up ticket. See Creating a follow-up ticket |
tickets[].tags |
Object | No |
The tags applied to this ticket. Unless otherwise specified, the set tag behavior is used, which overwrites and replaces existing tags |
tickets[].allow_channelback |
Boolean | No |
Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket |
tickets[].satisfaction_rating |
Object | No |
The satisfaction rating of the ticket, if it exists, or the state of satisfaction, "offered" or "unoffered". The value is null for plan types that don't support CSAT |
tickets[].raw_subject |
String | No |
The dynamic content placeholder, if present, or the "subject" value, if not. See Dynamic Content Items.
When set on create or update, overrides the |
tickets[].external_id |
String | No |
An id you can use to link Zendesk Support tickets to local records |
tickets[].sharing_agreements |
Object | No |
Write only. Sharing agreement configuration for the ticket. Can be a single object or array of objects. |
tickets[].description |
String | No |
The first comment on the ticket. When creating a ticket, use |
tickets[].allow_attachments |
Boolean | No |
Permission for agents to add add attachments to a comment. Defaults to true |
tickets[].attribute_value_ids[] |
Array | No |
Write only. An array of the IDs of attribute values to be associated with the ticket |
tickets[].follower_ids[] |
Array | No |
The ids of agents currently following the ticket. Ignored when CCs and followers is not enabled |
tickets[].encoded_id |
String | No |
An encoded string representing the ticket's unique identifier |
tickets[].updated_at |
String | No |
When this record last got updated. It is updated only if the update generates a ticket event |
tickets[].assignee_id |
Integer | No |
The agent currently assigned to the ticket |
tickets[].custom_status_id |
Integer | No |
The custom ticket status id of the ticket. See custom ticket statuses |
tickets[].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 |
tickets[].custom_fields[].id |
Integer | Yes |
The ID of the custom field |
tickets[].custom_fields[].value |
No |
The value to assign to the custom field. Type depends on the field configuration:
|
|
tickets[].problem_id |
Integer | No |
For tickets of type "incident", the ID of the problem the incident is linked to |
tickets[].suspension_type_id |
Integer | No |
Write only. The suspension type ID when recovering a suspended ticket |
tickets[].assignee_email |
String | No |
Write only. The email address of the agent to assign the ticket to |
tickets[].generated_timestamp |
Integer | No |
A Unix timestamp that represents the most accurate reading of when this record was last updated. It is updated for all ticket updates, including system updates |
tickets[].macro_id |
Integer | No |
Write only. A single macro ID to be recorded in the ticket audit |
tickets[].url |
String | No |
The API url of this ticket |
tickets[].system_metadata |
Object | No |
Write only. System metadata for the ticket, typically set by internal clients |
tickets[].system_metadata.client |
String | No | |
tickets[].system_metadata.ip_address |
String | No | |
tickets[].collaborator_ids[] |
Array | No |
The ids of users currently CC'ed on the ticket |
tickets[].suspended_ticket_id |
Integer | No |
Write only. The ID of the suspended ticket being recovered |
tickets[].recipient |
String | No |
The original recipient e-mail address of the ticket. Notification emails for the ticket are sent from this address |
tickets[].comment |
Object | No | |
tickets[].comment.via |
Object | No |
Describes how the object was created. See the Via object reference |
tickets[].comment.via.source |
Object | No |
For some channels a source object gives more information about how or why the ticket or event was created |
tickets[].comment.via.channel |
String | No |
This tells you how the ticket or event was created. Examples: "web", "mobile", "rule", "system" |
tickets[].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 |
tickets[].comment.add_short_url |
Boolean | No |
Internal flag for adding short URLs to the comment |
tickets[].comment.metadata |
Object | No |
System information (web client, IP address, etc.) and comment flags, if any. See Comment flags |
tickets[].comment.id |
Integer | No |
Automatically assigned when the comment is created |
tickets[].comment.plain_body |
String | No |
The comment presented as plain text. See Bodies |
tickets[].comment.translate_to |
String | No |
The locale code to translate the comment body to. |
tickets[].comment.attachments[] |
Array | No |
Attachments, if any. See Attachment |
tickets[].comment.attachments[].content_type |
String | No |
The content type of the image. Example value: "image/png" |
tickets[].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 |
tickets[].comment.attachments[].size |
Integer | No |
The size of the image file in bytes |
tickets[].comment.attachments[].deleted |
Boolean | No |
If true, the attachment has been deleted |
tickets[].comment.attachments[].height |
Integer | No |
The height of the image file in pixels. If height is unknown, returns null |
tickets[].comment.attachments[].url |
String | No |
A URL to access the attachment details |
tickets[].comment.attachments[].width |
Integer | No |
The width of the image file in pixels. If width is unknown, returns null |
tickets[].comment.attachments[].thumbnails[] |
Array | No |
An array of attachment objects. Note that photo thumbnails do not have thumbnails |
tickets[].comment.attachments[].thumbnails[].content_type |
String | No |
The content type of the image. Example value: "image/png" |
tickets[].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 |
tickets[].comment.attachments[].thumbnails[].size |
Integer | No |
The size of the image file in bytes |
tickets[].comment.attachments[].thumbnails[].deleted |
Boolean | No |
If true, the attachment has been deleted |
tickets[].comment.attachments[].thumbnails[].height |
Integer | No |
The height of the image file in pixels. If height is unknown, returns null |
tickets[].comment.attachments[].thumbnails[].url |
String | No |
A URL to access the attachment details |
tickets[].comment.attachments[].thumbnails[].width |
Integer | No |
The width of the image file in pixels. If width is unknown, returns null |
tickets[].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. |
tickets[].comment.attachments[].thumbnails[].mapped_content_url |
String | No |
The URL the attachment image file has been mapped to |
tickets[].comment.attachments[].thumbnails[].file_name |
String | No |
The name of the image file |
tickets[].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 |
tickets[].comment.attachments[].thumbnails[].id |
Integer | No |
Automatically assigned when created |
tickets[].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" |
tickets[].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. |
tickets[].comment.attachments[].mapped_content_url |
String | No |
The URL the attachment image file has been mapped to |
tickets[].comment.attachments[].file_name |
String | No |
The name of the image file |
tickets[].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 |
tickets[].comment.attachments[].id |
Integer | No |
Automatically assigned when created |
tickets[].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" |
tickets[].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 |
tickets[].comment.audit_id |
Integer | No |
The id of the ticket audit record. See Show Audit |
tickets[].comment.body |
String | No |
The comment string. See Bodies |
tickets[].comment.channel_back |
String | No |
Internal channel back identifier for the comment |
tickets[].comment.type |
String | No |
|
tickets[].comment.html_body |
String | No |
The comment formatted as HTML. See Bodies |
tickets[].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 |
tickets[].comment.created_at |
String | No |
The time the comment was created |
tickets[].comment.channel_source_id |
String | No |
Internal channel source identifier for the comment |
tickets[].is_public |
Boolean | No |
Is true if any comments are public, false otherwise |
tickets[].macro_ids[] |
Array | No |
Write only. List of macro IDs to be recorded in the ticket audit |
tickets[].created_at |
String | No |
When this record was created |
tickets[].group_id |
Integer | No |
The group this ticket is assigned to |
tickets[].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
- Add HTTP Task to your workflow definition.
- 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.
- Click Test request to test run your request to the API and see the API's response.