add_tag_to_organization
Adds the specified tags.
Parameters
organization_id (required)
Organization ID
Type: number
$body
Type: object
{
"tags" : [ "string" ]
}
add_tag_to_ticket
Adds the specified tags.
Parameters
ticket_id (required)
Ticket ID
Type: number
$body
Type: object
{
"tags" : [ "string" ]
}
add_tag_to_user
Adds the specified tags.
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"tags" : [ "string" ]
}
autocomplete_organizations
Returns an array of organizations whose name starts with the value specified in the name parameter.
Parameters
name
Type: string
sort_order
Type: string
Potential values: desc, asc
autocomplete_problems
Returns tickets whose type is "Problem" and whose subject contains the string specified in the text parameter.
Parameters
text
Type: string
autocomplete_tags
Returns an array of registered and recent tag names that start with the specified name. The name must be at least 2 characters in length.
Parameters
name
Type: string
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.
Parameters
name
Type: string
sort_order
Type: string
Potential values: desc, asc
check_host_mapping_validity
Returns a JSON object determining whether a host mapping is valid for a given subdomain.
Parameters
host_mapping
Type: string
subdomain
Type: string
check_host_mapping_validity_for_brand
Returns a JSON object determining whether a host mapping is valid for a given subdomain.
Parameters
id (required)
Brand ID
Type: number
clone_ticket_form
Clone an already existing ticket form
Parameters
ticket_form_id (required)
Ticket Form ID
Type: number
create_automation
Create automation
Parameters
$body
Type: object
{
"automation" : {
"updated_at" : "The time of the last update of the automation",
"active" : "Whether the automation is active",
"created_at" : "The time the automation was created",
"id" : "Automatically assigned when created",
"position" : "Position of the automation, determines the order they will execute in",
"title" : "The title of the automation",
"conditions" : {
"all" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ],
"any" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ]
},
"actions" : {
"actions" : [ {
"field" : "The name of a field",
"value" : "The value of the field"
} ]
}
}
}
create_bookmark
Create bookmark
Parameters
$body
Type: object
{
"bookmark" : {
"ticket" : {
"subject" : "The value of the subject field for this ticket",
"email_cc_ids" : [ "number" ],
"additional_tags" : [ "string" ],
"description" : "The first comment on the ticket",
"created_at" : "When this record was created",
"external_id" : "An id you can use to link Zendesk Support tickets to local records",
"macro_ids" : [ "number" ],
"type" : "The type of this ticket.",
"updated_stamp" : "If the updated_stamp property does not match the updated_at datetime value for the ticket the update operation will fail and an UpdateConflict error response will be sent.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"allow_attachments" : "When an agent responds, are they allowed to add attachments? Defaults to true",
"updated_at" : "When this record last got updated",
"problem_id" : "For tickets of type \"incident\", the ID of the problem the incident is linked to",
"follower_ids" : [ "number" ],
"collaborators" : [ "number" ],
"due_at" : "If this is a ticket of type \"task\" it has a due date. Due date format uses ISO 8601 format.",
"id" : "Automatically assigned when the ticket is created",
"assignee_id" : "The agent currently assigned to the ticket",
"raw_subject" : "The dynamic content placeholder, if present, or the \"subject\" value, if not. See Dynamic Content",
"safe_update" : "When the safe_update property has a value of true, the updated_stamp property is required, and only if the updated_at datetime value on the ticket matches the updated_stamp value will the ticket be updated.",
"forum_topic_id" : "The topic this ticket originated from, if any",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"allow_channelback" : "Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket",
"satisfaction_rating" : { },
"submitter_id" : "The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket",
"priority" : "The urgency with which the ticket should be addressed.",
"collaborator_ids" : [ "number" ],
"url" : "The API url of this ticket",
"tags" : [ "string" ],
"brand_id" : "Enterprise only. The id of the brand this ticket is associated with",
"ticket_form_id" : "Enterprise only. The id of the ticket form to render for the ticket",
"remove_tags" : [ "string" ],
"sharing_agreement_ids" : [ "number" ],
"group_id" : "The group this ticket is assigned to",
"organization_id" : "The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships",
"followup_ids" : [ "number" ],
"recipient" : "The original recipient e-mail address of the ticket",
"via_followup_source_id" : "POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating Follow-up Tickets",
"is_public" : "Is true if any comments are public, false otherwise",
"comment" : {
"metadata" : { },
"attachments" : [ {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
} ],
"public" : "true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it",
"html_body" : "The comment formatted as HTML",
"plain_body" : "The comment as plain text",
"created_at" : "The time the comment was created",
"id" : "Automatically assigned when the comment is created",
"type" : "string. Possible values: Comment | VoiceComment",
"body" : "The comment string",
"author_id" : "The id of the comment author.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
}
},
"has_incidents" : "Is true of this ticket has been marked as a problem, false otherwise",
"status" : "The state of the ticket.",
"requester_id" : "The user who requested this ticket"
},
"created_at" : "The time the bookmark was created",
"id" : "Automatically assigned when the bookmark is created",
"url" : "The API url of this bookmark"
}
}
create_brand
Create brand
Parameters
$body
Type: object
{
"brand" : {
"ticket_form_ids" : [ "integer" ],
"host_mapping" : "The hostmapping to this brand, if any (only admins view this key)",
"active" : "If the brand is set as active",
"created_at" : "The time the brand was created",
"help_center_state" : "The state of the Help Center",
"url" : "The API url of this brand",
"brand_url" : "The url of the brand",
"has_help_center" : "If the brand has a Help Center",
"default" : "Is the brand the default brand for this account",
"updated_at" : "The time of the last update of the brand",
"signature_template" : "The signature template for a brand",
"name" : "The name of the brand",
"logo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"subdomain" : "The subdomain of the brand",
"id" : "Automatically assigned when the brand is created"
}
}
create_custom_role
Parameters
$body
Type: object
{
"custom_role" : {
"role_type" : "The value 0",
"updated_at" : "The time the record was last updated",
"configuration" : {
"voice_access" : "boolean",
"moderate_forums" : "boolean",
"user_view_access" : "string. Possible values: full | manage-group | manage-personal | none | readonly",
"ticket_merge" : "boolean",
"ticket_access" : "string. Possible values: all | assigned-only | within-groups | within-organization",
"light_agent" : "boolean",
"explore_access" : "string. Possible values: edit | full | none | readonly",
"macro_access" : "string. Possible values: full | manage-group | manage-personal | readonly",
"organization_notes_editing" : "boolean",
"view_deleted_tickets" : "boolean",
"end_user_list_access" : "string. Possible values: full | none",
"end_user_profile_access" : "string. Possible values: edit | edit-within-org | full | readonly",
"report_access" : "string. Possible values: full | none | readonly",
"manage_dynamic_content" : "boolean",
"forum_access" : "string. Possible values: edit-topics | full | readonly",
"ticket_comment_access" : "string. Possible values: public | none",
"twitter_search_access" : "boolean",
"forum_access_restricted_content" : "boolean",
"group_access" : "boolean",
"ticket_editing" : "boolean",
"manage_business_rules" : "boolean",
"ticket_deletion" : "boolean",
"view_access" : "string. Possible values: full | manage-group | manage-personal | playonly | readonly",
"ticket_tag_editing" : "boolean",
"manage_facebook" : "boolean",
"manage_extensions_and_channels" : "boolean",
"organization_editing" : "boolean",
"chat_access" : "boolean"
},
"name" : "Name of this custom role",
"description" : "A description of the role",
"created_at" : "The time the record was created",
"id" : "Automatically assigned upon creation"
}
}
create_dynamic_content
Create dynamic content item
Parameters
$body
Type: object
{
"item" : {
"outdated" : "Indicates the item has outdated variants within it",
"updated_at" : "When this record last got updated",
"default_locale_id" : "The default locale for the item. Must be one of the locales the account has active.",
"name" : "The unique name of the item",
"created_at" : "When this record was created",
"id" : "Automatically assigned when creating items",
"placeholder" : "Automatically generated placeholder for the item, derived from name",
"variants" : [ {
"locale_id" : "An active locale",
"default" : "If the variant is the default for the item it belongs to",
"outdated" : "If the variant is outdated",
"updated_at" : "When the variant was last updated",
"active" : "If the variant is active and useable",
"created_at" : "When the variant was created",
"id" : "Automatically assigned when the variant is created",
"url" : "The API url of the variant",
"content" : "The content of the variant"
} ],
"url" : "The API url of this item"
}
}
create_dynamic_content_variant
Create dynamic content variant. You can only create one variant for each locale id. If a locale variant already exists, the request is rejected.
Parameters
id (required)
Variant ID
Type: number
$body
Type: object
{
"variant" : {
"locale_id" : "An active locale",
"default" : "If the variant is the default for the item it belongs to",
"outdated" : "If the variant is outdated",
"updated_at" : "When the variant was last updated",
"active" : "If the variant is active and useable",
"created_at" : "When the variant was created",
"id" : "Automatically assigned when the variant is created",
"url" : "The API url of the variant",
"content" : "The content of the variant"
}
}
create_group
Create group
Parameters
$body
Type: object
{
"group" : {
"deleted" : "Deleted groups get marked as such",
"updated_at" : "The time of the last update of the group",
"name" : "The name of the group",
"created_at" : "The time the group was created",
"id" : "Automatically assigned when creating groups",
"url" : "The API url of this group"
}
}
create_group_membership
Parameters
$body
Type: object
{
"group_membership" : {
"default" : "If true, tickets assigned directly to the agent will assume this membership's group.",
"updated_at" : "The time of the last update of the membership",
"user_id" : "The id of an agent",
"group_id" : "The id of a group",
"created_at" : "The time the membership was created",
"id" : "Automatically assigned upon creation",
"url" : "The API url of this record"
}
}
create_group_membership_for_user
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"group_membership" : {
"default" : "If true, tickets assigned directly to the agent will assume this membership's group.",
"updated_at" : "The time of the last update of the membership",
"user_id" : "The id of an agent",
"group_id" : "The id of a group",
"created_at" : "The time the membership was created",
"id" : "Automatically assigned upon creation",
"url" : "The API url of this record"
}
}
create_holiday
Create a holiday
Parameters
schedule_id (required)
Schedule ID
Type: number
$body
Type: object
{
"holiday" : {
"end_date" : "ISO 8601 representation of the holiday end date.",
"name" : "Name of the holiday.",
"id" : "Automatically assigned upon creation.",
"start_date" : "ISO 8601 representation of the holiday start date."
}
}
create_identity
Add a user identity to a given user id.
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"identity" : {
"updated_at" : "The time the identity was updated",
"user_id" : "The id of the user",
"deliverable_state" : "string. Possible values: deliverable | undeliverable",
"verified" : "If the identity has been verified",
"undeliverable_count" : "The number of times a soft-bounce response was received at that address",
"created_at" : "The time the identity was created",
"id" : "Automatically assigned on creation",
"type" : "string. Possible values: email | twitter | facebook | google | phone_number | agent_fowarding | sdk",
"value" : "The identifier for this identity, such as an email address",
"url" : "The API url of this identity",
"primary" : "If the identity is the primary identity. *Writable only when creating, not when updating. Use the Make Identity Primary endpoint instead"
}
}
create_identity_for_end_user
Add a user identity to a given user id.
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"identity" : {
"updated_at" : "The time the identity was updated",
"user_id" : "The id of the user",
"deliverable_state" : "string. Possible values: deliverable | undeliverable",
"verified" : "If the identity has been verified",
"undeliverable_count" : "The number of times a soft-bounce response was received at that address",
"created_at" : "The time the identity was created",
"id" : "Automatically assigned on creation",
"type" : "string. Possible values: email | twitter | facebook | google | phone_number | agent_fowarding | sdk",
"value" : "The identifier for this identity, such as an email address",
"url" : "The API url of this identity",
"primary" : "If the identity is the primary identity. *Writable only when creating, not when updating. Use the Make Identity Primary endpoint instead"
}
}
create_macro
Create macro
Parameters
$body
Type: object
{
"macro" : {
"updated_at" : "The time of the last update of the macro",
"restriction" : { },
"active" : "Useful for determining if the macro should be displayed",
"description" : "The description of the macro",
"created_at" : "The time the macro was created",
"id" : "Automatically assigned when created",
"position" : "The position of the macro",
"title" : "The title of the macro",
"actions" : {
"actions" : [ {
"field" : "The name of a field",
"value" : "The value of the field"
} ]
}
}
}
create_many_dynamic_content_variants
Create up to 100 dynamic content variants.
Parameters
id (required)
DynamicContentItem ID
Type: number
$body
Type: object
{
"variants" : [ {
"locale_id" : "An active locale",
"default" : "If the variant is the default for the item it belongs to",
"outdated" : "If the variant is outdated",
"updated_at" : "When the variant was last updated",
"active" : "If the variant is active and useable",
"created_at" : "When the variant was created",
"id" : "Automatically assigned when the variant is created",
"url" : "The API url of the variant",
"content" : "The content of the variant"
} ]
}
create_many_group_memberships
Create up to 100 group memberships.
Parameters
$body
Type: object
{
"group_memberships" : [ {
"default" : "If true, tickets assigned directly to the agent will assume this membership's group.",
"updated_at" : "The time of the last update of the membership",
"user_id" : "The id of an agent",
"group_id" : "The id of a group",
"created_at" : "The time the membership was created",
"id" : "Automatically assigned upon creation",
"url" : "The API url of this record"
} ]
}
create_many_organization_memberships
Create up to 100 organization memberships.
Parameters
$body
Type: object
{
"organization_memberships" : [ {
"default" : "Denotes whether this is the default organization membership for the user. If false, returns null",
"updated_at" : "When this record last got updated",
"user_id" : "The ID of the user for whom this memberships belongs",
"organization_id" : "The ID of the organization associated with this user, in this membership",
"created_at" : "When this record was created",
"id" : "Automatically assigned when the membership is created",
"url" : "The API url of this membership"
} ]
}
create_many_organizations
Bulk create up to 100 organizations.
Parameters
$body
Type: object
{
"organizations" : [ {
"shared_tickets" : "End users in this organization are able to see each other's tickets",
"notes" : "Any notes you have about the organization",
"created_at" : "The time the organization was created",
"external_id" : "A unique external id to associate organizations to an external record",
"url" : "The API url of this organization",
"domain_names" : [ "string" ],
"tags" : [ "string" ],
"organization_fields" : { },
"updated_at" : "The time of the last update of the organization",
"group_id" : "New tickets from users in this organization are automatically put in this group",
"name" : "A unique name for the organization",
"details" : "Any details obout the organization, such as the address",
"id" : "Automatically assigned when the organization is created",
"shared_comments" : "End users in this organization are able to see each other's comments on tickets"
} ]
}
create_many_tickets
Create up to 100 tickets.
Parameters
$body
Type: object
{
"tickets" : [ {
"subject" : "The value of the subject field for this ticket",
"email_cc_ids" : [ "number" ],
"additional_tags" : [ "string" ],
"description" : "The first comment on the ticket",
"created_at" : "When this record was created",
"external_id" : "An id you can use to link Zendesk Support tickets to local records",
"macro_ids" : [ "number" ],
"type" : "The type of this ticket.",
"updated_stamp" : "If the updated_stamp property does not match the updated_at datetime value for the ticket the update operation will fail and an UpdateConflict error response will be sent.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"allow_attachments" : "When an agent responds, are they allowed to add attachments? Defaults to true",
"updated_at" : "When this record last got updated",
"problem_id" : "For tickets of type \"incident\", the ID of the problem the incident is linked to",
"follower_ids" : [ "number" ],
"collaborators" : [ "number" ],
"due_at" : "If this is a ticket of type \"task\" it has a due date. Due date format uses ISO 8601 format.",
"id" : "Automatically assigned when the ticket is created",
"assignee_id" : "The agent currently assigned to the ticket",
"raw_subject" : "The dynamic content placeholder, if present, or the \"subject\" value, if not. See Dynamic Content",
"safe_update" : "When the safe_update property has a value of true, the updated_stamp property is required, and only if the updated_at datetime value on the ticket matches the updated_stamp value will the ticket be updated.",
"forum_topic_id" : "The topic this ticket originated from, if any",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"allow_channelback" : "Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket",
"satisfaction_rating" : { },
"submitter_id" : "The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket",
"priority" : "The urgency with which the ticket should be addressed.",
"collaborator_ids" : [ "number" ],
"url" : "The API url of this ticket",
"tags" : [ "string" ],
"brand_id" : "Enterprise only. The id of the brand this ticket is associated with",
"ticket_form_id" : "Enterprise only. The id of the ticket form to render for the ticket",
"remove_tags" : [ "string" ],
"sharing_agreement_ids" : [ "number" ],
"group_id" : "The group this ticket is assigned to",
"organization_id" : "The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships",
"followup_ids" : [ "number" ],
"recipient" : "The original recipient e-mail address of the ticket",
"via_followup_source_id" : "POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating Follow-up Tickets",
"is_public" : "Is true if any comments are public, false otherwise",
"comment" : {
"metadata" : { },
"attachments" : [ {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
} ],
"public" : "true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it",
"html_body" : "The comment formatted as HTML",
"plain_body" : "The comment as plain text",
"created_at" : "The time the comment was created",
"id" : "Automatically assigned when the comment is created",
"type" : "string. Possible values: Comment | VoiceComment",
"body" : "The comment string",
"author_id" : "The id of the comment author.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
}
},
"has_incidents" : "Is true of this ticket has been marked as a problem, false otherwise",
"status" : "The state of the ticket.",
"requester_id" : "The user who requested this ticket"
} ]
}
create_many_users
Create up to 100 users.
Parameters
$body
Type: object
{
"users" : [ {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
} ]
}
create_oauth_client
Create Oauth client
Parameters
$body
Type: object
{
"client" : {
"identifier" : "The unique identifier for this client",
"logo_url" : "The API logo url of this record",
"description" : "A short description of your client that is displayed to users when they are considering approving access to your application.",
"created_at" : "The time the client was created",
"global" : "Whether this client is globally accessible. Learn more",
"secret" : "The client secret. Generated automatically on creation and returned in full only at that time.",
"url" : "The API url of this record",
"updated_at" : "The time of the last update of the client",
"user_id" : "The id of the admin who created the client",
"name" : "The name of this client",
"company" : "Choose a company name to display when users are asked to approve access to your application. The name will help users understand who they are granting access to.",
"id" : "Automatically assigned upon creation",
"redirect_uri" : [ "string" ]
}
}
create_oauth_token
Create token
Parameters
$body
Type: object
{
"token" : {
"refresh_token" : "The refresh token, if generated",
"used_at" : "The latest time this token was used for authentication",
"expires_at" : "The time the token will expire",
"user_id" : "The id of the user this token authenticates as",
"created_at" : "The time the token was created",
"id" : "Automatically assigned upon creation",
"scopes" : [ "string" ],
"client_id" : "The id of the client this token belongs to",
"url" : "The API url of this record",
"token" : "The access token"
}
}
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.
Parameters
$body
Type: object
{
"users" : [ {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
} ]
}
create_or_update_organization
Creates an organization if it doesn't already exist, or updates an existing organization identified by ID or external ID. Using this method means one less call to check if an organization exists before creating it.
Parameters
$body
Type: object
{
"organization" : {
"shared_tickets" : "End users in this organization are able to see each other's tickets",
"notes" : "Any notes you have about the organization",
"created_at" : "The time the organization was created",
"external_id" : "A unique external id to associate organizations to an external record",
"url" : "The API url of this organization",
"domain_names" : [ "string" ],
"tags" : [ "string" ],
"organization_fields" : { },
"updated_at" : "The time of the last update of the organization",
"group_id" : "New tickets from users in this organization are automatically put in this group",
"name" : "A unique name for the organization",
"details" : "Any details obout the organization, such as the address",
"id" : "Automatically assigned when the organization is created",
"shared_comments" : "End users in this organization are able to see each other's comments on tickets"
}
}
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.
Parameters
$body
Type: object
{
"user" : {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
}
}
create_organization
Create organization
Parameters
$body
Type: object
{
"organization" : {
"shared_tickets" : "End users in this organization are able to see each other's tickets",
"notes" : "Any notes you have about the organization",
"created_at" : "The time the organization was created",
"external_id" : "A unique external id to associate organizations to an external record",
"url" : "The API url of this organization",
"domain_names" : [ "string" ],
"tags" : [ "string" ],
"organization_fields" : { },
"updated_at" : "The time of the last update of the organization",
"group_id" : "New tickets from users in this organization are automatically put in this group",
"name" : "A unique name for the organization",
"details" : "Any details obout the organization, such as the address",
"id" : "Automatically assigned when the organization is created",
"shared_comments" : "End users in this organization are able to see each other's comments on tickets"
}
}
create_organization_field
Create organization field
Parameters
$body
Type: object
{
"organization_field" : {
"raw_title" : "The dynamic content placeholder, if present, or the \"title\" value, if not.",
"custom_field_options" : [ "string" ],
"description" : "User-defined description of this field's purpose",
"active" : "If true, this field is available for use",
"created_at" : "The time the ticket field was created",
"type" : "string. Possible values: checkbox | date | decimal | dropdown | integer | regexp | text | textarea | tagger",
"title" : "The title of the custom field",
"raw_description" : "The dynamic content placeholder, if present, or the \"description\" value, if not.",
"url" : "The URL for this resource",
"system" : "If true, only active and position values of this field can be changed",
"updated_at" : "The time of the last update of the ticket field",
"regexp_for_validation" : "Regular expression field only. The validation pattern for a field value to be deemed valid.",
"id" : "Automatically assigned upon creation",
"position" : "Ordering of the field relative to other fields",
"tag" : "Optional for custom field of type \"checkbox\"; not presented otherwise.",
"key" : "A unique key that identifies this custom field. This is used for updating the field and referencing in placeholders."
}
}
create_organization_membership
Create organization membership
Parameters
$body
Type: object
{
"organization_membership" : {
"default" : "Denotes whether this is the default organization membership for the user. If false, returns null",
"updated_at" : "When this record last got updated",
"user_id" : "The ID of the user for whom this memberships belongs",
"organization_id" : "The ID of the organization associated with this user, in this membership",
"created_at" : "When this record was created",
"id" : "Automatically assigned when the membership is created",
"url" : "The API url of this membership"
}
}
create_organization_membership_for_user
Create organization membership for user
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"organization_membership" : {
"default" : "Denotes whether this is the default organization membership for the user. If false, returns null",
"updated_at" : "When this record last got updated",
"user_id" : "The ID of the user for whom this memberships belongs",
"organization_id" : "The ID of the organization associated with this user, in this membership",
"created_at" : "When this record was created",
"id" : "Automatically assigned when the membership is created",
"url" : "The API url of this membership"
}
}
create_organization_subscription
Create organization subscription
Parameters
$body
Type: object
{
"organization_subscription" : {
"updated_at" : "When this record last got updated",
"organization_id" : "The ID of the organization associated with this user, in this membership",
"created_at" : "When this record was created",
"id" : "Automatically assigned when the membership is created"
}
}
create_recipient_address
Create recipient address
Parameters
$body
Type: object
{
"recipient_address" : {
"cname_status" : "Whether all of the required CNAME records are set.",
"forwarding_status" : "Status of email forwarding.",
"created_at" : "When the address was created",
"spf_status" : "Whether the SPF record is set up correctly.",
"brand_id" : "The ID of the brand",
"default" : "Whether the address is the account's default support address",
"ses_status" : "Whether the SES domain verification is valid.",
"updated_at" : "When the address was updated",
"name" : "The name for the address",
"id" : "Automatically assigned when created",
"domain_verification_status" : "Whether the domain verification record is valid.",
"email" : "The email address (not updateable)",
"domain_verification_code" : "Verification string to be added as a TXT record to the domain. Possible types: string or null."
}
}
create_request
Create request
Parameters
$body
Type: object
{
"request" : {
"subject" : "The value of the subject field for this request if the subject field is visible to end users; a truncated version of the description otherwise",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"email_cc_ids" : [ "integer" ],
"description" : "The first comment on the request",
"solved" : "Whether or not request is solved (an end user can set this if \"can_be_solved_by_me\", above, is true for that user)",
"created_at" : "When this record was created",
"priority" : "The priority of the request",
"type" : "The type of the request",
"collaborator_ids" : [ "integer" ],
"url" : "The API url of this request",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"ticket_form_id" : "The numeric id of the ticket form associated with this request if the form is visible to end users - only applicable for enterprise accounts",
"updated_at" : "When this record last got updated",
"followup_source_id" : "The id of the original ticket if this request is a follow-up ticket",
"group_id" : "The id of the assigned group if the field is visible to end users",
"can_be_solved_by_me" : "If true, end user can mark request as solved.",
"organization_id" : "The organization of the requester",
"is_public" : "Is true if any comments are public, false otherwise",
"recipient" : "The original recipient e-mail address of the request",
"due_at" : "When the task is due (only applies if the request is of type \"task\")",
"id" : "Automatically assigned when creating requests",
"status" : "The state of the request",
"requester_id" : "The id of the requester",
"assignee_id" : "The id of the assignee if the field is visible to end users"
}
}
create_resource_collection
Create resource collection
Parameters
$body
Type: object
{
"resource_collection" : {
"updated_at" : "The time the identity got updated",
"created_at" : "The time the identity got created",
"id" : "Automatically assigned upon creation"
}
}
create_schedule
Create a schedule
Parameters
$body
Type: object
{
"schedule" : {
"intervals" : [ {
"start_time" : "Integer representation of the interval start time",
"end_time" : "Integer representation of the interval end time"
} ],
"updated_at" : "Time the schedule was last updated",
"name" : "Name of the schedule",
"created_at" : "Time the schedule was created",
"id" : "Automatically assigned upon creation",
"time_zone" : "Time zone of the schedule"
}
}
create_sharing_agreement
Create sharing agreement
Parameters
$body
Type: object
{
"sharing_agreement" : {
"partner_name" : "Can be either 'jira' or null",
"remote_subdomain" : "Subdomain of the remote account or null if not associated with an account",
"name" : "Name of this sharing agreement",
"created_at" : "The time the record was created",
"id" : "Automatically assigned upon creation",
"type" : "string. Possible values: inbound | outbound",
"status" : "string. Possible values: accepted | declined | pending | inactive"
}
}
create_target
Create target
Parameters
$body
Type: object
{
"target" : {
"resource" : "string. Possible values: todo | message",
"target_url" : "The URL of your Basecamp account, including protocol and path",
"active" : "Whether or not the target is activated",
"created_at" : "The time the target was created",
"message_id" : "Can be filled if it is a \"todo\" resource",
"title" : "A name for the target",
"type" : "string",
"token" : "Get the API token from My info > Show your tokens > Token for feed readers or the Basecamp API in your Basecamp account",
"todo_list_id" : "Can be filled if it is a \"message\" resource",
"password" : "The 37Signals password for the Basecamp account (only writable)",
"project_id" : "The ID of the project in Basecamp where updates should be pushed",
"id" : "Automatically assigned when created",
"username" : "The 37Signals username of the account you use to log in to Basecamp"
}
}
create_ticket
Parameters
$body
Type: object
{
"ticket" : {
"subject" : "The value of the subject field for this ticket",
"email_cc_ids" : [ "number" ],
"additional_tags" : [ "string" ],
"description" : "The first comment on the ticket",
"created_at" : "When this record was created",
"external_id" : "An id you can use to link Zendesk Support tickets to local records",
"macro_ids" : [ "number" ],
"type" : "The type of this ticket.",
"updated_stamp" : "If the updated_stamp property does not match the updated_at datetime value for the ticket the update operation will fail and an UpdateConflict error response will be sent.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"allow_attachments" : "When an agent responds, are they allowed to add attachments? Defaults to true",
"updated_at" : "When this record last got updated",
"problem_id" : "For tickets of type \"incident\", the ID of the problem the incident is linked to",
"follower_ids" : [ "number" ],
"collaborators" : [ "number" ],
"due_at" : "If this is a ticket of type \"task\" it has a due date. Due date format uses ISO 8601 format.",
"id" : "Automatically assigned when the ticket is created",
"assignee_id" : "The agent currently assigned to the ticket",
"raw_subject" : "The dynamic content placeholder, if present, or the \"subject\" value, if not. See Dynamic Content",
"safe_update" : "When the safe_update property has a value of true, the updated_stamp property is required, and only if the updated_at datetime value on the ticket matches the updated_stamp value will the ticket be updated.",
"forum_topic_id" : "The topic this ticket originated from, if any",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"allow_channelback" : "Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket",
"satisfaction_rating" : { },
"submitter_id" : "The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket",
"priority" : "The urgency with which the ticket should be addressed.",
"collaborator_ids" : [ "number" ],
"url" : "The API url of this ticket",
"tags" : [ "string" ],
"brand_id" : "Enterprise only. The id of the brand this ticket is associated with",
"ticket_form_id" : "Enterprise only. The id of the ticket form to render for the ticket",
"remove_tags" : [ "string" ],
"sharing_agreement_ids" : [ "number" ],
"group_id" : "The group this ticket is assigned to",
"organization_id" : "The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships",
"followup_ids" : [ "number" ],
"recipient" : "The original recipient e-mail address of the ticket",
"via_followup_source_id" : "POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating Follow-up Tickets",
"is_public" : "Is true if any comments are public, false otherwise",
"comment" : {
"metadata" : { },
"attachments" : [ {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
} ],
"public" : "true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it",
"html_body" : "The comment formatted as HTML",
"plain_body" : "The comment as plain text",
"created_at" : "The time the comment was created",
"id" : "Automatically assigned when the comment is created",
"type" : "string. Possible values: Comment | VoiceComment",
"body" : "The comment string",
"author_id" : "The id of the comment author.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
}
},
"has_incidents" : "Is true of this ticket has been marked as a problem, false otherwise",
"status" : "The state of the ticket.",
"requester_id" : "The user who requested this ticket"
}
}
create_ticket_field
Create ticket field
Parameters
$body
Type: object
{
"ticket_field" : {
"raw_title" : "The dynamic content placeholder, if present, or the \"title\" value, if not.",
"custom_field_options" : [ {
"raw_name" : "string",
"name" : "string",
"id" : "integer",
"position" : "integer",
"value" : "string",
"url" : "string"
} ],
"visible_in_portal" : "Whether this field is available to end users",
"description" : "The description of the purpose of this ticket field, shown to users",
"created_at" : "The time the ticket field was created",
"type" : "The type of the ticket field. Type is not editable once created.",
"title" : "The title of the ticket field",
"required" : "If it's required for this field to have a value when updated by agents",
"editable_in_portal" : "Whether this field is editable by end users",
"updated_at" : "The time of the last update of the ticket field",
"system_field_options" : [ {
"raw_name" : "string",
"name" : "string",
"id" : "integer",
"position" : "integer",
"value" : "string",
"url" : "string"
} ],
"regexp_for_validation" : "Regular expression field only. The validation pattern for a field value to be deemed valid.",
"id" : "Automatically assigned upon creation",
"tag" : "A tag value to set for checkbox fields when checked",
"collapsed_for_agents" : "If this field should be shown to agents by default or be hidden alongside infrequently used fields. Classic interface only",
"active" : "Whether this field is available",
"raw_title_in_portal" : "The dynamic content placeholder, if present, or the \"title_in_portal\" value, if not. See Dynamic Content",
"agent_description" : "A description of the ticket field that only agents can see",
"raw_description" : "The dynamic content placeholder, if present, or the \"description\" value, if not. See Dynamic Content",
"url" : "The URL for this resource",
"required_in_portal" : "If it's required for this field to have a value when updated by end users",
"removable" : "If this field is not a system basic field that must be present for all tickets on the account",
"sub_type_id" : "\"priority\" and \"status\" fields only, inaccessible to all other field types. Defaults to 0. A \"priority\" sub type of 1 removes the \"Low\" and \"Urgent\" options. A \"status\" sub type of 1 adds the \"On-Hold\" option.",
"position" : "A relative position for the ticket fields that determines the order of ticket fields on a ticket. Note that positions 0 to 7 are reserved for system fields",
"title_in_portal" : "The title of the ticket field is mandatory when it's visible to end users"
}
}
create_ticket_form
Create ticket form
Parameters
$body
Type: object
{
"ticket_form" : {
"raw_name" : "The dynamic content placeholder, if present, or the \"name\" value, if not. See Dynamic Content",
"in_all_brands" : "Is the form available for use in all brands on this account",
"ticket_field_ids" : [ "string" ],
"active" : "If the form is set as active",
"agent_conditions" : [ { } ],
"raw_display_name" : "The dynamic content placeholder, if present, or the \"display_name\" value, if not. See Dynamic Content",
"display_name" : "The name of the form that is displayed to an end user",
"default" : "Is the form the default form for this account",
"end_user_conditions" : [ { } ],
"end_user_visible" : "Is the form visible to the end user",
"name" : "The name of the form",
"position" : "The position of this form among other forms in the account, i.e. dropdown",
"restricted_brand_ids" : [ "number" ]
}
}
create_ticket_from_tweet
Create ticket from tweet
Parameters
$body
Type: object
{
"ticket" : {
"monitored_twitter_handle_id" : "number",
"twitter_status_message_id" : "string"
}
}
create_ticket_skip
Create ticket_skip
Parameters
$body
Type: object
{
"ticket_skip" : {
"reason" : "Reason for skipping the ticket",
"ticket" : {
"subject" : "The value of the subject field for this ticket",
"email_cc_ids" : [ "number" ],
"additional_tags" : [ "string" ],
"description" : "The first comment on the ticket",
"created_at" : "When this record was created",
"external_id" : "An id you can use to link Zendesk Support tickets to local records",
"macro_ids" : [ "number" ],
"type" : "The type of this ticket.",
"updated_stamp" : "If the updated_stamp property does not match the updated_at datetime value for the ticket the update operation will fail and an UpdateConflict error response will be sent.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"allow_attachments" : "When an agent responds, are they allowed to add attachments? Defaults to true",
"updated_at" : "When this record last got updated",
"problem_id" : "For tickets of type \"incident\", the ID of the problem the incident is linked to",
"follower_ids" : [ "number" ],
"collaborators" : [ "number" ],
"due_at" : "If this is a ticket of type \"task\" it has a due date. Due date format uses ISO 8601 format.",
"id" : "Automatically assigned when the ticket is created",
"assignee_id" : "The agent currently assigned to the ticket",
"raw_subject" : "The dynamic content placeholder, if present, or the \"subject\" value, if not. See Dynamic Content",
"safe_update" : "When the safe_update property has a value of true, the updated_stamp property is required, and only if the updated_at datetime value on the ticket matches the updated_stamp value will the ticket be updated.",
"forum_topic_id" : "The topic this ticket originated from, if any",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"allow_channelback" : "Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket",
"satisfaction_rating" : { },
"submitter_id" : "The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket",
"priority" : "The urgency with which the ticket should be addressed.",
"collaborator_ids" : [ "number" ],
"url" : "The API url of this ticket",
"tags" : [ "string" ],
"brand_id" : "Enterprise only. The id of the brand this ticket is associated with",
"ticket_form_id" : "Enterprise only. The id of the ticket form to render for the ticket",
"remove_tags" : [ "string" ],
"sharing_agreement_ids" : [ "number" ],
"group_id" : "The group this ticket is assigned to",
"organization_id" : "The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships",
"followup_ids" : [ "number" ],
"recipient" : "The original recipient e-mail address of the ticket",
"via_followup_source_id" : "POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating Follow-up Tickets",
"is_public" : "Is true if any comments are public, false otherwise",
"comment" : {
"metadata" : { },
"attachments" : [ {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
} ],
"public" : "true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it",
"html_body" : "The comment formatted as HTML",
"plain_body" : "The comment as plain text",
"created_at" : "The time the comment was created",
"id" : "Automatically assigned when the comment is created",
"type" : "string. Possible values: Comment | VoiceComment",
"body" : "The comment string",
"author_id" : "The id of the comment author.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
}
},
"has_incidents" : "Is true of this ticket has been marked as a problem, false otherwise",
"status" : "The state of the ticket.",
"requester_id" : "The user who requested this ticket"
},
"updated_at" : "Time the skip was last updated",
"user_id" : "ID of the skipping agent",
"created_at" : "Time the skip was created",
"id" : "Automatically assigned upon creation",
"ticket_id" : "ID of the skipped ticket"
}
}
create_trigger
Create trigger
Parameters
$body
Type: object
{
"trigger" : {
"updated_at" : "The time of the last update of the trigger",
"active" : "Whether the trigger is active",
"description" : "The description of the trigger",
"created_at" : "The time the trigger was created",
"id" : "Automatically assigned when created",
"position" : "Position of the trigger, determines the order they will execute in",
"title" : "The title of the trigger",
"conditions" : {
"all" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ],
"any" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ]
},
"actions" : [ {
"field" : "The name of a field",
"value" : "The value of the field"
} ]
}
}
create_user
Create user
Parameters
$body
Type: object
{
"user" : {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
}
}
create_user_field
Create user field
Parameters
$body
Type: object
{
"user_field" : {
"raw_title" : "The dynamic content placeholder, if present, or the \"title\" value, if not. See Dynamic Content",
"custom_field_options" : [ {
"raw_name" : "string",
"name" : "string",
"id" : "number",
"position" : "integer",
"value" : "string",
"url" : "string"
} ],
"description" : "User-defined description of this field's purpose",
"active" : "If true, this field is available for use",
"created_at" : "The time the ticket field was created",
"type" : "Type of the custom field",
"title" : "The title of the custom field",
"raw_description" : "The dynamic content placeholder, if present, or the \"description\" value, if not. See Dynamic Content",
"url" : "The URL for this resource",
"system" : "If true, only active and position values of this field can be changed",
"updated_at" : "The time of the last update of the ticket field",
"regexp_for_validation" : "Regular expression field only. The validation pattern for a field value to be deemed valid.",
"id" : "Automatically assigned upon creation",
"position" : "Ordering of the field relative to other fields",
"tag" : "Optional for custom field of type \"checkbox\"; not presented otherwise.",
"key" : "A unique key that identifies this custom field. This is used for updating the field and referencing in placeholders."
}
}
create_workspace
Create workspace
Parameters
$body
Type: object
{
"workspace" : {
"description" : "User-defined description of this workspace's purpose",
"created_at" : "The time the workspace was created",
"macro_ids" : [ "number" ],
"prefer_workspace_app_order" : "boolean",
"title" : "The title of the workspace",
"url" : "The URL for this resource",
"ticket_form_id" : "number",
"updated_at" : "The time of the last update of the workspace",
"selected_macros" : [ { } ],
"id" : "Automatically assigned upon creation",
"position" : "Ordering of the workspace relative to other workspaces",
"conditions" : { },
"activated" : "If true, this workspace is available for use",
"apps" : [ { } ]
}
}
delete_automation
Delete an automation
Parameters
id (required)
Automation ID
Type: number
delete_bookmark
Delete an bookmark
Parameters
id (required)
Bookmark ID
Type: number
delete_brand
Delete a brand
Parameters
id (required)
Brand ID
Type: number
delete_current_oauth_token
This operation has no parameters
delete_custom_role
Parameters
id (required)
Role ID
Type: number
delete_deleted_user
Permanently delete user.
Parameters
user_id (required)
User ID
Type: number
delete_dynamic_content
Delete a dynamic content item
Parameters
id (required)
DynamicContentItem ID
Type: number
delete_dynamic_content_variant
Delete a dynamic content variant
Parameters
id (required)
DynamicContentItem ID
Type: number
variant_id (required)
Variant ID
Type: number
delete_group
Delete a group
Parameters
group_id (required)
Group ID
Type: number
delete_group_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.
Parameters
group_membership_id (required)
Group Membership ID
Type: number
delete_group_membership_from_user
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.
Parameters
group_membership_id (required)
Group Membership ID
Type: number
user_id (required)
User ID
Type: number
delete_holiday
Delete a holiday
Parameters
holiday_id (required)
Holiday ID
Type: number
schedule_id (required)
Schedule ID
Type: number
delete_identity_from_user
Delete identity from user
Parameters
id (required)
Identity ID
Type: number
user_id (required)
User ID
Type: number
delete_macro
Delete a macro
Parameters
id (required)
Macro ID
Type: number
delete_many_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.
Parameters
ids
Type: array
[ "number" ]
delete_oauth_client
Delete client
Parameters
oauth_client_id (required)
OAuth Client ID
Type: number
delete_oauth_token
Delete token
Parameters
id (required)
Oauth Token ID
Type: number
delete_organization
Delete organization
Parameters
organization_id (required)
Organization ID
Type: number
delete_organization_field
Delete an organization field
Parameters
id (required)
OrganizationField ID
Type: number
delete_organization_membership
Delete organization membership
Parameters
id (required)
OrganizationMembership ID
Type: number
delete_organization_membership_for_user
Delete organization membership for user
Parameters
id (required)
OrganizationMembership ID
Type: number
user_id (required)
User ID
Type: number
delete_organization_subscription
Delete organization subscription
Parameters
id (required)
OrganizationSubscription ID
Type: number
delete_recipient_address
Delete recipient address
Parameters
id (required)
SupportAddress ID
Type: number
delete_resource_collection
Delete resource collection
Parameters
id (required)
ResourceCollection ID
Type: number
delete_schedule
Delete a schedule
Parameters
schedule_id (required)
Schedule ID
Type: number
delete_sharing_agreement
Delete sharing agreement
Parameters
id (required)
Sharing Agreement ID
Type: number
delete_suspended_ticket
Delete suspended ticket
Parameters
suspended_ticket_id (required)
Suspended Ticket ID
Type: number
delete_target
Delete target
Parameters
id (required)
Target ID
Type: number
delete_ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
delete_ticket_field
Delete ticket field
Parameters
ticket_field_id (required)
Ticket Field ID
Type: number
delete_ticket_field_option
Delete ticket field option
Parameters
option_id (required)
Type: integer
ticket_field_id (required)
Ticket Field ID
Type: number
delete_ticket_form
Delete ticket form.
Parameters
ticket_form_id (required)
Ticket Form ID
Type: number
delete_ticket_permanently
Permanently deletes a soft-deleted ticket.
Parameters
id (required)
Role ID
Type: number
delete_trigger
Delete trigger
Parameters
trigger_id (required)
Trigger ID
Type: number
delete_user
Delete user
Parameters
user_id (required)
User ID
Type: number
delete_user_field
Delete user field
Parameters
user_field_id (required)
User Field ID
Type: number
delete_user_field_option
Delete user field option
Parameters
option_id (required)
Type: integer
user_field_id (required)
User Field ID
Type: number
delete_workspace
Delete workspace
Parameters
workspace_id (required)
Workspace ID
Type: number
destroy_many_automations
Deletes the automations corresponding to the provided comma-separated list of IDs.
Parameters
ids
Automation IDs to delete
Type: array
[ "number" ]
destroy_many_group_memberships
Bulk destroy group memberships.
Parameters
ids
Group Membership IDs to delete
Type: array
[ "number" ]
destroy_many_macros
Bulk destroy macros.
Parameters
ids
Macro IDs to delete
Type: array
[ "number" ]
destroy_many_organization_memberships
Bulk destroy organization memberships.
Parameters
ids
OrganizationMembership IDs to delete
Type: array
[ "number" ]
destroy_many_organizations
Bulk destroy organizations.
Parameters
external_ids
External IDs to delete
Type: array
[ "number" ]
ids
Organization IDs to delete
Type: array
[ "number" ]
destroy_many_suspended_tickets
Bulk destroy suspended tickets.
Parameters
ids
Suspended Ticket IDs to delete
Type: array
[ "number" ]
destroy_many_tickets
Bulk destroy tickets.
Parameters
ids
Ticket IDs to delete
Type: array
[ "number" ]
destroy_many_triggers
Bulk destroy triggers.
Parameters
ids
Trigger IDs to delete
Type: array
[ "number" ]
destroy_many_users
Bulk destroy users.
Parameters
external_ids
Type: array
[ "number" ]
ids
User IDs to delete
Type: array
[ "number" ]
destroy_many_workspaces
Bulk destroy workspaces.
Parameters
ids
Workspace IDs to delete
Type: array
[ "number" ]
generate_client_secret
Generate new client secret.
Parameters
oauth_client_id (required)
OAuth Client ID
Type: number
get_account_settings
This operation has no parameters
get_attachment
Get attachment
Parameters
attachment_id (required)
Attachment ID
Type: number
get_attachment_for_macro
Shows the properties of the specified macro attachment.
Parameters
attachment_id (required)
Type: integer
get_audit_log
Get audit_log
Parameters
id (required)
Audit Log ID
Type: number
get_authenticated_user
This operation has no parameters
get_automation
Get an automation
Parameters
id (required)
Automation ID
Type: number
get_brand
Get a brand
Parameters
id (required)
Brand ID
Type: number
get_comment
Returns a comment.
Parameters
comment_id (required)
Type: number
request_id (required)
Request ID
Type: number
get_current_oauth_token
This operation has no parameters
get_custom_role
Parameters
id (required)
Role ID
Type: number
get_deleted_user
These are users that have been deleted but not permanently yet.
Parameters
user_id (required)
User ID
Type: number
get_dynamic_content
Get a dynamic content item
Parameters
id (required)
DynamicContentItem ID
Type: number
get_dynamic_content_variant
Get a dynamic content variant
Parameters
id (required)
DynamicContentItem ID
Type: number
variant_id (required)
Variant ID
Type: number
get_end_user
Get end user
Parameters
user_id (required)
User ID
Type: number
get_group
Get a group
Parameters
group_id (required)
Group ID
Type: number
get_group_membership
Get a membership.
Parameters
group_membership_id (required)
Group Membership ID
Type: number
get_group_membership_from_user
Get a membership.
Parameters
group_membership_id (required)
Group Membership ID
Type: number
user_id (required)
User ID
Type: number
get_holiday
Get a holiday
Parameters
holiday_id (required)
Holiday ID
Type: number
schedule_id (required)
Schedule ID
Type: number
get_identity_from_user
Get brand
Parameters
id (required)
Identity ID
Type: number
user_id (required)
User ID
Type: number
get_job_status
Shows the status of a background job. A job may no longer exist to query. Zendesk only logs the last 100 jobs. Jobs also expire within an hour.
Parameters
id (required)
Job Status ID
Type: string
get_macro
Get a macro
Parameters
id (required)
Macro ID
Type: number
get_macro_replica
Returns an unpersisted macro representation derived from a ticket or macro.
Parameters
macro_id
ID of the macro to replicate
Type: integer
ticket_id
ID of the ticket from which to build a macro replica
Type: integer
get_many_dynamic_content_items
Bulk show dynamic content items
Parameters
identifiers
Type: array
[ "number" ]
get_many_job_statuses
Accepts a comma-separated list of job status ids.
Parameters
ids
Type: array
[ "number" ]
get_many_organizations
Bulk show organizations
Parameters
ids
Type: array
[ "number" ]
get_many_ticket_forms
Bulk show ticket forms
Parameters
ids
Type: array
[ "number" ]
get_many_tickets
Parameters
ids
Type: array
[ "number" ]
get_many_users
Bulk show users
Parameters
external_ids
Type: array
[ "number" ]
ids
Type: array
[ "number" ]
get_metrics_for_ticket
Get metrics for ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
get_monitored_twitter_handle
Get monitored Twitter handle
Parameters
id (required)
Monitored Twitter handle ID
Type: number
get_oauth_client
Get client
Parameters
oauth_client_id (required)
OAuth Client ID
Type: number
get_oauth_token
Get token
Parameters
id (required)
Oauth Token ID
Type: number
get_organization
Get organization
Parameters
organization_id (required)
Organization ID
Type: number
get_organization_field
Get an organization field
Parameters
id (required)
OrganizationField ID
Type: number
get_organization_membership
Get organization membership
Parameters
id (required)
OrganizationMembership ID
Type: number
get_organization_membership_for_user
Get organization membership for user
Parameters
id (required)
OrganizationMembership ID
Type: number
user_id (required)
User ID
Type: number
get_organization_subscription
Get organization subscription
Parameters
id (required)
OrganizationSubscription ID
Type: number
get_recipient_address
Get recipient address
Parameters
id (required)
SupportAddress ID
Type: number
get_related_info_for_organization
Show Organization's related information.
Parameters
organization_id (required)
Organization ID
Type: number
get_related_information_on_ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
get_request
Get request
Parameters
request_id (required)
Request ID
Type: number
get_resource_collection
Get resource collection
Parameters
id (required)
ResourceCollection ID
Type: number
get_schedule
Get a schedule
Parameters
schedule_id (required)
Schedule ID
Type: number
get_sharing_agreement
Get sharing agreement
Parameters
id (required)
Sharing Agreement ID
Type: number
get_suspended_ticket
Get suspended ticket
Parameters
suspended_ticket_id (required)
Suspended Ticket ID
Type: number
get_target
Get target
Parameters
id (required)
Target ID
Type: number
get_ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
get_ticket_activity
Lists a specific activity.
Parameters
activity_id (required)
Activity ID
Type: string
get_ticket_audit
Get ticket audit
Parameters
ticket_audit_id (required)
Ticket Audit ID
Type: number
ticket_id (required)
Ticket ID
Type: number
get_ticket_field
Get ticket field
Parameters
ticket_field_id (required)
Ticket Field ID
Type: number
get_ticket_field_option
Get ticket field option
Parameters
option_id (required)
Type: integer
ticket_field_id (required)
Ticket Field ID
Type: number
get_ticket_form
Get ticket form.
Parameters
ticket_form_id (required)
Ticket Form ID
Type: number
get_ticket_metric
Get ticket metric
Parameters
ticket_metric_id (required)
Type: integer
get_trigger
Get trigger
Parameters
trigger_id (required)
Trigger ID
Type: number
get_trigger_revision
Fetch a revision associated with a trigger.
Parameters
revision_id (required)
Type: number
trigger_id (required)
Trigger ID
Type: number
get_user
Get user
Parameters
user_id (required)
User ID
Type: number
get_user_field
Get user field
Parameters
user_field_id (required)
User Field ID
Type: number
get_user_field_option
Get user field option
Parameters
option_id (required)
Type: integer
user_field_id (required)
User Field ID
Type: number
get_user_related_information
Get user related information
Parameters
user_id (required)
User ID
Type: number
get_workspace
Get workspace
Parameters
workspace_id (required)
Workspace ID
Type: number
import_many_tickets
Import up to 100 legacy tickets.
Parameters
$body
Type: object
{
"tickets" : [ {
"subject" : "The value of the subject field for this ticket",
"email_cc_ids" : [ "number" ],
"additional_tags" : [ "string" ],
"description" : "The first comment on the ticket",
"created_at" : "When this record was created",
"external_id" : "An id you can use to link Zendesk Support tickets to local records",
"macro_ids" : [ "number" ],
"type" : "The type of this ticket.",
"updated_stamp" : "If the updated_stamp property does not match the updated_at datetime value for the ticket the update operation will fail and an UpdateConflict error response will be sent.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"allow_attachments" : "When an agent responds, are they allowed to add attachments? Defaults to true",
"updated_at" : "When this record last got updated",
"problem_id" : "For tickets of type \"incident\", the ID of the problem the incident is linked to",
"follower_ids" : [ "number" ],
"collaborators" : [ "number" ],
"due_at" : "If this is a ticket of type \"task\" it has a due date. Due date format uses ISO 8601 format.",
"id" : "Automatically assigned when the ticket is created",
"assignee_id" : "The agent currently assigned to the ticket",
"raw_subject" : "The dynamic content placeholder, if present, or the \"subject\" value, if not. See Dynamic Content",
"safe_update" : "When the safe_update property has a value of true, the updated_stamp property is required, and only if the updated_at datetime value on the ticket matches the updated_stamp value will the ticket be updated.",
"forum_topic_id" : "The topic this ticket originated from, if any",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"allow_channelback" : "Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket",
"satisfaction_rating" : { },
"submitter_id" : "The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket",
"priority" : "The urgency with which the ticket should be addressed.",
"collaborator_ids" : [ "number" ],
"url" : "The API url of this ticket",
"tags" : [ "string" ],
"brand_id" : "Enterprise only. The id of the brand this ticket is associated with",
"ticket_form_id" : "Enterprise only. The id of the ticket form to render for the ticket",
"remove_tags" : [ "string" ],
"sharing_agreement_ids" : [ "number" ],
"group_id" : "The group this ticket is assigned to",
"organization_id" : "The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships",
"followup_ids" : [ "number" ],
"recipient" : "The original recipient e-mail address of the ticket",
"via_followup_source_id" : "POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating Follow-up Tickets",
"is_public" : "Is true if any comments are public, false otherwise",
"comment" : {
"metadata" : { },
"attachments" : [ {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
} ],
"public" : "true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it",
"html_body" : "The comment formatted as HTML",
"plain_body" : "The comment as plain text",
"created_at" : "The time the comment was created",
"id" : "Automatically assigned when the comment is created",
"type" : "string. Possible values: Comment | VoiceComment",
"body" : "The comment string",
"author_id" : "The id of the comment author.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
}
},
"has_incidents" : "Is true of this ticket has been marked as a problem, false otherwise",
"status" : "The state of the ticket.",
"requester_id" : "The user who requested this ticket"
} ]
}
import_ticket
Import a ticket from a legacy system
Parameters
$body
Type: object
{
"ticket" : {
"subject" : "The value of the subject field for this ticket",
"email_cc_ids" : [ "number" ],
"additional_tags" : [ "string" ],
"description" : "The first comment on the ticket",
"created_at" : "When this record was created",
"external_id" : "An id you can use to link Zendesk Support tickets to local records",
"macro_ids" : [ "number" ],
"type" : "The type of this ticket.",
"updated_stamp" : "If the updated_stamp property does not match the updated_at datetime value for the ticket the update operation will fail and an UpdateConflict error response will be sent.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"allow_attachments" : "When an agent responds, are they allowed to add attachments? Defaults to true",
"updated_at" : "When this record last got updated",
"problem_id" : "For tickets of type \"incident\", the ID of the problem the incident is linked to",
"follower_ids" : [ "number" ],
"collaborators" : [ "number" ],
"due_at" : "If this is a ticket of type \"task\" it has a due date. Due date format uses ISO 8601 format.",
"id" : "Automatically assigned when the ticket is created",
"assignee_id" : "The agent currently assigned to the ticket",
"raw_subject" : "The dynamic content placeholder, if present, or the \"subject\" value, if not. See Dynamic Content",
"safe_update" : "When the safe_update property has a value of true, the updated_stamp property is required, and only if the updated_at datetime value on the ticket matches the updated_stamp value will the ticket be updated.",
"forum_topic_id" : "The topic this ticket originated from, if any",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"allow_channelback" : "Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket",
"satisfaction_rating" : { },
"submitter_id" : "The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket",
"priority" : "The urgency with which the ticket should be addressed.",
"collaborator_ids" : [ "number" ],
"url" : "The API url of this ticket",
"tags" : [ "string" ],
"brand_id" : "Enterprise only. The id of the brand this ticket is associated with",
"ticket_form_id" : "Enterprise only. The id of the ticket form to render for the ticket",
"remove_tags" : [ "string" ],
"sharing_agreement_ids" : [ "number" ],
"group_id" : "The group this ticket is assigned to",
"organization_id" : "The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships",
"followup_ids" : [ "number" ],
"recipient" : "The original recipient e-mail address of the ticket",
"via_followup_source_id" : "POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating Follow-up Tickets",
"is_public" : "Is true if any comments are public, false otherwise",
"comment" : {
"metadata" : { },
"attachments" : [ {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
} ],
"public" : "true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it",
"html_body" : "The comment formatted as HTML",
"plain_body" : "The comment as plain text",
"created_at" : "The time the comment was created",
"id" : "Automatically assigned when the comment is created",
"type" : "string. Possible values: Comment | VoiceComment",
"body" : "The comment string",
"author_id" : "The id of the comment author.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
}
},
"has_incidents" : "Is true of this ticket has been marked as a problem, false otherwise",
"status" : "The state of the ticket.",
"requester_id" : "The user who requested this ticket"
}
}
list_action_definitions_for_macros
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.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_actions_for_macros
List supported actions for macros
Parameters
access
Only macros with given access.
Type: string
Potential values: personal, shared, account
category
Only macros within given category
Type: string
group_id
Only macros belonging to given group
Type: integer
sort_by
Defaults to alphabetical
Type: string
Potential values: alphabetical, created_at, updated_at, usage_1h, usage_24h, usage_7d
sort_order
Type: string
Potential values: desc, asc
list_active_automations
Parameters
sort_by
Type: string
sort_order
Type: string
Potential values: desc, asc
list_active_macros
Lists all active shared and personal macros available to the current user.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_active_triggers
Returns a list of all active triggers.
Parameters
sort_by
Defaults to position
Type: string
Potential values: alphabetical, created_at, updated_at, usage_1h, usage_24h, usage_7d
sort_order
Type: string
Potential values: desc, asc
list_assignable_group_memberships_for_group
Parameters
group_id (required)
Group ID
Type: number
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_assignable_groups
Returns a list of all assignable groups.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_assignable_memberships
This operation has no parameters
list_attachments_for_macro
Lists the attachments associated with a macro.
Parameters
macro_id (required)
Macro ID
Type: number
list_audit_logs
Returns a list of all audit logs for your account sorted by name.
Parameters
filter[actor_id]
Type: string
filter[ip_address]
Type: string
filter[source_id]
Type: string
filter[source_type]
Type: string
sort_order
Type: string
Potential values: desc, asc
list_audits_for_ticket
Lists the audits for a specified ticket.
Parameters
ticket_id (required)
Ticket ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_automations
Lists all automations for the current account
Parameters
sort_by
Type: string
sort_order
Type: string
Potential values: desc, asc
list_bookmarks
Lists all bookmarks
Parameters
sort_by
Type: string
sort_order
Type: string
Potential values: desc, asc
list_brands
Returns a list of all brands for your account sorted by name.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_categories_for_macros
Lists all macro categories available to the current user.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_ccd_requests
Returns a list of ccd requests.
Parameters
sort_by
Type: string
Potential values: updated_at, created_at
sort_order
Type: string
Potential values: desc, asc
list_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.
Parameters
id (required)
Macro ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_collaborators_on_ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
list_comments_for_request
Returns a list of comments for a request.
Parameters
request_id (required)
Request ID
Type: number
role
Type: string
Potential values: agent, user
since
Type: string
sort_by
Type: string
Potential values: updated_at, created_at
sort_order
Type: string
Potential values: desc, asc
list_custom_roles
Parameters
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_definitions_of_triggers
This operation has no parameters
list_deleted_tickets
List deleted tickets. 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.
Parameters
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_deleted_users
Lists deleted users, including permanently deleted users. For permanently deleted users, all properties containing personal data, such as email and phone, are null. The name property is "Permanently Deleted User".
Parameters
sort_order
Type: string
Potential values: desc, asc
list_dynamic_content_items
Returns a list of all dynamic content items for your account.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_dynamic_content_variants
Returns all the variants of the specified dynamic content item.
Parameters
id (required)
Variant ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_email_ccs_on_ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
list_followers_on_ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
list_global_oauth_clients
Returns all the global clients that users on your account have authorized.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_group_memberships
Parameters
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_group_memberships_for_group
Parameters
group_id (required)
Group ID
Type: number
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_group_memberships_for_user
Parameters
user_id (required)
User ID
Type: number
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_groups
Returns a list of all groups.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_groups_for_user
Returns a list of all groups a user is in.
Parameters
user_id (required)
User ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_holidays_for_schedule
List holidays for a schedule
Parameters
schedule_id (required)
Schedule ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_identities
Returns all user identities for a given user id.
Parameters
user_id (required)
User ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_incidents_on_ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
list_job_statuses
This operation has no parameters
list_macros
Lists all shared and personal macros available to the current user.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_memberships_for_user
Returns a list of memberships for a user.
Parameters
user_id (required)
User ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_memberships_in_organization
Returns a list of memberships in an organization.
Parameters
organization_id (required)
Organization ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_monitored_twitter_handles
Returns a list of all monitored Twitter handles for your account.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_my_oauth_clients
Returns a list of all Oauth clients for this account.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_oauth_clients
Returns a list of all Oauth clients.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_oauth_tokens
Returns a list of all tokens.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_open_requests
Returns a list of open requests.
Parameters
sort_by
Type: string
Potential values: updated_at, created_at
sort_order
Type: string
Potential values: desc, asc
list_organization_fields
Returns a list of all custom organization fields.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_organization_memberships
Returns a list of all organization memberships.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_organization_subscriptions
Returns a list of all organization subscriptions.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_organization_subscriptions_for_user
Returns a list of all organization subscriptions for a user.
Parameters
user_id (required)
User ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_organizations
Returns a list of all organizations for your account sorted by name.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_organizations_for_user
Returns a list of all organizations for a user.
Parameters
user_id (required)
User ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_recent_tickets
Returns a maximum of 100 tickets per page.
Lists tickets that the requesting agent recently viewed in the agent interface, not recently created or updated tickets (unless by the agent recently in the agent interface).
Parameters
external_id
Type: string
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_recipient_addresses
Returns a list of all recipient addresses for your account.
Parameters
include
You can also include the brand for each Support address in the JSON objects returned by GET requests by sideloading it.
Type: string
sort_order
Type: string
Potential values: desc, asc
list_requests
Returns a list of all requests.
Parameters
sort_by
Type: string
Potential values: updated_at, created_at
sort_order
Type: string
Potential values: desc, asc
list_requests_for_organization
Returns a list of requests for an organization.
Parameters
organization_id (required)
Organization ID
Type: number
sort_by
Type: string
Potential values: updated_at, created_at
sort_order
Type: string
Potential values: desc, asc
list_requests_for_user
Returns a list of requests for a user.
Parameters
user_id (required)
User ID
Type: number
sort_by
Type: string
Potential values: updated_at, created_at
sort_order
Type: string
Potential values: desc, asc
list_resource_collections
Returns a list of all resource collections.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_schedules
List all schedules
Parameters
sort_order
Type: string
Potential values: desc, asc
list_sharing_agreements
Returns a list of all sharing agreements.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_skips_for_ticket
Returns a list of skips for a ticket.
Parameters
ticket_id (required)
Ticket ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_skips_for_user
Returns a list of skips for a user.
Parameters
user_id (required)
User ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_solved_requests
Returns a list of solved requests.
Parameters
sort_by
Type: string
Potential values: updated_at, created_at
sort_order
Type: string
Potential values: desc, asc
list_subscriptions_in_organization
Returns a list of subscriptions in an organization.
Parameters
organization_id (required)
Organization ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_suspended_tickets
Returns a list of all suspended tickets.
Parameters
sort_by
Defaults to position.
Type: string
Potential values: author_email, cause, created_at, subject
sort_order
Type: string
Potential values: desc, asc
list_tags
This operation has no parameters
list_targets
Returns a list of all targets.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_ticket_activities
This operation has no parameters
list_ticket_audits
Returns a list of all ticket audits. Archived tickets are not included in the response. The records are ordered sequentially by the created_at timestamp, then by id on duplicate values.
Parameters
cursor
Type: string
limit
Type: number
list_ticket_comments
Returns a list of all ticket comments.
Parameters
ticket_id (required)
Ticket ID
Type: number
include
Type: string
Potential values: users
include_inline_images
Type: boolean
sort_order
Type: string
Potential values: desc, asc
list_ticket_field_options
List Ticket Field Options
Parameters
ticket_field_id (required)
Ticket Field ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_ticket_fields
Returns a list of all ticket fields.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_ticket_forms
Returns a list of all ticket forms for your account if accessed as an admin or agent. End users will only see the list of ticket forms that are marked 'end_user_visible'.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_ticket_metrics
Returns a list of all tickets with their metrics.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_ticket_problems
This operation has no parameters
list_ticket_skips
Returns a list of all ticket skips.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_tickets
Returns a maximum of 100 tickets per page.
Tickets are ordered chronologically by created date, from oldest to newest. The first ticket listed may not be the absolute oldest ticket in your account due to ticket archiving. To get a list of all tickets in your account, use the Incremental Ticket Export endpoint. For more filter options, use the Search API. You can also sideload related records with the tickets. Archived tickets are not included in the response.
Parameters
external_id
Type: string
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_tickets_assigned_to_user
List tickets assigned to user. Returns a maximum of 100 tickets per page. Tickets are ordered chronologically by created date, from oldest to newest. The first ticket listed may not be the absolute oldest ticket in your account due to ticket archiving. To get a list of all tickets in your account, use the Incremental Ticket Export endpoint. For more filter options, use the Search API. You can also sideload related records with the tickets. Archived tickets are not included in the response.
Parameters
user_id (required)
User ID
Type: number
external_id
Type: string
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_tickets_ccd_by_user
List tickets cc'ed by user. Returns a maximum of 100 tickets per page. Tickets are ordered chronologically by created date, from oldest to newest. The first ticket listed may not be the absolute oldest ticket in your account due to ticket archiving. To get a list of all tickets in your account, use the Incremental Ticket Export endpoint. For more filter options, use the Search API. You can also sideload related records with the tickets. Archived tickets are not included in the response.
Parameters
user_id (required)
User ID
Type: number
external_id
Type: string
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_tickets_in_organization
List tickets in an organization.
Parameters
organization_id (required)
Organization ID
Type: number
external_id
Type: string
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_tickets_requested_by_user
List tickets requested by user. Returns a maximum of 100 tickets per page. Tickets are ordered chronologically by created date, from oldest to newest. The first ticket listed may not be the absolute oldest ticket in your account due to ticket archiving. To get a list of all tickets in your account, use the Incremental Ticket Export endpoint. For more filter options, use the Search API. You can also sideload related records with the tickets. Archived tickets are not included in the response.
Parameters
user_id (required)
User ID
Type: number
external_id
Type: string
sort_by
Type: string
Potential values: id, subject, deleted_at
sort_order
Type: string
Potential values: desc, asc
list_trigger_revisions
List the revisions associated with a trigger.
Parameters
trigger_id (required)
Trigger ID
Type: number
cursor
Type: string
limit
Type: number
list_triggers
Returns a list of all triggers.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_user_field_options
List User Field Options
Parameters
user_field_id (required)
User Field ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_user_fields
Returns a list of all user fields.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_users
Returns a list of all users.
Parameters
sort_order
Type: string
Potential values: desc, asc
list_users_in_group
Returns a list of all users in a group.
Parameters
group_id (required)
Group ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_users_in_organization
Returns a list of all users in an organization.
Parameters
organization_id (required)
Organization ID
Type: number
sort_order
Type: string
Potential values: desc, asc
list_workspaces
Returns a list of all workspaces.
Parameters
sort_order
Type: string
Potential values: desc, asc
make_comment_private
Make comment
Parameters
comment_id (required)
Comment ID
Type: number
ticket_id (required)
Ticket ID
Type: number
mark_many_tickets_as_spam
Bulk mark tickets as spam and suspend requesters. Accepts a comma-separated list of up to 100 ticket ids.
Parameters
ids
Ticket IDs to mark as spam
Type: array
[ "number" ]
mark_ticket_as_spam
Mark ticket as spam and suspend requester
Parameters
ticket_id (required)
Ticket ID
Type: number
merge_self_with_user
The current user will be merged into the existing user provided in the params. Users can only merge themselves into another user.
Parameters
$body
Type: object
{
"user" : {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
}
}
merge_tickets
Merges one or more tickets into the target ticket.
Parameters
ticket_id (required)
Ticket ID
Type: number
$body
Type: object
{
"target_comment" : "string",
"ids" : [ "number" ],
"source_comment" : "string"
}
merge_users
The end user whose id is provided in the URL will be merged into the existing end user provided in the params. You can merge any two arbitrary end users with the exception of end users created by sharing agreements. Agents and admins cannot be merged.
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"user" : {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
}
}
push_content_to_support
Pushes Channel framework content to Zendesk Support.
Parameters
$body
Type: object
{
"external_resources" : [ {
"thread_id" : "Arbitrary identifier of the thread to which this item should belong. Responses may include parent_id or thread_id, but not both.",
"parent_id" : "Unique identifier of the external resource for which this is a response. Used to choose the correct thread. Responses may include parent_id or thread_id, but not both. See Conversation threads",
"author" : {
"field" : [ {
"id" : "string",
"value" : "string"
} ],
"image_url" : "URL to an image for the user",
"name" : "If not supplied, defaults to external id",
"external_id" : "Unique identifier of the user in the origin service",
"locale" : "The user's locale. Must be one of the supported locales in Zendesk Support"
},
"allow_channelback" : "If false, prevents the agent from making additional comments on the message in the Zendesk Support interface",
"html_message" : "HTML version of message",
"created_at" : "When the resource was created in the origin system; specify as an ISO 8601 extended format date-time.",
"display_info" : [ {
"data" : "JSON data containing display hints",
"type" : "Globally unique type identifier defined by the integration origin service."
} ],
"external_id" : "Unique identifier of the external resource",
"message" : "Text to be converted to a ticket or comment",
"fields" : [ {
"id" : "string",
"value" : "string"
} ],
"file_urls" : [ "string" ]
} ],
"instance_push_id" : "The ID of the account to which data will be pushed. This was passed to the integration service when the administrator set up the account",
"request_id" : "A unique identifier for the push request"
}
recover_many_suspended_tickets
Accepts up to 100 ticket ids. Note that suspended tickets that fail to be recovered are still included in the response.
Parameters
ids
Type: array
[ "number" ]
recover_suspended_ticket
Recover suspended ticket. 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.
Parameters
suspended_ticket_id (required)
Suspended Ticket ID
Type: number
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. The characters of the word or string are replaced by the â–‡ symbol.
Parameters
comment_id (required)
Comment ID
Type: number
ticket_id (required)
Ticket ID
Type: number
$body
Type: object
{
"text" : "string"
}
remove_tag_from_organization
Remove tag from organization
Parameters
organization_id (required)
Organization ID
Type: number
$body
Type: object
{
"tags" : [ "string" ]
}
remove_tag_from_ticket
Remove tag from ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
$body
Type: object
{
"tags" : [ "string" ]
}
remove_tag_from_user
Remove tag from user
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"tags" : [ "string" ]
}
reorder_organization_fields
Reorder organization fields
Parameters
$body
Type: object
{
"organization_field_ids" : [ "integer" ]
}
reorder_ticket_form
Reorder ticket forms
Parameters
$body
Type: object
{
"ticket_form_ids" : [ "number" ]
}
reorder_triggers
Reorder triggers
Parameters
$body
Type: object
{
"trigger_ids" : [ "number" ]
}
reorder_user_fields
Reorder user fields
Parameters
$body
Type: object
{
"user_field_ids" : [ "number" ]
}
reorder_workspaces
Reorder workspaces
Parameters
$body
Type: object
{
"ids" : [ "number" ]
}
request_user_create
Sends the owner a reminder email to update their subscription so more agents can be created.
Parameters
$body
Type: object
{
"user" : {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
}
}
restore_deleted_ticket
Restore a previously deleted ticket.
Parameters
id (required)
Role ID
Type: number
restore_many_deleted_tickets
Restore previously deleted tickets in bulk.
Parameters
ids
Type: array
[ "number" ]
search
The search API is a unified search API that returns tickets, users, and organizations.
Parameters
query
The search query
Type: string
sort_by
Defaults to sorting by relevance.
Type: string
Potential values: updated_at, created_at, priority, status, ticket_type
sort_order
Type: string
Potential values: desc, asc
search_automations
Search automations
Parameters
active
Only active automations if true, inactive automations if false
Type: boolean
query
Query string used to find all automations with matching title
Type: string
sort_by
Type: string
sort_order
Type: string
Potential values: desc, asc
search_macros
Search macros.
Parameters
access
List macros with the given access. Possible values are personal, shared, or account
Type: string
active
List active macros if true; inactive macros if false
Type: boolean
category
List macros in the given category
Type: string
group_id
List macros belonging to given group
Type: integer
only_viewable
List macros that can be applied to tickets if true; list all macros the current user can manage if false. Default is false
Type: boolean
query
Query string used to find macros with matching titles
Type: string
sort_by
If unspecified, the macros are sorted by relevance
Type: string
Potential values: alphabetical, created_at, updated_at, position
sort_order
Type: string
Potential values: desc, asc
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.
Parameters
external_id
Type: string
sort_order
Type: string
Potential values: desc, asc
search_requests
Returns an array of requests who meet the search criteria.
Parameters
cc_id
Type: boolean
organization_id
Type: number
query
Type: string
sort_order
Type: string
Potential values: desc, asc
status
Type: array
[ "string" ]
search_triggers
Returns an array of triggers who meet the search criteria. The query parameter can specify a partial or full value of any trigger property, including name, email address, notes, or phone.
Parameters
query
Type: string
sort_by
Type: string
Potential values: alphabetical, created_at, updated_at, position
sort_order
Type: string
Potential values: desc, asc
search_users
Returns an array of users who meet the search criteria. The query parameter can specify a partial or full value of any user property, including name, email address, notes, or phone.
Parameters
external_id
Type: string
query
Type: string
sort_order
Type: string
Potential values: desc, asc
set_default_group_membership_for_user
Set group membership as default.
Parameters
group_membership_id (required)
Group Membership ID
Type: number
user_id (required)
User ID
Type: number
set_membership_as_default
Set membership as default
Parameters
membership_id (required)
OrganizationMembership ID
Type: number
user_id (required)
User ID
Type: number
set_tag_for_organization
Adds the specified tags if no tag exists, or replaces all existing tags with the specified tags.
Parameters
organization_id (required)
Organization ID
Type: number
$body
Type: object
{
"tags" : [ "string" ]
}
set_tag_for_ticket
Adds the specified tags if no tag exists, or replaces all existing tags with the specified tags.
Parameters
ticket_id (required)
Ticket ID
Type: number
$body
Type: object
{
"tags" : [ "string" ]
}
set_tag_for_user
Adds the specified tags if no tag exists, or replaces all existing tags with the specified tags.
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"tags" : [ "string" ]
}
set_ticket_audit_to_private
Change a comment from public to private
Parameters
ticket_audit_id (required)
Ticket Audit ID
Type: number
ticket_id (required)
Ticket ID
Type: number
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.
Parameters
user_id (required)
User ID
Type: number
show_tags_for_organization
Show tags for organization
Parameters
organization_id (required)
Organization ID
Type: number
show_tags_for_ticket
Show tags for ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
show_tags_for_user
Show tags for user
Parameters
user_id (required)
User ID
Type: number
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.
Parameters
macro_id (required)
Macro ID
Type: number
ticket_id (required)
Ticket ID
Type: number
update_account_settings
Parameters
$body
Type: object
{
"settings" : {
"settings" : {
"voice" : {
"agent_wrap_up_after_calls" : "boolean",
"outbound_enabled" : "boolean",
"only_during_business_hours" : "boolean",
"maximum_queue_wait_time" : "number",
"logging" : "boolean",
"maximum_queue_size" : "number",
"recordings_public" : "boolean",
"uk_mobile_forwarding" : "boolean",
"maintenance" : "boolean",
"agent_confirmation_when_forwarding" : "boolean",
"enabled" : "Voice is enabled"
},
"localization" : {
"locale_ids" : [ "string" ]
},
"tickets" : {
"tagging" : "Tickets may be tagged",
"agent_ticket_deletion" : "Whether agents can delete tickets",
"private_attachments" : "Users must login to access attachments",
"emoji_autocompletion" : "Whether agent comments should allow for Emoji rendering",
"email_attachments" : "Attachments should be sent as real attachments when under the size limit",
"list_newest_comments_first" : "When viewing a ticket, show the newest comments and events first",
"comments_public_by_default" : "Comments from agents are public by default",
"markdown_ticket_comments" : "Whether agent comments should be processed with Markdown",
"agent_collision" : "Clients should provide an indicator when a ticket is being viewed by another agent",
"maximum_personal_views_to_list" : "Maximum number of personal Views clients should display in menus",
"collaboration" : "CCs may be added to a ticket",
"is_first_comment_private_enabled" : "Allow first comment on tickets to be private",
"list_empty_views" : "Clients should display Views with no matching Tickets in menus"
},
"brands" : {
"default_brand_id" : "The id of the brand that is assigned to tickets by default",
"require_brand_on_new_tickets" : "Require agents to select a brand before saving tickets"
},
"branding" : {
"tab_background_color" : "HEX of tab background color",
"favicon_url" : "The URL for the custom favicon",
"header_color" : "HEX of the header color",
"page_background_color" : "HEX of the page background color",
"text_color" : "HEX of the text color, usually matched to contrast well with header_color",
"header_logo_url" : "The URL for the custom header logo"
},
"rule" : {
"macro_order" : "Default macro display order. Possible values are 'alphabetical' or 'position'",
"skill_based_filtered_views" : { },
"macro_most_used" : "Display the most-used macros in the Apply macro list. Defaults to true"
},
"lotus" : {
"prefer_lotus" : "Prefers the current version of Zendesk Support rather than Zendesk Classic"
},
"gooddata_advanced_analytics" : {
"enabled" : "GoodData Advanced Analytics is enabled"
},
"active_features" : {
"voice" : "Voice support",
"business_hours" : "boolean",
"bcc_archiving" : "Account has a bcc_archive_address set",
"ticket_tagging" : "Allow tagging tickets",
"csat_reason_code" : "boolean",
"twitter" : "Account monitors at least one Twitter handle",
"satisfaction_prediction" : "boolean",
"customer_satisfaction" : "boolean",
"dynamic_contents" : "Account has at least one dynamic content",
"advanced_analytics" : "boolean",
"explore_on_support_pro_plan" : "Allowed to show explore role controls",
"markdown" : "Markdown in ticket comments",
"agent_forwarding" : "boolean",
"good_data_and_explore" : "Has account plan setting 'good_data_and_explore'",
"rich_content_in_email" : "Account supports incoming HTML email",
"topic_suggestion" : "Allow topic suggestions in tickets",
"chat_about_my_ticket" : "boolean",
"on_hold_status" : "Account can use status hold",
"explore" : "Has account plan setting 'explore'",
"user_tagging" : "Enable user tags",
"insights" : "boolean",
"light_agents" : "Account has at least one light agent",
"facebook" : "Account is actively linked to at least one Facebook page",
"sandbox" : "Account has a sandbox",
"suspended_ticket_notification" : "boolean",
"facebook_login" : "boolean",
"allow_ccs" : "Allow CCs on tickets",
"is_abusive" : "Account exceeded trial limits",
"feedback_tabs" : "Feedback tab has been configured before",
"twitter_login" : "boolean",
"chat" : "boolean",
"google_login" : "boolean",
"forum_analytics" : "Forum and search analytics"
},
"billing" : {
"backend" : "Backend Billing system either 'internal' or 'zuora'"
},
"ticket_form" : {
"ticket_forms_instructions" : "string"
},
"twitter" : {
"shorten_url" : "string. Possible values: always | optional | never"
},
"chat" : {
"maximum_requests" : "The maximum number of chat requests an agent may handle at one time",
"welcome_message" : "The message automatically sent to end-users when they begin chatting with an agent",
"enabled" : "Chat is enabled"
},
"ticket_sharing_partners" : {
"support_addresses" : { }
},
"api" : {
"api_token_access" : "Allow the account to use the API with API tokens",
"accepted_api_agreement" : "Account has accepted the API agreement",
"api_password_access" : "Allow the account to use the API with username/password"
},
"metrics" : {
"account_size" : "An account size category computed from the number of billable agents"
},
"google_apps" : {
"has_google_apps_admin" : "Account has at least one G Suite admin",
"has_google_apps" : "boolean"
},
"user" : {
"tagging" : "Users may be tagged",
"end_user_phone_number_validation" : "Whether a user's phone number is validated",
"agent_created_welcome_emails" : "Whether a user created by an agent receives a welcome email",
"language_selection" : "Whether to display language drop down for a user",
"time_zone_selection" : "Whether user can view time zone for profile",
"have_gravatars_enabled" : "Whether user gravatars are displayed in the UI"
},
"limits" : {
"attachment_size" : "The maximum ticket attachment file size (in bytes)"
},
"apps" : {
"create_private" : "The account can create private apps",
"use" : "The account can use apps"
},
"statistics" : {
"forum" : "Allow users to view forum statistics",
"search" : "Allow users to view search statistics"
}
}
}
}
update_automation
Update an automation
Parameters
id (required)
Automation ID
Type: number
$body
Type: object
{
"automation" : {
"updated_at" : "The time of the last update of the automation",
"active" : "Whether the automation is active",
"created_at" : "The time the automation was created",
"id" : "Automatically assigned when created",
"position" : "Position of the automation, determines the order they will execute in",
"title" : "The title of the automation",
"conditions" : {
"all" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ],
"any" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ]
},
"actions" : {
"actions" : [ {
"field" : "The name of a field",
"value" : "The value of the field"
} ]
}
}
}
update_brand
Update a brand
Parameters
id (required)
Brand ID
Type: number
$body
Type: object
{
"brand" : {
"ticket_form_ids" : [ "integer" ],
"host_mapping" : "The hostmapping to this brand, if any (only admins view this key)",
"active" : "If the brand is set as active",
"created_at" : "The time the brand was created",
"help_center_state" : "The state of the Help Center",
"url" : "The API url of this brand",
"brand_url" : "The url of the brand",
"has_help_center" : "If the brand has a Help Center",
"default" : "Is the brand the default brand for this account",
"updated_at" : "The time of the last update of the brand",
"signature_template" : "The signature template for a brand",
"name" : "The name of the brand",
"logo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"subdomain" : "The subdomain of the brand",
"id" : "Automatically assigned when the brand is created"
}
}
update_custom_role
Parameters
id (required)
Role ID
Type: number
$body
Type: object
{
"custom_role" : {
"role_type" : "The value 0",
"updated_at" : "The time the record was last updated",
"configuration" : {
"voice_access" : "boolean",
"moderate_forums" : "boolean",
"user_view_access" : "string. Possible values: full | manage-group | manage-personal | none | readonly",
"ticket_merge" : "boolean",
"ticket_access" : "string. Possible values: all | assigned-only | within-groups | within-organization",
"light_agent" : "boolean",
"explore_access" : "string. Possible values: edit | full | none | readonly",
"macro_access" : "string. Possible values: full | manage-group | manage-personal | readonly",
"organization_notes_editing" : "boolean",
"view_deleted_tickets" : "boolean",
"end_user_list_access" : "string. Possible values: full | none",
"end_user_profile_access" : "string. Possible values: edit | edit-within-org | full | readonly",
"report_access" : "string. Possible values: full | none | readonly",
"manage_dynamic_content" : "boolean",
"forum_access" : "string. Possible values: edit-topics | full | readonly",
"ticket_comment_access" : "string. Possible values: public | none",
"twitter_search_access" : "boolean",
"forum_access_restricted_content" : "boolean",
"group_access" : "boolean",
"ticket_editing" : "boolean",
"manage_business_rules" : "boolean",
"ticket_deletion" : "boolean",
"view_access" : "string. Possible values: full | manage-group | manage-personal | playonly | readonly",
"ticket_tag_editing" : "boolean",
"manage_facebook" : "boolean",
"manage_extensions_and_channels" : "boolean",
"organization_editing" : "boolean",
"chat_access" : "boolean"
},
"name" : "Name of this custom role",
"description" : "A description of the role",
"created_at" : "The time the record was created",
"id" : "Automatically assigned upon creation"
}
}
update_dynamic_content
Update a dynamic content item
Parameters
id (required)
DynamicContentItem ID
Type: number
$body
Type: object
{
"item" : {
"outdated" : "Indicates the item has outdated variants within it",
"updated_at" : "When this record last got updated",
"default_locale_id" : "The default locale for the item. Must be one of the locales the account has active.",
"name" : "The unique name of the item",
"created_at" : "When this record was created",
"id" : "Automatically assigned when creating items",
"placeholder" : "Automatically generated placeholder for the item, derived from name",
"variants" : [ {
"locale_id" : "An active locale",
"default" : "If the variant is the default for the item it belongs to",
"outdated" : "If the variant is outdated",
"updated_at" : "When the variant was last updated",
"active" : "If the variant is active and useable",
"created_at" : "When the variant was created",
"id" : "Automatically assigned when the variant is created",
"url" : "The API url of the variant",
"content" : "The content of the variant"
} ],
"url" : "The API url of this item"
}
}
update_dynamic_content_variant
Update a dynamic content variant
Parameters
id (required)
DynamicContentItem ID
Type: number
variant_id (required)
Variant ID
Type: number
$body
Type: object
{
"variant" : {
"locale_id" : "An active locale",
"default" : "If the variant is the default for the item it belongs to",
"outdated" : "If the variant is outdated",
"updated_at" : "When the variant was last updated",
"active" : "If the variant is active and useable",
"created_at" : "When the variant was created",
"id" : "Automatically assigned when the variant is created",
"url" : "The API url of the variant",
"content" : "The content of the variant"
}
}
update_end_user
Update end user
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"user" : {
"role" : "The role of the user.",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number in the Users API",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"created_at" : "The time the user was created",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"locale" : "The locale for this user",
"time_zone" : "The time-zone of this user",
"url" : "The API url of this user",
"locale_id" : "The language identifier for this user",
"updated_at" : "The time of the last update of the user",
"phone" : "The primary phone number of this user. See Phone Number in the Users API",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The name of the user",
"id" : "Automatically assigned when creating users",
"email" : "The primary email address of this user"
}
}
update_group
Update a group
Parameters
group_id (required)
Group ID
Type: number
$body
Type: object
{
"group" : {
"deleted" : "Deleted groups get marked as such",
"updated_at" : "The time of the last update of the group",
"name" : "The name of the group",
"created_at" : "The time the group was created",
"id" : "Automatically assigned when creating groups",
"url" : "The API url of this group"
}
}
update_holiday
Update a holiday
Parameters
holiday_id (required)
Holiday ID
Type: number
schedule_id (required)
Schedule ID
Type: number
$body
Type: object
{
"holiday" : {
"end_date" : "ISO 8601 representation of the holiday end date.",
"name" : "Name of the holiday.",
"id" : "Automatically assigned upon creation.",
"start_date" : "ISO 8601 representation of the holiday start date."
}
}
update_identity_for_user
Update identity for user
Parameters
id (required)
Identity ID
Type: number
user_id (required)
User ID
Type: number
$body
Type: object
{
"user_identity" : {
"updated_at" : "The time the identity was updated",
"user_id" : "The id of the user",
"deliverable_state" : "string. Possible values: deliverable | undeliverable",
"verified" : "If the identity has been verified",
"undeliverable_count" : "The number of times a soft-bounce response was received at that address",
"created_at" : "The time the identity was created",
"id" : "Automatically assigned on creation",
"type" : "string. Possible values: email | twitter | facebook | google | phone_number | agent_fowarding | sdk",
"value" : "The identifier for this identity, such as an email address",
"url" : "The API url of this identity",
"primary" : "If the identity is the primary identity. *Writable only when creating, not when updating. Use the Make Identity Primary endpoint instead"
}
}
update_intervals
Update intervals for a schedule
Parameters
schedule_id (required)
Schedule ID
Type: number
$body
Type: object
{
"workweek" : {
"intervals" : [ {
"start_time" : "Integer representation of the interval start time",
"end_time" : "Integer representation of the interval end time"
} ]
}
}
update_macro
Update a macro
Parameters
id (required)
Macro ID
Type: number
$body
Type: object
{
"macro" : {
"updated_at" : "The time of the last update of the macro",
"restriction" : { },
"active" : "Useful for determining if the macro should be displayed",
"description" : "The description of the macro",
"created_at" : "The time the macro was created",
"id" : "Automatically assigned when created",
"position" : "The position of the macro",
"title" : "The title of the macro",
"actions" : {
"actions" : [ {
"field" : "The name of a field",
"value" : "The value of the field"
} ]
}
}
}
update_many_automations
Bulk edit automations. Use the ids
query parameter if you want to edit many automations with the same change.
Parameters
$body
Type: object
{
"automations" : [ {
"active" : "The active status of the automation",
"id" : "The ID of the automation to update",
"position" : "The new position of the automation"
} ]
}
ids
Automation IDs to edit with the same change
Type: array
[ "number" ]
update_many_dynamic_content_variants
Bulk edit dynamic content variants.
Parameters
id (required)
DynamicContentItem ID
Type: number
$body
Type: object
{
"variants" : [ {
"locale_id" : "An active locale",
"default" : "If the variant is the default for the item it belongs to",
"outdated" : "If the variant is outdated",
"updated_at" : "When the variant was last updated",
"active" : "If the variant is active and useable",
"created_at" : "When the variant was created",
"id" : "Automatically assigned when the variant is created",
"url" : "The API url of the variant",
"content" : "The content of the variant"
} ]
}
update_many_macros
Updates the provided macros with the specified changes.
Parameters
$body
Type: object
{
"macros" : [ {
"updated_at" : "The time of the last update of the macro",
"restriction" : { },
"active" : "Useful for determining if the macro should be displayed",
"description" : "The description of the macro",
"created_at" : "The time the macro was created",
"id" : "Automatically assigned when created",
"position" : "The position of the macro",
"title" : "The title of the macro",
"actions" : {
"actions" : [ {
"field" : "The name of a field",
"value" : "The value of the field"
} ]
}
} ]
}
update_many_organizations
Bulk edit organizations. Use the ids
query parameter if you want to edit many organizations with the same change.
Parameters
$body
Type: object
{
"organization" : {
"shared_tickets" : "End users in this organization are able to see each other's tickets",
"notes" : "Any notes you have about the organization",
"created_at" : "The time the organization was created",
"external_id" : "A unique external id to associate organizations to an external record",
"url" : "The API url of this organization",
"domain_names" : [ "string" ],
"tags" : [ "string" ],
"organization_fields" : { },
"updated_at" : "The time of the last update of the organization",
"group_id" : "New tickets from users in this organization are automatically put in this group",
"name" : "A unique name for the organization",
"details" : "Any details obout the organization, such as the address",
"id" : "Automatically assigned when the organization is created",
"shared_comments" : "End users in this organization are able to see each other's comments on tickets"
},
"organizations" : [ {
"shared_tickets" : "End users in this organization are able to see each other's tickets",
"notes" : "Any notes you have about the organization",
"created_at" : "The time the organization was created",
"external_id" : "A unique external id to associate organizations to an external record",
"url" : "The API url of this organization",
"domain_names" : [ "string" ],
"tags" : [ "string" ],
"organization_fields" : { },
"updated_at" : "The time of the last update of the organization",
"group_id" : "New tickets from users in this organization are automatically put in this group",
"name" : "A unique name for the organization",
"details" : "Any details obout the organization, such as the address",
"id" : "Automatically assigned when the organization is created",
"shared_comments" : "End users in this organization are able to see each other's comments on tickets"
} ]
}
ids
Organization IDs to edit with the same change
Type: array
[ "number" ]
update_many_tickets
Bulk edit tickets. Use the ids
query parameter if you want to edit many tickets with the same change.
Parameters
$body
Type: object
{
"tickets" : [ {
"subject" : "The value of the subject field for this ticket",
"email_cc_ids" : [ "number" ],
"additional_tags" : [ "string" ],
"description" : "The first comment on the ticket",
"created_at" : "When this record was created",
"external_id" : "An id you can use to link Zendesk Support tickets to local records",
"macro_ids" : [ "number" ],
"type" : "The type of this ticket.",
"updated_stamp" : "If the updated_stamp property does not match the updated_at datetime value for the ticket the update operation will fail and an UpdateConflict error response will be sent.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"allow_attachments" : "When an agent responds, are they allowed to add attachments? Defaults to true",
"updated_at" : "When this record last got updated",
"problem_id" : "For tickets of type \"incident\", the ID of the problem the incident is linked to",
"follower_ids" : [ "number" ],
"collaborators" : [ "number" ],
"due_at" : "If this is a ticket of type \"task\" it has a due date. Due date format uses ISO 8601 format.",
"id" : "Automatically assigned when the ticket is created",
"assignee_id" : "The agent currently assigned to the ticket",
"raw_subject" : "The dynamic content placeholder, if present, or the \"subject\" value, if not. See Dynamic Content",
"safe_update" : "When the safe_update property has a value of true, the updated_stamp property is required, and only if the updated_at datetime value on the ticket matches the updated_stamp value will the ticket be updated.",
"forum_topic_id" : "The topic this ticket originated from, if any",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"allow_channelback" : "Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket",
"satisfaction_rating" : { },
"submitter_id" : "The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket",
"priority" : "The urgency with which the ticket should be addressed.",
"collaborator_ids" : [ "number" ],
"url" : "The API url of this ticket",
"tags" : [ "string" ],
"brand_id" : "Enterprise only. The id of the brand this ticket is associated with",
"ticket_form_id" : "Enterprise only. The id of the ticket form to render for the ticket",
"remove_tags" : [ "string" ],
"sharing_agreement_ids" : [ "number" ],
"group_id" : "The group this ticket is assigned to",
"organization_id" : "The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships",
"followup_ids" : [ "number" ],
"recipient" : "The original recipient e-mail address of the ticket",
"via_followup_source_id" : "POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating Follow-up Tickets",
"is_public" : "Is true if any comments are public, false otherwise",
"comment" : {
"metadata" : { },
"attachments" : [ {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
} ],
"public" : "true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it",
"html_body" : "The comment formatted as HTML",
"plain_body" : "The comment as plain text",
"created_at" : "The time the comment was created",
"id" : "Automatically assigned when the comment is created",
"type" : "string. Possible values: Comment | VoiceComment",
"body" : "The comment string",
"author_id" : "The id of the comment author.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
}
},
"has_incidents" : "Is true of this ticket has been marked as a problem, false otherwise",
"status" : "The state of the ticket.",
"requester_id" : "The user who requested this ticket"
} ],
"ticket" : {
"subject" : "The value of the subject field for this ticket",
"email_cc_ids" : [ "number" ],
"additional_tags" : [ "string" ],
"description" : "The first comment on the ticket",
"created_at" : "When this record was created",
"external_id" : "An id you can use to link Zendesk Support tickets to local records",
"macro_ids" : [ "number" ],
"type" : "The type of this ticket.",
"updated_stamp" : "If the updated_stamp property does not match the updated_at datetime value for the ticket the update operation will fail and an UpdateConflict error response will be sent.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"allow_attachments" : "When an agent responds, are they allowed to add attachments? Defaults to true",
"updated_at" : "When this record last got updated",
"problem_id" : "For tickets of type \"incident\", the ID of the problem the incident is linked to",
"follower_ids" : [ "number" ],
"collaborators" : [ "number" ],
"due_at" : "If this is a ticket of type \"task\" it has a due date. Due date format uses ISO 8601 format.",
"id" : "Automatically assigned when the ticket is created",
"assignee_id" : "The agent currently assigned to the ticket",
"raw_subject" : "The dynamic content placeholder, if present, or the \"subject\" value, if not. See Dynamic Content",
"safe_update" : "When the safe_update property has a value of true, the updated_stamp property is required, and only if the updated_at datetime value on the ticket matches the updated_stamp value will the ticket be updated.",
"forum_topic_id" : "The topic this ticket originated from, if any",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"allow_channelback" : "Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket",
"satisfaction_rating" : { },
"submitter_id" : "The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket",
"priority" : "The urgency with which the ticket should be addressed.",
"collaborator_ids" : [ "number" ],
"url" : "The API url of this ticket",
"tags" : [ "string" ],
"brand_id" : "Enterprise only. The id of the brand this ticket is associated with",
"ticket_form_id" : "Enterprise only. The id of the ticket form to render for the ticket",
"remove_tags" : [ "string" ],
"sharing_agreement_ids" : [ "number" ],
"group_id" : "The group this ticket is assigned to",
"organization_id" : "The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships",
"followup_ids" : [ "number" ],
"recipient" : "The original recipient e-mail address of the ticket",
"via_followup_source_id" : "POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating Follow-up Tickets",
"is_public" : "Is true if any comments are public, false otherwise",
"comment" : {
"metadata" : { },
"attachments" : [ {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
} ],
"public" : "true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it",
"html_body" : "The comment formatted as HTML",
"plain_body" : "The comment as plain text",
"created_at" : "The time the comment was created",
"id" : "Automatically assigned when the comment is created",
"type" : "string. Possible values: Comment | VoiceComment",
"body" : "The comment string",
"author_id" : "The id of the comment author.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
}
},
"has_incidents" : "Is true of this ticket has been marked as a problem, false otherwise",
"status" : "The state of the ticket.",
"requester_id" : "The user who requested this ticket"
}
}
ids
Ticket IDs to edit with the same change
Type: array
[ "number" ]
update_many_triggers
Bulk edit triggers.
Parameters
$body
Type: object
{
"triggers" : [ {
"updated_at" : "The time of the last update of the trigger",
"active" : "Whether the trigger is active",
"description" : "The description of the trigger",
"created_at" : "The time the trigger was created",
"id" : "Automatically assigned when created",
"position" : "Position of the trigger, determines the order they will execute in",
"title" : "The title of the trigger",
"conditions" : {
"all" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ],
"any" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ]
},
"actions" : [ {
"field" : "The name of a field",
"value" : "The value of the field"
} ]
} ]
}
update_many_users
Bulk edit users. Use the ids
query parameter if you want to edit many users with the same change.
Parameters
$body
Type: object
{
"user" : {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
},
"users" : [ {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
} ]
}
ids
User IDs to edit with the same change
Type: array
[ "number" ]
update_oauth_client
Update client
Parameters
oauth_client_id (required)
OAuth Client ID
Type: number
$body
Type: object
{
"client" : {
"identifier" : "The unique identifier for this client",
"logo_url" : "The API logo url of this record",
"description" : "A short description of your client that is displayed to users when they are considering approving access to your application.",
"created_at" : "The time the client was created",
"global" : "Whether this client is globally accessible. Learn more",
"secret" : "The client secret. Generated automatically on creation and returned in full only at that time.",
"url" : "The API url of this record",
"updated_at" : "The time of the last update of the client",
"user_id" : "The id of the admin who created the client",
"name" : "The name of this client",
"company" : "Choose a company name to display when users are asked to approve access to your application. The name will help users understand who they are granting access to.",
"id" : "Automatically assigned upon creation",
"redirect_uri" : [ "string" ]
}
}
update_organization
Update organization
Parameters
organization_id (required)
Organization ID
Type: number
$body
Type: object
{
"organization" : {
"shared_tickets" : "End users in this organization are able to see each other's tickets",
"notes" : "Any notes you have about the organization",
"created_at" : "The time the organization was created",
"external_id" : "A unique external id to associate organizations to an external record",
"url" : "The API url of this organization",
"domain_names" : [ "string" ],
"tags" : [ "string" ],
"organization_fields" : { },
"updated_at" : "The time of the last update of the organization",
"group_id" : "New tickets from users in this organization are automatically put in this group",
"name" : "A unique name for the organization",
"details" : "Any details obout the organization, such as the address",
"id" : "Automatically assigned when the organization is created",
"shared_comments" : "End users in this organization are able to see each other's comments on tickets"
}
}
update_organization_field
Update an organization field
Parameters
id (required)
OrganizationField ID
Type: number
$body
Type: object
{
"organization_field" : {
"raw_title" : "The dynamic content placeholder, if present, or the \"title\" value, if not.",
"custom_field_options" : [ "string" ],
"description" : "User-defined description of this field's purpose",
"active" : "If true, this field is available for use",
"created_at" : "The time the ticket field was created",
"type" : "string. Possible values: checkbox | date | decimal | dropdown | integer | regexp | text | textarea | tagger",
"title" : "The title of the custom field",
"raw_description" : "The dynamic content placeholder, if present, or the \"description\" value, if not.",
"url" : "The URL for this resource",
"system" : "If true, only active and position values of this field can be changed",
"updated_at" : "The time of the last update of the ticket field",
"regexp_for_validation" : "Regular expression field only. The validation pattern for a field value to be deemed valid.",
"id" : "Automatically assigned upon creation",
"position" : "Ordering of the field relative to other fields",
"tag" : "Optional for custom field of type \"checkbox\"; not presented otherwise.",
"key" : "A unique key that identifies this custom field. This is used for updating the field and referencing in placeholders."
}
}
update_recipient_address
Update recipient address
Parameters
id (required)
SupportAddress ID
Type: number
$body
Type: object
{
"recipient_address" : {
"cname_status" : "Whether all of the required CNAME records are set.",
"forwarding_status" : "Status of email forwarding.",
"created_at" : "When the address was created",
"spf_status" : "Whether the SPF record is set up correctly.",
"brand_id" : "The ID of the brand",
"default" : "Whether the address is the account's default support address",
"ses_status" : "Whether the SES domain verification is valid.",
"updated_at" : "When the address was updated",
"name" : "The name for the address",
"id" : "Automatically assigned when created",
"domain_verification_status" : "Whether the domain verification record is valid.",
"email" : "The email address (not updateable)",
"domain_verification_code" : "Verification string to be added as a TXT record to the domain. Possible types: string or null."
}
}
update_request
Update request
Parameters
request_id (required)
Request ID
Type: number
$body
Type: object
{
"request" : {
"subject" : "The value of the subject field for this request if the subject field is visible to end users; a truncated version of the description otherwise",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"email_cc_ids" : [ "integer" ],
"description" : "The first comment on the request",
"solved" : "Whether or not request is solved (an end user can set this if \"can_be_solved_by_me\", above, is true for that user)",
"created_at" : "When this record was created",
"priority" : "The priority of the request",
"type" : "The type of the request",
"collaborator_ids" : [ "integer" ],
"url" : "The API url of this request",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"ticket_form_id" : "The numeric id of the ticket form associated with this request if the form is visible to end users - only applicable for enterprise accounts",
"updated_at" : "When this record last got updated",
"followup_source_id" : "The id of the original ticket if this request is a follow-up ticket",
"group_id" : "The id of the assigned group if the field is visible to end users",
"can_be_solved_by_me" : "If true, end user can mark request as solved.",
"organization_id" : "The organization of the requester",
"is_public" : "Is true if any comments are public, false otherwise",
"recipient" : "The original recipient e-mail address of the request",
"due_at" : "When the task is due (only applies if the request is of type \"task\")",
"id" : "Automatically assigned when creating requests",
"status" : "The state of the request",
"requester_id" : "The id of the requester",
"assignee_id" : "The id of the assignee if the field is visible to end users"
}
}
update_resource_collection
Updates a resource collection with a provided payload.
Parameters
$body
Type: object
{
"payload" : { }
}
update_schedule
Update a schedule
Parameters
schedule_id (required)
Schedule ID
Type: number
$body
Type: object
{
"schedule" : {
"intervals" : [ {
"start_time" : "Integer representation of the interval start time",
"end_time" : "Integer representation of the interval end time"
} ],
"updated_at" : "Time the schedule was last updated",
"name" : "Name of the schedule",
"created_at" : "Time the schedule was created",
"id" : "Automatically assigned upon creation",
"time_zone" : "Time zone of the schedule"
}
}
update_sharing_agreement
Update sharing agreement
Parameters
id (required)
Sharing Agreement ID
Type: number
$body
Type: object
{
"sharing_agreement" : {
"partner_name" : "Can be either 'jira' or null",
"remote_subdomain" : "Subdomain of the remote account or null if not associated with an account",
"name" : "Name of this sharing agreement",
"created_at" : "The time the record was created",
"id" : "Automatically assigned upon creation",
"type" : "string. Possible values: inbound | outbound",
"status" : "string. Possible values: accepted | declined | pending | inactive"
}
}
update_target
Update target
Parameters
id (required)
Target ID
Type: number
$body
Type: object
{
"target" : {
"resource" : "string. Possible values: todo | message",
"target_url" : "The URL of your Basecamp account, including protocol and path",
"active" : "Whether or not the target is activated",
"created_at" : "The time the target was created",
"message_id" : "Can be filled if it is a \"todo\" resource",
"title" : "A name for the target",
"type" : "string",
"token" : "Get the API token from My info > Show your tokens > Token for feed readers or the Basecamp API in your Basecamp account",
"todo_list_id" : "Can be filled if it is a \"message\" resource",
"password" : "The 37Signals password for the Basecamp account (only writable)",
"project_id" : "The ID of the project in Basecamp where updates should be pushed",
"id" : "Automatically assigned when created",
"username" : "The 37Signals username of the account you use to log in to Basecamp"
}
}
update_ticket
Parameters
ticket_id (required)
Ticket ID
Type: number
$body
Type: object
{
"ticket" : {
"subject" : "The value of the subject field for this ticket",
"email_cc_ids" : [ "number" ],
"additional_tags" : [ "string" ],
"description" : "The first comment on the ticket",
"created_at" : "When this record was created",
"external_id" : "An id you can use to link Zendesk Support tickets to local records",
"macro_ids" : [ "number" ],
"type" : "The type of this ticket.",
"updated_stamp" : "If the updated_stamp property does not match the updated_at datetime value for the ticket the update operation will fail and an UpdateConflict error response will be sent.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
},
"allow_attachments" : "When an agent responds, are they allowed to add attachments? Defaults to true",
"updated_at" : "When this record last got updated",
"problem_id" : "For tickets of type \"incident\", the ID of the problem the incident is linked to",
"follower_ids" : [ "number" ],
"collaborators" : [ "number" ],
"due_at" : "If this is a ticket of type \"task\" it has a due date. Due date format uses ISO 8601 format.",
"id" : "Automatically assigned when the ticket is created",
"assignee_id" : "The agent currently assigned to the ticket",
"raw_subject" : "The dynamic content placeholder, if present, or the \"subject\" value, if not. See Dynamic Content",
"safe_update" : "When the safe_update property has a value of true, the updated_stamp property is required, and only if the updated_at datetime value on the ticket matches the updated_stamp value will the ticket be updated.",
"forum_topic_id" : "The topic this ticket originated from, if any",
"custom_fields" : [ {
"id" : "number",
"value" : "string"
} ],
"allow_channelback" : "Is false if channelback is disabled, true otherwise. Only applicable for channels framework ticket",
"satisfaction_rating" : { },
"submitter_id" : "The user who submitted the ticket. The submitter always becomes the author of the first comment on the ticket",
"priority" : "The urgency with which the ticket should be addressed.",
"collaborator_ids" : [ "number" ],
"url" : "The API url of this ticket",
"tags" : [ "string" ],
"brand_id" : "Enterprise only. The id of the brand this ticket is associated with",
"ticket_form_id" : "Enterprise only. The id of the ticket form to render for the ticket",
"remove_tags" : [ "string" ],
"sharing_agreement_ids" : [ "number" ],
"group_id" : "The group this ticket is assigned to",
"organization_id" : "The organization of the requester. You can only specify the ID of an organization associated with the requester. See Organization Memberships",
"followup_ids" : [ "number" ],
"recipient" : "The original recipient e-mail address of the ticket",
"via_followup_source_id" : "POST requests only. The id of a closed ticket when creating a follow-up ticket. See Creating Follow-up Tickets",
"is_public" : "Is true if any comments are public, false otherwise",
"comment" : {
"metadata" : { },
"attachments" : [ {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
} ],
"public" : "true if a public comment; false if an internal note. The initial value set on ticket creation persists for any additional comment unless you change it",
"html_body" : "The comment formatted as HTML",
"plain_body" : "The comment as plain text",
"created_at" : "The time the comment was created",
"id" : "Automatically assigned when the comment is created",
"type" : "string. Possible values: Comment | VoiceComment",
"body" : "The comment string",
"author_id" : "The id of the comment author.",
"via" : {
"channel" : "This tells you how the ticket or event was created.",
"source" : {
"rel" : "string",
"from" : { },
"to" : { }
}
}
},
"has_incidents" : "Is true of this ticket has been marked as a problem, false otherwise",
"status" : "The state of the ticket.",
"requester_id" : "The user who requested this ticket"
},
"audit" : {
"events" : [ { } ]
}
}
update_ticket_field
Update ticket field
Parameters
ticket_field_id (required)
Ticket Field ID
Type: number
$body
Type: object
{
"ticket_field" : {
"raw_title" : "The dynamic content placeholder, if present, or the \"title\" value, if not.",
"custom_field_options" : [ {
"raw_name" : "string",
"name" : "string",
"id" : "integer",
"position" : "integer",
"value" : "string",
"url" : "string"
} ],
"visible_in_portal" : "Whether this field is available to end users",
"description" : "The description of the purpose of this ticket field, shown to users",
"created_at" : "The time the ticket field was created",
"type" : "The type of the ticket field. Type is not editable once created.",
"title" : "The title of the ticket field",
"required" : "If it's required for this field to have a value when updated by agents",
"editable_in_portal" : "Whether this field is editable by end users",
"updated_at" : "The time of the last update of the ticket field",
"system_field_options" : [ {
"raw_name" : "string",
"name" : "string",
"id" : "integer",
"position" : "integer",
"value" : "string",
"url" : "string"
} ],
"regexp_for_validation" : "Regular expression field only. The validation pattern for a field value to be deemed valid.",
"id" : "Automatically assigned upon creation",
"tag" : "A tag value to set for checkbox fields when checked",
"collapsed_for_agents" : "If this field should be shown to agents by default or be hidden alongside infrequently used fields. Classic interface only",
"active" : "Whether this field is available",
"raw_title_in_portal" : "The dynamic content placeholder, if present, or the \"title_in_portal\" value, if not. See Dynamic Content",
"agent_description" : "A description of the ticket field that only agents can see",
"raw_description" : "The dynamic content placeholder, if present, or the \"description\" value, if not. See Dynamic Content",
"url" : "The URL for this resource",
"required_in_portal" : "If it's required for this field to have a value when updated by end users",
"removable" : "If this field is not a system basic field that must be present for all tickets on the account",
"sub_type_id" : "\"priority\" and \"status\" fields only, inaccessible to all other field types. Defaults to 0. A \"priority\" sub type of 1 removes the \"Low\" and \"Urgent\" options. A \"status\" sub type of 1 adds the \"On-Hold\" option.",
"position" : "A relative position for the ticket fields that determines the order of ticket fields on a ticket. Note that positions 0 to 7 are reserved for system fields",
"title_in_portal" : "The title of the ticket field is mandatory when it's visible to end users"
}
}
update_ticket_field_option
Update ticket field
Parameters
option_id (required)
Type: integer
ticket_field_id (required)
Ticket Field ID
Type: number
$body
Type: object
{
"custom_field_option" : {
"raw_name" : "string",
"name" : "string",
"id" : "integer",
"position" : "integer",
"value" : "string",
"url" : "string"
}
}
update_ticket_form
Update ticket form
Parameters
ticket_form_id (required)
Ticket Form ID
Type: number
$body
Type: object
{
"ticket_form" : {
"raw_name" : "The dynamic content placeholder, if present, or the \"name\" value, if not. See Dynamic Content",
"in_all_brands" : "Is the form available for use in all brands on this account",
"ticket_field_ids" : [ "string" ],
"active" : "If the form is set as active",
"agent_conditions" : [ { } ],
"raw_display_name" : "The dynamic content placeholder, if present, or the \"display_name\" value, if not. See Dynamic Content",
"display_name" : "The name of the form that is displayed to an end user",
"default" : "Is the form the default form for this account",
"end_user_conditions" : [ { } ],
"end_user_visible" : "Is the form visible to the end user",
"name" : "The name of the form",
"position" : "The position of this form among other forms in the account, i.e. dropdown",
"restricted_brand_ids" : [ "number" ]
}
}
update_trigger
Update trigger
Parameters
trigger_id (required)
Trigger ID
Type: number
$body
Type: object
{
"trigger" : {
"updated_at" : "The time of the last update of the trigger",
"active" : "Whether the trigger is active",
"description" : "The description of the trigger",
"created_at" : "The time the trigger was created",
"id" : "Automatically assigned when created",
"position" : "Position of the trigger, determines the order they will execute in",
"title" : "The title of the trigger",
"conditions" : {
"all" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ],
"any" : [ {
"field" : "The name of a ticket field",
"value" : "The value of a ticket field",
"operator" : "A comparison operator"
} ]
},
"actions" : [ {
"field" : "The name of a field",
"value" : "The value of the field"
} ]
}
}
update_user
Update user
Parameters
user_id (required)
User ID
Type: number
$body
Type: object
{
"user" : {
"shared" : "If the user is shared from a different Zendesk Support instance. Ticket sharing accounts only",
"last_login_at" : "The last time the user signed in to Zendesk Support",
"notes" : "Any notes you want to store about the user",
"role" : "The user's role. Possible values are \"end-user\", \"agent\", or \"admin\"",
"signature" : "The user's signature. Only agents and admins can have signatures",
"custom_role_id" : "A custom role if the user is an agent on the Enterprise plan",
"moderator" : "Designates whether the user has forum moderation capabilities",
"shared_agent" : "If the user is a shared agent from a different Zendesk Support instance. Ticket sharing accounts only",
"created_at" : "The time the user was created",
"external_id" : "A unique identifier from another system. The API treats the id as case insensitive.",
"locale" : "The user's locale. A BCP-47 compliant tag for the locale. If both \"locale\" and \"locale_id\" are present on create or update, \"locale_id\" is ignored and only \"locale\" is used.",
"default_group_id" : "The id of the user's default group. *Can only be set on create, not on update",
"locale_id" : "The user's language identifier",
"user_fields" : { },
"updated_at" : "The time the user was last updated",
"report_csv" : "Whether or not the user can access the CSV report on the Search tab of the Reporting page in the Support admin interface. See Analyzing Help Center search results in Help Center. Only available on the Guide Professional plan",
"alias" : "An alias displayed to end users",
"details" : "Any details you want to store about the user, such as an address",
"id" : "Automatically assigned when the user is created",
"email" : "The user's primary email address. *Writeable on create only. On update, a secondary email is added.",
"restricted_agent" : "If the agent has any restrictions; false for admins and unrestricted agents, true for other agents",
"two_factor_auth_enabled" : "If two factor authentication is enabled.",
"role_type" : "The user's role id. 0 for custom agents, 1 for light agent and 2 for chat agent",
"only_private_comments" : "true if the user can only create private comments",
"shared_phone_number" : "Whether the phone number is shared or not. See Phone Number below",
"verified" : "The user's primary identity is verified or not. For secondary identities, see User Identities",
"active" : "false if the user has been deleted",
"photo" : {
"content_type" : "The content type of the image.",
"size" : "The size of the image file in bytes",
"inline" : "If true, the attachment is excluded from the attachment list and the attachment's URL can be referenced within the comment of a ticket. Default is false",
"file_name" : "The name of the image file",
"content_url" : "A full URL where the attachment image file can be downloaded",
"id" : "Automatically assigned when created",
"thumbnails" : [ { } ]
},
"time_zone" : "The user's time zone. See Time Zone",
"suspended" : "If the agent is suspended. Tickets from suspended users are also suspended, and these users cannot sign in to the end user portal",
"url" : "The user's API url",
"tags" : [ "string" ],
"phone" : "The user's primary phone number. See Phone Number below",
"organization_id" : "The id of the user's organization. If the user has more than one organization memberships, the id of the user's default organization",
"name" : "The user's name",
"chat_only" : "Whether or not the user is a chat-only agent",
"ticket_restriction" : "Specifies which tickets the user has access to."
}
}
update_user_field
Update user field
Parameters
user_field_id (required)
User Field ID
Type: number
$body
Type: object
{
"user_field" : {
"raw_title" : "The dynamic content placeholder, if present, or the \"title\" value, if not. See Dynamic Content",
"custom_field_options" : [ {
"raw_name" : "string",
"name" : "string",
"id" : "number",
"position" : "integer",
"value" : "string",
"url" : "string"
} ],
"description" : "User-defined description of this field's purpose",
"active" : "If true, this field is available for use",
"created_at" : "The time the ticket field was created",
"type" : "Type of the custom field",
"title" : "The title of the custom field",
"raw_description" : "The dynamic content placeholder, if present, or the \"description\" value, if not. See Dynamic Content",
"url" : "The URL for this resource",
"system" : "If true, only active and position values of this field can be changed",
"updated_at" : "The time of the last update of the ticket field",
"regexp_for_validation" : "Regular expression field only. The validation pattern for a field value to be deemed valid.",
"id" : "Automatically assigned upon creation",
"position" : "Ordering of the field relative to other fields",
"tag" : "Optional for custom field of type \"checkbox\"; not presented otherwise.",
"key" : "A unique key that identifies this custom field. This is used for updating the field and referencing in placeholders."
}
}
update_user_field_option
Update user field
Parameters
option_id (required)
Type: integer
user_field_id (required)
User Field ID
Type: number
$body
Type: object
{
"custom_field_option" : {
"raw_name" : "string",
"name" : "string",
"id" : "number",
"position" : "integer",
"value" : "string",
"url" : "string"
}
}
update_workspace
Update workspace
Parameters
workspace_id (required)
Workspace ID
Type: number
$body
Type: object
{
"workspace" : {
"description" : "User-defined description of this workspace's purpose",
"created_at" : "The time the workspace was created",
"macro_ids" : [ "number" ],
"prefer_workspace_app_order" : "boolean",
"title" : "The title of the workspace",
"url" : "The URL for this resource",
"ticket_form_id" : "number",
"updated_at" : "The time of the last update of the workspace",
"selected_macros" : [ { } ],
"id" : "Automatically assigned upon creation",
"position" : "Ordering of the workspace relative to other workspaces",
"conditions" : { },
"activated" : "If true, this workspace is available for use",
"apps" : [ { } ]
}
}
validate_token
Validate token.
Parameters
$body
Type: object
{
"instance_push_id" : "The ID of the account to which data will be pushed. This was passed to the integration service when the administrator set up the account",
"request_id" : "A unique identifier for the push request"
}
verify_recipient_address
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. 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".
Parameters
id (required)
SupportAddress ID
Type: number
$body
Type: object
{
"type" : "string"
}