Beam Help
Get help now

Error code · Zoho DESK

Zoho Desk API 403 SCOPE_MISMATCH for Ticket Search — Fix

The 403 SCOPE_MISMATCH for Ticket Search means the access token you sent does not include the Desk API scope required to call the Ticket Search endpoint; Zoho rejects the request for authorization reasons. This usually happens after a scope change, a token refresh that lost scopes, or when an app was never granted the Desk search/ticket scopes [3][4].


What it means

Zoho’s authorization layer checks the OAuth scopes attached to the bearer token against the API endpoint you call. The Ticket Search endpoint requires specific Desk search/ticket scopes; if the token lacks those scopes, the API returns 403 SCOPE_MISMATCH rather than a data or syntax error [3]. The error is an authorization failure tied to OAuth scope claims, not to COQL or query syntax.


Common causes

  • Your OAuth client/token was created or refreshed without the Desk search/ticket scopes being requested or approved [3].
  • The user or admin revoked the app’s permission or removed the required scopes after initial consent [3][4].
  • You refreshed/obtained an access token using a different grant flow (or different client) that doesn’t request the same scopes [4].
  • Using a long-lived cached token issued before you added the search/ticket scope to the client; the old token never had the new scope [3].

How to fix it

  1. Confirm required scopes: check which Desk scopes the Ticket Search endpoint requires in Zoho Desk API docs or your integration notes, then list the scopes your app must request.
  2. Update the OAuth request: add the required Desk search/ticket scopes to your authorization URL or scope parameter in the token request.
  3. Re-consent as a user/admin: open the authorization URL so the user (or org admin if admin consent is required) re-grants the updated scope set. For org-level access, sign in as an admin via Zoho Accounts > Authorized Applications.
  4. Generate a fresh access token: after consent, exchange the authorization code (or use the refresh flow that requests scopes) to get a new access token and verify its scopes. Do not reuse the old token.
  5. Test the call: retry the Ticket Search request with the new token and confirm the 403 goes away. Log the token’s scope claim for future debugging.

When to escalate

If re-requesting scopes and getting a new token does not resolve the 403, open a support ticket with Zoho Desk. Include your client ID, the exact scope list you requested, the time of the failing request, and the full API endpoint and headers (redact secrets); Zoho support can check org-level consent and scope mappings [3][4].

Originally asked in the Zoho community. See the original question →

Sources cited

  1. [1] What's wrong with this COQL?
  2. [2] Update sidebar widget when different ticket is opened
  3. [3] Kaizen 264 - Using zoho-crm Skill to Write Functions
  4. [4] Allow Multiple usage units to items while adding them to sales/purchase transactions
  5. [5] Undo/redo when composing Mail
  6. [6] How to prepare a balance sheet for a company that has no operations yet?
  7. [7] Clone a deal using Function
  8. [8] Basic API Help
Zoho Desk API 403 SCOPE_MISMATCH Error | Beam Help