> ## 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: Roles Update Roles

> Change the names, parent roles or settings of several Zoho CRM roles at once. Includes SDK V2 examples, input constraints, response fields, and Deepline cost.

Change the names, parent roles or settings of several Zoho CRM roles at once.

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

## 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_roles_update_roles',
  {
    "roles": [
      {
        "id": "id_123"
      }
    ]
  },
);

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

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute zoho_crm_roles_update_roles --input '{
  "roles": [
    {
      "id": "id_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": {
    "roles": [
      {
        "code": "SUCCESS",
        "details": {
          "id": "id_123"
        },
        "message": "Example message",
        "status": "success"
      }
    ]
  }
}
```

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

## Input reference

Request body for updating multiple roles

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.roles` | `array` | Yes | — | Array of role objects to update Maximum items: 100. |

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

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Request body for updating multiple roles",
    "properties": {
      "roles": {
        "type": "array",
        "description": "Array of role objects to update",
        "maxItems": 100,
        "items": {
          "type": "object",
          "description": "Role object with updated values",
          "properties": {
            "id": {
              "type": "string",
              "description": "Unique identifier of the role to update",
              "maxLength": 19
            },
            "reporting_to": {
              "type": "object",
              "description": "Parent role information",
              "properties": {
                "id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Unique identifier of the parent role",
                  "maxLength": 19
                }
              },
              "additionalProperties": false
            },
            "forecast_manager": {
              "type": "object",
              "description": "Forecast manager information",
              "properties": {
                "id": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Unique identifier of the forecast manager",
                  "maxLength": 19
                },
                "name": {
                  "type": [
                    "string",
                    "null"
                  ],
                  "description": "Display name of the forecast manager",
                  "maxLength": 255
                }
              },
              "additionalProperties": false
            },
            "share_with_peers": {
              "type": "boolean",
              "description": "Whether this role can share data with peer roles"
            },
            "description": {
              "type": [
                "string",
                "null"
              ],
              "description": "Detailed description of the role",
              "maxLength": 250
            },
            "name": {
              "type": "string",
              "description": "Display name of the role",
              "maxLength": 200
            }
          },
          "required": [
            "id"
          ],
          "additionalProperties": false
        }
      }
    },
    "required": [
      "roles"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Response for successful roles update |
| `result.data.roles` | `array` | Yes | — | Array of update results Maximum items: 100. |
| `result.data.roles[].code` | `"SUCCESS"` | Yes | — | Operation result code Allowed: `SUCCESS`. |
| `result.data.roles[].details` | `object` | Yes | — | Additional details about the operation |
| `result.data.roles[].details.id` | `string` | Yes | — | Unique identifier of the updated role Maximum length: 19. |
| `result.data.roles[].message` | `string` | Yes | — | Human readable success message Maximum length: 100. |
| `result.data.roles[].status` | `"success"` | Yes | — | Operation status Allowed: `success`. |
| `result.meta` | `object` | No | — | Additional response metadata (status, paging). |

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

  ### Output JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Standard tool result payload.",
    "properties": {
      "data": {
        "type": "object",
        "description": "Response for successful roles update",
        "properties": {
          "roles": {
            "type": "array",
            "description": "Array of update results",
            "maxItems": 100,
            "items": {
              "type": "object",
              "description": "Individual update result",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "Operation result code",
                  "enum": [
                    "SUCCESS"
                  ]
                },
                "details": {
                  "type": "object",
                  "description": "Additional details about the operation",
                  "properties": {
                    "id": {
                      "type": "string",
                      "description": "Unique identifier of the updated role",
                      "maxLength": 19
                    }
                  },
                  "required": [
                    "id"
                  ],
                  "additionalProperties": false
                },
                "message": {
                  "type": "string",
                  "description": "Human readable success message",
                  "maxLength": 100
                },
                "status": {
                  "type": "string",
                  "description": "Operation status",
                  "enum": [
                    "success"
                  ]
                }
              },
              "required": [
                "code",
                "details",
                "message",
                "status"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "roles"
        ],
        "additionalProperties": false
      },
      "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](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.