> ## 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: Scoring Rules Get Scoring Rule By ID

> Get one Zoho CRM scoring rule by its ID, with its field and signal criteria and points. Includes inputs, outputs, SDK V2 examples, and Deepline cost.

Get one Zoho CRM scoring rule by its ID, with its field and signal criteria and points.

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

## 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_scoring_rules_get_scoring_rule_by_id',
  {
    "ruleId": "rule_123"
  },
);

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

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute zoho_crm_scoring_rules_get_scoring_rule_by_id --input '{
  "ruleId": "rule_123"
}' --json
```

## Example response

The SDK returns this shape at `result.toolResponse.raw`. The example values illustrate the response.

```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
{
  "data": {
    "scoring_rules": [
      {
        "module": {
          "api_name": "Example",
          "id": "id_123"
        },
        "name": "Example"
      }
    ]
  }
}
```

Use `deepline describe zoho_crm_scoring_rules_get_scoring_rule_by_id --json` for the latest machine-readable contract.

## Input reference

Returns the scoring rule details

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.ruleId` | `string` | Yes | — | Path parameter: ruleId Maximum length: 20. |

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

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Returns the scoring rule details",
    "properties": {
      "ruleId": {
        "type": "string",
        "description": "Path parameter: ruleId",
        "maxLength": 20
      }
    },
    "required": [
      "ruleId"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Scoring rule details |
| `result.data.scoring_rules` | `array` | No | — | Field: scoring\_rules Maximum items: 1. |
| `result.data.scoring_rules[].created_time` | `string` | No | — | Field: created\_time Maximum length: 255. |
| `result.data.scoring_rules[].custom_fields` | `array \| null` | No | — | Custom fields can be configured for scoring rule. These fields will hold the referred scores. Maximum items: 6. |
| `result.data.scoring_rules[].custom_fields[].id` | `string` | No | — | Custom field id Maximum length: 25. |
| `result.data.scoring_rules[].custom_fields[].field_label` | `string` | No | — | Name of the custom field (Required for POST) Maximum length: 100. |
| `result.data.scoring_rules[].custom_fields[].api_name` | `string` | No | — | Api name of the custom field Maximum length: 100. |
| `result.data.scoring_rules[].custom_fields[].reference_field` | `object` | No | — | Contains the API name of the referenced score field used in scoring rules. |
| `result.data.scoring_rules[].custom_fields[].reference_field.api_name` | `"Positive_Score" \| "Negative_Score" \| "Touch_Point_Positive_Score" \| "Touch_Point_Negative_Score" \| "Touch_Point_Score" \| "Score"` | No | — | api name of the referenced score field (Required for POST) Allowed: `Positive_Score`, `Negative_Score`, `Touch_Point_Positive_Score`, `Touch_Point_Negative_Score`, `Touch_Point_Score`, `Score`. |
| `result.data.scoring_rules[].custom_fields[].reference_field.id` | `string` | No | — | Reference field id Maximum length: 25. |
| `result.data.scoring_rules[].module` | `object` | Yes | — | Provides details of a module, including API name and module ID. |
| `result.data.scoring_rules[].module.api_name` | `string` | No | — | Api name of the module Maximum length: 255. |
| `result.data.scoring_rules[].module.id` | `string` | No | — | Module id Maximum length: 25. |
| `result.data.scoring_rules[].description` | `string \| null` | No | — | Rule configuration info can be added here. Maximum length: 500. |
| `result.data.scoring_rules[].active` | `boolean` | No | — | It defined the status (active or inactive) of the rule. |
| `result.data.scoring_rules[].created_by` | `object` | No | — | Nested schema for created\_by |
| `result.data.scoring_rules[].created_by.name` | `string` | No | — | Field: name Maximum length: 255. |
| `result.data.scoring_rules[].created_by.id` | `string` | No | — | Field: id Maximum length: 25. |
| `result.data.scoring_rules[].created_by.zuid` | `string` | No | — | Field: zuid Maximum length: 255. |
| `result.data.scoring_rules[].layout` | `object \| null` | No | — | Information about layout configuration, including display label, API name, and ID. |
| `result.data.scoring_rules[].layout.display_label` | `string` | No | — | layout display name Maximum length: 255. |
| `result.data.scoring_rules[].layout.api_name` | `string` | No | — | Layout api name Maximum length: 255. |
| `result.data.scoring_rules[].layout.id` | `string` | No | — | Layout id Maximum length: 25. |
| `result.data.scoring_rules[].modified_time` | `string \| null` | No | — | Field: modified\_time Maximum length: 255. |
| `result.data.scoring_rules[].name` | `string` | Yes | — | Scoring rule name (Required) (Unique) Maximum length: 25. |
| `result.data.scoring_rules[].modified_by` | `object \| null` | No | — | Nested schema for modified\_by |
| `result.data.scoring_rules[].modified_by.name` | `string` | No | — | Field: name Maximum length: 255. |
| `result.data.scoring_rules[].modified_by.id` | `string` | No | — | Field: id Maximum length: 25. |
| `result.data.scoring_rules[].modified_by.zuid` | `string` | No | — | Field: zuid Maximum length: 255. |
| `result.data.scoring_rules[].id` | `string` | No | — | Field: id Maximum length: 255. |
| `result.data.scoring_rules[].scoring_type` | `"manual_scoring" \| "zia_scoring"` | No | — | Type of the scoring rule Allowed: `manual_scoring`, `zia_scoring`. |
| `result.data.scoring_rules[].manual_scoring_rule` | `object \| null` | No | — | includes field\_rules and touch\_point\_rules of manual scoring rules |
| `result.data.scoring_rules[].manual_scoring_rule.field_rules` | `array` | No | — | Module field based score configuration can be added here Maximum items: 50. |
| `result.data.scoring_rules[].manual_scoring_rule.field_rules[].score` | `integer` | No | — | Points that should be added for the criteria (Required) Format: `int32`. |
| `result.data.scoring_rules[].manual_scoring_rule.field_rules[].id` | `string` | No | — | Field: id Maximum length: 255. |
| `result.data.scoring_rules[].manual_scoring_rule.field_rules[].criteria` | `object` | No | — | Field based criteria |
| `result.data.scoring_rules[].manual_scoring_rule.has_signal_rules` | `boolean` | No | — | If TP rules are available in a rule, it will be true in sandbox case |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules` | `array` | No | — | Module field based score configuration can be added here Maximum items: 50. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].group` | `object` | No | — | Channel (Related record) object |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].group.name` | `string` | No | — | channel name for which the touch point score are configured Maximum length: 100. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].group.display_value` | `string` | No | — | channel display label Maximum length: 100. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].rules` | `array` | No | — | score configurations in the mentioned channel Maximum items: 20. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].rules[].score` | `integer` | No | — | Points that should be added for the touch point (Required in POST) Format: `int32`. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].rules[].id` | `string` | No | — | Touch point rule primary key Maximum length: 25. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].rules[]._delete` | `null` | No | — | used to delete the TP rule |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].rules[].factors` | `array` | No | — | Touch point factor Maximum items: 1. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].rules[].factors[].name` | `string` | No | — | Touch point factor name Maximum length: 100. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].rules[].factors[].comparator` | `string` | No | — | Field: comparator - for field like factors Maximum length: 50. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].rules[].factors[].values` | `array` | No | — | condition value Maximum items: 2. |
| `result.data.scoring_rules[].manual_scoring_rule.touch_point_rules[].rules[].factors[].unit` | `integer \| null` | No | — | unit if days supported factors are configured Format: `int32`. |

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_scoring_rules_get_scoring_rule_by_id --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.