A request is an end user's perspective on a ticket. The following actions can be performed with the Create Request and Update Request endpoints:

You can also create anonymous requests when creating a ticket and add collaborators to an existing ticket.

Setting collaborators

Note: If the account has the CCs and Followers feature enabled, then collaborators can still be set using collaborators and additional_collaborators, which will automatically make end users CCs and agents followers. The use of email_ccs and followers is preferred for these accounts. See Setting Email CCs and Setting Followers for more details.

When creating a ticket, you can set collaborators on a ticket using the collaborators parameter.

An email notification is sent to the collaborators when the request is created.

The collaborators parameter takes an array consisting of a combination of user ids, email addresses, or objects containing a name and email property.

Use an object to create the user on the fly with the appropriate name in your Zendesk Support instance.

Example

{      "ticket": {        "collaborators": [ 562, "[email protected]", { "name": "Someone Else", "email": "[email protected]" } ]      }    }

The new or updated collaborators will be specified in the JSON response by a property named collaborator_ids. The response won't have a collaborators property.

Setting email CCs

When creating or updating a request, you can set email CCs on a request using the parameter email_ccs.

An email notification is sent to the CCs when the request is created or updated depending on trigger settings.

The email_ccs parameter takes an array of objects representing users. Each object must have an identifier, either user ID (user_id) or email address (user_email). If an email address is specified and the user doesn't exist in the account, a new user will be created. Additionally, the key action can be set to either "put" or "delete" - which indicates whether the user should be added to or removed from the email CCs list. If the action key is not given, the default of put is used. Optionally, if a new user is created, user_name can be specified to set the new user's name. If the user will be implicitly created and a user_name is not given, the user name will be derived from the local part of the email address. If an email address not associated with a user is included (with eg. the intention to implicitly create the user), but the "action" key is valued "delete", that email address will not be created and/or added as an email CC.

Email CCs will not be updated if an internal note is also added to the request in the same update.

Example request

{      "request": {        "email_ccs": [          { "user_id": "562624", "action": "put" },          { "user_id": "243642", "action": "delete" },          { "user_email": "[email protected]", "user_name": "Someone Else", "action": "put"}        ]      }    }

Creating anonymous requests

Anonymous requests must first be enabled in the Zendesk Admin Center by a Zendesk admin. If you're not an admin, ask an admin to do it for you. To enable anonymous requests, follow the procedure in Anybody can submit tickets, no registration required in Zendesk help. Make sure the Require authentication for request and uploads APIs option is not selected.

To create anonymous requests

  1. Omit the authorization header.
  2. Include a requester object in the request object.

The requester object has the following properties. Only name is required.

NameRequiredDescription
nameyesA real or arbitrary name for the requester
emailnoAn email address
localenoA BCP-47 compliant tag
locale_idnoSee the Locales API

If both locale and locale_id are included on create, locale is used and locale_id is ignored.

Example

{      "request": {        "requester": {"name": "Anonymous customer"},        "subject": "Help!",        "comment": {"body": "My printer is on fire!" }      }    }

Adding collaborators

When updating a ticket, you can add new collaborators on a ticket using the additional_collaborators parameter.

An email notification is sent to the collaborators when the ticket is updated.

The additional_collaborators takes an array consisting of a combination of user ids, email addresses, or objects containing a name and email property.

Example

{      "ticket": {        "additional_collaborators": [ 562, "[email protected]", { "name": "Someone Else", "email": "[email protected]" } ]      }    }

The new or updated collaborators will be specified in the JSON response by a property named collaborator_ids. The response won't have a additional_collaborators property.