Authentication OAuth - Client Credentials (Server-to-Server)
Description
Recommended for unattended server-to-server automation. No interactive user login or refresh token is required. The OAuth client must be configured as a Confidential client in Zendesk. [API reference]
Instructions
Use OAuth - Client Credentials (Server-to-Server) for unattended applications such as ETL packages, scheduled jobs, services, data pipelines, and other server-side integrations.
Recommended for unattended automation:
This authentication method does not require an interactive user login
and does not use a refresh token.
When the access token expires, ZappySys automatically requests a new
access token using the same Client ID and Client Secret.
- Sign in to Zendesk as an administrator.
- Go to Admin Center > Apps and integrations > APIs > Zendesk API.
- Open the OAuth Clients section and create an OAuth client.
- Configure the OAuth client as a Confidential client.
- Enter a unique Client ID.
- Copy the generated Client Secret and store it securely.
- Configure the permissions/scopes required by your integration.
- In the ZappySys connection, enter your Zendesk Sub Domain, Client ID, Client Secret, and desired Permissions.
- Click Test Connection.
Security:
Client Credentials should only be used in trusted server-side environments
where the Client Secret can be stored securely.
Do not expose the Client Secret in browser-side or client-side applications.
The access token is associated with the Zendesk user linked to the OAuth client
and inherits that user's permissions. For automated integrations, consider
using a dedicated Zendesk service account with only the permissions required
by the integration.
No Redirect URL, browser login, authorization code, or refresh token is required for this authentication method.
Parameters
| Parameter | Required | Default value | Options | ||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Name:
Label: Sub Domain (e.g. mycompany) |
YES | ||||||||||||||||||||||||||||
|
Name:
Label: OAuth Client ID |
YES | ||||||||||||||||||||||||||||
|
Name:
Label: OAuth Client Secret |
YES | ||||||||||||||||||||||||||||
|
Name:
Label: Permissions Select the OAuth permissions required by your integration. |
YES |
read write
|
|
||||||||||||||||||||||||||
|
Name:
Label: RetryMode |
RetryWhenStatusCodeMatch
|
|
|||||||||||||||||||||||||||
|
Name:
Label: RetryStatusCodeList |
429
|
||||||||||||||||||||||||||||
|
Name:
Label: RetryCountMax |
5
|
||||||||||||||||||||||||||||
|
Name:
Label: RetryMultiplyWaitTime |
True
|