Zendesk (version v1.*.*)

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

Show Organization's related information.

Parameters

organization_id (required)#

Organization ID

Type: number

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

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" ]

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"
}