Skip to content
Talk to an Engineer Dashboard

Zendesk

Connect to Zendesk. Manage customer support tickets, users, organizations, and help desk operations

Connect to Zendesk. Manage customer support tickets, users, organizations, and help desk operations

Zendesk logo

Supports authentication: OAuth 2.0

Register your Scalekit environment with the Zendesk connector so Scalekit handles the authentication flow and token lifecycle for you. The connection name you create will be used to identify and invoke the connection programmatically. You’ll need your OAuth client credentials from your Zendesk Admin Center.

  1. Set up auth redirects

    • In Scalekit dashboard, go to Agent Auth β†’ Create Connection. Find Zendesk and click Create. Copy the redirect URI. It looks like https://<SCALEKIT_ENVIRONMENT_URL>/sso/v1/oauth/<CONNECTION_ID>/callback.

      Configure Zendesk Connection with redirect URI
    • In your Zendesk Admin Center, go to Apps and integrations β†’ APIs β†’ Zendesk API β†’ OAuth Clients and click Add OAuth Client.

    • Fill in a client name, set Client Kind to Confidential, paste the copied URI into the Redirect URLs field, and click Save.

  2. Get client credentials

    After saving, open the OAuth client record:

    • Client ID β€” listed under Unique Identifier
    • Client Secret β€” displayed at the bottom of the page after saving
  3. Add credentials in Scalekit

    • In Scalekit dashboard, go to Agent Auth β†’ Connections and open the connection you created.

    • Enter your credentials:

      • Client ID (from your Zendesk OAuth client)
      • Client Secret (from your Zendesk OAuth client)
      Adding credentials for Zendesk in Scalekit dashboard
    • Click Save.

Connect a user’s Zendesk account and make API calls on their behalf β€” Scalekit handles OAuth and token management automatically.

zendesk_usage.py
import scalekit.client, os
from dotenv import load_dotenv
load_dotenv()
connection_name = "zendesk" # get your connection name from connection configurations
identifier = "user_123" # your unique user identifier
# Get your credentials from app.scalekit.com β†’ Developers β†’ Settings β†’ API Credentials
try:
scalekit_client = scalekit.client.ScalekitClient(
client_id=os.getenv("SCALEKIT_CLIENT_ID"),
client_secret=os.getenv("SCALEKIT_CLIENT_SECRET"),
env_url=os.getenv("SCALEKIT_ENV_URL"),
)
actions = scalekit_client.actions
print("βœ“ Scalekit client initialized")
except Exception as e:
print(f"βœ— Failed to initialize Scalekit client: {e}")
exit(1)
# Authenticate the user
try:
link_response = actions.get_authorization_link(
connection_name=connection_name,
identifier=identifier
)
# present this link to your user for authorization, or click it yourself for testing
print(f"βœ“ Authorization link generated successfully")
print("πŸ”— Authorize Zendesk:", link_response.link)
input("Press Enter after authorizing...")
except Exception as e:
print(f"βœ— Failed to get authorization link: {e}")
exit(1)
# Make a request via Scalekit proxy
try:
result = actions.request(
connection_name=connection_name,
identifier=identifier,
path="/api/v2/users/me",
method="GET"
)
print(f"βœ“ API request successful")
print(result)
except Exception as e:
print(f"βœ— API request failed: {e}")
exit(1)