> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Zoho CRM: README

> Delete a custom layout. Zoho CRM Layouts Delete Layout reference includes SDK V2 and CLI requests, input constraints, response fields, and Deepline cost.

Delete a custom layout.

<Info>
  Tool ID: `zoho_crm_layouts_delete_layout`
</Info>

## Run this action

This action has conditional or dynamic input fields that cannot be represented by a reliable static example.

Inspect the live contract before executing it:

```bash theme={null}
deepline tools get zoho_crm_layouts_delete_layout --json
```

## Example response

The static output schema is not detailed enough to generate a reliable example. Use `deepline tools get zoho_crm_layouts_delete_layout --json` for the complete live contract.

## Input reference

Deletes a custom layout from a module in Zoho CRM. When deleting a layout that has associated records, you must specify a `transfer_to` layout ID to transfer those records. If the layout has an associated pipeline, you must also provide `pipeline` and `stage` parameters. The `transfer_to` parameter is only optional when the layout is deactivated and has no records associated with it. Note: The standard layout cannot be deleted.

| Name                  | Type     | Required | Default | Details                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| --------------------- | -------- | -------- | ------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `payload.id`          | `string` | Yes      | —       | Unique identifier of the layout. Must be a valid 64-bit integer represented as a string. Can be obtained from the Get Layouts API. Format: `int64`. Minimum length: 1. Maximum length: 19. Pattern: `^[0-9]&#123;1,19&#125;$`.                                                                                                                                                                                                                                                                                                                                         |
| `payload.module`      | `string` | Yes      | —       | Specify the API name of the required module. Supports both standard modules (Leads, Accounts, Contacts, Deals, Campaigns, Tasks, Cases, Events, Calls, Solutions, Products, Vendors, Price\_Books, Quotes, Sales\_Orders, Purchase\_Orders, Invoices, Appointments, Services) and custom modules. Module API names are case-insensitive, can contain alphanumeric characters and underscores, must not contain spaces, and have a maximum length of 50 characters. Use the GET - Modules Metadata API to retrieve all See the live schema for the complete constraint. |
| `payload.transfer_to` | `string` | No       | —       | The ID of the layout to which records associated with the layout being deleted should be transferred. This parameter is conditionally mandatory - it is required when the layout has records associated with it. It is only optional when the layout is deactivated and has no records associated. The target layout must be an active layout; transferring to a deactivated layout is not allowed. Format: `int64`. Minimum length: 1. Maximum length: 19. Pattern: `^[0-9]&#123;1,19&#125;$`.                                                                        |
| `payload.pipeline`    | `string` | No       | —       | The ID of the pipeline to transfer records to. This parameter is conditionally mandatory - it must be provided along with the `stage` parameter when the layout being deleted has an associated pipeline. Required for modules like Deals that support pipeline stages. Format: `int64`. Minimum length: 1. Maximum length: 19. Pattern: `^[0-9]&#123;1,19&#125;$`.                                                                                                                                                                                                    |
| `payload.stage`       | `string` | No       | —       | The ID of the stage within the pipeline to transfer records to. This parameter is conditionally mandatory - it must be provided along with the `pipeline` parameter when the layout being deleted has an associated pipeline. The stage must be a valid stage within the specified pipeline. Format: `int64`. Minimum length: 1. Maximum length: 19. Pattern: `^[0-9]&#123;1,19&#125;$`.                                                                                                                                                                               |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "Deletes a custom layout from a module in Zoho CRM. When deleting a layout that has associated records, you must specify a `transfer_to` layout ID to transfer those records. If the layout has an associated pipeline, you must also provide `pipeline` and `stage` parameters. The `transfer_to` parameter is only optional when the layout is deactivated and has no records associated with it. Note: The standard layout cannot be deleted.",
    "properties": {
      "id": {
        "type": "string",
        "description": "Unique identifier of the layout. Must be a valid 64-bit integer represented as a string. Can be obtained from the Get Layouts API.",
        "minLength": 1,
        "maxLength": 19,
        "pattern": "^[0-9]{1,19}$",
        "format": "int64"
      },
      "module": {
        "type": "string",
        "description": "Specify the API name of the required module. Supports both standard modules (Leads, Accounts, Contacts, Deals, Campaigns, Tasks, Cases, Events, Calls, Solutions, Products, Vendors, Price_Books, Quotes, Sales_Orders, Purchase_Orders, Invoices, Appointments, Services) and custom modules. Module API names are case-insensitive, can contain alphanumeric characters and underscores, must not contain spaces, and have a maximum length of 50 characters. Use the GET - Modules Metadata API to retrieve all available module API names.",
        "minLength": 1,
        "maxLength": 50,
        "pattern": "^[A-Za-z0-9_]+$"
      },
      "transfer_to": {
        "type": "string",
        "description": "The ID of the layout to which records associated with the layout being deleted should be transferred. This parameter is conditionally mandatory - it is required when the layout has records associated with it. It is only optional when the layout is deactivated and has no records associated. The target layout must be an active layout; transferring to a deactivated layout is not allowed.",
        "minLength": 1,
        "maxLength": 19,
        "pattern": "^[0-9]{1,19}$",
        "format": "int64"
      },
      "pipeline": {
        "type": "string",
        "description": "The ID of the pipeline to transfer records to. This parameter is conditionally mandatory - it must be provided along with the `stage` parameter when the layout being deleted has an associated pipeline. Required for modules like Deals that support pipeline stages.",
        "minLength": 1,
        "maxLength": 19,
        "pattern": "^[0-9]{1,19}$",
        "format": "int64"
      },
      "stage": {
        "type": "string",
        "description": "The ID of the stage within the pipeline to transfer records to. This parameter is conditionally mandatory - it must be provided along with the `pipeline` parameter when the layout being deleted has an associated pipeline. The stage must be a valid stage within the specified pipeline.",
        "minLength": 1,
        "maxLength": 19,
        "pattern": "^[0-9]{1,19}$",
        "format": "int64"
      }
    },
    "required": [
      "id",
      "module"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name          | Type      | Required | Default | Details                                        |
| ------------- | --------- | -------- | ------- | ---------------------------------------------- |
| `result.data` | `unknown` | Yes      | —       | Provider response payload.                     |
| `result.meta` | `object`  | No       | —       | Additional response metadata (status, paging). |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "description": "Provider response payload."
      },
      "meta": {
        "type": "object",
        "description": "Additional response metadata (status, paging).",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [SDK V2 quickstart](/docs/sdk-v2/quickstart)
* [SDK reference](/docs/sdk-v2/sdk-reference)
* [Run tools across a CSV](/docs/sdk-v2/batch-csv)
