# Zoho Sign

> Electronic signatures. Send files and templates for signature, track, remind, extend and recall them, and download signed documents and completion certificates.

App · E-Signatures · 20 actions. Web page: https://docs.lodol.com/docs/integrations/zoho-sign

## Actions

### Create document

Upload a file as a draft document with one recipient (and optionally people who get a copy). Send it with 'Send document for signature'.

**Inputs**

- File (`file`, text, required): The file to sign: upload one, use a file from an earlier step, or paste an https link. PDF, Word, OpenDocument, Excel, RTF, text, HTML, JPG or PNG, up to 25 MB.
- Document name (`request_name`, text, required): The name recipients see.
- Recipient name (`recipient_name`, text, required): The recipient's full name.
- Recipient email (`recipient_email`, text, required): The recipient's email address.
- Recipient (`action_type`, text): Optional. What the recipient does (signs by default). One of: `SIGN` (Signs), `VIEW` (Receives a copy), `APPROVER` (Approves).
- Also send a copy to (`copy_to`, list): Optional. Email addresses that receive the signed document, after the recipient.
- Message (`notes`, text): Optional. A message sent to every recipient.
- Folder (`folder_id`, text): Optional. The folder to file the document in.
- Document type (`request_type_id`, text): Optional. The document type (category) to give the document.
- Days to sign (`expiration_days`, number): Optional. How many days the recipients have to act. From 1 to 365.
- Remind every (days) (`reminder_period`, number): Optional. Email the recipients a reminder this often. From 1 to 365.
- Sign in order (`sequential`, true/false): Optional. Recipients act one after another (on by default); turn off to send to everyone at once. Default: `true`.
- Verify recipient by email (`verify_recipient`, true/false): Optional. The recipient must enter a code Zoho emails them before signing. Default: `false`.
- Test mode (`testing`, true/false): Optional. Send as a test document, which uses no Zoho Sign credits. Zoho allows 50 a month on the Enterprise and API plans. Default: `false`.

**Outputs**: A Zoho Sign document (a signature request).

- `action_time` (number): When it was last acted on, in epoch milliseconds.
- `actions` (list): The recipients.
- `created_time` (number): When it was created, in epoch milliseconds.
- `description` (text): The document's description.
- `document_ids` (list): The files in the document.
- `email_reminders` (true/false): Whether Zoho sends reminders.
- `expiration_days` (number): Days it stays open for signing.
- `expire_by` (number): When it expires, in epoch milliseconds.
- `folder_id` (text): The folder's id.
- `folder_name` (text): The folder's name.
- `is_deleted` (true/false): Whether it is in the trash.
- `is_sequential` (true/false): Whether recipients act in order.
- `modified_time` (number): When it last changed, in epoch milliseconds.
- `notes` (text): The message sent to every recipient.
- `owner_email` (text): The sender's email address.
- `owner_first_name` (text): The sender's first name.
- `owner_id` (text): The sender's Zoho id.
- `owner_last_name` (text): The sender's last name.
- `reminder_period` (number): Days between reminders.
- `request_id` (text): The document's id.
- `request_name` (text): The document's name.
- `request_status` (text): draft, inprogress, completed, declined, recalled, expired and so on.
- `request_type_id` (text): The document type's id.
- `request_type_name` (text): The document type's name.
- `sign_percentage` (number): How much of the signing is done.
- `sign_submitted_time` (number): When it was sent, in epoch milliseconds.

**Example output**

```json
{
  "actions": [
    {
      "action_id": "2000000492185",
      "action_status": "NOACTION",
      "action_type": "SIGN",
      "recipient_email": "grace@example.com",
      "recipient_name": "Grace Hopper",
      "signing_order": 1,
      "verify_recipient": false
    }
  ],
  "created_time": 1790000000000,
  "document_ids": [
    {
      "document_id": "2000000492183",
      "document_name": "contract.pdf",
      "document_order": "0",
      "document_size": 13264,
      "total_pages": 1
    }
  ],
  "email_reminders": false,
  "expiration_days": 15,
  "is_sequential": true,
  "modified_time": 1790000000000,
  "notes": "",
  "owner_email": "ada@example.com",
  "owner_first_name": "Ada",
  "owner_last_name": "Lovelace",
  "request_id": "2000000492177",
  "request_name": "Lodol QA contract",
  "request_status": "draft",
  "request_type_name": "Others",
  "sign_percentage": 0
}
```

### Create document type

Create a document type (category) to give documents.

**Inputs**

- Name (`name`, text, required): The document type's name.
- Description (`description`, text): Optional. What the type is for.

**Outputs**: A Zoho Sign document type.

- `request_type_description` (text): The document type's description.
- `request_type_id` (text): The document type's id.
- `request_type_name` (text): The document type's name.

**Example output**

```json
{
  "request_type_description": "",
  "request_type_id": "2000000490101",
  "request_type_name": "Contracts"
}
```

### Create folder

Create a folder to file documents in.

**Inputs**

- Folder name (`folder_name`, text, required): The new folder's name.

**Outputs**: A Zoho Sign folder.

- `folder_id` (text): The folder's id.
- `folder_name` (text): The folder's name.

**Example output**

```json
{
  "folder_id": "2000000490001",
  "folder_name": "Contracts"
}
```

### Delete document

Move a document to the Zoho Sign trash.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.
- Recall it if it is out for signature (`recall_if_in_progress`, true/false): Optional. Needed to delete a document that is still out for signature. Default: `false`.
- Reason (`reason`, text): Optional. Why it is being recalled.

**Outputs**: Zoho Sign's confirmation.

- `action_time` (number): When it happened, in epoch milliseconds.
- `message` (text): Zoho Sign's message.
- `request_id` (text): The document's id.

**Example output**

```json
{
  "message": "Document deleted successfully",
  "request_id": "2000000492177"
}
```

### Download completion certificate

Download the certificate Zoho Sign issues once every recipient has completed a document.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.

**Outputs**: The downloaded file, kept in Lodol's file storage.

- `byte_size` (number): The file's size in bytes.
- `content_type` (text): application/pdf, or application/zip for several files.
- `document_ref` (text): The stored file's reference, for a later step's file input.
- `documents` (list): The stored files.
- `filename` (text): The file's name.
- `request_id` (text): The document's id.
- `url` (text): Where the stored file can be opened.

**Example output**

```json
{
  "byte_size": 13264,
  "content_type": "application/pdf",
  "document_ref": "doc_00000000000000000000000000000000",
  "documents": [
    {
      "content_type": "application/pdf",
      "document_ref": "doc_00000000000000000000000000000000",
      "filename": "contract.pdf",
      "size_bytes": 13264,
      "url": "/actions/core/serve-document/doc_00000000000000000000000000000000"
    }
  ],
  "filename": "contract.pdf",
  "request_id": "2000000492177",
  "url": "/actions/core/serve-document/doc_00000000000000000000000000000000"
}
```

### Download document

Download the document as a PDF (a ZIP when it holds several files), optionally with its completion certificate.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.
- Include completion certificate (`with_certificate`, true/false): Optional. Add the completion certificate. Default: `false`.
- Merge into one PDF (`merge`, true/false): Optional. Merge all signed files and the certificate into one PDF. Default: `false`.
- Password (`password`, text): Optional. The document's password, if it has one.

**Outputs**: The downloaded file, kept in Lodol's file storage.

- `byte_size` (number): The file's size in bytes.
- `content_type` (text): application/pdf, or application/zip for several files.
- `document_ref` (text): The stored file's reference, for a later step's file input.
- `documents` (list): The stored files.
- `filename` (text): The file's name.
- `request_id` (text): The document's id.
- `url` (text): Where the stored file can be opened.

**Example output**

```json
{
  "byte_size": 13264,
  "content_type": "application/pdf",
  "document_ref": "doc_00000000000000000000000000000000",
  "documents": [
    {
      "content_type": "application/pdf",
      "document_ref": "doc_00000000000000000000000000000000",
      "filename": "contract.pdf",
      "size_bytes": 13264,
      "url": "/actions/core/serve-document/doc_00000000000000000000000000000000"
    }
  ],
  "filename": "contract.pdf",
  "request_id": "2000000492177",
  "url": "/actions/core/serve-document/doc_00000000000000000000000000000000"
}
```

### Download one file

Download one file of a document as a PDF.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.
- File ID (`document_id`, text, required): The file's id (document_ids[].document_id), from 'Get document' or 'Create document'.

**Outputs**: The downloaded file, kept in Lodol's file storage.

- `byte_size` (number): The file's size in bytes.
- `content_type` (text): application/pdf, or application/zip for several files.
- `document_ref` (text): The stored file's reference, for a later step's file input.
- `documents` (list): The stored files.
- `filename` (text): The file's name.
- `request_id` (text): The document's id.
- `url` (text): Where the stored file can be opened.

**Example output**

```json
{
  "byte_size": 13264,
  "content_type": "application/pdf",
  "document_ref": "doc_00000000000000000000000000000000",
  "documents": [
    {
      "content_type": "application/pdf",
      "document_ref": "doc_00000000000000000000000000000000",
      "filename": "contract.pdf",
      "size_bytes": 13264,
      "url": "/actions/core/serve-document/doc_00000000000000000000000000000000"
    }
  ],
  "filename": "contract.pdf",
  "request_id": "2000000492177",
  "url": "/actions/core/serve-document/doc_00000000000000000000000000000000"
}
```

### Extend document expiry

Give the recipients of a sent document until a later date.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.
- New expiry date (`expire_by`, date, required): The new last day to sign; after today.

**Outputs**: Zoho Sign's confirmation.

- `expire_by` (text): The new expiry date (YYYY-MM-DD).
- `message` (text): Zoho Sign's message.
- `request_id` (text): The document's id.

**Example output**

```json
{
  "expire_by": "2026-12-31",
  "message": "Document validity has been extended",
  "request_id": "2000000492177"
}
```

### Get document

Get a document's status, files and recipients, with each recipient's progress.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.

**Outputs**: A Zoho Sign document (a signature request).

- `action_time` (number): When it was last acted on, in epoch milliseconds.
- `actions` (list): The recipients.
- `created_time` (number): When it was created, in epoch milliseconds.
- `description` (text): The document's description.
- `document_ids` (list): The files in the document.
- `email_reminders` (true/false): Whether Zoho sends reminders.
- `expiration_days` (number): Days it stays open for signing.
- `expire_by` (number): When it expires, in epoch milliseconds.
- `folder_id` (text): The folder's id.
- `folder_name` (text): The folder's name.
- `is_deleted` (true/false): Whether it is in the trash.
- `is_sequential` (true/false): Whether recipients act in order.
- `modified_time` (number): When it last changed, in epoch milliseconds.
- `notes` (text): The message sent to every recipient.
- `owner_email` (text): The sender's email address.
- `owner_first_name` (text): The sender's first name.
- `owner_id` (text): The sender's Zoho id.
- `owner_last_name` (text): The sender's last name.
- `reminder_period` (number): Days between reminders.
- `request_id` (text): The document's id.
- `request_name` (text): The document's name.
- `request_status` (text): draft, inprogress, completed, declined, recalled, expired and so on.
- `request_type_id` (text): The document type's id.
- `request_type_name` (text): The document type's name.
- `sign_percentage` (number): How much of the signing is done.
- `sign_submitted_time` (number): When it was sent, in epoch milliseconds.

**Example output**

```json
{
  "actions": [
    {
      "action_id": "2000000492185",
      "action_status": "NOACTION",
      "action_type": "SIGN",
      "recipient_email": "grace@example.com",
      "recipient_name": "Grace Hopper",
      "signing_order": 1,
      "verify_recipient": false
    }
  ],
  "created_time": 1790000000000,
  "document_ids": [
    {
      "document_id": "2000000492183",
      "document_name": "contract.pdf",
      "document_order": "0",
      "document_size": 13264,
      "total_pages": 1
    }
  ],
  "email_reminders": false,
  "expiration_days": 15,
  "is_sequential": true,
  "modified_time": 1790000000000,
  "notes": "",
  "owner_email": "ada@example.com",
  "owner_first_name": "Ada",
  "owner_last_name": "Lovelace",
  "request_id": "2000000492177",
  "request_name": "Lodol QA contract",
  "request_status": "draft",
  "request_type_name": "Others",
  "sign_percentage": 0
}
```

### Get filled-in fields

Get what each recipient entered in the document's fields, and every value by field label.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.

**Outputs**: What the recipients filled in.

- `actions` (list): The recipients.
- `request_id` (text): The document's id.
- `request_name` (text): The document's name.
- `values` (object): Each field's value, by field label (Zoho sends text).
- `zsdocumentid` (text): Zoho Sign's document number.

**Example output**

```json
{
  "actions": [
    {
      "action_type": "SIGN",
      "fields": [
        {
          "field_label": "Company",
          "field_value": "Lodol"
        }
      ],
      "recipient_email": "grace@example.com",
      "recipient_name": "Grace Hopper",
      "signed_time": "Oct 01 2026 10:00 UTC"
    }
  ],
  "request_id": "2000000492177",
  "request_name": "Lodol QA contract",
  "values": {
    "Company": "Lodol"
  },
  "zsdocumentid": "ZS-1"
}
```

### Get template

Get a template's recipients (roles) and prefill fields, whose labels are the keys for 'Send template'.

**Inputs**

- Template ID (`template_id`, text, required): The template's id, from 'List templates'.

**Outputs**: A Zoho Sign template.

- `actions` (list): The template recipients.
- `created_time` (number): When it was created, in epoch milliseconds.
- `description` (text): The template's description.
- `document_fields` (list): The prefill fields per file.
- `document_ids` (list): The files in the template.
- `email_reminders` (true/false): Whether Zoho sends reminders.
- `expiration_days` (number): Days a document from it stays open.
- `is_sequential` (true/false): Whether recipients act in order.
- `modified_time` (number): When it last changed, in epoch milliseconds.
- `notes` (text): The template's message to recipients.
- `owner_email` (text): The owner's email address.
- `reminder_period` (number): Days between reminders.
- `request_type_id` (text): The document type's id.
- `request_type_name` (text): The document type's name.
- `template_id` (text): The template's id.
- `template_name` (text): The template's name.

**Example output**

```json
{
  "actions": [
    {
      "action_id": "2000000493005",
      "action_type": "SIGN",
      "recipient_email": "",
      "recipient_name": "",
      "role": "Signer",
      "signing_order": 1
    }
  ],
  "document_fields": [],
  "document_ids": [
    {
      "document_id": "2000000493003",
      "document_name": "nda.pdf",
      "total_pages": 2
    }
  ],
  "expiration_days": 15,
  "is_sequential": true,
  "owner_email": "ada@example.com",
  "template_id": "2000000493001",
  "template_name": "NDA"
}
```

### List document types

List the document types (categories) documents can have.

**Inputs**: None.

**Outputs**: The account's document types.

- `count` (number): How many document types there are.
- `document_types` (list): The document types.

**Example output**

```json
{
  "count": 1,
  "document_types": [
    {
      "request_type_description": "",
      "request_type_id": "2000000490101",
      "request_type_name": "Others"
    }
  ]
}
```

### List documents

List the account's documents (signature requests), newest first, optionally only those with one status or matching a search.

**Inputs**

- Status (`status`, text): Optional. Only documents with this status. One of: `draft`, `inprogress` (In progress), `completed`, `declined`, `recalled`, `expired`, `expiring`, `onhold` (On hold), `archived`, `deleted`, `shredded`.
- Search in (`search_column`, text): Optional. Where to look for the search text. One of: `request_name` (Document name), `folder_name` (Folder name), `owner_full_name` (Sender name), `recipient_email` (Recipient email), `recipient_name` (Recipient name), `form_name` (Form name), `template_name` (Template name).
- Search for (`search_value`, text): Optional. Text to look for; searches document names unless 'Search in' says otherwise.
- Sort by (`sort_column`, text): Optional. Created date unless changed. One of: `created_time` (Created), `request_name` (Name), `folder_name` (Folder), `owner_full_name` (Sender), `recipient_email` (Recipient email), `form_name` (Form).
- Order (`sort_order`, text): Optional. Newest first unless changed. One of: `DESC` (Newest first), `ASC` (Oldest first).
- Start at (`start_index`, number): Optional. The position of the first result to return, from 1. At least 1.
- Page size (`row_count`, number): Optional. How many to return, 1 to 100 (default 25). From 1 to 100.

**Outputs**: A page of documents.

- `count` (number): How many documents this page holds.
- `documents` (list): The documents.
- `has_more` (true/false): Whether more documents follow.
- `start_index` (number): The position of this page's first document, from 1.
- `total_count` (number): How many documents match in total.

**Example output**

```json
{
  "count": 1,
  "documents": [
    {
      "actions": [
        {
          "action_id": "2000000492185",
          "action_status": "NOACTION",
          "action_type": "SIGN",
          "recipient_email": "grace@example.com",
          "recipient_name": "Grace Hopper",
          "signing_order": 1,
          "verify_recipient": false
        }
      ],
      "created_time": 1790000000000,
      "document_ids": [
        {
          "document_id": "2000000492183",
          "document_name": "contract.pdf",
          "document_order": "0",
          "document_size": 13264,
          "total_pages": 1
        }
      ],
      "email_reminders": false,
      "expiration_days": 15,
      "is_sequential": true,
      "modified_time": 1790000000000,
      "notes": "",
      "owner_email": "ada@example.com",
      "owner_first_name": "Ada",
      "owner_last_name": "Lovelace",
      "request_id": "2000000492177",
      "request_name": "Lodol QA contract",
      "request_status": "draft",
      "request_type_name": "Others",
      "sign_percentage": 0
    }
  ],
  "has_more": false,
  "start_index": 1,
  "total_count": 1
}
```

### List folders

List the account's folders.

**Inputs**: None.

**Outputs**: The account's folders.

- `count` (number): How many folders there are.
- `folders` (list): The folders.

**Example output**

```json
{
  "count": 1,
  "folders": [
    {
      "folder_id": "2000000490001",
      "folder_name": "Contracts"
    }
  ]
}
```

### List templates

List the account's templates, newest first.

**Inputs**

- Order (`sort_order`, text): Optional. Newest first unless changed. One of: `DESC` (Newest first), `ASC` (Oldest first).
- Start at (`start_index`, number): Optional. The position of the first result to return, from 1. At least 1.
- Page size (`row_count`, text): Optional. How many to return (default 25). One of: `10`, `25`, `50`, `100`.

**Outputs**: A page of templates.

- `count` (number): How many templates this page holds.
- `has_more` (true/false): Whether more templates follow.
- `start_index` (number): The position of this page's first template, from 1.
- `templates` (list): The templates.
- `total_count` (number): How many templates there are in total.

**Example output**

```json
{
  "count": 1,
  "has_more": false,
  "start_index": 1,
  "templates": [
    {
      "actions": [
        {
          "action_id": "2000000493005",
          "action_type": "SIGN",
          "recipient_email": "",
          "recipient_name": "",
          "role": "Signer",
          "signing_order": 1
        }
      ],
      "document_fields": [],
      "document_ids": [
        {
          "document_id": "2000000493003",
          "document_name": "nda.pdf",
          "total_pages": 2
        }
      ],
      "expiration_days": 15,
      "is_sequential": true,
      "owner_email": "ada@example.com",
      "template_id": "2000000493001",
      "template_name": "NDA"
    }
  ],
  "total_count": 1
}
```

### Recall document

Withdraw a sent document so its recipients can no longer sign it.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.

**Outputs**: Zoho Sign's confirmation.

- `action_time` (number): When it happened, in epoch milliseconds.
- `message` (text): Zoho Sign's message.
- `request_id` (text): The document's id.

**Example output**

```json
{
  "action_time": 1790000000000,
  "message": "Document has been recalled",
  "request_id": "2000000492177"
}
```

### Remind recipients

Email a reminder to the recipients who have not acted yet.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.

**Outputs**: Zoho Sign's confirmation.

- `action_time` (number): When it happened, in epoch milliseconds.
- `message` (text): Zoho Sign's message.
- `request_id` (text): The document's id.

**Example output**

```json
{
  "message": "Reminder has been sent",
  "request_id": "2000000492177"
}
```

### Send document for signature

Send a draft to its recipients, placing a signature field for each signer. Positions are in points from the page's top-left (an A4 page is 595 wide and 842 tall); further signers' fields go below the first. Uses 5 Zoho Sign credits unless in test mode.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.
- Place a signature field (`place_signature`, true/false): Optional. On by default. Turn off when the file already has Zoho Sign text tags marking where to sign. Default: `true`.
- Page (`page`, number): Optional. The page to sign on, from 1 (default 1). At least 1.
- From the left (`x`, number): Optional. The field's left edge in points (default 50). At least 0.
- From the top (`y`, number): Optional. The field's top edge in points (default 760, near the foot of an A4 page). At least 0.
- Width (`width`, number): Optional. In points (default 135). At least 10.
- Height (`height`, number): Optional. In points (default 19). At least 5.
- File ID (`document_id`, text): Optional. Which file to sign on when the document has several (document_ids[].document_id); the first by default.
- Test mode (`testing`, true/false): Optional. Send as a test document, which uses no Zoho Sign credits. Zoho allows 50 a month on the Enterprise and API plans. Default: `false`.

**Outputs**: A Zoho Sign document (a signature request).

- `action_time` (number): When it was last acted on, in epoch milliseconds.
- `actions` (list): The recipients.
- `created_time` (number): When it was created, in epoch milliseconds.
- `description` (text): The document's description.
- `document_ids` (list): The files in the document.
- `email_reminders` (true/false): Whether Zoho sends reminders.
- `expiration_days` (number): Days it stays open for signing.
- `expire_by` (number): When it expires, in epoch milliseconds.
- `folder_id` (text): The folder's id.
- `folder_name` (text): The folder's name.
- `is_deleted` (true/false): Whether it is in the trash.
- `is_sequential` (true/false): Whether recipients act in order.
- `modified_time` (number): When it last changed, in epoch milliseconds.
- `notes` (text): The message sent to every recipient.
- `owner_email` (text): The sender's email address.
- `owner_first_name` (text): The sender's first name.
- `owner_id` (text): The sender's Zoho id.
- `owner_last_name` (text): The sender's last name.
- `reminder_period` (number): Days between reminders.
- `request_id` (text): The document's id.
- `request_name` (text): The document's name.
- `request_status` (text): draft, inprogress, completed, declined, recalled, expired and so on.
- `request_type_id` (text): The document type's id.
- `request_type_name` (text): The document type's name.
- `sign_percentage` (number): How much of the signing is done.
- `sign_submitted_time` (number): When it was sent, in epoch milliseconds.

**Example output**

```json
{
  "actions": [
    {
      "action_id": "2000000492185",
      "action_status": "NOACTION",
      "action_type": "SIGN",
      "recipient_email": "grace@example.com",
      "recipient_name": "Grace Hopper",
      "signing_order": 1,
      "verify_recipient": false
    }
  ],
  "created_time": 1790000000000,
  "document_ids": [
    {
      "document_id": "2000000492183",
      "document_name": "contract.pdf",
      "document_order": "0",
      "document_size": 13264,
      "total_pages": 1
    }
  ],
  "email_reminders": false,
  "expiration_days": 15,
  "is_sequential": true,
  "modified_time": 1790000000000,
  "notes": "",
  "owner_email": "ada@example.com",
  "owner_first_name": "Ada",
  "owner_last_name": "Lovelace",
  "request_id": "2000000492177",
  "request_name": "Lodol QA contract",
  "request_status": "inprogress",
  "request_type_name": "Others",
  "sign_percentage": 0
}
```

### Send template

Create a document from a template and send it, or keep it as a draft. Recipients are filled in signing order; any left blank keep the recipient saved in the template. Sending uses 5 Zoho Sign credits unless in test mode.

**Inputs**

- Template ID (`template_id`, text, required): The template's id, from 'List templates'.
- Recipient emails (`recipient_emails`, list): Optional. One email per template recipient, in signing order.
- Recipient names (`recipient_names`, list): Optional. Their names, in the same order (the part before the @ otherwise).
- Document name (`request_name`, text): Optional. The template's name unless given.
- Field values (`field_values`, object): Optional. Prefill fields by label (see 'Get template'). Checkboxes take true or false; dates use the template's date format.
- Message (`notes`, text): Optional. A message sent to every recipient.
- Send now (`quick_send`, true/false): Optional. On by default; turn off to keep the document as a draft for 'Send document for signature'. Default: `true`.
- Test mode (`testing`, true/false): Optional. Send as a test document, which uses no Zoho Sign credits. Zoho allows 50 a month on the Enterprise and API plans. Default: `false`.

**Outputs**: A Zoho Sign document (a signature request).

- `action_time` (number): When it was last acted on, in epoch milliseconds.
- `actions` (list): The recipients.
- `created_time` (number): When it was created, in epoch milliseconds.
- `description` (text): The document's description.
- `document_ids` (list): The files in the document.
- `email_reminders` (true/false): Whether Zoho sends reminders.
- `expiration_days` (number): Days it stays open for signing.
- `expire_by` (number): When it expires, in epoch milliseconds.
- `folder_id` (text): The folder's id.
- `folder_name` (text): The folder's name.
- `is_deleted` (true/false): Whether it is in the trash.
- `is_sequential` (true/false): Whether recipients act in order.
- `modified_time` (number): When it last changed, in epoch milliseconds.
- `notes` (text): The message sent to every recipient.
- `owner_email` (text): The sender's email address.
- `owner_first_name` (text): The sender's first name.
- `owner_id` (text): The sender's Zoho id.
- `owner_last_name` (text): The sender's last name.
- `reminder_period` (number): Days between reminders.
- `request_id` (text): The document's id.
- `request_name` (text): The document's name.
- `request_status` (text): draft, inprogress, completed, declined, recalled, expired and so on.
- `request_type_id` (text): The document type's id.
- `request_type_name` (text): The document type's name.
- `sign_percentage` (number): How much of the signing is done.
- `sign_submitted_time` (number): When it was sent, in epoch milliseconds.

**Example output**

```json
{
  "actions": [
    {
      "action_id": "2000000492185",
      "action_status": "NOACTION",
      "action_type": "SIGN",
      "recipient_email": "grace@example.com",
      "recipient_name": "Grace Hopper",
      "signing_order": 1,
      "verify_recipient": false
    }
  ],
  "created_time": 1790000000000,
  "document_ids": [
    {
      "document_id": "2000000492183",
      "document_name": "contract.pdf",
      "document_order": "0",
      "document_size": 13264,
      "total_pages": 1
    }
  ],
  "email_reminders": false,
  "expiration_days": 15,
  "is_sequential": true,
  "modified_time": 1790000000000,
  "notes": "",
  "owner_email": "ada@example.com",
  "owner_first_name": "Ada",
  "owner_last_name": "Lovelace",
  "request_id": "2000000492177",
  "request_name": "Lodol QA contract",
  "request_status": "inprogress",
  "request_type_name": "Others",
  "sign_percentage": 0
}
```

### Update draft document

Change a draft's name, message, expiry, reminders, folder, type or signing order. Blank fields keep their current value.

**Inputs**

- Document ID (`request_id`, text, required): The document's id (request_id), from 'List documents' or 'Create document'. An address copied from Zoho Sign works too.
- Document name (`request_name`, text): Optional. A new name.
- Message (`notes`, text): Optional. A message sent to every recipient.
- Days to sign (`expiration_days`, number): Optional. How many days the recipients have to act. From 1 to 365.
- Email reminders (`email_reminders`, text): Optional. Turn reminders on or off. One of: `on`, `off`.
- Remind every (days) (`reminder_period`, number): Optional. Email the recipients a reminder this often. From 1 to 365.
- Folder (`folder_id`, text): Optional. The folder to file the document in.
- Document type (`request_type_id`, text): Optional. The document type (category) to give the document.
- Signing order (`signing_order`, text): Optional. In order, or everyone at once. One of: `sequential` (In order), `parallel` (All at once).

**Outputs**: A Zoho Sign document (a signature request).

- `action_time` (number): When it was last acted on, in epoch milliseconds.
- `actions` (list): The recipients.
- `created_time` (number): When it was created, in epoch milliseconds.
- `description` (text): The document's description.
- `document_ids` (list): The files in the document.
- `email_reminders` (true/false): Whether Zoho sends reminders.
- `expiration_days` (number): Days it stays open for signing.
- `expire_by` (number): When it expires, in epoch milliseconds.
- `folder_id` (text): The folder's id.
- `folder_name` (text): The folder's name.
- `is_deleted` (true/false): Whether it is in the trash.
- `is_sequential` (true/false): Whether recipients act in order.
- `modified_time` (number): When it last changed, in epoch milliseconds.
- `notes` (text): The message sent to every recipient.
- `owner_email` (text): The sender's email address.
- `owner_first_name` (text): The sender's first name.
- `owner_id` (text): The sender's Zoho id.
- `owner_last_name` (text): The sender's last name.
- `reminder_period` (number): Days between reminders.
- `request_id` (text): The document's id.
- `request_name` (text): The document's name.
- `request_status` (text): draft, inprogress, completed, declined, recalled, expired and so on.
- `request_type_id` (text): The document type's id.
- `request_type_name` (text): The document type's name.
- `sign_percentage` (number): How much of the signing is done.
- `sign_submitted_time` (number): When it was sent, in epoch milliseconds.

**Example output**

```json
{
  "actions": [
    {
      "action_id": "2000000492185",
      "action_status": "NOACTION",
      "action_type": "SIGN",
      "recipient_email": "grace@example.com",
      "recipient_name": "Grace Hopper",
      "signing_order": 1,
      "verify_recipient": false
    }
  ],
  "created_time": 1790000000000,
  "document_ids": [
    {
      "document_id": "2000000492183",
      "document_name": "contract.pdf",
      "document_order": "0",
      "document_size": 13264,
      "total_pages": 1
    }
  ],
  "email_reminders": false,
  "expiration_days": 15,
  "is_sequential": true,
  "modified_time": 1790000000000,
  "notes": "",
  "owner_email": "ada@example.com",
  "owner_first_name": "Ada",
  "owner_last_name": "Lovelace",
  "request_id": "2000000492177",
  "request_name": "Lodol QA contract",
  "request_status": "draft",
  "request_type_name": "Others",
  "sign_percentage": 0
}
```
