Introduction

This is the reference documentation for the Zendesk Talk Partner Edition API. The Talk Partner Edition API is part of the Zendesk v2 API. Any general mechanisms and conventions, such as authentication and pagination, work as described in the Support v2 API documentation and are considered implied in this reference.

Talk Partner Edition is required to use this API.

For potential integration features you can build with the API, see the Talk Partner Edition developer guide.

Open a user's profile in an agent's browser

POST /api/v2/channels/voice/agents/{agent_id}/users/{user_id}/display.json

Allows you to instruct an agent's browser to open a user's profile.

Allowed For
  • Agents
Using curl
curl https://{subdomain}.zendesk.com/api/v2/channels/voice/agents/{agent_id}/users/{user_id}/display.json \
  -H "Content-Type: application/json" \
  -v -u {email_address}:{password} -X POST
Example Response

When the message has been sucessfully delivered to an agent's browser:

Status: 200 OK

When the agent_id or user_id is invalid:

Status: 404 Not Found

Open Ticket in Agent's Browser

POST /api/v2/channels/voice/agents/{agent_id}/tickets/{ticket_id}/display.json

Allows you to instruct an agent's browser to open a ticket.

Allowed For
  • Agents
Using curl
curl https://{subdomain}.zendesk.com/api/v2/channels/voice/agents/{agent_id}/tickets/{ticket_id}/display.json \
  -H "Content-Type: application/json" \
  -v -u {email_address}:{password} -X POST
Example Responses

When the message is successfully delivered to an agent's browser:

Status: 200 OK

When agent_id or ticket_id is invalid:

Status: 404 Not Found

Create Ticket

POST /api/v2/channels/voice/tickets.json

Allowed For
  • Agents
Request parameters

The POST request takes a mandatory ticket object that lists the values to set when the ticket is created. You may also include an optional display_to_agent value such as the ID of the agent that will see the newly created ticket.

Tickets created using this endpoint must have a via_id parameter. See the following section for possible values.

Zendesk Talk Integration Via IDs

Tickets created using this endpoint must have one of the following via_id parameters:

ID Description
44 Voicemail
45 Phone call (inbound)
46 Phone call (outbound)
Using curl

data.json file

{
  "display_to_agent": 1234,
  "ticket": {
    "via_id": 45,
    "subject": "My printer is on fire!",
    "comment": { "body": "The smoke is very colorful." },
    "priority": "urgent"
  }
}

curl request

curl https://{subdomain}.zendesk.com/api/v2/channels/voice/tickets.json \
  -d @data.json \
  -H "Content-Type: application/json" -v -u {email_address}:{password} -X POST
Example Response
Status: 201 Created
Location: https://{subdomain}.zendesk.com/api/v2/tickets/{id}.json

{
  "ticket": {
    {
      "id":      35436,
      "subject": "My printer is on fire!",
      ...
    }
  }
}

Create Voicemail Ticket

POST /api/v2/channels/voice/tickets.json

Request parameters

The POST request takes a mandatory ticket object that lists the values to set when the ticket is created. The ticket must have a voice_comment with the following values:

Name Type Comment
from string Incoming phone number
to string Dialed phone number
recording_url string URL of the recording
started_at date ISO 8601 timestamp of the call starting time
call_duration integer Duration in seconds of the call
answered_by_id integer The agent who answered the call
transcription_text string Transcription of the call (optional)
location string Location of the caller (optional)
Using curl

data.json file

{
  "ticket": {
    "via_id": 44,
    "description": "Voicemail from: +16617480240",
    "voice_comment": {
      "from": "+16617480240",
      "to": "+16617480123",
      "recording_url": "http://yourdomain.com/recordings/1.mp3",
      "started_at": "2019-04-16T09:14:57Z",
      "call_duration": 40,
      "answered_by_id": 28,
      "transcription_text": "The transcription of the call",
      "location": "Dublin, Ireland"
    }
  }
}

curl request

curl https://{subdomain}.zendesk.com/api/v2/channels/voice/tickets.json \
  -d @data.json \
  -H "Content-Type: application/json" -v -u {email_address}:{password} -X POST
Example Response
Status: 201 Created
Location: https://{subdomain}.zendesk.com/api/v2/tickets/{id}.json

{
  "ticket": {
    {
      "id":      35436,
      "description": "Incoming phone call from: +16617480240",
      ...
    }
  }
}