Back

Zendesk API Essential Guide

Aug 1, 20246 minute read

What type of API does Zendesk provide?

Zendesk offers multiple types of APIs, with REST being the primary type.

REST API

  • Zendesk's main API is a REST API. This allows developers to interact with Zendesk products and data using standard HTTP methods like GET, POST, PUT, DELETE.

  • The REST API covers functionality across Zendesk's product suite including Support, Guide, Chat, Talk, and more.

GraphQL API

  • Zendesk also offers a GraphQL API for some of its products like Sell CRM.

  • The GraphQL API allows more flexible querying of data compared to REST.

Other API Types

  • While REST is the primary API type, Zendesk also has some other specialized APIs:

    • Webhooks for receiving event notifications
    • Integration Services API for building integrations
    • Embeddable APIs for web widgets and SDKs

Key Considerations

  • The REST API is the most comprehensive and widely used API for Zendesk.

  • GraphQL is available for certain use cases but is not as broadly implemented as REST.

  • Zendesk does not appear to offer a SOAP API, focusing instead on more modern REST and GraphQL approaches.

In summary, while Zendesk offers multiple API types for different purposes, its core API offering is REST-based, with GraphQL available for certain products and use cases. The REST API provides the most comprehensive access to Zendesk's functionality across its product suite.

Does the Zendesk API have webhooks?

Yes, the official Zendesk API does have webhooks. Here are the key points about Zendesk webhooks:

Webhook Support

  1. Zendesk supports webhooks that allow you to subscribe to certain activities in Zendesk Support.

  2. When the subscribed activity occurs, Zendesk sends an HTTP request to the webhook's configured URL.

Event Types

You can subscribe to various types of events using Zendesk webhooks, including:

  1. Article events
  2. Community post events
  3. Organization events
  4. User events
  5. Agent availability events
  6. Omnichannel routing configuration events

Additionally, for ticket-related events, you can connect webhooks to triggers or automations.

Key Features

  1. Webhooks can be created and managed using the Zendesk Admin Center or the Webhooks API.

  2. You can specify authentication methods for the webhook requests, including API key, basic, or bearer authentication.

  3. Zendesk provides a webhook activity log that captures all activity and the status of each invocation for the last seven days.

  4. Webhooks support custom headers for HTTPS endpoints.

  5. Zendesk implements a retry logic and circuit breaker mechanism for webhook deliveries.

Event Payload

Webhook requests for Zendesk events use a JSON payload schema with shared properties. The payload includes:

  1. Event type
  2. Account ID
  3. Event ID
  4. Timestamp
  5. Event version
  6. Subject
  7. Detail object (with event-specific information)
  8. Event object (with current and previous state information)

Best Practices

  1. Use webhook signatures to detect duplicate invocations for a single event.
  2. Ensure actions resulting from your webhooks are idempotent to handle potential duplicate deliveries.
  3. Don't include sensitive information in custom headers; use supported authentication methods instead.

In summary, Zendesk's webhook support provides a flexible way to integrate Zendesk activities with external systems, allowing you to build automated workflows and keep other systems updated based on events in Zendesk Support.

Rate Limits and other limitations

Here are the key points about the API rate limits for Zendesk:

General Rate Limits

  • The rate limits depend on your Zendesk plan type and the specific API endpoints being used.

  • For Zendesk Suite plans, the general limits are:

    • Team: 200 requests/minute
    • Growth: 400 requests/minute
    • Professional: 400 requests/minute
    • Enterprise: 700 requests/minute
    • Enterprise Plus: 2500 requests/minute
  • For Zendesk Support plans, the limits are:

    • Essential: 10 requests/minute
    • Team: 200 requests/minute
    • Professional: 400 requests/minute
    • Enterprise: 700 requests/minute
  • The High Volume API add-on increases the limit to 2500 requests/minute for qualifying plans.

Endpoint-Specific Limits

  • Some endpoints have their own specific rate limits, for example:
    • Update Ticket: 30 updates per 10 minutes per user per ticket
    • Incremental Exports: 10 requests/minute (30 with High Volume add-on)
    • Update User: 5 requests/minute per user
    • Create Organization Membership: 5 requests/minute

Other Limits

  • Zendesk apps have an additional limit of 100 requests/minute per user per app.

  • There is an account-wide limit of 100,000 requests/minute across all sources.

  • The Zendesk Sell API has a limit of 36,000 requests/hour (10 requests/token/second).

Best Practices

  • Monitor your API usage using the dashboard in Admin Center.

  • Use the rate limit headers returned in API responses to track remaining requests.

  • Implement error handling for 429 (Too Many Requests) responses.

  • Use bulk/batch endpoints where possible to reduce total number of calls.

  • Regulate your request rate to stay under the limits.

The specific limits can vary by endpoint and plan, so it's important to check the documentation for the most up-to-date information on rate limits for your particular use case.

Latest API Version

The most recent version of the Zendesk API is not explicitly stated in the search results. However, based on the information provided, we can infer some details about recent updates and versions:

Key points to consider:

  1. The most recent changelog entry is from February 21, 2024, which mentions the Zendesk SDK for Unity exiting the Early Access Program.

  2. The Support SDK for Android has a recent version 5.1.2.

  3. The Support SDK for iOS has a recent version 7.0.0.

  4. The Chat SDK for Android has a version 3.3.7.

  5. The Zendesk Apps framework SDK has a version 2.0, with potential minor releases like 2.1 or 2.2.

Recent API updates:

  • February 21, 2024: Zendesk SDK for Unity became generally available.
  • October 4, 2023: Access Logs API was introduced.
  • July 6, 2023: Messaging Metadata capability was added.
  • April 25, 2023: Agent Availability APIs were introduced.

Best practices:

  1. Always check the official Zendesk developer documentation for the most up-to-date information on API versions and changes.

  2. When integrating Zendesk SDKs, ensure you're using the latest compatible versions for your specific platform (Android, iOS, Unity, etc.).

  3. Keep an eye on the changelog for any breaking changes or new features that might affect your integration.

  4. Consider subscribing to Zendesk's developer updates or following their developer community for real-time information on API changes and new releases.

While the search results don't provide a single, definitive answer about the most recent version of the Zendesk API as a whole, they do show that Zendesk regularly updates its various SDKs and APIs. For the most accurate and current information, it's best to consult the official Zendesk developer documentation or contact Zendesk support directly.

How to get a Zendesk developer account and API Keys?

To get a developer account for Zendesk and create an API integration:

  1. Create a Zendesk Developer Account

    • Sign up for a free Zendesk trial account.
    • This trial account is valid for 14 days.
  2. Enable API Access

    • Go to the Admin Center by clicking the box icon in the top right corner.
    • Scroll down to "Zendesk API" in the "Apps and integrations" sidebar panel.
    • Under "Settings," enable Token Access.
  3. Generate an API Token

    • After enabling Token Access, click "Add API token".
    • Copy the generated token and store it securely.
  4. Implement Authentication For testing and development:

    • Use the API token for authentication.

    For production and customer-facing integrations:

    • Implement OAuth 2.0 authentication.
    • Create a Global OAuth Client (requires approval from Zendesk).
  5. Explore the API

    • Use the Zendesk API documentation to understand available endpoints and how to make requests.
  6. Develop Your Integration

    • Start building your integration using the Zendesk API.
    • Handle authentication, API rate limits, and error handling.
  7. Test Your Integration

    • Use your trial account to thoroughly test your integration.
  8. Publish Your Application (Optional)

    • Submit it for review to publish on the Zendesk Marketplace.

Key Points:

  • Zendesk offers various API types: RESTful, streaming, firehose, and event APIs.
  • Every Zendesk API call must be prefixed with the customer's subdomain.
  • Be aware of API rate limits.
  • For customer-facing integrations, always use OAuth instead of API tokens.

What can you do with the Zendesk API?

Based on the search results provided, here is a list of data models you can interact with using the Zendesk API, along with what is possible for each:

Ticketing

  • Work with tickets, users, and organizations
  • Manage ticket workflows
  • Interact with custom fields for tickets, users, and organizations
  • Access ticket field history and SLA policy history
  • Capture ticket deletions (via status field)

Help Center

  • Interact with articles

Live Chat

  • Access chat data (via separate Zendesk Chat connector)

Voice (Zendesk Talk)

  • Interact with call metrics, call legs, IVR menus, and other voice-related data
  • Only available if Zendesk Talk is integrated with your account

Custom Data

  • Work with custom fields for tickets, users, and organizations
  • Access a custom table for ticket custom fields (TICKET_CUSTOM_FIELD)
  • Access a custom table for ticket custom statuses (TICKET_CUSTOM_STATUS)
  • Note: Zendesk custom objects are not supported via the API

Omnichannel

  • Access features and functionality that span Zendesk channels

Apps

  • Build apps for Zendesk Support, Sell, and Chat

Webhooks

  • Register webhook endpoints for real-time data updates

Status

  • Get a list of active incidents and scheduled maintenance

Additional Data Models

  • Brands
  • Custom Roles
  • Forum Topics
  • Groups and Group Members
  • Schedules and Schedule Holidays
  • Organizations and Organization Memberships
  • Audit Logs (optional sync)

Limitations and Notes

  • Some data models may have limitations based on your Zendesk plan
  • Certain tables (like ORGANIZATION_MEMBERSHIP) are synced weekly or on-demand
  • API usage limits apply and can be configured
  • Some data models require specific permissions or feature enablement in Zendesk

This list covers the main data models available through the Zendesk API, but the exact capabilities may vary based on your Zendesk plan and specific setup.