Zendesk Sunshine
This source syncs data from the Zendesk Sunshine API, which Zendesk now calls the Legacy Custom Objects API. It reads the custom object types, records, and relationships that live under the /api/sunshine/ endpoints.
Zendesk removed legacy custom objects on July 27, 2026. The legacy APIs, the admin interface, and legacy object records are no longer available unless your account has a one-time extension from Zendesk. See Zendesk's removal announcement.
This connector only reads the legacy API. It can't read the current custom objects, which use a different data model and incompatible endpoints. Migrating your data to the new custom objects experience ends what this source can sync.
Supported streams
This source syncs the following streams:
| Stream | Sync mode | Description |
|---|---|---|
limits | Full refresh | Your account's legacy custom object limits and current usage. |
object_types | Full refresh | The legacy object types defined in your account, including each type's schema. |
object_records | Incremental | The records of each legacy object type. |
object_type_policies | Full refresh | The read and write permissions for each legacy object type. |
relationship_types | Full refresh | The relationship types defined in your account. |
relationship_records | Full refresh | The relationship records for each relationship type. |
Four of these streams depend on another stream to know what to request:
object_recordsandobject_type_policiesiterate over every type returned byobject_types.relationship_recordsiterates over every type returned byrelationship_types.
If your account has no legacy object types or relationship types, these streams sync no records even though the sync succeeds.
object_records is the only incremental stream. It uses updated_at as its cursor and only requests records updated after your configured start date. The other streams re-read everything on each sync, so your start date doesn't affect them.
Data type mapping
| Integration Type | Airbyte Type | Notes |
|---|---|---|
string | string | |
number | number | |
array | array | |
object | object |
Performance considerations
The connector is restricted by Zendesk API rate limits. The connector automatically retries requests that receive a 429 Too Many Requests response using the Retry-After header. Under normal usage, you should not encounter rate limit issues. If you do, create an issue.
Because object_records, object_type_policies, and relationship_records make at least one request per type, sync duration grows with the number of legacy object and relationship types in your account, not just the number of records.
Prerequisites
- A Zendesk account with legacy custom objects still enabled. Legacy custom objects are an Enterprise plan feature, and Zendesk only left them enabled for accounts that used them before September 2023. You can't turn them on now. See Zendesk's getting started with legacy custom objects.
- Your Zendesk subdomain (the part before
.zendesk.comin your Zendesk URL). - A start date for incremental syncs, in the format
YYYY-MM-DDT00:00:00Z. - One of the following authentication methods:
- OAuth2.0 (recommended for Airbyte Cloud): Client ID, Client Secret, and authorization through Airbyte's OAuth flow.
- API Token (recommended for Airbyte Open Source): Your Zendesk email address and an API token.
- OAuth2.0 (Legacy): A manually generated OAuth access token.
Setup guide
Authentication
This connector supports three authentication methods:
OAuth2.0 (recommended for Airbyte Cloud)
When you set up the connector in Airbyte Cloud, you'll be redirected to Zendesk to authorize the connection. Airbyte requests the read scope. This method uses refresh tokens to automatically maintain access without requiring you to manually regenerate tokens.
Zendesk uses rotating refresh tokens, meaning each time the connector refreshes its access token, it receives a new refresh token and the previous one is invalidated. The connector handles this automatically. Airbyte requests access tokens with a 48-hour lifetime and refreshes them only after they expire.
If a sync fails because the refresh token is invalid, re-authenticate the source in Airbyte to get a new token pair.
API Token (recommended for Airbyte Open Source)
To use API token authentication:
- In Zendesk, go to Admin Center > Apps and integrations > APIs > Zendesk API.
- Enable token access if it isn't already enabled.
- Click Add API token, give it a description, and click Save.
- Copy the token value. Zendesk only displays it once.
- In Airbyte, enter your Zendesk email address and the API token.
For more information, see Zendesk's API token documentation.
OAuth2.0 (Legacy)
This method uses a manually generated OAuth access token. It's provided for backward compatibility with existing connections. For new connections, use the OAuth2.0 method instead, which handles token refresh automatically.
To generate a legacy access token, follow Zendesk's OAuth documentation.
IP allow list
If you use Airbyte Cloud and your organization restricts access to specific IPs, add the Airbyte Cloud IP addresses to your allow list.
Reference
Config fields reference
Changelog
Expand to review
| Version | Date | Pull Request | Subject |
|---|---|---|---|
| 0.4.18 | 2026-08-11 | 83815 | Persist OAuth token expiry on initial authentication so the first sync no longer refreshes and rotates away the single-use refresh token |
| 0.4.17 | 2026-08-11 | 84171 | Update dependencies |
| 0.4.16 | 2026-08-04 | 83672 | Update dependencies |
| 0.4.15 | 2026-07-28 | 83184 | Update dependencies |
| 0.4.14 | 2026-07-21 | 82657 | Update dependencies |
| 0.4.13 | 2026-07-14 | 82071 | Update dependencies |
| 0.4.12 | 2026-06-30 | 81325 | Update dependencies |
| 0.4.11 | 2026-06-23 | 80707 | Update dependencies |
| 0.4.10 | 2026-06-16 | 80099 | Update dependencies |
| 0.4.9 | 2026-06-09 | 79571 | Update dependencies |
| 0.4.8 | 2026-06-02 | 79055 | Update dependencies |
| 0.4.7 | 2026-04-28 | 77479 | Update dependencies |
| 0.4.6 | 2026-04-21 | 76833 | Update dependencies |
| 0.4.5 | 2026-03-31 | 75875 | Update dependencies |
| 0.4.4 | 2026-03-17 | 74393 | Migrate to scopes object array format |
| 0.4.3 | 2026-03-17 | 75115 | Update dependencies |
| 0.4.2 | 2026-02-24 | 73539 | Update dependencies |
| 0.4.1 | 2026-02-10 | 72608 | Update dependencies |
| 0.4.0 | 2026-02-03 | 71856 | Add OAuth2.0 with refresh token support; Upgrade CDK version to 7.8.1 |
| 0.3.41 | 2026-01-20 | 72044 | Update dependencies |
| 0.3.40 | 2026-01-14 | 71709 | Update dependencies |
| 0.3.39 | 2025-12-18 | 70704 | Update dependencies |
| 0.3.38 | 2025-11-25 | 70071 | Update dependencies |
| 0.3.37 | 2025-11-18 | 69511 | Update dependencies |
| 0.3.36 | 2025-10-29 | 68965 | Update dependencies |
| 0.3.35 | 2025-10-21 | 68429 | Update dependencies |
| 0.3.34 | 2025-10-14 | 68014 | Update dependencies |
| 0.3.33 | 2025-10-07 | 67239 | Update dependencies |
| 0.3.32 | 2025-09-30 | 66852 | Update dependencies |
| 0.3.31 | 2025-09-24 | 66471 | Update dependencies |
| 0.3.30 | 2025-09-09 | 65735 | Update dependencies |
| 0.3.29 | 2025-08-24 | 65484 | Update dependencies |
| 0.3.28 | 2025-08-10 | 64838 | Update dependencies |
| 0.3.27 | 2025-08-02 | 64368 | Update dependencies |
| 0.3.26 | 2025-07-26 | 64065 | Update dependencies |
| 0.3.25 | 2025-07-19 | 63620 | Update dependencies |
| 0.3.24 | 2025-07-12 | 63245 | Update dependencies |
| 0.3.23 | 2025-07-05 | 62671 | Update dependencies |
| 0.3.22 | 2025-06-28 | 62257 | Update dependencies |
| 0.3.21 | 2025-06-21 | 61754 | Update dependencies |
| 0.3.20 | 2025-06-15 | 61210 | Update dependencies |
| 0.3.19 | 2025-05-24 | 59966 | Update dependencies |
| 0.3.18 | 2025-05-04 | 59562 | Update dependencies |
| 0.3.17 | 2025-04-26 | 58944 | Update dependencies |
| 0.3.16 | 2025-04-19 | 58533 | Update dependencies |
| 0.3.15 | 2025-04-13 | 58038 | Update dependencies |
| 0.3.14 | 2025-04-05 | 57377 | Update dependencies |
| 0.3.13 | 2025-03-29 | 56820 | Update dependencies |
| 0.3.12 | 2025-03-22 | 56337 | Update dependencies |
| 0.3.11 | 2025-03-09 | 55668 | Update dependencies |
| 0.3.10 | 2025-03-01 | 55165 | Update dependencies |
| 0.3.9 | 2025-02-23 | 54636 | Update dependencies |
| 0.3.8 | 2025-02-15 | 54112 | Update dependencies |
| 0.3.7 | 2025-02-08 | 53603 | Update dependencies |
| 0.3.6 | 2025-02-01 | 52554 | Update dependencies |
| 0.3.5 | 2025-01-18 | 51990 | Update dependencies |
| 0.3.4 | 2025-01-11 | 51421 | Update dependencies |
| 0.3.3 | 2024-12-28 | 50380 | Update dependencies |
| 0.3.2 | 2024-12-14 | 49753 | Update dependencies |
| 0.3.1 | 2024-12-12 | 49415 | Update dependencies |
| 0.3.0 | 2024-10-31 | 47327 | Migrate to Manifest-only |
| 0.2.26 | 2024-10-29 | 47802 | Update dependencies |
| 0.2.25 | 2024-10-28 | 47066 | Update dependencies |
| 0.2.24 | 2024-10-12 | 46784 | Update dependencies |
| 0.2.23 | 2024-10-05 | 46486 | Update dependencies |
| 0.2.22 | 2024-09-28 | 46102 | Update dependencies |
| 0.2.21 | 2024-09-21 | 45769 | Update dependencies |
| 0.2.20 | 2024-09-14 | 45546 | Update dependencies |
| 0.2.19 | 2024-09-07 | 45298 | Update dependencies |
| 0.2.18 | 2024-08-31 | 45008 | Update dependencies |
| 0.2.17 | 2024-08-24 | 44720 | Update dependencies |
| 0.2.16 | 2024-08-17 | 44219 | Update dependencies |
| 0.2.15 | 2024-08-10 | 43502 | Update dependencies |
| 0.2.14 | 2024-08-03 | 43246 | Update dependencies |
| 0.2.13 | 2024-07-27 | 42604 | Update dependencies |
| 0.2.12 | 2024-07-20 | 42371 | Update dependencies |
| 0.2.11 | 2024-07-13 | 41880 | Update dependencies |
| 0.2.10 | 2024-07-10 | 41496 | Update dependencies |
| 0.2.9 | 2024-07-09 | 41205 | Update dependencies |
| 0.2.8 | 2024-07-06 | 40850 | Update dependencies |
| 0.2.7 | 2024-06-25 | 40443 | Update dependencies |
| 0.2.6 | 2024-06-22 | 39956 | Update dependencies |
| 0.2.5 | 2024-06-04 | 39058 | [autopull] Upgrade base image to v1.2.1 |
| 0.2.4 | 2024-04-19 | 37302 | Updating to 0.80.0 CDK |
| 0.2.3 | 2024-04-18 | 37302 | Manage dependencies with Poetry. |
| 0.2.2 | 2024-04-15 | 37302 | Base image migration: remove Dockerfile and use the python-connector-base image |
| 0.2.1 | 2024-04-12 | 37302 | schema descriptions |
| 0.2.0 | 2023-08-22 | 29310 | Migrate Python CDK to Low Code |
| 0.1.2 | 2023-08-15 | 7976 | Fix schemas and tests |
| 0.1.1 | 2021-11-15 | 7976 | Add oauth2.0 support |
| 0.1.0 | 2021-07-08 | 4359 | Initial Release |