Deleting a layout section in Zoho Desk is done via a targeted DELETE API call that removes a specific section from an existing layout without touching the layout itself.
Why this matters
When you customise ticket or contact forms in Zoho Desk, layouts are divided into named sections that group related fields. Over time, sections become redundant — for example, after a product line is retired or a department is restructured. Removing stale sections keeps forms clean and reduces agent confusion. This operation is distinct from deleting the entire layout, so you can surgically tidy up without starting from scratch.
Step-by-step
Step 1. Confirm your OAuth token carries the correct Zoho Desk scopes before making any settings change. You will need at minimum Desk.settings.DELETE (and ideally Desk.settings.ALL) included in your authorised scope set, otherwise the API will reject the request with a permissions error. [5]
Step 2. Identify the two IDs you need: the layoutId of the parent layout that owns the section, and the sectionId of the specific section you want to remove. You can retrieve these by first calling the layouts list endpoint and then inspecting the sections within the target layout. Store both values — you cannot proceed without them. [1]
Step 3. Send a DELETE request to the Zoho Desk API using the following endpoint pattern:
DELETE /api/v1/layouts/{layoutId}/sections/{sectionId}
Replace {layoutId} and {sectionId} with the actual IDs you collected in Step 2. [1]
Step 4. If you are using a Python client, the call maps to the deletelayoutsection method. Pass the layout ID and section ID as positional string arguments; the optional p parameter accepts any additional query parameters your integration may require:
client.delete_layout_section(layoutId="your_layout_id", sectionId="your_section_id")
A successful response confirms the section has been permanently removed from that layout. [1]
Step 5. If you need to remove the entire layout rather than just one section, that is a separate operation using DELETE /api/v1/layouts/{layoutId}. Be aware this is flagged as a HIGH risk, permanent action — use it only when you are certain the whole layout is no longer needed. [3][4]
---
> Note from Beam Help: We are independent expert support for Zoho — not official Zoho support. Always test destructive API calls in a sandbox or staging organisation before running them against production data.
---
Common pitfalls
- Confusing Desk and CRM endpoints. Zoho CRM has its own layout deletion endpoint at
DELETE /settings/layouts/{lid}which accepts amoduleparameter. [2] This is entirely separate from the Zoho Desk endpoint. Sending a Desk section deletion request to the CRM base URL (or vice versa) will fail silently or return a 404. - Missing the section ID. The endpoint requires *both*
layoutIdandsectionId. Omitting the section ID will route your request to the layout-level delete operation instead, which removes the entire layout — a much more destructive outcome. [1][3] - Insufficient OAuth scope. If your token was minted without
Desk.settings.DELETE, the request will be rejected. Re-authorise with the fullDesk.settings.ALLscope to avoid piecemeal permission issues. [5] - Irreversibility. There is no undo endpoint. Once the section is deleted, any fields that existed only within that section may need to be re-added manually to another section. Confirm the section is truly unused before proceeding. [4]
What to check
- Verify the section is gone by fetching the layout again after deletion and confirming the
sectionIdno longer appears in the sections array. [1] - Check dependent layout rules — if any layout rules referenced fields inside the deleted section, those rules may now be broken or inactive. Review them via the layout rules endpoint. [6]
- Confirm agent-facing forms in your Zoho Desk portal reflect the change, ensuring no blank or error-state sections are displayed to support agents after the deletion. [3]