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 Support. If you're not an admin, ask an admin to do it for you.

To enable anonymous requests

  1. Sign in to Support and go to the Customers page (Admin > Settings > Customers).
  2. Enable "Anyone can submit tickets".
  3. Disable "Ask users to register".
  4. Disable "Require authentication for the requests and uploads APIs".

See Managing end-user settings in the Zendesk Support Help Center.

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.

Name Required Description
name yes A real or arbitrary name for the requester
email no An email address
locale no A BCP-47 compliant tag
locale_id no See 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.