Version 1 Revision 1
Connector Overview: This page documents all 417 endpoints for the Zendeskconnector v1 R1.
POST
Accounts: Create Trial Account
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Actions: List Supported Actions for Macros
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Active: List Active Automations
Lists all active automations.
Allowed For
-
Agents
Available Parameters
You can pass in any combination of the following optional filters:
| Name | Type | Comment
| ---------- | ------ | -------
| sort_by | string | Possible values are "alphabetical", "created_at", "updated_at", "usage_1h", "usage_24h", or "usage_7d". Defaults to "position"
| sort_order | string | One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each automation, if present
| permissions | The permissions for each automation
| usage_1h | The number of times each automation has been used in the past hour
| usage_24h | The number of times each automation has been used in the past day
| usage_7d | The number of times each automation has been used in the past week
| usage_30d | The number of times each automation has been used in the past thirty days
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Active: List Active Macros
Lists all active shared and personal macros available to the current user.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
A sideload to include in the response. See Sideloads |
|
|
Filter macros by access. Possible values are "personal", "agents", "shared", or "account". The "agents" value returns all personal macros for the account's agents and is only available to admins. |
|
|
Filter macros by category |
|
|
Filter macros by group |
|
|
Possible values are alphabetical, "created_at", "updated_at", "usage_1h", "usage_24h", "usage_7d", or "usage_30d". Defaults to alphabetical |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
N/A |
GET
Active: List Active Triggers
Lists all active triggers.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each trigger, if present
| permissions | The permissions for each trigger
| usage_1h | The number of times each trigger has been used in the past hour
| usage_24h | The number of times each trigger has been used in the past day
| usage_7d | The number of times each trigger has been used in the past week
| usage_30d | The number of times each trigger has been used in the past thirty days
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Cursor-based pagination only. Possible values are "alphabetical", "created_at", "updated_at", or "position". |
|
|
Offset pagination only. Possible values are "alphabetical", "created_at", "updated_at", "usage_1h", "usage_24h", or "usage_7d". Defaults to "position" |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
Filter triggers by category ID |
|
|
N/A |
GET
Active: List Active Views
Lists active shared and personal views available to the current user.
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each view, if present
| permissions | The permissions for each view
Pagination
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Only views with given access. May be "personal", "shared", or "account" |
|
|
Only views belonging to given group |
|
|
Possible values are "alphabetical", "created_at", or "updated_at". Defaults to "position" |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
N/A |
GET
Activities: List Activities
Lists ticket activities in the last 30 days affecting the agent making the request.
Also sideloads the following arrays of user records:
-
actors - All actors involved in the listed activities
-
users - All users involved in the listed activities
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
A UTC time in ISO 8601 format to return ticket activities since said date. |
|
|
N/A |
GET
Agent: List Locales for Agent
Lists the translation locales that have been localized for agents on a specific account.
Allowed For
-
Anyone
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Apply: Show Changes to Ticket
Returns the changes the macro would make to a ticket. It doesn't actually
change a ticket. You can use the response data in a subsequent API call
to the Tickets endpoint to update the ticket.
The response includes only the ticket fields that would be changed by the
macro. To get the full ticket object after the macro is applied,
see Show Ticket After Changes.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the macro |
|
|
N/A |
GET
Apply: Show Ticket After Changes
Returns the full ticket object as it would be after applying the macro to the ticket.
It doesn't actually change the ticket.
To get only the ticket fields that would be changed by the macro,
see Show Changes to Ticket.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
(Required) The ID of the macro |
|
|
N/A |
GET
Assignable: List Assignable Groups
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Admins
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Assignable: List Assignable Memberships
Returns a maximum of 100 group memberships per page.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For:
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Attachments: Create Macro Attachment
Allows an attachment to be uploaded and associated with a macro at the same time.
Note: A macro can be associated with up to five attachments.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the macro |
|
|
N/A |
POST
Attachments: Create Unassociated Macro Attachment
Allows an attachment to be uploaded that can be associated with a macro at a later time.
Note: To ensure an uploaded attachment is not lost, associate it with a macro as soon as possible. From time to time, old attachments that are not not associated with any macro are purged.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Attachments: List Macro Attachments
Lists the attachments associated with a macro.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the macro |
|
|
N/A |
POST
Attachments: Suspended Ticket Attachments
Makes copies of any attachments on a suspended ticket and returns them as attachment tokens. If the ticket is manually recovered, you can include the attachment tokens on the new ticket.
Allowed For
-
Admins and agents in custom roles with permission to manage suspended tickets on Enterprise plans
-
Unrestricted agents on all other plans
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Attribute_values: Incremental Attributes Values Export
Returns a stream of changes that occurred on routing attribute values.
Allowed For
-
Admins
Parameters
Optional
| Name | Type | Comment
| ------ | ------ | -------
| cursor | string | The cursor parameter is a non-human-readable argument you can use to move forward or backward in time. The cursor is a read-only URL parameter that's only available in API responses. See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Attributes: Create Attribute
Creates an attribute.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Attributes: Incremental Attributes Export
Returns a stream of changes that occurred on routing attributes.
Allowed For
-
Admins
Parameters
Optional
| Name | Type | Comment
| ------ | ------ | -------
| cursor | string | The cursor parameter is a non-human-readable argument you can use to move forward or backward in time. The cursor is a read-only URL parameter that's only available in API responses. See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Attributes: List Account Attributes
Returns a list of attributes for the account.
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ---------------- | -------------
| attribute_values | The attribute values available on the account
Allowed For
-
Agents and admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Audit_logs: List Audit Logs
Allowed For
-
Admins on accounts that have audit log access
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Filter audit logs by the source type. For example, user or rule |
|
|
Filter audit logs by the source id. Requires filter[source_type] to also be set. |
|
|
Filter audit logs by the actor id |
|
|
Filter audit logs by the ip address |
|
|
Filter audit logs by the time of creation |
|
|
Filter audit logs by the action |
|
|
Offset pagination only. Sort audit logs. Default is sort_by=created_at |
|
|
Offset pagination only. Sort audit logs. Default is sort_order=desc |
|
|
Cursor pagination only. Sort audit logs. Default is sort=-created_at |
|
|
N/A |
GET
Audits: List Audits for a Ticket
Lists the audits for a specified ticket.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Note: Audits for Archived Tickets do not support pagination for this endpoint.
Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Autocomplete: Autocomplete Custom Object Record Search
Retrieves an array of custom object records that have a field value that matches the value specified in the name parameter.
Pagination
-
Cursor pagination only.
-
Returns the first 10,000 records sorted by relevancy with page limits.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Part of a name of the record you are searching for |
|
|
A pagination cursor that tells the endpoint which page to start on. It should be a meta.before_cursor value from a previous request. Note: page[before] and page[after] can't be used together in the same request. |
|
|
A pagination cursor that tells the endpoint which page to start on. It should be a meta.after_cursor value from a previous request. Note: page[before] and page[after] can't be used together in the same request. |
|
|
The number of records to return in the response. |
|
|
The id of the lookup field. If the field has a relationship filter, the filter is applied to the results. Must be used with source param. |
|
|
One of "zen:user", "zen:ticket", "zen:organization", or "zen:custom_object:CUSTOM_OBJECT_KEY". Represents the object field_id belongs to. Must be used with field_id param. |
|
|
(Required) The key of a custom object |
|
|
N/A |
GET
Autocomplete: Autocomplete Organizations
Returns an array of organizations whose name starts with the
value specified in the name parameter.
Pagination
-
Offset pagination only
See Using Offset Pagination.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) A substring of an organization to search for |
|
|
The id of a lookup relationship field. The type of field is determined
|
|
|
If a field_id is provided, this specifies the type of the field.
|
|
|
N/A |
POST
Autocomplete: Autocomplete Problems
Returns tickets whose type is "problem" and whose subject contains the string specified in the text parameter.
You can specify the text parameter in the request body rather than the query string. Example:
{"text": "fire"}
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
The text to search for |
|
|
N/A |
GET
Autocomplete: Autocomplete Users
Returns an array of users whose name starts with the value specified in the name parameter.
It only returns users with no foreign identities.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The name to search for the user. |
|
|
The id of a lookup relationship field. The type of field is determined
|
|
|
If a field_id is provided, this specifies the type of the field.
|
|
|
N/A |
POST
Automations: Create Automation
Creates an automation.
New automations must be unique and have at least one condition that is true only once or an action that nullifies at least one of the conditions. Active automations can have overlapping conditions but can't be identical.
The request must include the following conditions in the all array:
-
At least one time-based condition
-
At least one condition that checks one of the following fields:
status,type,group_id,assignee_id, orrequester_id.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Automations: List Automations
Lists all automations for the current account.
Allowed For
-
Agents
Available Parameters
You can pass in any combination of the following optional filters:
| Name | Type | Comment
| ---------- | ------- | -------
| active | boolean | Only active automations if true, inactive automations if false
| sort_by | string | Possible values are "alphabetical", "created_at", "updated_at", "usage_1h", "usage_24h", or "usage_7d". Defaults to "position"
| sort_order | string | One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others
Sideloads
The following sideloads are supported. The usage sideloads are only supported on the Support Professional or Suite Growth plan or above.
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each automation, if present
| permissions | The permissions for each automation
| usage_1h | The number of times each automation has been used in the past hour
| usage_24h | The number of times each automation has been used in the past day
| usage_7d | The number of times each automation has been used in the past week
| usage_30d | The number of times each automation has been used in the past thirty days
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Available: Verify Subdomain Availability
Zendesk Support credentials are not required to access this endpoint. You can use any Zendesk Support subdomain.
Returns "true" if the subdomain is available.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Specify the name of the subdomain you want to verify. The name can't contain underscores, hyphens, or spaces. |
|
|
N/A |
POST
Bookmarks: Create Bookmark
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Bookmarks: List Bookmarks
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Brands: Create Brand
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Brands: List Brands
Returns a list of all brands for your account sorted by name.
Allowed for
-
Admins, Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Categories: List Macro Categories
Lists all macro categories available to the current user.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Check_host_mapping: Check Host Mapping Validity
Returns a JSON object determining whether a host mapping is valid for a given subdomain.
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The hostmapping to a brand, if any (only admins view this key) |
|
|
(Required) Subdomain for a given Zendesk account address |
|
|
N/A |
GET
Check_host_mapping: Check Host Mapping Validity for an Existing Brand
Returns a JSON object determining whether a host mapping is valid for the given brand.
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the brand |
|
|
N/A |
POST
Clone: Clone an already existing ticket form
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket form |
|
|
N/A |
GET
Collaborators: List Collaborators for a Ticket
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Comments: List Comments
Returns the comments added to the ticket.
Each comment may include a content_url for an attachment or a recording_url for a voice comment that points to a file that may be hosted externally. For security reasons, take care not to inadvertently send Zendesk authentication credentials to third parties when attempting to access these files. See Working with url properties.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Sorting
By default, comments are sorted by creation date in ascending order.
When using cursor pagination, use the following parameter to change the sort order:
| Name | Type | Required | Comments
| ------ | ------ | -------- | --------
| sort | string | no | Possible values are "created_at" (ascending order) or "-created_at" (descending order)
When using offset pagination, use the following parameters to change the sort order:
| Name | Type | Required | Comments
| ------------ | ------ | -------- | --------
| sort_order | string | no | One of asc, desc. Defaults to asc
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Default is false. When true, inline images are also listed as attachments in the response |
|
|
Accepts "users". Use this parameter to list email CCs by side-loading users. Example: ?include=users. Note: If the comment source is email, a deleted user will be represented as the CCd email address. If the comment source is anything else, a deleted user will be represented as the user name. |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Comments: Listing Comments
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Sorting
By default, comments are sorted by creation date in ascending order.
When using cursor pagination, use the following parameter to change the sort order:
| Name | Type | Required | Comments
| ------ | ------ | -------- | --------
| sort | string | no | Possible values are "created_at" (ascending order) or "-created_at" (descending order)
When using offset pagination, use the following parameters to change the sort order:
| Name | Type | Required | Comments
| ------------ | ------ | -------- | --------
| sort_by | string | no | One of created_at, updated_at
| sort_order | string | no | One of asc, desc
Allowed For
-
End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Filters the comments from the given datetime |
|
|
One of "agent", "end_user". If not specified it does not filter |
|
|
(Required) The ID of the request |
|
|
N/A |
GET
Compact: List Views - Compact
A compacted list of shared and personal views available to the current user. This endpoint never returns more than 32 records and does not respect the "per_page" option.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Compliance_deletion_statuses: Show Compliance Deletion Statuses
Returns the GDPR status for each user per area of compliance. A Zendesk area of compliance is typically a product like "support/explore" but can be more fine-grained for areas within the product lines.
If the user is not in the account, the request returns a 404 status.
Status: 404
{
"error":"RecordNotFound",
"description":"Not found"
}
Allowed For
-
Agents, with restrictions
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Area of compliance |
|
|
(Required) The id of the user |
|
|
N/A |
GET
Count: Count Activities
Returns an approximate count of ticket activities in the last 30 days affecting the agent making the request. If the count exceeds 100,000, the count will return a cached result. This cached result will update every 24 hours.
The count[refreshed_at] property is a timestamp that indicates when the count was last updated.
Note: When the count exceeds 100,000, count[refreshed_at] may occasionally be null.
This indicates that the count is being updated in the background, and count[value] is limited to 100,000 until the update is complete.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Count: Count Audits for a Ticket
Returns an approximate count of audits for a specified ticket. If the count exceeds 100,000, the count will return a cached result. This cached result will update every 24 hours.
The count[refreshed_at] property is a timestamp that indicates when the count was last updated.
Note: When the count exceeds 100,000, count[refreshed_at] may occasionally be null.
This indicates that the count is being updated in the background, and count[value] is limited to 100,000 until the update is complete.
Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Count: Count Custom Object Records
Returns a total count of records for a specific custom object as well as the time the count was refreshed.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
N/A |
GET
Count: Count Deleted Users
Returns an approximate count of deleted users, including permanently deleted users. If the count exceeds 100,000, it is updated every 24 hours.
The response includes a refreshed_at property in a count object that contains a timestamp indicating when the count was last updated.
Note: When the count exceeds 100,000, count[refreshed_at] may occasionally be null.
This indicates that the count is being updated in the background, and count[value] is limited to 100,000 until the update is complete.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Count: Count Groups
Returns an approximate count of groups. If the count exceeds 100,000, it is updated every 24 hours.
The refreshed_at property of the count object is a timestamp that indicates when the count was last updated.
Note: When the count exceeds 100,000, refreshed_at may occasionally be null. This indicates that the count is being updated in the background, and the value property of the count object is limited to 100,000 until the update is complete.
Allowed For
-
Admins
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Count: Count Organizations
Returns an approximate count of organizations. If the count exceeds
100,000, it is updated every 24 hours.
The refreshed_at property of the count object is a timestamp that indicates
when the count was last updated.
When the count exceeds 100,000, the refreshed_at property may
occasionally be null. This indicates that the count is being
updated in the background and the value property of the count object is limited to
100,000 until the update is complete.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Count: Count Satisfaction Ratings
Returns an approximate count of satisfaction ratings in the account. If the count exceeds 100,000, the count will return a cached result. This cached result will update every 24 hours.
The count[refreshed_at] property is a timestamp that indicates when the count was last updated.
Note: When the count exceeds 100,000, count[refreshed_at] may occasionally be null.
This indicates that the count is being updated in the background, and count[value] is limited to 100,000 until the update is complete.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Count: Count Tags
Returns an approximate count of tags. If the count exceeds 100,000, it
is updated every 24 hours.
The refreshed_at property of the count object is a timestamp that indicates when
the count was last updated.
Note: When the count exceeds 100,000, the refreshed_at property in the count object may
occasionally be null. This indicates that the count is being
updated in the background and the value property in the count object is limited to
100,000 until the update is complete.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Count: Count Ticket Comments
Returns an approximate count of the comments added to the ticket. If the count exceeds 100,000, the count will return a cached result. This cached result will update every 24 hours.
The count[refreshed_at] property is a timestamp that indicates when the count was last updated.
Note: When the count exceeds 100,000, count[refreshed_at] may occasionally be null.
This indicates that the count is being updated in the background, and count[value] is limited to 100,000 until the update is complete.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Count: Count Ticket Fields
Returns an approximate count of system and custom ticket fields in the account. If the count exceeds 100,000, the count will return a cached result. This cached result will update every 24 hours.
The count[refreshed_at] property is a timestamp that indicates when the count was last updated.
Note: When the count exceeds 100,000, count[refreshed_at] may occasionally be null.
This indicates that the count is being updated in the background, and count[value] is limited to 100,000 until the update is complete.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Count: Count Tickets
Returns an approximate count of tickets in the account. If the count exceeds 100,000, it is updated every 24 hours.
ccd lists tickets that the specified user is cc'd on.
The count[refreshed_at] property is a timestamp that indicates when the count was last updated.
Note: When the count exceeds 100,000, count[refreshed_at] may occasionally be null.
This indicates that the count is being updated in the background, and count[value] is limited to 100,000 until the update is complete.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Count: Count Tickets in View
Returns the ticket count for a single view.
This endpoint is rate limited to 5 requests per minute, per view, per agent.
View Counts
The view count endpoints, Count Tickets in View (this endpoint) and Count Tickets in Views, let you estimate how many tickets remain in a view without having to retrieve the entire view. They're designed to help estimate view size. From a business perspective, accuracy becomes less relevant as view size increases.
To ensure quality of service, these counts are cached more heavily as the number of tickets in a view grows. For a view with thousands of tickets, you can expect the count to be cached for 60-90 minutes. As a result, the count may not reflect the actual number of tickets in your view.
View counts are represented as JSON objects with the following attributes:
| Name | Type | Comment
| --------------- | ------------| -------
| view_id | integer | The id of the view
| url | string | The API url of the count
| value | integer | The cached number of tickets in the view. Can also be null if the system is loading and caching new data. Not to be confused with 0 tickets
| pretty | string | A pretty-printed text approximation of the view count
| fresh | boolean | false if the cached data is stale and the system is still loading and caching new data
| active | boolean | Only active views if true, inactive views if false, all views if null.
Example
{
"view_count": {
"view_id": 25,
"url": "https://company.zendesk.com/api/v2/views/25/count.json",
"value": 719,
"pretty": "~700",
"fresh": true
}
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the view |
|
|
N/A |
GET
Count: Count Users
Returns an approximate count of users. If the count exceeds 100,000, it is updated every 24 hours.
The response includes a refreshed_at property in a count object that contains a timestamp indicating when the count was last updated.
Note: When the count exceeds 100,000, the refreshed_at property may occasionally be null.
This indicates that the count is being updated in the background. The count object's value property is limited to 100,000 until the update is complete.
Allowed For
-
Admins, Agents and Light Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Filters the results by role. Possible values are "end-user", "agent", or "admin" |
|
|
Filters the results by more than one role using the format role[]={role}&role[]={role} |
|
|
For custom roles which is available on the Enterprise plan and above. You can only filter by one role ID per request |
|
|
N/A |
GET
Count: Count Views
Returns an approximate count of shared and personal views available to the current user. If the count exceeds 100,000, the count will return a cached result. This cached result will update every 24 hours.
The count[refreshed_at] property is a timestamp that indicates when the count was last updated.
Note: When the count exceeds 100,000, count[refreshed_at] may occasionally be null.
This indicates that the count is being updated in the background, and count[value] is limited to 100,000 until the update is complete.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Count: Preview Ticket Count
Returns the ticket count for a single preview.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Count: Show Results Count
Returns the number of items matching the query rather than the items. The search string works the same as a regular search.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The search query |
|
|
N/A |
GET
Count_many: Count Tickets in Views
Returns the ticket count of each view in a list of views. Accepts up to 20 view ids per request. For the ticket count of a single view, see Count Tickets in View.
Only returns values for personal and shared views accessible to the user performing the request.
This endpoint is rate limited to 6 requests every 5 minutes.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) List of view's ids separated by commas. |
|
|
N/A |
POST
Create_many: Bulk Create Memberships
Assigns up to 100 agents to given groups.
Allowed For
-
Admins
-
Agents assigned to a custom role with permissions to manage group memberships (Enterprise only)
Response
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.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Create_many: Create Many Memberships
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
-
Admins
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Create_many: Create Many Organizations
Accepts an array of up to 100 organization objects.
Response
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, with restrictions applying on certain actions
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Create_many: Create Many Tickets
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
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Create_many: Create Many Users
Accepts an array of up to 100 user objects.
Note: To protect the data in your Zendesk account, bulk user imports are not enabled by default in Zendesk accounts. The account owner must contact Zendesk Customer Support to enable the imports. A 403 Forbidden
error is returned if data imports are not enabled.
Allowed For
-
Admins and agents in custom roles with permission to manage end users or team members
Specifying an organization
You can assign a user to an existing organization by setting an
organization_id property in the user object.
Response
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.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Create_many: Create Many Variants
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
N/A |
POST
Create_many: Ticket Bulk Import
Accepts an array of up to 100 ticket objects.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
If true, any ticket created with a closed status bypasses the normal ticket lifecycle and will be created directly in your ticket archive |
|
|
N/A |
POST
Create_or_update: Create Or Update Organization
Creates an organization if it doesn't already exist, or updates
an existing organization. Using this method means one less call
to check if an organization exists before creating it. You need
to specify the id or external id when updating
an organization to avoid a duplicate error response. Name is
not available as a matching criteria.
Allowed For
-
Agents, with restrictions on certain actions
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Create_or_update: Create Or Update User
Creates a user if the user does not already exist, or updates an existing user
identified by e-mail address or external ID.
If you don't specify a role parameter, the new user is assigned the role of end user.
If you need to create users without sending out a verification email, include a "skip_verify_email": true property in the body.
External ID Case Sensitivity
When providing an external id to identify an existing user to update, the search for the user record is not case sensitive.
However, if an existing user is found, the system will update the user's external id to match the case of the external id used to find the user.
Response Status Code
-
If the user exists in Zendesk, a successful request returns a 200 status code with "Location: /api/v2/users/{user_id}.json".
-
If the user does not exist in Zendesk, a successful request returns a 201 status code with "Location: /api/v2/users/{new_user_id}.json".
Rate Limit
The rate limit is 5 requests per minute for each unique end user profile. For example, you can make 10 calls per second as long as you make five calls for one user and five calls for another user.
The rate limiting mechanism behaves as described in
Usage Limits
in the API introduction. Zendesk recommends that you obey the Retry-After header values.
Allowed For
-
Admins and agents in custom roles with permission to manage end users or team members
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Create_or_update_many: Create Or Update Many Users
Accepts an array of up to 100 user objects. For each user, the user is created if it does not
already exist, or the existing user is updated.
Note: To protect the data in your Zendesk account, bulk user imports are not enabled by default in Zendesk accounts. The account owner must contact Zendesk Customer Support to enable the imports. A 403 Forbidden
error is returned if data imports are not enabled.
Each individual user object can identify an existing user by email or by external_id.
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
-
Admins and agents in custom roles with permission to manage end users or team members
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Current: Show Current Locale
This works like Show Locale, but instead of taking a locale id as an argument, it renders the locale of the user performing the request.
Allowed For
-
Anyone
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Cursor: Incremental Ticket Export, Cursor Based
Returns the tickets that changed since the start time. For more information,
see Exporting tickets in Using the Incremental Exports API.
This endpoint supports cursor-based incremental exports.
Cursor-based exports are highly encouraged because they provide more consistent performance and
response body sizes. For more information, see Cursor-based incremental exports in Using the Incremental Exports API.
Allowed For
-
Admins
Sideloading
See Tickets sideloads. For performance reasons,
last_audits sideloads aren't supported.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The time to start the incremental export from. Must be at least one minute in the past. Data isn't provided for the most recent minute |
|
|
The cursor pointer to work with for all subsequent exports after the initial request |
|
|
N/A |
GET
Cursor: Incremental User Export, Cursor Based
Allowed For
-
Admins
Sideloading
See Users sideloads.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The time to start the incremental export from. Must be at least one minute in the past. Data isn't provided for the most recent minute |
|
|
The cursor pointer to work with for all subsequent exports after the initial request |
|
|
The number of records to return per page |
|
|
N/A |
POST
Custom_objects: Create Custom Object
Creates an object describing all the properties required to create a custom object record
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Custom_objects: List Custom Objects
Lists all undeleted custom objects for the account
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Custom_roles: Create Custom Role
Availability
-
Accounts on the Enterprise plan or above
Allowed for
-
Administrators
-
Agents with the
manage_rolespermission
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Custom_roles: List Custom Roles
Availability
-
Accounts on the Enterprise plan or above
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Custom_statuses: Create Custom Ticket Status
Takes a custom_status object that specifies the custom ticket status properties to create.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Custom_statuses: List Custom Ticket Statuses
Lists all undeleted custom ticket statuses for the account. No pagination is provided.
Allowed For
-
End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Filter the list of custom ticket statuses by a comma-separated list of status categories |
|
|
If true, show only active custom ticket statuses. If false, show only inactive custom ticket statuses. If the filter is not used, show all custom ticket statuses |
|
|
If true, show only default custom ticket statuses. If false, show only non-default custom ticket statuses. If the filter is not used, show all custom ticket statuses |
|
|
N/A |
PUT
Default: Bulk Update Default Custom Ticket Status
Updates the default values for many custom ticket statuses at once.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Definitions: List Macro Action Definitions
Returns the definitions of the actions a macro can perform. For example,
one action can set the status of a ticket. The definition of the action
includes a title ("Status"), a type ("list"), and possible values. For a
list of support actions, see Actions reference.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Definitions: List Routing Attribute Definitions
Returns the condition definitions that can be configured to apply attributes to a ticket.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Definitions: List Trigger Action and Condition Definitions
Returns the definitions of the actions a trigger can perform and the
definitions of the conditions under which a trigger can execute. The
definition of the action includes a title ("Status"), a type ("list"), and
possible values. The definition of the condition includes the same fields
as well as the possible operators.
For a list of supported actions, see the Actions reference
For a list of supported conditions, see the Conditions reference
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Definitions: Retrieve Supported Filter Definition Items
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Definitions: Retrieve Supported Filter Definition Items1
Availability
-
Accounts on the Support Professional or Suite Growth plan or above
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Deleted_tickets: List deleted tickets
Returns a maximum of 100 deleted tickets per page. See Pagination.
The results includes all deleted (and not yet archived) tickets that
have not yet been scrubbed in the past 30 days. Archived tickets are
not included in the results. See About archived tickets
in the Support Help Center.
The tickets are ordered chronologically by created date, from oldest to newest.
The first ticket listed may not be the oldest ticket in your
account due to ticket archiving.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Rate Limit
You can make 10 requests every 1 minute using this endpoint.
When making requests beyond page 100, you can make 5 requests every 1 minute.
The rate limiting mechanism behaves as described in
Monitoring your request activity in the API introduction.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Sort by |
|
|
Sort order. Defaults to "asc" |
|
|
N/A |
GET
Deleted_users: List Deleted Users
Returns deleted users, including permanently deleted users.
If the results contains permanently deleted users, the users' properties
that normally contain personal data, such as email and phone,
are null. The name property is "Permanently Deleted User".
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Automations
Deletes the automations corresponding to the provided comma-separated list of IDs.
Note: You might be restricted from deleting some default automations. If included in a bulk deletion, the unrestricted automations will be deleted.
Allowed For
-
Agents
Request Parameters
The DELETE request takes one parameter, an ids object that lists the automations to delete.
| Name | Description
| ---- | -----------
| ids | The IDs of the automations to delete
Example request
{
"ids": "25,23,27,22"
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
The IDs of the automations to delete |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Macros
Deletes the macros corresponding to the provided comma-separated list of IDs.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The IDs of the macros to delete |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Memberships
Immediately removes users from groups and schedules a job to unassign all working tickets that are assigned to the given user and group combinations.
Allowed For
-
Admins
-
Agents assigned to a custom role with permissions to manage group memberships (Enterprise only)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Id of the group memberships to delete. Comma separated |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Memberships1
Immediately removes a user from an organization and schedules a job to unassign all working tickets currently assigned to the user and organization combination. The organization_id of the unassigned tickets is set to null.
Response
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
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
The IDs of the organization memberships to delete |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Organizations
Accepts a comma-separated list of up to 100 organization ids or external ids.
Response
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
-
Admins
-
Agents assigned to a custom role with permissions to manage organizations (Enterprise only)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
A list of organization ids |
|
|
A list of external ids |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Tickets
Accepts a comma-separated list of up to 100 ticket ids.
Allowed For
-
Admins
-
Agents with permission to delete tickets
Agent delete permissions are set in Support. See
Deleting tickets
in the Support Help Center.
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.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Comma-separated list of ticket ids |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Triggers
Deletes the triggers corresponding to the provided comma-separated list of IDs.
Allowed For
-
Agents
Request Parameters
The DELETE request takes one parameter, an ids object that lists the
triggers to delete.
| Name | Description
| ---- | -----------
| ids | The IDs of the triggers to delete
Example request
{
"ids": "25,23,27,22"
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) A comma separated list of trigger IDs |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Users
Accepts a comma-separated list of up to 100 user ids.
The request takes an ids or an external_ids query parameter.
Allowed for
-
Admins and agents in custom roles with permission to manage end users or team members
Response
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.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Id of the users to delete. Comma separated |
|
|
External Id of the users to delete. Comma separated |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Views
Deletes the views corresponding to the provided list of IDs.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The IDs of the views to delete |
|
|
N/A |
DELETE
Destroy_many: Bulk Delete Workspaces
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ids of the workspaces to delete |
|
|
N/A |
POST
Destroy_many: Bulk Unregister Push Notification Devices
Unregisters the mobile devices that are receiving push notifications. Specify the devices as an array of mobile device tokens.
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
DELETE
Destroy_many: Delete Multiple Suspended Tickets
Accepts up to 100 ids (the auto-generated id, not the ticket id.)
Allowed For
-
Admins and agents in custom roles with permission to manage suspended tickets on Enterprise plans
-
Unrestricted agents on all other plans
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) A comma separated list of ids of suspended tickets to delete. |
|
|
N/A |
DELETE
Destroy_many: Delete multiple tickets permanently
Permanently deletes up to 100 soft-deleted tickets. See Soft delete
in the Zendesk GDPR docs. To soft delete tickets, use the Bulk Delete Tickets endpoint.
This endpoint accepts a comma-separated list of up to 100 ticket ids. It enqueues
a ticket deletion job and returns a payload with the jobs status.
If one ticket fails to be deleted, the endpoint still attempts to delete the others. If the job succeeds,
the tickets that were successfully deleted are permanently deleted. This operation can't be undone.
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
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Comma-separated list of ticket ids |
|
|
N/A |
GET
Detect_best_locale: Detect Best Language for User
Allowed For
-
Anyone
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Display: Open Ticket in Agent's Browser
Allows you to instruct an agent's browser to open a ticket.
When the message is successfully delivered to an agent's browser:
Status: 200 OK
When agent_id or ticket_id is invalid:
Status: 404 Not Found
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) ID of an agent |
|
|
(Required) The ID of the ticket |
|
|
N/A |
POST
Display: Open a User's Profile in an Agent's Browser
Allows you to instruct an agent's browser to open a user's profile.
When the message is successfully delivered to an agent's browser:
Status: 200 OK
When agent_id or user_id is invalid:
Status: 404 Not Found
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) ID of an agent |
|
|
(Required) The id of the user |
|
|
N/A |
GET
Email_ccs: List Email CCs for a Ticket
Returns any users cc'd on the ticket.
Availability
The CCs and Followers feature must be enabled in Zendesk Support.
If the feature is not enabled, the default CC functionality is used. In that case, use List Collaborators to list the users cc'ed on the ticket.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Execute: Execute View
Returns the column titles and the rows of the specified view.
The columns array lists the view's column titles and includes only views parameters.
The rows array lists the values of each column for each ticket and includes parameters from both views and tickets. Though not displayed in the view, a partial ticket object is included with each row object.
Note: To get the full ticket objects for a specified view, use List Tickets from a View.
This endpoint is rate limited to 5 requests per minute, per view, per agent.
The view execution system is designed for periodic rather than high-frequency API usage. In particular, views called very frequently may be cached by Zendesk. This means that the API client will still receive a result, but that result may have been computed at any time within the last 10 minutes.
Zendesk recommends using the Incremental Ticket Export endpoint to get the latest changes. You can call it more often, and it returns all the tickets that changed since the last poll. For details and rate limits, see Incremental Exports.
View output sorting can be controlled by passing the sort_by and sort_order parameters in the format described in the table in Preview Views.
Allowed For
-
Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
The ticket field used for sorting. This will either be a title or a custom field id. |
|
|
The direction the tickets are sorted. May be one of 'asc' or 'desc' |
|
|
(Required) The ID of the view |
|
|
N/A |
POST
Export: Export Audit Logs
Allowed For
-
Admins on accounts that have audit log access
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Filter audit logs by the source type. For example, user or rule |
|
|
Filter audit logs by the source id. Requires filter[source_type] to also be set. |
|
|
Filter audit logs by the actor id |
|
|
Filter audit logs by the ip address |
|
|
Filter audit logs by the time of creation |
|
|
Filter audit logs by the action |
|
|
N/A |
GET
Export: Export Search Results
Exports a set of results. See Query basics for the syntax of the query parameter.
This endpoint is for search queries that will return more than 1000 results. The result set is ordered only by the created_at attribute.
The search only returns results of a single object type. The following object types are supported: ticket, organization, user, or group.
You must specify the type in the filter[type] parameter. Searches with type in the query string will result in an error.
Allowed For
-
Agents
Pagination
-
Cursor pagination
See Pagination.
Returns a maximum of 1000 records per page. The number of results shown in a page is determined by the page[size] parameter.
Note: You may experience a speed reduction or a timeout if you request 1000 results per page and you have many archived tickets in the results. Try reducing the number of results per page. We recommend 100 results per page.
The cursor specified by the after_cursor property in a response expires after one hour.
For more information on cursor-based pagination, see the following articles:
-
Comparing cursor pagination and offset pagination
-
Paginating through lists using cursor pagination
Limits
This API endpoint is rate-limited to 100 requests per minute per account. The limit also counts towards the global API rate limit.
Response Format
| Name | Type | Comment
| --------------------- | ---------------------| --------------------
| links[next] | string | URL to the next page of results
| meta[has_more] | string | Boolean indicating if there are more results
| meta[after_cursor] | string | Cursor object returned from the Search Service
| results | array | May consist of tickets, users, groups, or organizations, as specified by the filter_type parameter
The response is similar to the response of GET /api/v2/search.json?, with a few changes:
-
links- Has the following nested properties:prevandnext. These replace thenext_pageandprev_pagelinks. Theprevproperty is always null because backward pagination is not supported. Thenextproperty may include an auto-generated link to the next page of results. -
meta- Has the following nested properties:has_moreandafter_cursor. Thehas_moreproperty indicates whether the next page has more results. Theafter_cursorproperty is the cursor used to paginate to the next page. It expires after one hour.
There's no count property.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The search query. See Query basics above. For details on the query syntax, see the Zendesk Support search reference |
|
|
The number of results shown in a page. |
|
|
The object type returned by the export query. Can be ticket, organization, user, or group. |
|
|
N/A |
POST
Export: Export Suspended Tickets
Exports a list of suspended tickets for the Zendesk Support instance. To export the list, the endpoint enqueues a job to create a CSV file with the data. When done, Zendesk sends the requester an email containing a link to the CSV file. In the CSV, tickets are sorted by the update timestamp in ascending order.
#### Allowed For
-
Admins and agents in custom roles with permission to manage suspended tickets on Enterprise plans
-
Unrestricted agents on all other plans
#### Rate limits
Limited to one request per minute and up to one million records in return. The rate-limiting mechanism behaves identically to the one described in Usage limits.
We recommend using the Retry-After header value as described in Catching errors caused by rate limiting.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Export: Export View
Returns the csv attachment of the specified view if possible. Enqueues a job to produce the csv if necessary.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the view |
|
|
N/A |
GET
Field_limit: Custom Object Fields Limit
List the current count and the limit for a custom object's fields
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
N/A |
POST
Fields: Create Custom Object Field
Creates any of the following custom field types:
-
text (default when no "type" is specified)
-
textarea
-
checkbox
-
date
-
integer
-
decimal
-
regexp
-
dropdown
-
lookup
See About custom field types in Zendesk help.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
N/A |
GET
Fields: List Custom Object Fields
Lists all undeleted custom fields for the specified object.
Allowed For
-
Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Include standard fields if true. Exclude them if false |
|
|
(Required) The key of a custom object |
|
|
N/A |
GET
Followers: List Followers for a Ticket
Returns any users who follow the ticket.
Availability
The CCs and Followers feature must be enabled in Zendesk Support.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Fulfilled: List Tickets Fulfilled by a User
Returns a list of ticket ids that contain attributes matching the current user's attributes. Accepts a ticket_ids parameter for relevant tickets to check for matching attributes.
Allowed For
-
Agents and admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Group_memberships: Create Membership
Assigns an agent to a given group.
Allowed For
-
Admins
-
Agents assigned to a custom role with permissions to manage group memberships (Enterprise only)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Group_memberships: List Memberships
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For:
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Groups: Create Group
Allowed For
-
Admins
-
Agents assigned to a custom role with permissions to manage groups (Enterprise only)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Groups: List Groups
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Admins
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Identities: Create Identity
Adds an identity to a user's profile. An agent can add an identity to any user profile.
Supported identity types:
| Type | Example |
| ---------------- | ------- |
| email | { "type" : "email", "value" : "someone@example.com" } |
| twitter | { "type" : "twitter", "value" : "screen_name" } |
| facebook | { "type" : "facebook", "value" : "855769377321" } |
| google | { "type" : "google", "value" : "example@gmail.com" } |
| agent_forwarding | { "type" : "agent_forwarding", "value" : "+1 555-123-4567" } |
| phone_number | { "type" : "phone_number", "value" : "+1 555-123-4567" } |
To create an identity without sending out a verification email, include a "skip_verify_email": true property.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
GET
Identities: List Identities
Returns a list of identities for the given user.
Use the first endpoint if authenticating as an agent. Use the second if authenticating as an end user. End users can only list email and phone number identities.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
-
Verified end users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
GET
Incidents: List Ticket Incidents
Allowed For
-
Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Instance_values: Incremental Instance Values Export
Returns a stream of changes that occurred on routing instance values. Changes are grouped by attribute_value_id,
with unassociate type events listed with associate type events by the associate event’s timestamp.
Allowed For
-
Admins
Parameters
Optional
| Name | Type | Comment
| ------ | ------ | -------
| cursor | string | The cursor parameter is a non-human-readable argument you can use to move forward or backward in time. The cursor is a read-only URL parameter that's only available in API responses. See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Instance_values: List Agent Attribute Values
Returns an attribute value.
Allowed For
-
Agents and admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
GET
Instance_values: List Ticket Attribute Values
Returns a list of attributes values for the ticket.
Allowed For
-
Agents and admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
POST
Instance_values: Set Agent Attribute Values
Adds the specified attributes if no attributes exists, or replaces all existing attributes with the specified attributes.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
POST
Instance_values: Set Ticket Attribute Values
Adds the specified attributes if no attributes exists, or replaces all existing attributes with the specified attributes.
Invalid or deleted attributes are ignored.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
POST
Items: Create Item
Create a new content item, with one or more variants in the item's variants array. See Specifying item variants.
The default_locale_id and variant locale_id values must be one of the locales the account has active. You can get the list with the List Locales endpoint.
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Items: List Items
Returns a list of all dynamic content items for your account if accessed as an admin or agents who have permission to manage dynamic content.
Allowed For
-
Admins, Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Job_statuses: List Job Statuses
Shows the statuses for background jobs. Statuses are sorted first by completion date and then by creation date in descending order.
Allowed For:
-
Agents
Pagination
-
Cursor pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Jobs: Create Batch Job for Trigger Categories
Creates a job that performs a batch operation for the given trigger categories.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Jobs: Custom Object Record Bulk Jobs
Queues a background job to perform bulk actions on up to 100 custom object records per single request.
Takes a job object with two nested fields:
-
action, one of: -
"create" -
"delete" -
"delete_by_external_id" -
items -
For a
"create"action, an array of JSON objects representing the custom object records being created -
For a
"delete"action, an array of strings representing Zendesk record ids -
For a
"delete_by_external_id"action, an array of strings representing external ids
Allowed For
-
Agents
Response
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.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
N/A |
GET
Locales: List Locales
Lists the translation locales available for the account.
Note: You can alter the list by passing an updated locale_ids array to the Update Account Settings endpoint.
Allowed For
-
Anyone
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
DELETE
Logout: Delete the Authenticated Session
Deletes the current session. In practice, this only works when using session auth for requests, such as client-side requests
made from a Zendesk app. When using OAuth or basic authentication, you don't have a current session so this endpoint has no effect.
Allowed For
-
Admins, Agents, End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Logout_many: Logout many users
Accepts a comma-separated list of up to 100 user ids.
Allowed For:
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Accepts a comma-separated list of up to 100 user ids. |
|
|
N/A |
POST
Macros: Create Macro
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Macros: List Macros
Lists all shared and personal macros available to the current user. For admins, the API returns all macros for the account, including the personal macros of agents and other admins.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
A sideload to include in the response. See Sideloads |
|
|
Filter macros by access. Possible values are "personal", "agents", "shared", or "account". The "agents" value returns all personal macros for the account's agents and is only available to admins. |
|
|
Filter by active macros if true or inactive macros if false |
|
|
Filter macros by category |
|
|
Filter macros by group |
|
|
If true, returns only macros that can be applied to tickets. If false, returns all macros the current user can manage. Default is false |
|
|
Possible values are alphabetical, "created_at", "updated_at", "usage_1h", "usage_24h", "usage_7d", or "usage_30d". Defaults to alphabetical |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
N/A |
PUT
Make_default: Set Membership as Default
Allowed For:
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the group membership |
|
|
N/A |
PUT
Make_default: Set Membership as Default
Sets the default organization membership of a given user.
Allowed for
-
Admins
-
Agents when setting the default organization membership for an end user
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the organization membership |
|
|
N/A |
PUT
Make_default: Set Organization as Default
Sets the default organization membership of a given user.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of an organization |
|
|
N/A |
PUT
Make_primary: Make Identity Primary
Sets the specified identity as primary. To change other attributes, use the Update Identity endpoint. This is a collection-level operation and the correct behavior for an API client is to subsequently reload the entire collection.
The first endpoint is the preferred option if authenticating as an agent. If authenticating as an end user, you can only use the second endpoint. In addition, an end user can only make an email identity primary if the email is verified.
Allowed For
-
Agents
-
Verified end users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the user identity |
|
|
N/A |
PUT
Make_private: Change a comment from public to private
Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
(Required) The ID of the ticket audit |
|
|
N/A |
PUT
Make_private: Make Comment Private
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
(Required) The ID of the ticket comment |
|
|
N/A |
PUT
Mark_as_spam: Mark Ticket as Spam and Suspend Requester
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
PUT
Mark_many_as_spam: Bulk Mark Tickets as Spam
Accepts a comma-separated list of up to 100 ticket ids.
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
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Comma-separated list of ticket ids |
|
|
N/A |
GET
Me: Show Self
Allowed For
-
Anonymous users
Authenticity Token
The endpoint returns an authenticity_token. Zendesk API calls made by end users from a Zendesk help center must include this token in the X-CSRF-Token HTTP header. This helps prevent cross-site request forgery (CSRF) attacks.
For an example using an authenticity token, see the AJAX request in the Upgrading from Templating API v1 documentation.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Merge: Merge End Users
Merges the end user specified in the path parameter into the existing end user specified in the request body.
Any two end users can be merged with the exception of end users created by sharing agreements.
Agents and admins cannot be merged.
For more information about how user data is merged, see Merging a user's duplicate account in Zendesk help.
Allowed For
-
Admins or agents with permission to edit end users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
POST
Merge: Merge Tickets into Target Ticket
Merges one or more tickets into the ticket with the specified id.
See Merging tickets
in the Support Help Center for ticket merging rules.
Any attachment to the source ticket is copied to the target ticket.
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
Agents in the Enterprise account must have merge permissions.
See Creating custom roles and assigning agents (Enterprise)
in the Support Help Center.
Available parameters
The request takes a data object with the following properties:
| Name | Type | Required | Comments |
| ------------------------ | ------- | -------- | ------------------------------------------------------- |
| ids | array | yes | Ids of tickets to merge into the target ticket |
| target_comment | string | no | Private comment to add to the target ticket. This comment is optional but strongly recommended |
| source_comment | string | no | Private comment to add to the source ticket. This comment is optional but strongly recommended |
| target_comment_is_public | boolean | no | Whether comments in the target ticket are public or private |
| source_comment_is_public | boolean | no | Whether comments in the source tickets are public or private |
target_comment and source_comment can be used to provide a reason for the merge for recordkeeping purposes. If the source ticket has attachments, they are included in target_comment.
Comments are private and can't be modified in the following cases:
-
Any of the sources or target tickets are private
-
Any of the sources or target tickets were created through Twitter, Facebook or the Channel framework
In any other case, comments default to private but can be modified with the comment privacy parameters.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
New: Show Macro Replica
Returns an unpersisted macro representation derived from a ticket or macro.
The endpoint takes one of the following query parameters: macro_id or ticket_id. If you include both, macro_id is used.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the macro to replicate |
|
|
(Required) The ID of the ticket from which to build a macro replica |
|
|
N/A |
GET
Object_limit: Custom Objects Limit
List the current count and the limit for custom objects
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Options: Create or Update Ticket Field Option
Creates or updates an option for the given drop-down ticket field.
To update an option, include the id of the option in the custom_field_option object. Example:
{"custom_field_option": {"id": 10002, "name": "Pineapples", ... }
If an option exists for the given ID, the option will be updated. Otherwise, a new option will be created.
Response
Returns one of the following status codes:
-
200 with
Location: /api/v2/ticket_fields/{ticket_field_id}/options.jsonif the ticket field option already exists in the database -
201 with
Location: /api/v2/ticket_fields/{ticket_field_id}/options.jsonif the ticket field option is new
Allowed For
-
Admins
Rate Limit
You can make 100 requests every 1 minute using this endpoint.
The rate limiting mechanism behaves as described in
Monitoring your request activity in the API introduction.
Field Option Limits
-
2000 options per ticket field
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket field |
|
|
N/A |
POST
Options: Create or Update a User Field Option
Creates a new option or updates an existing option for the given drop-down user field.
To update an option, include the id of the option in the custom_field_option object. Example: {"custom_field_option": {"id": 10002, "name": "Pineapples", ... }. If an option exists for the given ID, the option will be updated. Otherwise, a new option will be created.
Response
Returns one of the following status codes:
-
200 with
Location: /api/v2/user_fields/{user_field_id}/options.jsonif the user field option already exists in the database -
201 with
Location: /api/v2/user_fields/{user_field_id}/options.jsonif the user field option is new
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the user field |
|
|
N/A |
GET
Options: List Ticket Field Options
Returns a list of custom ticket field options for the given drop-down ticket field.
Allowed For
-
Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket field |
|
|
N/A |
GET
Options: List User Field Options
Returns a list of custom user field options for the given dropdown user field.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the user field |
|
|
N/A |
POST
Organization_fields: Create Organization Field
Creates any of the following custom field types:
-
text (default when no "type" is specified)
-
textarea
-
checkbox
-
date
-
integer
-
decimal
-
regexp
-
dropdown
-
lookup
See About custom field types in Zendesk help.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Organization_fields: List Organization Fields
Returns a list of custom organization fields in your account. Fields are returned in the order that you specify in your organization fields configuration in Zendesk Support. Clients should cache this resource for the duration of their API usage and map the key for each organization field to the values returned under the organization_fields attribute on the organization resource.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Organization_memberships: Create Membership
Assigns a user to a given organization. Returns an error with status 422 if the user is already assigned to the organization.
Allowed For
-
Admins
-
Agents when creating a new organization membership for an end user
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Organization_memberships: List Memberships
Returns a list of organization memberships for the account, user or organization in question.
Note: When returning organization memberships for a user, organization memberships are sorted with the default organization first, and then by organization name.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
-
End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Organization_subscriptions: Create Organization Subscription
Allowed For:
-
Agents
-
End users
End users can only subscribe to shared organizations in which they're members.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Organization_subscriptions: List Organization Subscriptions
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For:
-
Agents
-
End users
For end users, the response will only list the subscriptions created by the requesting end user.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Organizations: Create Organization
You must provide a unique name for each organization. Normally
the system doesn't allow records to be created with identical names.
However, a race condition can occur if you make two or more identical
POSTs very close to each other, causing the records to have identical
organization names.
Allowed For
-
Admins
-
Agents assigned to a custom role with permissions to manage organizations (Enterprise only)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Organizations: Incremental Organization Export
Allowed For
-
Admins
Sideloading
See Organizations sideloads.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The time to start the incremental export from. Must be at least one minute in the past. Data isn't provided for the most recent minute |
|
|
N/A |
GET
Organizations: List Organizations
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents, with certain restrictions
If the agent has a custom agent role that restricts their access to only users in their own organization, a 403 Forbidden error is returned. See Creating custom agent roles in Zendesk help.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Password: Change Your Password
You can only change your own password. Nobody can change the password of another user because it requires knowing the user's existing password. However, an admin can set a new password for another user without knowing the existing password. See Set a User's Password above.
Allowed For
-
Agents
-
End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
POST
Password: Set a User's Password
An admin can set a user's password only if the setting is enabled in Zendesk Support under Settings > Security > Global. The setting is off by default. Only the account owner can access and change this setting.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
POST
Policies: Create Group SLA Policy
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Policies: Create SLA Policy
Availability
-
Accounts on the Support Professional or Suite Growth plan or above
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Policies: List Group SLA Policies
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Policies: List SLA Policies
Availability
-
Accounts on the Support Professional or Suite Growth plan or above
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Preview: Preview Views
You can preview views by constructing the conditions in the proper format and nesting them under the view property. See Conditions reference. The output can also be controlled by passing in any of the following parameters and nesting them under the output property.
| Name | Type | Comment
| --------------- | ------- | -------
| columns | Array | The ticket fields to display. System fields are looked up by name, custom fields by title or id. See the View columns table
| group_by | String | When present, the field by which the tickets are grouped
| group_order | String | The direction the tickets are grouped. May be one of "asc" or "desc"
| sort_order | String | The direction the tickets are sorted. May be one of "asc" or "desc"
| sort_by | String | The ticket field used for sorting. This will either be a title or a custom field id.
This endpoint is rate limited to 5 requests per minute, per view, per agent.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Problems: List Ticket Problems
The response is always ordered by updated_at in descending order
Allowed For
-
Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Public: List Available Public Locales
Lists the translation locales that are available to all accounts.
Allowed For
-
Anyone
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Recipient_addresses: Create Support Address
Adds a Zendesk or external support address to your account.
To add a Zendesk address, use the following syntax: {local-part}@{accountname}.zendesk.com.
Example: 'sales-team@example.zendesk.com'. The local-part can be anything you like.
To add an external email address such as help@omniwearshop.com, the email must already exist and you must set up forwarding on your email server. The exact steps depend on your mail server. See Forwarding incoming email to Zendesk Support. After setting up forwarding, run the Verify Support Address Forwarding endpoint. The address won't work in Zendesk Support until it's been verified.
Allowed For
-
Admins
-
Agents with permission to manage channels and extensions. See the system permissions in Creating custom roles and assigning agents (Enterprise) in the Support Help Center
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Recipient_addresses: List Support Addresses
Lists all the support addresses for the account.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Admins
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Record_limit: Custom Object Records Limit
List the current count and the limit for custom object records
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Records: Create Custom Object Record
Creates a custom object record according to all the properties described by a custom object definition
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
N/A |
DELETE
Records: Delete Custom Object Record by External Id
Deletes a record with the specified external id.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The external id of a custom object record |
|
|
(Required) The key of a custom object |
|
|
N/A |
GET
Records: List Custom Object Records
Lists all undeleted custom object records for the specified object
#### Pagination
-
Cursor pagination only.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Optional comma-separated list of ids to filter records by. If one or more ids are specified, only matching records are returned. The ids must be unique and are case sensitive. |
|
|
Optional comma-separated list of external ids to filter records by. If one or more ids are specified, only matching records are returned. The ids must be unique and are case sensitive. |
|
|
One of id, updated_at, -id, or -updated_at. The - denotes the sort will be descending. |
|
|
A pagination cursor that tells the endpoint which page to start on. It should be a meta.before_cursor value from a previous request. Note: page[before] and page[after] can't be used together in the same request. |
|
|
A pagination cursor that tells the endpoint which page to start on. It should be a meta.after_cursor value from a previous request. Note: page[before] and page[after] can't be used together in the same request. |
|
|
Specifies how many records should be returned in the response. |
|
|
(Required) The key of a custom object |
|
|
N/A |
PATCH
Records: Set Custom Object Record by External Id
If a record exists for the given external id, updates it. Only the specified attributes are updated. Otherwise, creates a new record with the provided external id and attributes.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The external id of a custom object record |
|
|
(Required) The key of a custom object |
|
|
N/A |
PUT
Recover: Recover Suspended Ticket
Note: During recovery, the API sets the requester to the authenticated agent who called the API, not the original requester. This prevents the ticket from being re-suspended after recovery. To preserve the original requester, use the Recover Multiple Suspended Tickets endpoint with the single ticket.
This endpoint does not queue an asynchronous job that can be tracked from Job Statuses. Instead, it processes the request with a synchronous response.
-
If all recoveries are successful, it returns a 200 with a
ticketsarray in the response. -
If all recoveries fail, it returns a 422 with a
suspended_ticketsarray in the response. -
If there is a mixture of successes and failures in a single call, it returns a 422 with a
suspended_ticketsarray of the failures in the response.
Allowed For
-
Admins and agents in custom roles with permission to manage suspended tickets on Enterprise plans
-
Unrestricted agents on all other plans
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) id of the suspended ticket |
|
|
N/A |
PUT
Recover_many: Recover Multiple Suspended Tickets
Accepts up to 100 ids (the auto-generated id, not the ticket id.) Note that suspended tickets that fail to be recovered are still included in the response.
Allowed For
-
Admins and agents in custom roles with permission to manage suspended tickets on Enterprise plans
-
Unrestricted agents on all other plans
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) A comma separated list of ids of suspended tickets to recover. |
|
|
N/A |
PUT
Redact: Redact Comment Attachment
Redaction allows you to permanently remove attachments from an existing comment on a ticket. Once removed from a comment, the attachment is replaced with an empty "redacted.txt" file.
The redaction is permanent. It is not possible to undo redaction or see what was removed. Once a ticket is closed, redacting its attachments is no longer possible.
Also, if you want to redact an inline attachment, you can use the include_inline_images parameter in the List Comments operation to obtain the inline attachment ID, and use it in the request URL.
Allowed For
-
Admins
-
Agents when deleting tickets is enabled for agents on professional accounts
-
Agents assigned to a custom role with permissions to redact ticket content (Enterprise only)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
(Required) The ID of the comment |
|
|
(Required) The ID of the attachment |
|
|
N/A |
PUT
Redact: Redact String in Comment
Permanently removes words or strings from a ticket comment. Specify the string to redact in an object with a text property. Example: '{"text": "987-65-4320"}'. The characters of the word or string are replaced by the ▇ symbol.
If the comment was made by email, the endpoint also attempts to redact the string from the original email retained by Zendesk for audit purposes.
Note: If you use the rich text editor, support for redacting formatted text (bold, italics, hyperlinks) is limited.
Redaction is permanent. You can't undo the redaction or see what was removed. Once a ticket is closed, you can no longer redact strings from its comments.
To use this endpoint, the "Agents can delete tickets" option must be enabled in the Zendesk Support admin interface at Admin > Settings > Agents.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
(Required) The ID of the ticket comment |
|
|
N/A |
GET
Related: Show Organization's Related Information
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of an organization |
|
|
N/A |
GET
Related: Show User Related Information
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
GET
Related: Ticket Related Information
The request returns a data object with the following properties:
| Name | Type | Comment
| ------------------- | ------- | -------
| topic_id | string | Related topic in the Web portal (deprecated feature)
| followup_source_ids | array | Sources to follow up
| from_archive | boolean | Is true if the current ticket is archived
| incidents | integer | A count of related incident occurrences
| twitter | object | Twitter information associated with the ticket
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Renew: Renew the current session
Allowed For
-
Admins, Agents, End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Reorder: Reorder Custom Fields of an Object
Sets a preferred order of custom fields for a specific object by providing field ids in the desired order.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
N/A |
PUT
Reorder: Reorder Group SLA Policies
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
The ids of the Group SLA policies to reorder |
|
|
N/A |
PUT
Reorder: Reorder Organization Field
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Reorder: Reorder SLA Policies
Availability
-
Accounts on the Support Professional or Suite Growth plan or above
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
The IDs of the SLA Policies to reorder |
|
|
N/A |
PUT
Reorder: Reorder Ticket Forms
Allowed For
-
Admins
Request Parameters
You can pass in the following parameter in the payload:
| Name | Type | Comment
| ------------------- | ------ | --------
| ticket_form_ids | array | An array of ticket form ids. Example: "[2, 23, 46, 50]"
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Reorder: Reorder Triggers
Alters the firing order of triggers in the account. See
Reordering and sorting triggers
in the Zendesk Help Center. The firing order is set in a trigger_ids array in the request body.
You must include every trigger id in your account to reorder the triggers. If not, the endpoint will return 404 Forbidden.
Reordering triggers via the API is not permitted if you have more than one trigger category. If there is more than one
trigger category, the endpoint will return a LimitOneCategory error.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Reorder: Reorder User Field
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Reorder: Reorder Workspaces
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Request_create: Request User Create
Sends the owner a reminder email to update their subscription so more agents can be created.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Request_verification: Request User Verification
Sends the user a verification email with a link to verify ownership of the email address.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the user identity |
|
|
N/A |
POST
Requests: Create Request
Accepts a request object that sets one or more properties.
Allowed for
-
End users
-
Anonymous users (rate limit of 5 requests per hour for trial accounts)
Additional properties
In addition to the writable request properties in the JSON Format table above, you can set the following properties when creating a request.
| Name | Type | Mandatory | Comment
| ---------------- | -------| --------- | -------
| comment | object | yes | Describes the problem, incident, question, or task. See Request comments
| collaborators | array | no | Adds collaborators (cc's) to the request. An email notification is sent to them when the ticket is created. See Setting collaborators
| requester | object | yes | \Required for anonymous requests. Specifies the requester of the anonymous request. See Creating anonymous requests
Creating follow-up requests
Once a ticket is closed (as distinct from solved), it can't be reopened. However, you can create a new request that references the closed ticket. To create the follow-up request, include a via_followup_source_id property in the request object that specifies the closed ticket. The parameter only works with closed tickets. It has no effect with other tickets.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Requests: List Requests
Allowed for
-
End Users
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Requirements: List password requirements
Allowed For
-
Agents
-
End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
POST
Resource_collections: Create Resource Collection
Creates a resource collection from a provided payload object. The payload object is specified the same way as the content of a requirements.json file in a Zendesk app. See Specifying Apps Requirements in the Zendesk Apps framework docs.
The response includes a [job
status](/api-reference/ticketing/ticket-management/job_statuses/) for creation of the specified resources.
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Resource_collections: List Resource Collections
Lists resource collections for the account.
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Restore: Restore a previously deleted ticket
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
PUT
Restore_many: Restore previously deleted tickets in bulk
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Comma-separated list of ticket ids |
|
|
N/A |
GET
Revisions: List Trigger Revisions
List the revisions associated with a trigger. Trigger revision history is only available on Enterprise plans.
Allowed For
-
Agents
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ----- | -------------
| users | The user that authored each revision
Pagination
This endpoint uses cursor-based pagination. The records are ordered in
descending order by the created_at timestamp, then by id on duplicate
created_at values.
The cursor parameter is a non-human-readable argument you can use to move
forward or backward in time.
Each JSON response will contain the following attributes to help you get
more results:
-
after_urlrequests more recent results -
before_urlrequests older results -
after_cursoris the cursor to build the request yourself -
before_cursoris the cursor to build the request yourself
The properties are null if no more records are available.
You can request a maximum of 1000 records using the limit parameter. If
no limit parameter is supplied, it will default to 1,000.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the trigger |
|
|
N/A |
GET
Sample: Incremental Sample Export
Use this endpoint to test the incremental export format. It's more strict in terms of rate limiting,
at 10 requests per 20 minutes instead of 10 requests per minute. It also returns only up to 50
results per request. Otherwise, it's identical to the above APIs.
Use the incremental_resource parameter to specify the resource. Possible values are "tickets", "ticket_events", "users", or "organizations".
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The time to start the incremental export from. Must be at least one minute in the past. Data isn't provided for the most recent minute |
|
|
(Required) The resource requested for incremental sample export |
|
|
N/A |
POST
Satisfaction_rating: Create a Satisfaction Rating
Creates a CSAT rating for a solved ticket, or for a ticket that was previously
solved and then reopened.
Only the end user listed as the ticket requester can create a satisfaction rating for the ticket.
Allowed For
-
End user who requested the ticket
The end user must be a verified user.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the ticket |
|
|
N/A |
GET
Satisfaction_ratings: List Satisfaction Ratings
Allowed For
-
Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Filters
| Parameter | Value
| ---------- | -----
| score | offered, unoffered, received, received\_with\_comment, received\_without\_comment,
good, good\_with\_comment, good\_without\_comment,
bad, bad\_with\_comment, bad\_without\_comment
| start_time | Time of the oldest satisfaction rating, as a Unix epoch time
| end_time | Time of the most recent satisfaction rating, as a Unix epoch time
If you specify an unqualified score such as good, the results include all the records with and without comments.
Examples:
-
/api/v2/satisfaction_ratings.json?score=bad -
/api/v2/satisfaction_ratings.json?score=bad&start_time=1498151194 -
/api/v2/satisfaction_ratings.json?start_time=1340384793&end_time=1371920793
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Satisfaction_reasons: List Reasons for Satisfaction Rating
List all reasons for an account
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Search: List Search Results
Use the ampersand character (&) to append the sort_by or sort_order parameters to the URL.
For examples, see Searching with Zendesk API.
Pagination
-
Offset pagination only
Offset pagination may result in duplicate results when paging. You can also use the
Export Search Results endpoint, which
uses cursor-based pagination and doesn't return duplicate results. See
Pagination for more information.
Allowed For
-
Admins, Agents and Light Agents
Errors JSON Format
Errors are represented as JSON objects which have the following keys:
| Name | Type | Comment
| --------------------- | ---------------------| --------------------
| error | string | The type of error. Examples: "unavailable", "invalid"
| description | string |
Example Error
{
"error": "unavailable",
"description": "Sorry, we could not complete your search query. Please try again in a moment."
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The search query. See Query basics above. For details on the query syntax, see the Zendesk Support search reference |
|
|
One of updated_at, created_at, priority, status, or ticket_type. Defaults to sorting by relevance |
|
|
One of asc or desc. Defaults to desc |
|
|
N/A |
GET
Search: Search Automations
Pagination
-
Offset pagination only
See Using Offset Pagination.
Allowed For
-
Agents
Sideloads
The following sideloads are supported. For more information, see Side-loading.
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each automation, if present
| permissions | The permissions for each automation
| usage_1h | The number of times each automation has been used in the past hour
| usage_24h | The number of times each automation has been used in the past day
| usage_7d | The number of times each automation has been used in the past week
| usage_30d | The number of times each automation has been used in the past thirty days
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Query string used to find all automations with matching title |
|
|
Filter by active automations if true or inactive automations if false |
|
|
Possible values are "alphabetical", "created_at", "updated_at", and "position". If unspecified, the automations are sorted by relevance |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
A sideload to include in the response. See Sideloads |
|
|
N/A |
GET
Search: Search Custom Object Records
Returns an array of custom object records that meet the search criteria
Pagination
-
Cursor pagination only.
-
Returns the records sorted by relevancy with page limits. Without a
sortparameter, only the first 10,000 records are returned. With asortparameter, all records are returned.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
The query parameter is used to search text-based fields for records that match specific query terms.
For example, you might want to search for records related to Tesla vehicles: query=Tesla. In this example the API would return every record for the given custom object where any of the text fields contain the word 'Tesla'. If needed, you could include multiple words or numbers in your search. For example: query=Tesla Honda 2020. This would be URL encoded as query=Tesla%20Honda%202020. In this example, the API would return every record for the custom object for which any of the text fields contained 'Tesla', 'Honda', or '2020'. |
|
|
One of name, created_at, updated_at, -name, -created_at, or -updated_at. The - denotes the sort will be descending. Defaults to sorting by relevance. |
|
|
A pagination cursor that tells the endpoint which page to start on. It should be a meta.before_cursor value from a previous request. Note: page[before] and page[after] can't be used together in the same request. |
|
|
A pagination cursor that tells the endpoint which page to start on. It should be a meta.after_cursor value from a previous request. Note: page[before] and page[after] can't be used together in the same request. |
|
|
Specifies how many records should be returned in the response. |
|
|
(Required) The key of a custom object |
|
|
N/A |
GET
Search: Search Macros
Pagination
-
Offset pagination only
See Using Offset Pagination.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
A sideload to include in the response. See Sideloads |
|
|
Filter macros by access. Possible values are "personal", "agents", "shared", or "account". The "agents" value returns all personal macros for the account's agents and is only available to admins. |
|
|
Filter by active macros if true or inactive macros if false |
|
|
Filter macros by category |
|
|
Filter macros by group |
|
|
If true, returns only macros that can be applied to tickets. If false, returns all macros the current user can manage. Default is false |
|
|
Possible values are alphabetical, "created_at", "updated_at", "usage_1h", "usage_24h", "usage_7d", or "usage_30d". Defaults to alphabetical |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
(Required) Query string used to find macros with matching titles |
|
|
N/A |
GET
Search: Search Organizations by External ID
If you set the external_id value of an organization to associate it to an external record, you can use the external id to search for the organization.
Allowed For:
-
Admins
-
Agents assigned to a custom role with permissions to add or modify organizations (Enterprise only)
See Creating custom agent roles in the Support Help Center.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The external id of an organization |
|
|
N/A |
GET
Search: Search Requests
Examples:
-
GET /api/v2/requests/search.json?query=printer -
GET /api/v2/requests/search.json?query=printer&organization_id=1 -
GET /api/v2/requests/search.json?query=printer&cc_id=true -
GET /api/v2/requests/search.json?query=printer&status=hold,open
Pagination
-
Offset pagination only
See Using Offset Pagination.
Results limit
The Search Requests endpoint returns up to 1,000 results per query, with a maximum of 100 results per page. See Pagination. If you request a page past the limit (page=11 at 100 results per page), a 422 Insufficient Resource Error is returned.
Allowed For
-
End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Search: Search Triggers
Pagination
-
Offset pagination only
See Using Offset Pagination.
Allowed For
-
Agents
Sideloads
The following sideloads are supported. For more information, see Side-loading.
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each trigger, if present
| permissions | The permissions for each trigger
| usage_1h | The number of times each trigger has been used in the past hour
| usage_24h | The number of times each trigger has been used in the past day
| usage_7d | The number of times each trigger has been used in the past week
| usage_30d | The number of times each trigger has been used in the past thirty days
Filter
Use the filter query parameter to filter a trigger search by one or more attributes. For example, the following filter argument filters triggers by the description attribute:
{
"json": {
"description": "Close a ticket"
}
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Query string used to find all triggers with matching title |
|
|
Trigger attribute filters for the search. See Filter |
|
|
Filter by active triggers if true or inactive triggers if false |
|
|
Cursor-based pagination only. Possible values are "alphabetical", "created_at", "updated_at", or "position". |
|
|
Offset pagination only. Possible values are "alphabetical", "created_at", "updated_at", "usage_1h", "usage_24h", or "usage_7d". Defaults to "position" |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
A sideload to include in the response. See Sideloads |
|
|
N/A |
GET
Search: Search Users
Returns an array of users who meet the search criteria.
Pagination
-
Offset pagination only
See Using Offset Pagination.
Allowed For
-
Admins, Agents and Light Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
The query parameter supports the Zendesk search syntax for more advanced
|
|
|
The external_id parameter does not support the search syntax. It only accepts ids. |
|
|
N/A |
GET
Search: Search Views
Pagination
-
Offset pagination only
See Using Offset Pagination.
Allowed For
-
Agents
Sideloads
The following sideloads are supported. For more information, see Side-loading.
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each view, if present
| permissions | The permissions for each view
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Query string used to find all views with matching title |
|
|
Filter views by access. May be "personal", "shared", or "account" |
|
|
Filter by active views if true or inactive views if false |
|
|
Filter views by group |
|
|
Possible values are "alphabetical", "created_at", "updated_at", and "position". If unspecified, the views are sorted by relevance |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
A sideload to include in the response. See Sideloads |
|
|
N/A |
GET
Session: Show the Currently Authenticated Session
Allowed For
-
Admins, Agents, End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
DELETE
Sessions: Bulk Delete Sessions
Deletes all the sessions for a user.
Allowed For
-
Admins, Agents, End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
GET
Sessions: List Sessions
If authenticated as an admin, returns all the account's sessions. If authenticated as an agent or end user, returns only the sessions of the user making the request.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Allowed For
-
Admins, Agents, End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Settings: Show Settings
Shows the settings that are available for the account.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Settings: Update Account Settings
Updates settings for the account. See JSON Format above for the settings you can update.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Sharing_agreements: Create Sharing Agreement
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Sharing_agreements: List Sharing Agreements
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Show_many: List Views By ID
Allowed For
-
Agents
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each view, if present
| permissions | The permissions for each view
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) List of view's ids separated by commas. |
|
|
Only active views if true, inactive views if false |
|
|
N/A |
GET
Show_many: Show Many Items
Stability
-
Development
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Identifiers for the dynamic contents |
|
|
N/A |
GET
Show_many: Show Many Job Statuses
Accepts a comma-separated list of job status ids.
Allowed For:
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Comma-separated list of job status ids. |
|
|
N/A |
GET
Show_many: Show Many Organizations
Accepts a comma-separated list of up to 100 organization ids or external ids.
Allowed For
-
Admins
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
A list of organization ids |
|
|
A list of external ids |
|
|
N/A |
GET
Show_many: Show Many Ticket Forms
Takes an ids query parameter that accepts a comma-separated list of up to 100 ticket form ids. This endpoint is used primarily by the mobile SDK and the Web Widget.
Allowed For
-
Anyone
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) IDs of the ticket forms to be shown |
|
|
true returns active ticket forms; false returns inactive ticket forms. If not present, returns both |
|
|
true returns ticket forms where end_user_visible; false returns ticket forms that are not end-user visible. If not present, returns both |
|
|
true returns the default ticket form when the criteria defined by the parameters results in a set without active and end-user visible ticket forms |
|
|
true returns the ticket forms of the brand specified by the url's subdomain |
|
|
N/A |
GET
Show_many: Show Many Users
Accepts a comma-separated list of up to 100 user ids or external ids.
Allowed For:
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Accepts a comma-separated list of up to 100 user ids. |
|
|
Accepts a comma-separated list of up to 100 external ids. |
|
|
N/A |
GET
Show_many: Show Multiple Tickets
Accepts a comma-separated list of ticket ids to return.
This endpoint will return up to 100 tickets records.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) Comma-separated list of ticket ids |
|
|
N/A |
GET
Skips: List Ticket Skips
Archived tickets are not included in the response. See
About archived tickets in
the Support Help Center.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents with "View only" or higher reports permissions in Support.
These permissions are distinct from Explore permissions.
-
Agents retrieving their own skips
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Sort order. Defaults to "asc" |
|
|
User ID of an agent |
|
|
N/A |
POST
Skips: Record a new skip for the current user
Record a new ticket skip for the current user.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Suspended_tickets: List Suspended Tickets
Allowed For
-
Admins and agents in custom roles with permission to manage suspended tickets on Enterprise plans
-
Unrestricted agents on all other plans
Sorting
You can sort the tickets with the sort_by and sort_order query string parameters.
Pagination
-
Cursor pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
The field to sort the ticket by, being one of author_email, cause, created_at, or subject. |
|
|
The order in which to sort the suspended tickets. This can take value asc or desc. |
|
|
N/A |
PUT
Tags: Add Tags
You can also add tags to multiple tickets with the [Update Many
Tickets](/api-reference/ticketing/tickets/tickets/#update-many-tickets) endpoint.
Safe Update
If the same ticket is updated by multiple API requests at
the same time, some tags could be lost because of ticket
update collisions. Include updated_stamp and safe_update
properties in the request body to make a safe update.
For updated_stamp, retrieve and specify the ticket's
latest updated_at timestamp. The tag update only occurs
if the updated_stamp timestamp matches the ticket's
actual updated_at timestamp at the time of the request.
If the timestamps don't match (in other words, if the
ticket was updated since you retrieved the ticket's
last updated_at timestamp), the request returns a
409 Conflict error.
Example
{
"tags": ["customer"],
"updated_stamp":"2019-09-12T21:45:16Z",
"safe_update":"true"
}
For details, see Protecting against ticket update collisions.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Tags: List Resource Tags
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Tags: List Tags
Lists up to the 20,000 most popular tags in the last 60 days, in decreasing popularity.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
DELETE
Tags: Remove Tags
You can also delete tags from multiple tickets with the
Update Many Tickets endpoint.
This endpoint supports safe updates. See Safe Update.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Tags: Search Tags
Returns an array of registered and recent tag names that start with the characters specified in the name query parameter. You must specify at least 2 characters.
Pagination
-
Offset pagination only
See Using Offset Pagination.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
A substring of a tag to search for |
|
|
N/A |
POST
Tags: Set Tags
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
Target_failures: List Target Failures
Returns the 25 most recent target failures, per target.
Stability
-
Development
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Targets: Create Target
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Targets: List Targets
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Ticket_audits: List All Ticket Audits
Returns ticket audits. Archived tickets are not included in the response. Use the List Audits for a Ticket endpoint to
retrieve audit records for an archived ticket. To learn more about archived tickets, see About archived tickets.
This endpoint should not be used for capturing change data. When continually chasing the tail of a cursor, some records will be skipped. For this use case, use the Incremental Ticket Event Export API.
Pagination
-
Cursor pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Maximum number of results returned |
|
|
N/A |
GET
Ticket_events: Incremental Ticket Event Export
Returns a stream of changes that occurred on tickets. Each event is tied
to an update on a ticket and contains all the fields that were updated in that
change. For more information, see:
-
Exporting ticket events in Using the Incremental Exports API
-
Time-based incremental exports in Using the Incremental Exports API
You can include comments in the event stream by using the comment_events
sideload. See Sideloading below. If you don't specify the sideload, any comment
present in the ticket update is described only by Boolean comment_present
and comment_public object properties in the event's child_events array.
The comment itself is not included.
Allowed For
-
Admins
Sideloading
The endpoint supports the comment_events sideload. Any comment present in the ticket
update is listed as an object in the event's child_events array. Example:
"child_events": [
{
"id": 91048994488,
"via": {
"channel": "api",
"source": {"from":{},"to":{},"rel":null}},
"via_reference_id":null,
"type": "Comment",
"author_id": 5031726587,
"body": "This is a comment",
"html_body": "<div class="zd-comment"><p dir="auto">This is a comment</p>",
"public": true,
"attachments": [],
"audit_id": 91048994468,
"created_at": "2009-06-25T10:15:18Z",
"event_type": "Comment"
},
...
],
...
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The time to start the incremental export from. Must be at least one minute in the past. Data isn't provided for the most recent minute |
|
|
N/A |
POST
Ticket_fields: Create Ticket Field
Creates any of the following custom field types:
| Custom field type | Description |
|-------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------|
| text | Default custom field type when type is not specified |
| textarea | For multi-line text |
| checkbox | To capture a boolean value. Allowed values are true or false |
| date | Example: 2021-04-16 |
| integer | String composed of numbers. May contain an optional decimal point |
| decimal | For numbers containing decimals |
| regexp | Matches the Regex pattern found in the custom field settings |
| partialcreditcard | A credit card number. Only the last 4 digits are retained |
| multiselect | Enables users to choose multiple options from a dropdown menu |
| tagger | Single-select dropdown menu. It contains one or more tag values belonging to the field's options. Example: ( {"id": 21938362, "value": ["hd_3000", "hd_5555"]}) |
| lookup | A field to create a relationship (see lookup relationships) to another object such as a user, ticket, or organization |
See About custom field types in the Zendesk Help Center.
Allowed For
-
Admins
Field limits
We recommend the following best practices for ticket fields limits. Creating more than these amounts can affect performance.
-
400 ticket fields per account if your account doesn't have ticket forms
-
400 ticket fields per ticket form if your account has ticket forms
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Ticket_fields: List Ticket Fields
Returns a list of all system and custom ticket fields in your account.
Cursor pagination returns a maximum of 100 records per page and fields are returned in the order specified by their id.
If the results are not paginated every field is returned in the response and fields are returned in the order specified by the position and id.
For accounts without access to multiple ticket forms, positions can be changed using the Update Ticket Field endpoint or the Ticket Forms page in Zendesk Support (Admin > Manage > Ticket Forms). The Ticket Forms page shows the fields for the account. The order of the fields is used in the different products to show the field values in the tickets.
For accounts with access to multiple ticket forms, positions can only be changed using the Update Ticket Field endpoint because products use the order defined on each form to show the field values instead of the general position of the ticket field in the account.
Consider caching this resource to use with the Tickets API.
Pagination
-
Cursor pagination (recommended)
-
No pagination
See Pagination.
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ---------------- | -------------
| users | The user or users that created the ticket field
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Forces the title_in_portal property to return a dynamic content variant for the specified locale.
|
|
|
Displays the creator_user_id and creator_app_name properties. If the ticket field is created
|
|
|
N/A |
POST
Ticket_forms: Create Ticket Form
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Ticket_forms: List Ticket Forms
Returns a list of all ticket forms for your account if accessed as an admin or agent. End users only see ticket forms that have end_user_visible set to true.
Allowed For
-
Anyone
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
true returns active ticket forms; false returns inactive ticket forms. If not present, returns both |
|
|
true returns ticket forms where end_user_visible; false returns ticket forms that are not end-user visible. If not present, returns both |
|
|
true returns the default ticket form when the criteria defined by the parameters results in a set without active and end-user visible ticket forms |
|
|
true returns the ticket forms of the brand specified by the url's subdomain |
|
|
N/A |
GET
Ticket_metric_events: List Ticket Metric Events
Returns ticket metric events that occurred on or after the start time.
Cursor pagination returns a maximum of 100 records per page. Events are listed in chronological order.
If the results are not paginated, events will be returned as a time-based incremental export.
See Time-based incremental exports.
Pagination
-
Cursor pagination
See Pagination.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The Unix UTC epoch time of the oldest event you're interested in. Example: 1332034771. |
|
|
N/A |
GET
Ticket_metrics: List Ticket Metrics
Returns a list of tickets with their metrics.
Tickets are ordered chronologically by created date, from newest to oldest.
The last ticket listed may not be the absolute oldest ticket in your account
due to ticket archiving.
Archived tickets are not included in the response. See
About archived tickets in
Zendesk help.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Tickets: Create Ticket
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Tickets: Create Ticket or Voicemail Ticket
Allowed For
-
Agents
Creating tickets
Introduction
Creating tickets using Talk Partner Edition follows the same conventions as the Create Ticket endpoint. See Create Ticket.
Request parameters
The POST request takes a mandatory ticket object that lists the values to set when the ticket is created.
You may also include an optional display_to_agent value such as the ID of the agent that will see the newly created ticket.
Tickets created using this endpoint must have a via_id parameter. See the following
section for possible values.
Zendesk Talk Integration Via IDs
Tickets created using this endpoint must have one of the following via_id parameters:
| ID | Description
| ---------| -------------
| 44 | Voicemail
| 45 | Phone call (inbound)
| 46 | Phone call (outbound)
Creating voicemail tickets
Request parameters
The POST request takes a mandatory ticket object that lists the values to set when the ticket is created.
The ticket must have a voice_comment with the following values:
| Name | Type | Comment
| ------------------ | ----------------------| -------
| from | string | Incoming phone number
| to | string | Dialed phone number
| recording_url | string | URL of the recording
| started_at | date | ISO 8601 timestamp of the call starting time
| call_duration | integer | Duration in seconds of the call
| answered_by_id | integer | The agent who answered the call
| transcription_text | string | Transcription of the call (optional)
| location | string | Location of the caller (optional)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Tickets: Incremental Ticket Export, Time Based
Returns the tickets that changed since the start time. For more information,
see Exporting tickets in Using the Incremental Exports API.
This endpoint supports time-based incremental exports.
For more information, see Time-based incremental exports in Using the Incremental Exports API. You can also return tickets using cursor-based pagination. See Incremental Ticket Export, Cursor Based.
The results include tickets that were updated by the system. See
Excluding system-updated tickets in Using the Incremental Exports API.
The endpoint can return tickets with an updated_at time that's earlier than the
start_time time. The reason is that the API compares the start_time with the ticket's
generated_timestamp value, not its updated_at value. The updated_at value is
updated only if the update generates a ticket event.
The generated_timestamp value is updated for all ticket updates, including system
updates. If a system update occurs after a ticket event, the unchanged
updated_at time will become earlier relative to the updated generated_timestamp
time.
Allowed For
-
Admins
Sideloading
See Tickets sideloads. For performance reasons,
last_audits sideloads aren't supported.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The time to start the incremental export from. Must be at least one minute in the past. Data isn't provided for the most recent minute |
|
|
N/A |
GET
Tickets: List Tickets
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Lists tickets by external id. External ids don't have to be unique for each ticket. As a result, the request may return multiple tickets with the same external id. |
|
|
N/A |
GET
Tickets: List Tickets From a View
Allowed For
-
Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Sort or group the tickets by a column in the View columns table. The subject and submitter columns are not supported |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
(Required) The ID of the view |
|
|
N/A |
POST
Tickets: Ticket Import
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
If true, any ticket created with a closed status bypasses the normal ticket lifecycle and will be created directly in your ticket archive |
|
|
N/A |
POST
Trigger_categories: Create Trigger Category
Creates a trigger category.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Trigger_categories: List Trigger Categories
Returns all the trigger categories in the account.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Pagination parameters |
|
|
Pagination parameters |
|
|
Pagination parameters |
|
|
Sort parameters |
|
|
Allowed sideloads |
|
|
N/A |
POST
Triggers: Create Trigger
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Triggers: List Triggers
Lists all triggers for the current account.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Sideloads
The following sideloads are supported. The usage sideloads are only supported on the Support Professional or Suite Growth plan or above.
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each trigger, if present
| permissions | The permissions for each trigger
| usage_1h | The number of times each trigger has been used in the past hour
| usage_24h | The number of times each trigger has been used in the past day
| usage_7d | The number of times each trigger has been used in the past week
| usage_30d | The number of times each trigger has been used in the past thirty days
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Filter by active triggers if true or inactive triggers if false |
|
|
Cursor-based pagination only. Possible values are "alphabetical", "created_at", "updated_at", or "position". |
|
|
Offset pagination only. Possible values are "alphabetical", "created_at", "updated_at", "usage_1h", "usage_24h", or "usage_7d". Defaults to "position" |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
Filter triggers by category ID |
|
|
N/A |
PUT
Update_many: Update Many Automations
Note: You might be restricted from updating some default automations. If included in a bulk update, the unrestricted automations will be updated.
Allowed For
-
Agents
Request Parameters
The PUT request expects an automations object that lists the automations to update.
Each automation may have the following properties:
| Name | Mandatory | Description
| -------- | --------- | -----------
| id | yes | The ID of the automation to update
| position | no | The new position of the automation
| active | no | The active status of the automation (true or false)
Example Request
{
"automations": [
{"id": 25, "position": 3},
{"id": 23, "position": 5},
{"id": 27, "position": 9},
{"id": 22, "position": 7}
]
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Update_many: Update Many Macros
Updates the provided macros with the specified changes.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Update_many: Update Many Organizations
Bulk or batch updates up to 100 organizations.
Bulk update
To make the same change to multiple organizations, use the following endpoint and data format:
https://{subdomain}.zendesk.com/api/v2/organizations/update_many.json?ids=1,2,3
{
"organization": {
"notes": "Priority"
}
}
Batch update
To make different changes to multiple organizations, use the following endpoint and data format:
https://{subdomain}.zendesk.com/api/v2/organizations/update_many.json
{
"organizations": [
{ "id": 1, "notes": "Priority" },
{ "id": 2, "notes": "Normal" }
]
}
Response
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
-
Admins
-
Agents
Agents with no permissions restrictions can only update "notes" on organizations.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
A list of organization ids |
|
|
A list of external ids |
|
|
N/A |
PUT
Update_many: Update Many Tickets
Accepts an array of up to 100 ticket objects, or a comma-separated list of up to 100 ticket ids.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Comma-separated list of ticket ids |
|
|
N/A |
PUT
Update_many: Update Many Triggers
Updates the position or the active status of multiple triggers. Any additional properties are ignored.
Allowed For
-
Agents
Request Parameters
The PUT request expects a triggers object that lists the triggers to update.
Each trigger may have the following properties:
| Name | Mandatory | Description
| -------- | --------- | -----------
| id | yes | The ID of the trigger to update
| position | no | The new position of the trigger
| active | no | The active status of the trigger (true or false)
| category_id | no | The ID of the new category the trigger is to be moved to
Example Request
{
"triggers": [
{"id": 25, "position": 3},
{"id": 23, "position": 5},
{"id": 27, "position": 9},
{"id": 22, "position": 7}
]
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
PUT
Update_many: Update Many Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Id of the users to update. Comma separated |
|
|
External Id of the users to update. Comma separated |
|
|
N/A |
PUT
Update_many: Update Many Variants
Updates one or more variants. See Update Variant.
You must specify the variants by id in the body. To get the variant ids, see List Variants.
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
N/A |
PUT
Update_many: Update Many Views
Allowed For
-
Agents
Request Parameters
The PUT request expects a views object that lists the views to update.
Each view may have the following properties:
| Name | Mandatory | Description
| -------- | --------- | -----------
| id | yes | The ID of the view to update
| position | no | The new position of the view
| active | no | The active status of the view (true or false)
Example Request Body
{
"views": [
{"id": 25, "position": 3},
{"id": 23, "position": 5},
{"id": 27, "position": 9},
{"id": 22, "position": 7}
]
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Uploads: Upload Files
Uploads a file that can be attached to a ticket comment. It doesn't attach the file to the comment. For details and examples, see Attaching ticket comments with the API.
The endpoint has a required filename query parameter. The parameter specifies what the file will be named when attached to the ticket comment (to give the agent more context about the file). The parameter does not specify the file on the local system to be uploaded. While the two names can be different, their file extensions must be the same. If they don't match, the agent's browser or file reader could give an error when attempting to open the attachment.
The Content-Type header must contain a recognized MIME type that correctly describes the type of the uploaded file. Failing to send a recognized, correct type may cause undesired behavior. For example, in-browser audio playback may be interrupted by the browser's security mechanisms for MP3s uploaded with an incorrect type.
Adding multiple files to the same upload is handled by splitting requests and passing the API token received from the first request to each subsequent request. The token is valid for 3 days.
Note: Even if private attachments are enabled in the Zendesk Support instance, uploaded files are visible to any authenticated user at the content_URL specified in the JSON response until the upload token is consumed. Once a file is associated with a ticket or post, visibility is restricted to users with access to the ticket or post with the attachment.
Allowed For
-
End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
User_fields: Create User Field
Creates any of the following custom field types:
-
text (default when no "type" is specified)
-
textarea
-
checkbox
-
date
-
integer
-
decimal
-
regexp
-
dropdown
-
lookup
See About custom field types in Zendesk help.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
User_fields: List User Fields
Returns a list of custom user fields in your account. Fields are returned in the order that you specify in your user fields configuration in Zendesk Support. Clients should cache this resource for the duration of their API usage and map the key for each User Field to the values returned under the user_fields attribute on the User resource.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
POST
Users: Create User
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Users: Incremental User Export, Time Based
Allowed For
-
Admins
Sideloading
See Users sideloads.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The time to start the incremental export from. Must be at least one minute in the past. Data isn't provided for the most recent minute |
|
|
The number of records to return per page |
|
|
N/A |
GET
Users: List Users
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Admins, Agents and Light Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Filters the results by role. Possible values are "end-user", "agent", or "admin" |
|
|
Filters the results by more than one role using the format role[]={role}&role[]={role} |
|
|
For custom roles which is available on the Enterprise plan and above. You can only filter by one role ID per request |
|
|
List users by external id. External id has to be unique for each user under the same account. |
|
|
N/A |
POST
Values: Create Attribute Value
Creates an attribute value.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the skill-based routing attribute |
|
|
N/A |
GET
Values: List Attribute Values for an Attribute
Returns a list of attribute values for a provided attribute.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the skill-based routing attribute |
|
|
N/A |
POST
Variants: Create Variant
You can only create one variant for each locale id. If a locale variant already exists, the request is rejected.
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
N/A |
GET
Variants: List Variants
Returns all the variants of the specified dynamic content item.
Allowed For
-
Admins
-
Agents who have permission to manage dynamic content
Pagination
-
Cursor pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
N/A |
PUT
Verify: Verify Identity
Sets the specified identity as verified.
For security reasons, you can't use this endpoint to update the email identity of the account owner. To verify the person's identity, send a verification email. See Verifying the account owner's email address in Zendesk help.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the user identity |
|
|
N/A |
PUT
Verify: Verify Support Address Forwarding
Sends a test email to the specified support address to verify that email forwarding for the address works. An external support address won't work in Zendesk Support until it's verified.
Note: You don't need to verify Zendesk support addresses.
The endpoint takes the following body parameter: {"type": "forwarding"}.
Use this endpoint after adding an external support address to Zendesk Support and setting up forwarding on your email server. See Forwarding incoming email to Zendesk Support.
The endpoint doesn't return the results of the test. Instead, use the Show Support Address endpoint to check that the forwarding_status property is "verified".
Allowed For
-
Admins
-
Agents with permission to manage channels and extensions. See the system permissions in Creating custom roles and assigning agents (Enterprise) in the Support Help Center
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the support address |
|
|
N/A |
POST
Views: Create View
Allowed For
-
Agents
JSON Format
The JSON format consists of one property, a view object that lists the values to set when the view is created.
Note: The request must include at least one condition in the all array that checks one of the following fields: status, type, group_id, assignee_id, or requester_id.
| Name | Description
| ----------- | -----------
| title | Required. The title of the view
| all | Required. An array of one or more conditions. A ticket must meet all of them to be included in the view. See Conditions reference
| any | An array of one or more conditions. A ticket must meet any of them to be included in the view. See Conditions reference
| description | The description of the view
| active | Allowed values are true or false. Determines if the view is displayed or not
| output | An object that specifies the columns to display. Example: "output": {"columns": ["status", "description", "priority"]}. See View columns
| restriction | An object that describes who can access the view. To give all agents access to the view, omit this property
The restriction object has the following properties.
| Name | Comment
| ---- | -------
| type | Allowed values are "Group" or "User"
| id | The numeric ID of a single group or user
| ids | The numeric IDs of a single or more groups. Recommended for "Group" type
If type is "Group", the ids property is the preferred method of specifying the group id or ids.
Example Request Body
{
"view": {
"title": "Kelly's tickets",
"raw_title": "{{dc.tickets_assigned_to_kelly}}",
"description": "Tickets that are assigned to Kelly",
"active": true,
"position": 3,
"restriction": {
"type": "User",
"id": "213977756"
},
"all": [
{
"field": "status",
"operator": "less_than",
"value": "solved"
},
{
"field": "group_id",
"operator": "is",
"value": "24000932"
},
{
"field": "custom_fields_360011872073",
"operator": "is",
"value": "Canada"
},
...
],
"output": {
"columns": ["status", "requester", "assignee"],
"group_by": "assignee",
"group_order": "desc",
"sort_by": "status",
"sort_order": "desc"
}
}
}
View columns
The output request parameter lets you specify what columns to include in the view in the agent interface. Example: "output": {"columns": ["status", "description", "priority"]}. The following table lists possible columns for views in the agent UI and the corresponding values in the columns array.
For custom fields, specify the id of the custom field in the columns array.
You can specify a total of 10 columns to a view.
| View column title in UI | Value |
|---------------------------- | -------------------- |
| Assigned | assigned |
| Assignee | assignee |
| Due Date | due_date |
| Group | group |
| ID | nice_id |
| Updated | updated |
| Assignee updated | updated_assignee |
| Requester updated | updated_requester |
| Updater | updated_by_type |
| Organization | organization |
| Priority | priority |
| Requested | created |
| Requester | requester |
| Requester language | locale_id |
| Satisfaction | satisfaction_score |
| Solved | solved |
| Status category | status |
| Subject | description |
| Submitter | submitter |
| Ticket form | ticket_form |
| Type | type |
| Brand | brand |
| Ticket status | custom_status_id |
View sorting
You can group and sort items in the view by adding items to the output parameter:
| Attribute | Description
|-----------------------------| -----------
| group_by, sort_by | Sort or group the tickets by a column in the View columns table. The subject and submitter columns are not supported
| group_order, sort_order | Either "asc" or "desc"
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Views: List Views
Lists shared and personal views available to the current user.
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ---------------- | -------------
| app_installation | The app installation that requires each view, if present
| permissions | The permissions for each view
Pagination
-
Cursor pagination (recommended, but only sorts by
created_at) -
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
Only views with given access. May be "personal", "shared", or "account" |
|
|
Only active views if true, inactive views if false |
|
|
Only views belonging to given group |
|
|
Possible values are "alphabetical", "created_at", or "updated_at". Defaults to "position" |
|
|
One of "asc" or "desc". Defaults to "asc" for alphabetical and position sort, "desc" for all others |
|
|
N/A |
POST
Workspaces: Create Workspace
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
Workspaces: List Workspaces
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
GET
{activity_id}: Show Activity
Lists a specific activity.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The activity ID |
|
|
N/A |
GET
{attachment_id}: Show Attachment
Shows attachment details. You can get the value of the attachment_id parameter by listing the ticket's comments.
See List Comments. Each comment
in the list has an attachments list that specifies an id for each attachment.
#### Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the attachment |
|
|
N/A |
GET
{attachment_id}: Show Macro Attachment
Shows the properties of the specified macro attachment.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the attachment |
|
|
N/A |
PUT
{attachment_id}: Update Attachment for Malware
Toggles enabling or restricting agent access to attachments with detected malware.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the attachment |
|
|
N/A |
DELETE
{attribute_id}: Delete Attribute
Deletes an attribute.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the skill-based routing attribute |
|
|
N/A |
GET
{attribute_id}: Show Attribute
Returns an attribute.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the skill-based routing attribute |
|
|
N/A |
PUT
{attribute_id}: Update Attribute
Updates an attribute.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the skill-based routing attribute |
|
|
N/A |
DELETE
{attribute_value_id}: Delete Attribute Value
Deletes an attribute value.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the skill-based routing attribute |
|
|
(Required) The ID of the skill-based routing attribute value |
|
|
N/A |
GET
{attribute_value_id}: Show Attribute Value
Returns an attribute value.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the skill-based routing attribute |
|
|
(Required) The ID of the skill-based routing attribute value |
|
|
N/A |
PATCH
{attribute_value_id}: Update Attribute Value
Updates an attribute value.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the skill-based routing attribute |
|
|
(Required) The ID of the skill-based routing attribute value |
|
|
N/A |
GET
{audit_log_id}: Show Audit Log
Allowed For
-
Admins on accounts that have audit-log access
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the audit log |
|
|
N/A |
DELETE
{automation_id}: Delete Automation
Note: You might be restricted from deleting some default automations.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the automation |
|
|
N/A |
GET
{automation_id}: Show Automation
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the automation |
|
|
N/A |
PUT
{automation_id}: Update Automation
Updates an automation.
Updated automations must be unique and have at least one condition that is true only once or an action that nullifies at least one of the conditions. Active automations can have overlapping conditions but can't be identical.
The request must include the following conditions in the all array:
-
At least one time-based condition
-
At least one condition that checks one of the following fields: 'status', 'type', 'group_id', 'assignee_id', or 'requester_id'
Note: Updating a condition or action updates both the conditions and actions arrays, clearing all existing values of both arrays. Include all your conditions and actions when updating any condition or action.
Note: You might be restricted from updating some default automations.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the automation |
|
|
N/A |
DELETE
{bookmark_id}: Delete Bookmark
Allowed For
-
Agents (own bookmarks only)
If the bookmark already exists with a specified ticket id, the response status will be http Status: 200 OK.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the bookmark |
|
|
N/A |
DELETE
{brand_id}: Delete a Brand
Deletes a brand.
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the brand |
|
|
N/A |
GET
{brand_id}: Show a Brand
Returns a brand for your account.
Allowed for
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the brand |
|
|
N/A |
PUT
{brand_id}: Update a Brand
Returns an updated brand.
Allowed for
-
Admins
Updating a Brand's Image
A brand image can be updated by uploading a local file using the update brand endpoint. See the Using curl sections below for more information.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the brand |
|
|
N/A |
DELETE
{custom_object_field_key_or_id}: Delete Custom Object Field
Deletes a field with the specified key. Note: You can't delete standard fields.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
(Required) The key or id of a custom object field |
|
|
N/A |
GET
{custom_object_field_key_or_id}: Show Custom Object Field
Returns a custom field for a specific object using a provided key or id of the field.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
(Required) The key or id of a custom object field |
|
|
N/A |
PATCH
{custom_object_field_key_or_id}: Update Custom Object Field
Updates individual custom object fields. The updating rules are as follows:
-
Takes a
custom_object_fieldobject that specifies the properties to update -
The
keyproperty cannot be updated -
If updating a standard field, only the
titleanddescriptionproperties can be updated.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
(Required) The key or id of a custom object field |
|
|
N/A |
DELETE
{custom_object_key}: Delete Custom Object
Permanently deletes the custom object with the specified key
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
N/A |
GET
{custom_object_key}: Show Custom Object
Returns an object with the specified key
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
N/A |
PATCH
{custom_object_key}: Update Custom Object
Updates an individual custom object. The updating rules are as follows:
-
Takes a
custom_objectobject that specifies the properties to update -
The
keyproperty cannot be updated
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
N/A |
DELETE
{custom_object_record_id}: Delete Custom Object Record
Deletes a record with the specified id
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
(Required) The id of a custom object record |
|
|
N/A |
GET
{custom_object_record_id}: Show Custom Object Record
Returns a custom record for a specific object using a provided id.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
(Required) The id of a custom object record |
|
|
N/A |
PATCH
{custom_object_record_id}: Update Custom Object Record
Updates an individual custom object record. The updating rules are as follows:
-
Takes a
custom_object_recordobject that specifies the properties to update -
The custom object fields should be nested inside a
custom_object_fieldsobject
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The key of a custom object |
|
|
(Required) The id of a custom object record |
|
|
N/A |
DELETE
{custom_role_id}: Delete Custom Role
Availability
-
Accounts on the Enterprise plan or above
Allowed for
-
Administrators
-
Agents with the
manage_rolespermission
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the custom agent role |
|
|
N/A |
GET
{custom_role_id}: Show Custom Role
Availability
-
Accounts on the Enterprise plan or above
Allowed for
-
Administrators
-
Agents with the
manage_rolespermission
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the custom agent role |
|
|
N/A |
PUT
{custom_role_id}: Update Custom Role
Availability
-
Accounts on the Enterprise plan or above
Allowed for
-
Administrators
Agents with the manage_roles permission
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the custom agent role |
|
|
N/A |
GET
{custom_status_id}: Show Custom Ticket Status
Returns the custom ticket status object.
Allowed For
-
End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the custom status |
|
|
N/A |
PUT
{custom_status_id}: Update Custom Ticket Status
Takes a custom_status object that specifies the properties to update.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the custom status |
|
|
N/A |
DELETE
{deleted_user_id}: Permanently Delete User
Before permanently deleting a user, you must delete the user first. See Delete User.
WARNING: Permanently deleting a user deletes all of their information. This information is not recoverable.
Permanent user deletion rate limit
You can permanently delete 700 users every 10 minutes.
The rate limiting mechanism behaves as described in
Rates Limits in the API introduction.
Zendesk recommends that you obey the Retry-After header values.
Allowed For
-
Admins and agents in custom roles with permission to manage end users or team members
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the deleted user |
|
|
N/A |
GET
{deleted_user_id}: Show Deleted User
Returns users that have been deleted but not permanently yet. See Permanently Delete User.
Allowed For:
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the deleted user |
|
|
N/A |
DELETE
{dynamic_content_item_id}: Delete Item
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
N/A |
GET
{dynamic_content_item_id}: Show Item
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
N/A |
PUT
{dynamic_content_item_id}: Update Item
The only attribute you can change is the name.
To add a variant to the item, or to update or delete the variants of the item, use the Item Variants API.
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
N/A |
DELETE
{dynammic_content_variant_id}: Delete Variant
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
(Required) The ID of the variant |
|
|
N/A |
GET
{dynammic_content_variant_id}: Show Variant
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
(Required) The ID of the variant |
|
|
N/A |
PUT
{dynammic_content_variant_id}: Update Variant
Updates the specified variant. You don't need to include all the properties. If you just want to update content, for example, then include just that.
You can't switch the active state of the default variant of an item. Similarly, you can't switch the default to false if the variant is the default. You must make another variant default instead.
Allowed For
-
Admins, Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the dynamic content item |
|
|
(Required) The ID of the variant |
|
|
N/A |
DELETE
{group_id}: Delete Group
Allowed For
-
Admins
-
Agents assigned to a custom role with permissions to manage groups (Enterprise only)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the group |
|
|
N/A |
GET
{group_id}: Show Group
Allowed For
-
Admins
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the group |
|
|
N/A |
PUT
{group_id}: Update Group
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the group |
|
|
N/A |
DELETE
{group_membership_id}: Delete Membership
Immediately removes a user from a group and schedules a job to unassign all working tickets that are assigned to the given user and group combination.
Allowed For
-
Admins
-
Agents assigned to a custom role with permissions to manage group memberships (Enterprise only)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the group membership |
|
|
N/A |
GET
{group_membership_id}: Show Membership
The 'id' is the group membership id, not a group id.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the group membership |
|
|
N/A |
DELETE
{group_sla_policy_id}: Delete Group SLA Policy
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the Group SLA policy |
|
|
N/A |
GET
{group_sla_policy_id}: Show Group SLA Policy
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the Group SLA policy |
|
|
N/A |
PUT
{group_sla_policy_id}: Update Group SLA Policy
Updates the specified policy.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the Group SLA policy |
|
|
N/A |
DELETE
{id}: Delete Suspended Ticket
Allowed For
-
Unrestricted agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) id of the suspended ticket |
|
|
N/A |
GET
{id}: Show Suspended Ticket
Allowed For
-
Admins and agents in custom roles with permission to manage suspended tickets on Enterprise plans
-
Unrestricted agents on all other plans
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) id of the suspended ticket |
|
|
N/A |
GET
{job_status_id}: Show Job Status
Shows the status of a background job.
Allowed For:
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) the Id of the Job status |
|
|
N/A |
GET
{locale_id}: Show Locale
Allowed For
-
Anyone
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or the BCP-47 code of the locale. Examples: es-419, en-us, pr-br |
|
|
N/A |
DELETE
{macro_id}: Delete Macro
Allowed For
-
Agents, with restrictions applying on certain actions
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the macro |
|
|
N/A |
GET
{macro_id}: Show Macro
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the macro |
|
|
N/A |
PUT
{macro_id}: Update Macro
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the macro |
|
|
N/A |
DELETE
{organization_field_id}: Delete Organization Field
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the organization field |
|
|
N/A |
GET
{organization_field_id}: Show Organization Field
Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the organization field |
|
|
N/A |
PUT
{organization_field_id}: Update Organization Field
Updating a Drop-down (Tagger) Field
Drop-down fields return an array of custom_field_options which specify the name, value, and order of drop-down options. When updating a drop-down field, note the following information:
-
All options must be passed on update. Options that are not passed will be removed. As a result, these values will be removed from any organizations
-
To create a new option, pass a null
idalong with thenameandvalue -
To update an existing option, pass its
idalong with thenameandvalue -
To reorder an option, reposition it in the
custom_field_optionsarray relative to the other options -
To remove an option, omit it from the list of options upon update
Example Request
curl https://{subdomain}.zendesk.com/api/v2/organization_fields/{organization_field_id}.json \
-H "Content-Type: application/json" -X PUT \
-d '{"organization_field": {"custom_field_options": [{"id": 124, "name": "Option 2", "value": "option_2"}, {"id": 123, "name": "Option 1", "value": "option_1"}, {"id": 125, "name": "Option 3", "value": "option_3"}]}}' \
-v -u {email_address}:{password}
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the organization field |
|
|
N/A |
DELETE
{organization_id}: Delete Organization
Allowed For
-
Admins
-
Agents assigned to a custom role with permissions to manage organizations (Enterprise only)
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of an organization |
|
|
N/A |
GET
{organization_id}: Show Organization
Allowed For
-
Admins
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of an organization |
|
|
N/A |
DELETE
{organization_id}: Unassign Organization
Immediately removes a user from an organization and schedules a job to unassign all working tickets currently assigned to the user and organization combination. The organization_id of the unassigned tickets is set to null.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of an organization |
|
|
N/A |
PUT
{organization_id}: Update Organization
Allowed For
-
Admins
-
Agents
Agents with no permissions restrictions can only update "notes" on organizations.
Note: Updating an organization's domain_names property overwrites all existing domain_names values. To prevent this, submit a complete list of domain_names for the organization in your request.
Example Request
{
"organization": {
"notes": "Something interesting"
}
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of an organization |
|
|
N/A |
DELETE
{organization_membership_id}: Delete Membership
Immediately removes a user from an organization and schedules a job to unassign all working tickets currently assigned to the user and organization combination. The organization_id of the unassigned tickets is set to null.
Allowed for
-
Admins
-
Agents when deleting an organization membership for an end user
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the organization membership |
|
|
N/A |
GET
{organization_membership_id}: Show Membership
Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the organization membership |
|
|
N/A |
DELETE
{organization_subscription_id}: Delete Organization Subscription
Allowed For:
-
Agents
-
End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the organization subscription |
|
|
N/A |
GET
{organization_subscription_id}: Show Organization Subscription
Allowed For:
-
Agents
-
End users
For end users, the response will only list the subscriptions created by the requesting end user.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the organization subscription |
|
|
N/A |
GET
{request_id}: Show Request
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ---------------- | -------------
| users | The email ccs for a request by side-loading users
Allowed For
-
End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the request |
|
|
N/A |
PUT
{request_id}: Update Request
Updates a request with a comment or collaborators (cc's). The end user who created the request can also use it to mark the request as solved. The endpoint can't be used to update other request attributes.
Writable properties
This endpoint can only update the following properties in the request.
| Name | Type | Required | Description |
| ------------------------ | ------- | -------- | ---------------------------------------------------- |
| comment | object | no | Adds a comment to the request. See Request comments |
| solved | boolean | no | Marks the request as solved. Example: {"request": {"solved": "true"}} |
| additional_collaborators | array | no | Adds collaborators to the request. An email notification is sent to them when the ticket is updated. See Adding collaborators |
Allowed For
-
End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the request |
|
|
N/A |
DELETE
{resource_collection_id}: Delete Resource Collection
Deletes a specified resource collection.
The response includes a [job
status](/api-reference/ticketing/ticket-management/job_statuses/) for deletion of the collection's resources.
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the resource collection |
|
|
N/A |
GET
{resource_collection_id}: Show Resource Collection
Retrieves details for a specified resource collection.
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the resource collection |
|
|
N/A |
PUT
{resource_collection_id}: Update Resource Collection
Updates a resource collection using a provided payload object. The payload object is specified the same way as the content of a requirements.json file in a Zendesk app. See Specifying Apps Requirements in the Zendesk Apps framework docs.
The response includes a [job
status](/api-reference/ticketing/ticket-management/job_statuses/) for the resource updates.
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the resource collection |
|
|
N/A |
GET
{satisfaction_rating_id}: Show Satisfaction Rating
Returns a specific satisfaction rating. You can get the id from
the List Satisfaction Ratings endpoint.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the satisfaction rating to retrieve |
|
|
N/A |
GET
{satisfaction_reason_id}: Show Reason for Satisfaction Rating
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the satisfaction rating reason |
|
|
N/A |
DELETE
{session_id}: Delete Session
Allowed For
-
Admins, Agents, End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the session |
|
|
N/A |
GET
{session_id}: Show Session
Allowed For
-
Admins, Agents, End users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the session |
|
|
N/A |
DELETE
{sharing_agreement_id}: Delete a Sharing Agreement
Deletes a sharing agreement.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the sharing agreement |
|
|
N/A |
GET
{sharing_agreement_id}: Show a Sharing Agreement
Returns a sharing agreement for your account.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the sharing agreement |
|
|
N/A |
PUT
{sharing_agreement_id}: Update a Sharing Agreement
Returns an updated sharing agreement. Only status is allowed to be updated.
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the sharing agreement |
|
|
N/A |
DELETE
{sla_policy_id}: Delete SLA Policy
Availability
-
Accounts on the Support Professional or Suite Growth plan or above
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the SLA Policy |
|
|
N/A |
GET
{sla_policy_id}: Show SLA Policy
Availability
-
Accounts on the Support Professional or Suite Growth plan or above
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the SLA Policy |
|
|
N/A |
PUT
{sla_policy_id}: Update SLA Policy
Updates the specified policy.
Availability
-
Accounts on the Support Professional or Suite Growth plan or above
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the SLA Policy |
|
|
N/A |
GET
{source_type}: Get sources by target
Returns a list of source objects whose values are populated with the id of a related target object. For example,
if you have a lookup field called "Success Manager" on a ticket, this endpoint can answer the question,
"What tickets (sources) is this user (found by target_type and target_id)
assigned as the 'Success Manager' (field referenced by field_id)?"
Allowed For
-
Agents
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The type of object the relationship field is targeting.
|
|
|
(Required) The id of the object the relationship field is targeting |
|
|
(Required) The id of the lookup relationship field |
|
|
(Required) The type of object the relationship field belongs to (example. ticket field belongs to a ticket object).
|
|
|
N/A |
DELETE
{support_address_id}: Delete Support Address
Deletes a support address.
Allowed For
-
Admins
-
Agents with permission to manage channels and extensions. See the system permissions in Creating custom roles and assigning agents (Enterprise) in the Support Help Center
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the support address |
|
|
N/A |
GET
{support_address_id}: Show Support Address
Allowed For
-
Admins
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the support address |
|
|
N/A |
PUT
{support_address_id}: Update Support Address
Updates an existing support address for your account.
You can't use this endpoint to update a support address's email property.
Instead, you can create a new address using the [Create Support
Address](#create-support-address) endpoint.
Allowed For
-
Admins
-
Agents with permission to manage channels and extensions. See the system permissions in Creating custom roles and assigning agents (Enterprise) in the Support Help Center
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the support address |
|
|
N/A |
GET
{target_failure_id}: Show Target Failure
Stability
-
Development
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the target failure |
|
|
N/A |
DELETE
{target_id}: Delete Target
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the target |
|
|
N/A |
GET
{target_id}: Show Target
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the target |
|
|
N/A |
PUT
{target_id}: Update Target
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the target |
|
|
N/A |
GET
{target_type}: Filter Definitions
Returns filter definitions based on the given target type. Target types
include users (zen:user), tickets (zen:ticket), organizations (zen:organization), or custom objects (zen:custom_object:CUSTOM_OBJECT_KEY).
The returned filter definitions are the options that you can use to build a custom field or ticket field's
relationship_filter.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The target type for which you would like to see filter definitions.
|
|
|
N/A |
GET
{ticket_audit_id}: Show Audit
Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
(Required) The ID of the ticket audit |
|
|
N/A |
GET
{ticket_comment_id}: Getting Comments
Allowed For
-
End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the request |
|
|
(Required) The ID of the ticket comment |
|
|
N/A |
PUT
{ticket_comment_id}: Redact Ticket Comment In Agent Workspace
Redaction allows you to permanently remove words, strings, or attachments from a ticket comment.
In the html_body of the comment, wrap the content you want redacted in <redact> tags. Example:
{
"html_body": "<div class=\"zd-comment\" dir=\"auto\">My ID number is <redact>847564</redact>!</div>",
"ticket_id":100
}
The characters in the redact tag will be replaced by the ▇ symbol.
To redact inline images and anchor tags, add the individual attribute redact to the element. Example: <a href="http://example.com" redact>some link</a>.
Redaction is permanent and can not be undone. Data is permanently deleted from Zendesk servers with no way to recover it.
This endpoint provides all the same functionality that the Redact String in Comment endpoint provides, plus:
-
Redaction of comments in closed tickets
-
Redaction of comments in archived tickets
-
Redaction of formatted text (bold, italics, hyperlinks)
Limitations: When content is redacted from an email comment, the content is also redacted from the original email through a background job. It may take a while for the changes to be completed.
Note: We recommend using this endpoint instead of the Redact String in Comment endpoint, which will eventually be deprecated.
Allowed For
-
Agents
Agent Workspace must be enabled on the account. For professional accounts, deleting tickets must be enabled for agents. On Enterprise accounts, you can assign agents to a custom role with permissions to redact ticket content.
Request Body Properties
| Name | Type | Required | Description |
| -------------------------| ------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| ticket_id | integer | true | The ID of the ticket |
| html_body | string | false | The html_body of the comment containing <redact> tags or redact attributes |
| external_attachment_urls | array | false | Array of attachment URLs belonging to the comment to be redacted. See content_url property of Attachment |
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket comment |
|
|
N/A |
DELETE
{ticket_field_id}: Delete Ticket Field
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
If true, displays the creator_user_id and creator_app_name properties. If the ticket field is created
|
|
|
(Required) The ID of the ticket field |
|
|
N/A |
GET
{ticket_field_id}: Show Ticket Field
Allowed for
-
Agents
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ---------------- | -------------
| users | The user or users that created the ticket field
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
If true, displays the creator_user_id and creator_app_name properties. If the ticket field is created
|
|
|
(Required) The ID of the ticket field |
|
|
N/A |
PUT
{ticket_field_id}: Update Ticket Field
Updating drop-down field options
You can also use the update endpoint to add, update, or remove options in a drop-down custom field. Updating field options for multi-select fields works exactly the same as drop-down field options.
Important: Unless you want to remove some options, you must specify all existing options in any update request. Omitting an option removes it from the drop-down field, which removes its values from any tickets or macros.
Use the custom_field_options attribute to update the options. The attribute consists of an array of option objects, with each object consisting of a name and value property. The properties correspond to the "Title" and "Tag" text boxes in the admin interface. Example request body:
{"ticket_field": {
"custom_field_options": [
{"name": "Apple Pie", "value": "apple"},
{"name": "Pecan Pie", "value": "pecan"}
]
}
}
Example Request
curl https://{subdomain}.zendesk.com/api/v2/ticket_fields/{id}.json \
-d '{"ticket_field": {"custom_field_options": [{"name": "Apple Pie", "value": "apple"}, {"name": "Pecan Pie", "value": "pecan"}]}}' \
-H "Content-Type: application/json" -X PUT \
-v -u {email_address}:{password}
Example Response
Status: 200 OK
{
"ticket_field": {
"id":21938362,
"type":"tagger",
"title":"Pies",
...
"custom_field_options": [
{
"id":21029772,
"name":"Apple Pie",
"raw_name":"Apple Pie",
"value":"apple",
"default":false
},
...
]
}
}
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
If true, displays the creator_user_id and creator_app_name properties. If the ticket field is created
|
|
|
(Required) The ID of the ticket field |
|
|
N/A |
DELETE
{ticket_field_option_id}: Delete Ticket Field Option
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket field |
|
|
(Required) The ID of the ticket field option |
|
|
N/A |
GET
{ticket_field_option_id}: Show Ticket Field Option
Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket field |
|
|
(Required) The ID of the ticket field option |
|
|
N/A |
DELETE
{ticket_form_id}: Delete Ticket Form
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket form |
|
|
N/A |
GET
{ticket_form_id}: Show Ticket Form
Allowed For
-
Admins, Agents, and End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket form |
|
|
N/A |
PUT
{ticket_form_id}: Update Ticket Form
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket form |
|
|
N/A |
DELETE
{ticket_id}: Delete Ticket
Allowed For
-
Admins
-
Agents with permission to delete tickets
Agent delete permissions are set in Support. See
Deleting tickets
in the Support Help Center.
Ticket deletion rate limit
You can delete 400 tickets every 1 minute using this endpoint.
The rate limiting mechanism behaves as described in
Rate limits in the API introduction.
Zendesk recommends that you obey the Retry-After header values.
To delete many tickets, you may use Bulk Delete Tickets.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
DELETE
{ticket_id}: Delete ticket permanently
Permanently deletes a soft-deleted ticket. See Soft delete
in the Zendesk GDPR docs. To soft delete a ticket, use the Delete Ticket endpoint.
This endpoint enqueues a ticket deletion job and returns a payload with the jobs status.
If the job succeeds, the ticket is permanently deleted. This operation can't be undone.
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.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
PUT
{ticket_id}: Redact Chat Comment
Permanently removes words or strings from a chat ticket's comment.
Wrap <redact> tags around the content in the chat comment you want redacted. Example:
{
"text": "My ID number is <redact>847564</redact>!"
}
The characters contained in the tag will be replaced by the ▇ symbol.
Note: This does not work on active chats. For chat tickets that predate March 2020, consider using Redact Ticket Comment In Agent Workspace.
Allowed For
-
Agents
Agent Workspace must enabled for the account. Deleting tickets must be enabled for agents.
Request Body Properties
| Name | Type | Required | Description |
| ------------------------ | ------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| chat_id | string | true | The chat_id in the ChatStartedEvent event in the ticket audit. See Ticket Audits |
| chat_index | integer | true | The chat_index in the ChatMessage event in the ticket audit. See Ticket Audits |
| text | string | true | The message in the ChatMessage event in the ticket audit. See Ticket Audits. Wrap message with <redact> tags |
To get the required body properties, make a request to the Ticket Audit endpoint. Example response:
Status 200 OK
{
"audits": [
"events": [
{
"id": 1932802680168,
"type": "ChatStartedEvent",
"value": {
"visitor_id": "10502823-16EkM3T6VNq7KMd",
"chat_id": "2109.10502823.Sjuj2YrBpXwei",
"history": [
{
"chat_index": 0,
"type": "ChatMessage",
"message": "My ID number is 847564!"
}
]
}
}
]
]
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
PUT
{ticket_id}: Redact Chat Comment Attachment
Permanently removes one or more chat attachments from a chat ticket.
Note: This does not work on active chats. For chat tickets that predate March 2020, consider using Redact Ticket Comment In Agent Workspace.
Allowed For
-
Agents
Agent Workspace must enabled for the account. Deleting tickets must be enabled for agents.
Request Body Properties
| Name | Type | Required | Description |
| ------------ | ------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |
| chat_id | string | true | The chat_id in the ChatStartedEvent event in the ticket audit. See Ticket Audits |
| chat_indexes | array | true | The array of chat_index in the ChatFileAttachment event in the ticket audit. See Ticket Audits |
To get the required body properties, make a request to the Ticket Audits endpoint. Example response:
Status 200 OK
{
"audits": [
"events": [
{
"id": 1932802680168,
"type": "ChatStartedEvent",
"value": {
"visitor_id": "10502823-16EkM3T6VNq7KMd",
"chat_id": "2109.10502823.Sjuj2YrBpXwei",
"history": [
{
"chat_index": 0,
"type": "ChatFileAttachment",
"filename": "image1.jpg"
},
{
"chat_index": 1,
"type": "ChatFileAttachment",
"filename": "image2.jpg"
}
]
}
}
]
]
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
{ticket_id}: Show Ticket
Returns a number of ticket properties though not the ticket comments. To get the comments, use List Comments
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
PUT
{ticket_id}: Update Ticket
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the ticket |
|
|
N/A |
GET
{ticket_metric_id}: Show Ticket Metrics
Returns a specific metric, or the metrics of a specific ticket.
Pagination
-
Cursor pagination (recommended)
-
Offset pagination
See Pagination.
Returns a maximum of 100 records per page.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the ticket metric to retrieve |
|
|
N/A |
DELETE
{token}: Delete Upload
Allowed for
-
End Users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The token of the uploaded attachment |
|
|
N/A |
DELETE
{trigger_category_id}: Delete Trigger Category
Deletes the trigger category with the specified ID.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the trigger category to delete |
|
|
N/A |
GET
{trigger_category_id}: Show Trigger Category
Returns the trigger category with the specified ID.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the trigger category to retrieve |
|
|
N/A |
PATCH
{trigger_category_id}: Update Trigger Category
Updates the trigger category with the specified ID.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the trigger category to update |
|
|
N/A |
DELETE
{trigger_id}: Delete Trigger
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the trigger |
|
|
N/A |
GET
{trigger_id}: Show Trigger
Allowed For
-
Agents
The Via Type value is a number instead of a text string. See Via types reference for the keys.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the trigger |
|
|
N/A |
PUT
{trigger_id}: Update Trigger
Allowed For
-
Agents
Note
Updating a condition or action updates both the conditions and actions arrays,
clearing all existing values of both arrays. Include all your conditions
and actions when updating any condition or action.
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the trigger |
|
|
N/A |
GET
{trigger_revision_id}: Show Trigger Revision
Fetches a revision associated with a trigger. Trigger revision history is only available on Enterprise plans.
Allowed For
-
Agents
Sideloads
The following sideloads are supported:
| Name | Will sideload
| ----- | -------------
| users | The user that authored each revision
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the trigger |
|
|
The ID of the revision for a particular trigger |
|
|
N/A |
DELETE
{user_field_id}: Delete User Field
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the user field |
|
|
N/A |
GET
{user_field_id}: Show User Field
Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the user field |
|
|
N/A |
PUT
{user_field_id}: Update User Field
Updating a Dropdown (Tagger) Field
Dropdown fields return an array of custom_field_options which specify the name, value and order of the list of dropdown options.
Understand the following behavior when updating a dropdown field:
-
All options must be passed on update. Options that are not passed will be removed. As a result, these values will be removed from any organizations.
-
To create a new option, pass a null
idalong withnameandvalue. -
To update an existing option, pass its
idalong withnameandvalue. -
To re-order an option, reposition it in the
custom_field_optionsarray relative to the other options. -
To remove an option, omit it from the list of options upon update.
Example Request
curl https://{subdomain}.zendesk.com/api/v2/user_fields/{user_field_id}.json \
-H "Content-Type: application/json" -X PUT \
-d '{"user_field": {"custom_field_options": [{"id": 124, "name": "Option 2", "value": "option_2"}, {"id": 123, "name": "Option 1", "value": "option_1"}, {"id": 125, "name": "Option 2", "value": "option_3"}]}}' \
-v -u {email_address}:{password}
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the user field |
|
|
N/A |
DELETE
{user_field_option_id}: Delete User Field Option
Allowed for
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the user field |
|
|
(Required) The ID of the user field option |
|
|
N/A |
GET
{user_field_option_id}: Show a User Field Option
Allowed for
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID or key of the user field |
|
|
(Required) The ID of the user field option |
|
|
N/A |
DELETE
{user_identity_id}: Delete Identity
Deletes the identity for a given user.
In certain cases, a phone number associated with an identity is still visible on the user profile after the identity has been deleted via API. You can remove the phone number from the user profile by updating the phone attribute of the user to an empty string. See Update User via API for details and examples.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the user identity |
|
|
N/A |
GET
{user_identity_id}: Show Identity
Shows the identity with the given id for a given user.
Use the first endpoint if authenticating as an agent. Use the second if authenticating as an end user. End users can only view email or phone number identity.
Allowed For
-
Agents
-
Verified end users
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the user identity |
|
|
N/A |
PUT
{user_identity_id}: Update Identity
This endpoint allows you to:
-
Set the specified identity as verified (but you cannot unverify a verified identity)
-
Update the
valueproperty of the specified identity
You can't change an identity's primary attribute with this endpoint. You must use the Make Identity Primary endpoint instead.
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
(Required) The ID of the user identity |
|
|
N/A |
DELETE
{user_id}: Delete User
Deletes the user and associated records from the account.
Warning:
-
Deleted users are not recoverable.
-
Both agents and administrators can soft delete users in the agent interface in Zendesk Support. Agents with permission can delete end users, while administrators can delete all users except the account owner.
To comply with GDPR, a further step is needed. See Permanently Delete User.
Allowed For
-
Admins and agents in custom roles with permission to manage end users or team members
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
GET
{user_id}: Show User
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
PUT
{user_id}: Update User
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the user |
|
|
N/A |
DELETE
{view_id}: Delete View
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the view |
|
|
N/A |
GET
{view_id}: Show View
Allowed For
-
Agents
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the view |
|
|
N/A |
PUT
{view_id}: Update View
Allowed For
-
Agents
JSON Format
The PUT request takes one property, a view object that lists the values to update. All properties are optional.
Note: Updating a condition updates the containing array, clearing the other conditions. Include all your conditions when updating any condition.
| Name | Description
| ----------- | -----------
| title | The title of the view
| all | An array of one or more conditions. A ticket must meet all the conditions to be included in the view. The PUT request replaces all existing conditions. See Conditions reference
| any | An array of one or more conditions. A ticket must meet any of them to be included in the view. At least one all condition must be defined with the any conditions. The PUT request replaces all existing any conditions. See Conditions reference
| active | Allowed values are true or false. Determines if the view is displayed or not
| output | An object that specifies the columns to display. Example: "output": {"columns": ["status", "description," "priority"]}. See View columns
| restriction | An object that describes who can access the view. To give all agents access to the view, omit this property
The restriction object has the following properties.
| Name | Comment
| ---- | -------
| type | Allowed values are "Group" or "User"
| id | The numeric ID of a single group or user
| ids | The numeric IDs of a single or more groups. Recommended for "Group" type
If type is "Group", the ids property is the preferred method of specifying the group id or ids.
You can also update how items are sorted and grouped. See View sorting in Create View.
Example Request Body
{
"view": {
"title": "Code red tickets",
"restriction": {
"type": "Group",
"ids": [10052, 10057, 10062, 10002]
},
"all": [
{
"field": "priority",
"operator": "is",
"value": "urgent"
}
],
"output": {
"columns": ["status", "requester", "assignee", "updated"]
}
}
}
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The ID of the view |
|
|
N/A |
DELETE
{workspace_id}: Delete Workspace
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the workspace |
|
|
N/A |
GET
{workspace_id}: Show Workspace
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the workspace |
|
|
N/A |
PUT
{workspace_id}: Update Workspace
Allowed For
-
Admins
Parameters
|
Parameter Name |
Description |
|---|---|
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
N/A |
|
|
(Required) The id of the workspace |
|
|
N/A |