Deleting time tracking settings in Zoho Desk is accomplished via a single DELETE API call to the time tracking settings endpoint — no request body is required beyond optional query parameters.
Why this matters
If your support team has configured time tracking rules that are no longer relevant — for example, after a billing model change or a departmental restructure — you may need to wipe those settings entirely rather than simply updating them. Knowing the correct endpoint and required OAuth scope prevents wasted debugging time and accidental permission errors. This is especially useful for developers automating Zoho Desk configuration management through scripts or CI pipelines.
Step-by-step
Step 1. Confirm your OAuth token includes the correct Zoho Desk scope before making any settings-related API call. The scope you need is Desk.settings.DELETE (or the broader Desk.settings.ALL). Without this scope present in your token, the request will be rejected at the authorization layer. [2]
Step 2. Ensure your client is initialised with a valid access token and the correct orgId for your Zoho Desk organisation. If the orgId is missing or stale, the API layer cannot route the request to the right portal. You can retrieve your organisation ID by calling the organisations list endpoint and reading the id field from the first result. [7]
Step 3. Issue a DELETE request to the following endpoint:
DELETE /api/v1/timetracking/settings
No JSON body is needed. You may pass optional query parameters via the p dictionary if your integration layer supports them. [1]
Step 4. If you are using the Python wrapper that wraps the Zoho Desk client, call the method as shown below:
response = api.delete_time_track_settings(p=None)
Pass a dictionary to p only if you need to supply query-string parameters; otherwise None is acceptable. [1]
Step 5. Inspect the HTTP response status code. A successful deletion will return a 2xx status. If you receive a 4xx error, revisit your OAuth scopes (Step 1) and your orgId configuration (Step 2). If you receive a 5xx error, the issue is on the Zoho Desk server side and may be transient — retry with exponential back-off.
Step 6. If you only want to modify specific time tracking settings rather than remove them entirely, use PATCH /api/v1/timetracking/settings with a data payload instead. This is the update operation and accepts both a data body and optional query parameters p. [5]
Common pitfalls
- Missing scope: The most frequent cause of a
403 Forbiddenresponse is an OAuth token that was generated withoutDesk.settings.DELETE. Re-authorise the OAuth flow and explicitly include this scope (orDesk.settings.ALL) in your scope string. [2][3] - Wrong or missing
orgId: Zoho Desk is multi-organisation aware. If theorgIdheader is absent or incorrect, the API cannot identify which portal's settings to delete. Always auto-discover and persist theorgIdfrom the organisations endpoint before making settings calls. [7] - Confusing DELETE with PATCH: The
DELETEcall removes the time tracking settings configuration, whilePATCH /api/v1/timetracking/settingsupdates it. Make sure you are calling the right verb for your intent. [1][5]
What to check
- Scope verification: Confirm that
Desk.settings.DELETEorDesk.settings.ALLappears in the active OAuth token's scope list before executing the call. [2] orgIdpresence: Verify that your Zoho Desk client is initialised with a non-emptyorgIdstring, retrieved from the organisations endpoint if not already stored. [7]- Response status: After the
DELETEcall, assert that the HTTP status code is in the2xxrange to confirm the settings were successfully removed. [1]
---
*Beam Help provides independent expert support for Zoho products. We are not official Zoho support — for platform-level issues, please also contact Zoho directly.*