HTTP extraction from Zendesk
Use the following settings to configure the connection and HTTP extraction for a Zendesk system.
Disclaimer
Any references to third-party applications in this documentation are provided solely for informational purposes. Such references do not constitute any contractual commitment, representation, or warranty of any kind. The information is provided “as is,” and no guarantee is made as to the accuracy, completeness, or currentness of information relating to third-party applications.
Connection
REST-API base URL
The typical base URL for Zendesk REST APIs follows this format.
https://{subdomain}.zendesk.com
Key points:
Replace <subdomain> with your company instance name.
Example
https://yourcompany.zendesk.com
Test-connection resources
The simplest endpoint to test connectivity:
GET /api/v2/users.json (requires authentication)
Supported authentication methods
OAuth 2.0 (client credentials)
Requires client ID, client secret, and scopes.
Tip
In the Zendesk Admin Center, enable OAuth for OAuth clients and set Client kind to Confidential. Confidential clients are capable of securely storing a client_secret. The client_credentials flow is only permitted for confidential clients. If the client is set to Confidential, you can use the client_credentials grant type when making your server-to-server POST request to the /oauth/tokens endpoint.
Bearer token
Tip
In the Zendesk Admin Center, configure an OAuth client that issues the bearer token once you have successfully completed one of the OAuth 2.0 flows (authorization code, implicit, or client credentials).
Basic Auth
Format: <base64_encoded(email/token:password)>
Permissions or scopes
Scopes define access to specific resources.
Examples
Resource | Endpoint(s) | Scope(s) |
|---|---|---|
Tickets | /api/v2/tickets.json | read or write |
Users | /api/v2/users.json | read or write |
Organizations | /api/v2/organizations.json | read |
Extraction
Zendesk API resource endpoints
Note that each sample response structure is simplified to show the main fields typically returned by Zendesk. Actual responses may include more nested objects and links.
Resource type | Endpoint | Method | Sample response structure |
|---|---|---|---|
Tickets | /api/v2/tickets.json | GET | {"tickets":[{"id":123,"subject":"Issue","status":"open","priority":"high","created_at":"","updated_at":""}]}
|
Users | /api/v2/users.json | GET | {"users":[{"id":456,"name":"John Doe","email":"john@example.com","role":"agent"}]}
|
Organizations | /api/v2/organizations.json | GET | {"organizations":[{"id":789,"name":"Acme Corp","created_at":"","updated_at":""}]}
|
Pagination
Type: Offset-based
Parameters: page, per_page
Limit: 100 items per page; max 10,000 records (after that, 400 error).
Limitations and known issues
Rate limits
700 requests per minute per account (varies by plan).
Check X-Rate-Limit headers in API response. For more information on rate limits, visit the Zendesk developers website.
Data freshness
Data is near real-time, but large exports may require incremental APIs.
Known bugs or API instabilities
Offset pagination beyond 10,000 records returns 400 bad request.
Workaround: Use cursor-based pagination or incremental export API.