> ## 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: Portal Users Single Invite User

> Invite one Zoho CRM record, such as a contact, to a portal as a user. Includes SDK V2 guidance, input constraints, response fields, and Deepline credit cost.

Invite one Zoho CRM record, such as a contact, to a portal as a user.

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

## 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_portal_users_single_invite_user',
  {
    "module": "example",
    "recordId": "record_123",
    "user_type_id": "user_type_123",
    "type": "reinvite"
  },
);

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

### CLI

```bash theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
deepline tools execute zoho_crm_portal_users_single_invite_user --input '{
  "module": "example",
  "recordId": "record_123",
  "user_type_id": "user_type_123",
  "type": "reinvite"
}' --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": {
    "portal_invite": [
      {
        "code": "SUCCESS",
        "details": {
          "record_id": "record_123"
        }
      }
    ]
  }
}
```

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

## Input reference

Send invitations to portal users for a specific module.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `payload.module` | `string` | Yes | — | The CRM module name for portal invitation Maximum length: 255. |
| `payload.recordId` | `string` | Yes | — | The unique identifier of the record Maximum length: 255. |
| `payload.language` | `"" \| "it_IT" \| "ru_RU" \| "pl_PL" \| "tr_TR" \| "hi_IN" \| "pt_BR" \| "th_TH" \| "fr_FR" \| "ja_JP" \| "in_ID" \| "cs_CZ" \| "de_DE" \| "hu_HU" \| "zh_TW" \| "es_ES" \| "nl_NL" \| "sv_SE" \| "da_DK" \| "bg_BG" \| "vi_VN" \| "iw_IL" \| "hr_HR" \| "en_GB" \| "ko_KR" \| "en_US" \| "zh_CN" \| "ar_EG" \| "pt_PT"` | No | — | Preferred language for the invitation Allowed: \`\`, `it_IT`, `ru_RU`, `pl_PL`, `tr_TR`, `hi_IN`, `pt_BR`, `th_TH`, `fr_FR`, `ja_JP`, `in_ID`, `cs_CZ`, `de_DE`, `hu_HU`, `zh_TW`, `es_ES`, `nl_NL`, `sv_SE`, `da_DK`, `bg_BG`, `vi_VN`, `iw_IL`, `hr_HR`, `en_GB`, `ko_KR`, `en_US`, `zh_CN`, `ar_EG`, `pt_PT`. |
| `payload.user_type_id` | `string` | Yes | — | User type identifier Maximum length: 255. |
| `payload.type` | `"reinvite" \| "invite"` | Yes | — | Invitation type Allowed: `reinvite`, `invite`. |

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

  ### Input JSON Schema

  ```json theme={"languages":{"custom":["/languages/deepline-prompt.json"]}}
  {
    "type": "object",
    "description": "Send invitations to portal users for a specific module.",
    "properties": {
      "module": {
        "type": "string",
        "description": "The CRM module name for portal invitation",
        "maxLength": 255
      },
      "recordId": {
        "type": "string",
        "description": "The unique identifier of the record",
        "maxLength": 255
      },
      "language": {
        "type": "string",
        "description": "Preferred language for the invitation",
        "enum": [
          "",
          "it_IT",
          "ru_RU",
          "pl_PL",
          "tr_TR",
          "hi_IN",
          "pt_BR",
          "th_TH",
          "fr_FR",
          "ja_JP",
          "in_ID",
          "cs_CZ",
          "de_DE",
          "hu_HU",
          "zh_TW",
          "es_ES",
          "nl_NL",
          "sv_SE",
          "da_DK",
          "bg_BG",
          "vi_VN",
          "iw_IL",
          "hr_HR",
          "en_GB",
          "ko_KR",
          "en_US",
          "zh_CN",
          "ar_EG",
          "pt_PT"
        ]
      },
      "user_type_id": {
        "type": "string",
        "description": "User type identifier",
        "maxLength": 255
      },
      "type": {
        "type": "string",
        "description": "Invitation type",
        "enum": [
          "reinvite",
          "invite"
        ]
      }
    },
    "required": [
      "module",
      "recordId",
      "user_type_id",
      "type"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

Standard tool result payload.

| Name | Type | Required | Default | Details |
| - | - | - | - | - |
| `result.data` | `object` | Yes | — | Response for portal user invitation requests |
| `result.data.portal_invite` | `array` | Yes | — | List of portal invitation responses Maximum items: 100. |
| `result.data.portal_invite[].code` | `"SUCCESS"` | Yes | — | Status code indicating invitation was scheduled Allowed: `SUCCESS`. |
| `result.data.portal_invite[].details` | `object` | Yes | — | Additional details about the scheduled invitation |
| `result.data.portal_invite[].details.record_id` | `string` | Yes | — | Record id of portal user Maximum length: 255. |
| `result.data.portal_invite[].message` | `string` | No | — | Success message Maximum length: 1000. |
| `result.data.portal_invite[].status` | `"success"` | No | — | Status of the response 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 portal user invitation requests",
        "properties": {
          "portal_invite": {
            "type": "array",
            "description": "List of portal invitation responses",
            "maxItems": 100,
            "items": {
              "type": "object",
              "description": "Portal invitation response object",
              "properties": {
                "code": {
                  "type": "string",
                  "description": "Status code indicating invitation was scheduled",
                  "enum": [
                    "SUCCESS"
                  ]
                },
                "details": {
                  "type": "object",
                  "description": "Additional details about the scheduled invitation",
                  "properties": {
                    "record_id": {
                      "type": "string",
                      "description": "Record id of portal user",
                      "maxLength": 255
                    }
                  },
                  "required": [
                    "record_id"
                  ],
                  "additionalProperties": false
                },
                "message": {
                  "type": "string",
                  "description": "Success message",
                  "maxLength": 1000
                },
                "status": {
                  "type": "string",
                  "description": "Status of the response",
                  "enum": [
                    "success"
                  ]
                }
              },
              "required": [
                "code",
                "details"
              ],
              "additionalProperties": false
            }
          }
        },
        "required": [
          "portal_invite"
        ],
        "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.