# Signwell

SignWell is an electronic signature tool for legally binding e-signatures and faster document signing.

- **Category:** signatures
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 12
- **Triggers:** 0
- **Slug:** `SIGNWELL`
- **Version:** 20260227_00

## Tools

### Create Document

**Slug:** `SIGNWELL_CREATE_DOCUMENT`

Tool to create and optionally send a new document for signing. Use when you have files and recipients defined and want to programmatically submit a signature request in one call.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `draft` | boolean | No | If true, saves document as draft (no emails sent). If false, sends signature requests immediately. |
| `files` | array | Yes | List of files to include in the document. At least one file is required. |
| `message` | string | No | Email message for the signature request. Defaults to system or template message. |
| `subject` | string | No | Email subject for the signature request. Defaults to system or template subject. |
| `language` | string | No | ISO 639-1 code for localization (e.g., en, fr, es). Defaults to en. |
| `metadata` | object | No | Optional key/value data associated with the document. |
| `reminders` | boolean | No | If true, sends reminders on day 3, 6, and 10. |
| `test_mode` | boolean | No | Set to true to enable Test Mode (not legally binding & not billed). Defaults to false. |
| `text_tags` | boolean | No | If true, you may place fields via special text tags in your document. |
| `expires_in` | integer | No | Number of days before the request expires (>=1). Defaults to account or template setting. |
| `recipients` | array | Yes | People who must complete and/or sign this document. |
| `redirect_url` | string | No | URL to redirect recipients to after successful signing. |
| `allow_decline` | boolean | No | If true, recipients may decline to sign (which cancels the request). |
| `allow_reassign` | boolean | No | If true, signers may reassign their signing responsibility. |
| `embedded_signing` | boolean | No | If true, enables embedded signing (iframe) and disables email auth. |
| `api_application_id` | string | No | UUID of API Application settings to use (optional). |
| `apply_signing_order` | boolean | No | If true, enforces signing in the order provided by recipients. |
| `with_signature_page` | boolean | No | If true, appends a signature page to the end and requires signing there. |
| `decline_redirect_url` | string | No | URL to redirect recipients to if they decline to sign. |
| `custom_requester_name` | string | No | Custom name used in all email communications and audit records. |
| `custom_requester_email` | string | No | Custom email used in communications instead of the API key owner. |
| `embedded_signing_notifications` | boolean | No | If true, sends completion notifications when using embedded signing. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Document from Template

**Slug:** `SIGNWELL_CREATE_DOCUMENT_FROM_TEMPLATE`

Tool to create and optionally send a new document for signing from a template. Use when you need to generate a document using a pre-configured template with placeholders. If draft is set to true the document will not be sent.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | Name of the document being created from the template. |
| `draft` | boolean | No | If true, saves document as draft without sending. If false, sends for signing immediately. Defaults to false. |
| `files` | array | No | Additional files to append to the document. Will not replace existing template files. |
| `fields` | array | No | Fields to add to appended files (not existing template files). 2D array - one array of fields per appended file. |
| `labels` | array | No | Labels for organizing documents. Updating labels replaces any existing labels. |
| `message` | string | No | Email message for the signature request. Defaults to template or system message. |
| `subject` | string | No | Email subject for the signature request. Defaults to template or system subject. |
| `metadata` | object | No | Optional key-value metadata associated with the document. Returned in all document queries. |
| `reminders` | boolean | No | If true, sends reminders on day 3, 6, and 10. Defaults to true. |
| `test_mode` | boolean | No | Set to true to enable Test Mode (not legally binding and not billed). Defaults to false. |
| `text_tags` | boolean | No | If true, enables special text tags for placing fields in documents. Defaults to false. |
| `expires_in` | integer | No | Number of days before the signature request expires (minimum 1). Defaults to account or template setting. |
| `recipients` | array | Yes | Document recipients assigned to template placeholders. Recipients inherit placeholder fields and settings. |
| `template_id` | string | No | UUID of a single template to use. Either template_id or template_ids must be provided, not both. |
| `redirect_url` | string | No | URL to redirect recipients to after successfully signing the document. |
| `template_ids` | array | No | List of template UUIDs to use for creating a multi-template document. Either template_id or template_ids must be provided, not both. |
| `allow_decline` | boolean | No | If true, recipients may decline to sign (which cancels the entire document). Defaults to true. |
| `allow_reassign` | boolean | No | If true, signers may reassign their signing responsibility to another person. Defaults to true. |
| `copied_contacts` | array | No | Contacts who receive the final document once all recipients complete signing. |
| `template_fields` | array | No | Template fields to prepopulate with values. Cannot prepopulate Signature or Initials fields. |
| `embedded_signing` | boolean | No | If true, enables embedded signing (iframe) and disables email authentication. Defaults to false. |
| `api_application_id` | string | No | UUID of API Application settings to use for OAuth isolation or embedded API settings. |
| `apply_signing_order` | boolean | No | If true, enforces signing in the order provided by recipients array. Defaults to false. |
| `attachment_requests` | array | No | Attachments that recipients must upload to complete signing. Shown after all document fields are completed. |
| `with_signature_page` | boolean | No | If true, appends a signature page to the end and requires all signers to sign there. Defaults to false. |
| `decline_redirect_url` | string | No | URL to redirect recipients to if they decline to sign. |
| `custom_requester_name` | string | No | Custom name used in all email communications, notifications, and audit file. |
| `custom_requester_email` | string | No | Custom email used for all communications and audit file instead of the API key owner's email. |
| `embedded_signing_notifications` | boolean | No | If true, sends completion notifications when using embedded signing. Defaults to false. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Webhook

**Slug:** `SIGNWELL_CREATE_WEBHOOK`

Tool to register a webhook callback URL. Use when you need to receive document event notifications.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `callbackUrl` | string | Yes | URL where SignWell will post document event payloads. |
| `apiApplicationId` | string | No | UUID of the API Application to associate with this webhook. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Document

**Slug:** `SIGNWELL_DELETE_DOCUMENT`

Tool to delete a document (and cancel signing if in progress). Use when you need to remove a document by ID after confirming it.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the document to delete. This ID is returned when creating a document via SIGNWELL_CREATE_DOCUMENT or can be retrieved using SIGNWELL_GET_DOCUMENT. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Webhook

**Slug:** `SIGNWELL_DELETE_WEBHOOK`

Deletes a registered webhook by its ID. Use this to remove webhooks that are no longer needed. Returns no content on success.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The UUID of the webhook to delete. Obtain this from the list webhooks action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Credentials

**Slug:** `SIGNWELL_GET_CREDENTIALS`

Retrieve account information for the authenticated API key. Returns comprehensive details including user profile, account settings, workspace configuration, and contact information. Use this to validate API credentials, check account capabilities (like template creation limits), or get user/account IDs for other API calls.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Document

**Slug:** `SIGNWELL_GET_DOCUMENT`

Tool to return a document and all associated document data. Use when you need to fetch document details by ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) for the document to retrieve. This ID is returned when creating a document via the API. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Bulk Sends

**Slug:** `SIGNWELL_LIST_BULK_SENDS`

Tool to list all Bulk Sends. Use after setting up API credentials to retrieve paginated records.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination. Defaults to 1. |
| `email` | string | No | Email address of the user that sent the Bulk Send. Requires admin or manager role to view other users' sends. |
| `per_page` | integer | No | Number of results per page. Defaults to 10, maximum 50. |
| `api_application_id` | string | No | Unique identifier for API Application settings to scope the request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Webhooks

**Slug:** `SIGNWELL_LIST_WEBHOOKS`

Tool to list all registered webhooks. Use when you need to retrieve the active webhooks for your SignWell account after setup.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Send Reminder

**Slug:** `SIGNWELL_SEND_REMINDER`

Tool to send a reminder email to recipients that have not signed yet. Use when you need to prompt unsigned recipients to complete their signature.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the document for which to send reminders. This ID is returned when creating a document via SIGNWELL_CREATE_DOCUMENT or can be retrieved using SIGNWELL_GET_DOCUMENT. |
| `recipients` | array | No | Optional list of specific recipients within the document to send a reminder email to. If none are specified, all recipients that have not signed yet will receive a reminder email. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update and Send Document

**Slug:** `SIGNWELL_UPDATE_AND_SEND_DOCUMENT`

Tool to update a draft document and send it to recipients for signing. Use when you need to modify document settings and initiate the signing process.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier for the document to update and send. |
| `name` | string | No | The name of the document. |
| `labels` | array | No | Labels to organize documents. Updating labels replaces any existing labels for this document. |
| `message` | string | No | Email message for the signature request that recipients will see. Defaults to system or template message. |
| `subject` | string | No | Email subject for the signature request that recipients will see. Defaults to system or template subject. |
| `metadata` | object | No | Optional key-value data associated with the document. Available every time document data is returned. |
| `reminders` | boolean | No | Whether to send signing reminders to recipients. Reminders are sent on day 3, 6, and 10 if enabled. |
| `test_mode` | boolean | No | Set to true to enable Test Mode. Test Mode documents do not count towards API billing and are not legally binding. |
| `expires_in` | integer | No | Number of days before the signature request expires. Defaults to the account or template expiration setting. |
| `redirect_url` | string | No | URL that recipients are redirected to after successfully signing the document. |
| `allow_decline` | boolean | No | Whether to allow recipients the option to decline signing. If multiple signers are involved, any recipient can cancel the entire process by declining. |
| `allow_reassign` | boolean | No | Allows signers to reassign their signing responsibilities to another person if they are not the right person to sign. |
| `embedded_signing` | boolean | No | When set to true, enables embedded signing in your website/web application via iFrame with email authentication disabled. |
| `api_application_id` | string | No | Unique identifier for API Application settings to use. Mainly used for isolating OAuth apps or for more control over embedded API settings. |
| `apply_signing_order` | boolean | No | When set to true, recipients will sign one at a time in the order specified. |
| `decline_redirect_url` | string | No | URL that recipients are redirected to if the document is declined. |
| `custom_requester_name` | string | No | Custom requester name used for all email communications, signing notifications, and in the audit file. |
| `custom_requester_email` | string | No | Custom requester email used for all email communications, signing notifications, and in the audit file. |
| `embedded_signing_notifications` | boolean | No | For embedded signing, setting this to true will send out final completion notification emails to document owners and CC'd contacts. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Template

**Slug:** `SIGNWELL_UPDATE_TEMPLATE`

Tool to update an existing template in SignWell. Use when you need to modify template properties such as name, subject, message, reminders, expiration, or other settings.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Unique identifier for the template to update. |
| `name` | string | No | The name of the template. |
| `draft` | boolean | No | Whether the template can still be updated before it is ready for usage. If set to false the template is marked as Available and ready for use. |
| `labels` | array | No | Labels can be used to organize templates in a way that makes them easy to find using template search in SignWell. A template can have multiple labels. Updating labels on a template will replace any existing labels. |
| `message` | string | No | Email message for the signature request that recipients will see. Defaults to the default system message or template message. |
| `subject` | string | No | Email subject for the signature request that recipients will see. Defaults to the default system subject or template subject. |
| `metadata` | object | No | Optional key-value data that can be associated with the template. If set, will be available every time the template data is returned. |
| `reminders` | boolean | No | Whether to send signing reminders to recipients. Reminders are sent on day 3, day 6, and day 10 if set to true. |
| `expires_in` | integer | No | Number of days before the signature request expires. Defaults to the account expiration setting or template expiration. |
| `redirect_url` | string | No | A URL that recipients are redirected to after successfully signing a document. |
| `allow_decline` | boolean | No | Whether to allow recipients the option to decline signing a document. If multiple signers are involved, any single recipient can cancel the entire document signing process by declining to sign. |
| `allow_reassign` | boolean | No | In some cases a signer is not the right person to sign and may need to reassign their signing responsibilities to another person. This feature allows them to reassign the document to someone else. |
| `api_application_id` | string | No | Unique identifier for API Application settings to use. API Applications are optional and mainly used when isolating OAuth apps or for more control over embedded API settings. |
| `apply_signing_order` | boolean | No | When set to true recipients will sign one at a time in the order of the recipients collection. |
| `decline_redirect_url` | string | No | A URL that recipients are redirected to if the document is declined. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
