Talk Partner Edition

Use of this API requires Talk Partner Edition.

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 a ticket in an 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 has been successfully delivered to an agent's browser:

Status: 200 OK

When the agent_id or ticket_id is invalid:

Status: 404 Not Found

Creating Tickets

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. It can be one of three values:

Zendesk Talk Integration Via IDs
ID Description
44 Voicemail
45 Phone call (inbound)
46 Phone call (outbound)
Example request payload (data.json)
Using curl
curl https://{subdomain}.zendesk.com/api/v2/channels/voice/tickets.json \
  -H "Content-Type: application/json" -v -u {email_address}:{password} -X POST \
  -d @- <<JSON
    {
      "display_to_agent": 4,
      "ticket": {
        "via_id": 45,
        "subject": "My printer is on fire!",
        "comment": { "body": "The smoke is very colorful." },
        "priority": "urgent"
      }
    }
JSON
Example Response
Status: 201 Created
Location: https://{subdomain}.zendesk.com/api/v2/tickets/{id}.json

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

Creating Voicemail Tickets

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 Timestamp of the call
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
curl https://{subdomain}.zendesk.com/api/v2/channels/voice/tickets.json \
  -H "Content-Type: application/json" -v -u {email_address}:{password} -X POST \
  -d @- <<JSON
    {
      "ticket": {
        "via_id": 44,
        "description": "Voicemail from: +16617480240",
        "voice_comment": {
          "from": "+16617480240",
          "to": "+16617480123",
          "recording_url": "http://yourdomain.com/recordings/1.mp3",
          "started_at": "2013-07-11 15:31:44 +0000",
          "call_duration": 40,
          "answered_by_id": 28,
          "transcription_text": "The transcription of the call",
          "location": "Dublin, Ireland"
        }
      }
    }
JSON
Example Response
Status: 201 Created
Location: https://{subdomain}.zendesk.com/api/v2/tickets/{id}.json

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