Beam Help
Get help now

How-to · Zoho DESK

How to retrieve time tracking settings in Zoho Desk

Fetch current time tracking configuration and rules for your account.

Retrieving time tracking settings in Zoho Desk is straightforward via a single GET request to the /api/v1/timetracking/settings endpoint, provided your client is authenticated and your organisation ID is correctly configured.


Why this matters


When building integrations or automations around Zoho Desk's time tracking feature, you often need to inspect the current configuration before making changes — for example, before deciding whether to create, update, or delete settings. Fetching the settings first gives you a reliable baseline and helps avoid overwriting values unintentionally. This is also a useful diagnostic step when troubleshooting unexpected time tracking behaviour in your helpdesk.


Step-by-step


Step 1. Ensure your Zoho Desk connection is initialised with a valid access token and organisation ID. The ZohoDeskClient requires your API domain, a current access token, and the orgid associated with your Desk portal. If the orgid is not yet stored, the client can auto-discover it by calling the organisations endpoint and persisting the first result. [3]


Step 2. Confirm your access token is fresh before making the call. Our integration layer checks whether the token is within 120 seconds of expiry and proactively refreshes it using the stored refreshtoken, updating the database record with the new accesstoken and tokenexpiresat values. This prevents mid-request 401 errors. [4]


Step 3. Instantiate your ZohoDeskApi object using the authenticated ZohoDeskClient, then call the gettimetrack_settings method. This issues a GET request to /api/v1/timetracking/settings. An optional query-parameter dictionary (p) can be passed if you need to filter or scope the response, but it is not required for a basic fetch. [1]


# Example usage
settings = api.get_time_track_settings(p={})
print(settings)

Step 4. Inspect the response dictionary returned by the call. The data will reflect the current time tracking configuration for your Zoho Desk organisation. If you need to modify these settings afterwards, use PATCH /api/v1/timetracking/settings via updatetimetrack_settings(data, p), passing only the fields you wish to change. [2]


Step 5. If you need to start from scratch, note that the API also exposes POST /api/v1/timetracking/settings to create a fresh configuration and DELETE /api/v1/timetracking/settings to remove the existing one entirely — so the GET call fits naturally into a read-before-write pattern. [7][5]


Common pitfalls


  • Missing orgid: Zoho Desk requires the organisation ID to be sent with every API request. If deskorgid is blank in your connection record, the client will attempt to discover it automatically, but this adds a round-trip. Always persist the orgid after the first successful call to avoid repeated lookups. [3]
  • Stale access token: If token refresh logic is not in place, calls will fail with a 401. Make sure your client implements a tokenrefresher callback that fetches the latest refreshtoken from storage and exchanges it for a new access_token. [3][4]
  • Confusing GET with DELETE: The same path (/api/v1/timetracking/settings) is used for GET, POST, PATCH, and DELETE operations. Double-check the HTTP method before executing — accidentally calling deletetimetrack_settings will remove your configuration. [5][1]

What to check


  • Authentication is valid: Verify that accesstoken is present in your connection record and that tokenexpires_at is in the future before making the request. [4]
  • orgid is populated: Confirm that deskorgid is stored and non-empty in your zohoconnections table so the Desk client can attach it to the request headers. [3]
  • Response contains expected keys: After calling gettimetrack_settings, check that the returned dictionary is not an error object — a successful response should contain your portal's time tracking configuration data rather than an error key. [1]

---


*Beam Help is an independent expert support resource for Zoho products and is not official Zoho support.*

Sources cited

  1. [1] GET /api/v1/timetracking/settings
  2. [2] PATCH /api/v1/timetracking/settings
  3. [3] server.py: get_zoho_api
  4. [4] server.py: get_zoho_connection
  5. [5] DELETE /api/v1/timetracking/settings
  6. [6] zoho_oauth.py
  7. [7] POST /api/v1/timetracking/settings
  8. [8] run_api_tests.py
Get Time Tracking Settings | Beam Help