> ## 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: Workflow Rules Get Workflow Rules

> List the workflow rules in your Zoho CRM account, filtered by module or status. Includes SDK V2 examples, input constraints, response fields, and Deepline cost.

List the workflow rules in your Zoho CRM account, filtered by module or status.

> [!NOTE]
>
> Tool ID: `zoho_crm_workflow_rules_get_workflow_rules`

## Run this action

Use the TypeScript SDK for one call. Use `ctx.tools.execute(...)` inside a Play for durable calls, scheduled calls, or CSV processing.

```ts theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'zoho_crm_workflow_rules_get_workflow_rules',
  {
    "page": 1,
    "per_page": 200,
    "module": "example"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute zoho_crm_workflow_rules_get_workflow_rules --input '{
  "page": 1,
  "per_page": 200,
  "module": "example"
}' --json
```

## Example response

The static output schema lacks the details for a reliable example. Use `deepline describe zoho_crm_workflow_rules_get_workflow_rules --json` for the complete live contract.

## Input reference

To retrieve the list of Workflow rules

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.page` | `1` | No | — | To get the list of Workflow from a specific page Allowed: `1`. Format: `int32`. |
| `payload.per_page` | `200` | No | — | To fetch a limited number of Workflow rules per page Allowed: `200`. Format: `int32`. |
| `payload.module` | `string` | No | — | The module for which the rule counts should be provided. Format: `string`. |
| `payload.status_active` | `boolean` | No | — | To filter the Workflow rules based on whether they are active or inactive |
| `payload.execute_on` | `string` | No | — | To filter the Workflow rules based on the record action that triggers them Maximum length: 25. |
| `payload.sort_order` | `"asc"` | No | — | To sort the Workflow rules in ascending or descending order, based on the modified\_field value Allowed: `asc`. |
| `payload.sort_by` | `"modified_time"` | No | — | To sort the Workflow rules based on a specific field. Allowed: `modified_time`. |
| `payload.include_inner_details` | `boolean` | No | — | To include the inner details of the Workflow rules in the response |
| `payload.filter` | `"&#123;\"field\": &#123;\"api_name\": \"name\"&#125;" \| "\"comparator\": \"contains\"" \| "\"value\": \"WF Name\"&#125;"` | No | — | To filter the Workflow rules by their name Allowed: `&#123;"field": &#123;"api_name": "name"&#125;`, `"comparator": "contains"`, `"value": "WF Name"&#125;`. |

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

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "To retrieve the list of Workflow rules",
    "properties": {
      "page": {
        "type": "integer",
        "description": "To get the list of Workflow from a specific page",
        "enum": [
          1
        ],
        "format": "int32"
      },
      "per_page": {
        "type": "integer",
        "description": "To fetch a limited number of Workflow rules per page",
        "enum": [
          200
        ],
        "format": "int32"
      },
      "module": {
        "type": "string",
        "description": "The module for which the rule counts should be provided.",
        "format": "string"
      },
      "status_active": {
        "type": "boolean",
        "description": "To filter the Workflow rules based on whether they are active or inactive"
      },
      "execute_on": {
        "type": "string",
        "description": "To filter the Workflow rules based on the record action that triggers them",
        "maxLength": 25
      },
      "sort_order": {
        "type": "string",
        "description": "To sort the Workflow rules in ascending or descending order, based on the modified_field value",
        "enum": [
          "asc"
        ]
      },
      "sort_by": {
        "type": "string",
        "description": "To sort the Workflow rules based on a specific field.",
        "enum": [
          "modified_time"
        ]
      },
      "include_inner_details": {
        "type": "boolean",
        "description": "To include the inner details of the Workflow rules in the response"
      },
      "filter": {
        "type": "string",
        "description": "To filter the Workflow rules by their name",
        "enum": [
          "{\"field\": {\"api_name\": \"name\"}",
          "\"comparator\": \"contains\"",
          "\"value\": \"WF Name\"}"
        ]
      }
    },
    "required": [],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Single Workflow Rule Response Body. |
| `result.data.workflow_rules` | `array` | Yes | — | Field: workflow\_rules Maximum items: 200. |
| `result.data.workflow_rules[].created_time` | `string` | Yes | — | Field: created\_time Format: `date-time`. Maximum length: 255. |
| `result.data.workflow_rules[].execute_when` | `record` | Yes | — | — |
| `result.data.workflow_rules[].editable` | `boolean` | Yes | — | Field: editable |
| `result.data.workflow_rules[].module` | `object` | Yes | — | Specify the module/field to which the workflow rule applies |
| `result.data.workflow_rules[].module.api_name` | `string` | No | — | Specify the api name of the module/field Maximum length: 100. |
| `result.data.workflow_rules[].module.id` | `string` | No | — | Specify the unique id of the module/field Maximum length: 20. |
| `result.data.workflow_rules[].deprecated` | `boolean` | No | — | Field: deprecated |
| `result.data.workflow_rules[].deletable` | `boolean` | Yes | — | Field: deletable |
| `result.data.workflow_rules[].description` | `string \| null` | Yes | — | Field: description Maximum length: 255. |
| `result.data.workflow_rules[].source` | `string` | Yes | — | Field: source Maximum length: 255. |
| `result.data.workflow_rules[].created_by` | `object` | Yes | — | Field: created\_by |
| `result.data.workflow_rules[].created_by.name` | `string` | No | — | Name of the user who created the rule. Format: `string`. |
| `result.data.workflow_rules[].created_by.id` | `string` | No | — | Id of the user who created the rule. Format: `string`. |
| `result.data.workflow_rules[].last_executed_time` | `string \| null` | Yes | — | Field: last\_executed\_time Format: `date-time`. |
| `result.data.workflow_rules[].modified_time` | `string \| null` | Yes | — | Time Object Format: `date-time`. Maximum length: 255. |
| `result.data.workflow_rules[].name` | `string` | Yes | — | Field: name Maximum length: 255. |
| `result.data.workflow_rules[].modified_by` | `object` | Yes | — | Field: created\_by |
| `result.data.workflow_rules[].modified_by.name` | `string` | No | — | Name of the user who created the rule. Format: `string`. |
| `result.data.workflow_rules[].modified_by.id` | `string` | No | — | Id of the user who created the rule. Format: `string`. |
| `result.data.workflow_rules[].lock` | `object` | Yes | — | Details the lock status of the workflow, including information about who locked it, the message associated with the lock, and whether it is currently locked. |
| `result.data.workflow_rules[].lock.locked_by` | `record` | No | — | Field: locked\_by |
| `result.data.workflow_rules[].lock.message` | `string \| null` | No | — | A note or label to indicate the reason or context for locking the rule. Format: `string`. |
| `result.data.workflow_rules[].lock.status` | `boolean` | No | — | Field: status |
| `result.data.workflow_rules[].id` | `string` | Yes | — | Field: id Maximum length: 20. |
| `result.data.workflow_rules[].category` | `string` | No | — | Field: category Maximum length: 255. |
| `result.data.workflow_rules[].conditions` | `array` | No | — | An array of condition objects that define the criteria for executing the actions. (Required) Maximum items: 5. |
| `result.data.workflow_rules[].conditions[].sequence_number` | `integer` | Yes | — | Represents the execution order for the criteria. The index starts from 1. (Required) Format: `int32`. |
| `result.data.workflow_rules[].conditions[].instant_actions` | `object` | Yes | — | The list of Instant Actions to execute immediately when condition is met. Maximum 5 instant action |
| `result.data.workflow_rules[].conditions[].instant_actions.actions` | `array` | Yes | — | An array of action objects (Required) Maximum items: 50. |
| `result.data.workflow_rules[].conditions[].scheduled_actions` | `array \| null` | No | — | The list of Scheduled Actions to execute when condition is met Maximum items: 5. |
| `result.data.workflow_rules[].conditions[].scheduled_actions[].execute_after` | `object` | No | — | Specify when the scheduled actions should be executed |
| `result.data.workflow_rules[].conditions[].scheduled_actions[].execute_after.period` | `"business_hours" \| "hours" \| "business_days" \| "days" \| "minutes" \| "weeks" \| "months" \| "years"` | Yes | — | Specify the type of time interval (Required) Allowed: `business_hours`, `hours`, `business_days`, `days`, `minutes`, `weeks`, `months`, `years`. |
| `result.data.workflow_rules[].conditions[].scheduled_actions[].execute_after.unit` | `integer` | Yes | — | Specify the value of the time interval (Required) Format: `int32`. |
| `result.data.workflow_rules[].conditions[].scheduled_actions[].actions` | `array` | Yes | — | An array of action objects Maximum items: 10. |
| `result.data.workflow_rules[].conditions[].scheduled_actions[].id` | `string` | No | — | Unique Id of the scheduled action Maximum length: 20. |
| `result.data.workflow_rules[].conditions[].criteria_details` | `object` | Yes | — | Specify the conditions a record must meet for the workflow rule to trigger. Set this to null to apply the rule to all records in the module. |
| `result.data.workflow_rules[].conditions[].criteria_details.criteria` | `record` | No | — | The root criteria object. Can be a group or a single leaf condition |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria` | `object` | No | — | Specify conditions based on a related module's records. The relational\_criteria key is supported only in triggers where the workflow can be evaluated against records in a related module. Examples include Email triggers, Call triggers, social media triggers, Notes triggers, and Appointment module triggers. It is not applicable for purely time-based triggers or triggers restricted to the same module without related-record checks. |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.criteria` | `object \| null` | No | — | Specifies which records the rule should apply to. Set this to null to apply the rule to all records. |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.criteria.comparator` | `string` | Yes | — | Comparison operator. Maximum length: 50. |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.criteria.field` | `object` | Yes | — | Specify the module/field to which the workflow rule applies |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.criteria.field.api_name` | `string` | No | — | Specify the api name of the module/field Maximum length: 100. |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.criteria.field.id` | `string` | No | — | Specify the unique id of the module/field Maximum length: 20. |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.criteria.value` | `string` | Yes | — | The value to compare with. Use \$\{EMPTY} to check for empty fields. Maximum length: 50. |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.criteria.type` | `string` | No | — | Value Type Maximum length: 50. |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.criteria.group_operator` | `string` | Yes | — | Logical operator for combining conditions (e.g., and/or). Maximum length: 3. |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.criteria.group` | `array` | Yes | — | List of nested conditions or groups. Maximum items: 25. |
| `result.data.workflow_rules[].conditions[].criteria_details.relational_criteria.module_selection` | `"all" \| "specific" \| "unknown" \| null` | No | — | Specify the details of the related record to be evaluated. Allowed: `all`, `specific`, `unknown`, `null`. |

The table shows the first 50 fields. Expand the raw schema below for every field.

> [!NOTE]
>
> This output schema is too large for an inline display. Read the complete live contract with `deepline describe zoho_crm_workflow_rules_get_workflow_rules --json`.

## 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](https://deepline.com/docs/sdk-v2/quickstart.md)
* [SDK reference](https://deepline.com/docs/sdk-v2/sdk-reference.md)
* [Run tools across a CSV](https://deepline.com/docs/sdk-v2/batch-csv.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.