Documenso

Learn how to use Documenso with Composio

Overview

SLUG: DOCUMENSO

Description

Documenso is an open-source electronic signature platform that allows users to create, send, and sign documents digitally.

Authentication Details

generic_api_key
stringRequired

Connecting to Documenso

Create an auth config

Use the dashboard to create an auth config for the Documenso toolkit. This allows you to connect multiple Documenso accounts to Composio for agents to use.

1

Select App

Navigate to Documenso.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Documenso Auth Config”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2
3# Replace these with your actual values
4documenso_auth_config_id = "ac_YOUR_DOCUMENSO_CONFIG_ID" # Auth config ID created above
5user_id = "0000-0000-0000" # UUID from database/app
6
7composio = Composio()
8
9def authenticate_toolkit(user_id: str, auth_config_id: str):
10 # Replace this with a method to retrieve an API key from the user.
11 # Or supply your own.
12 user_api_key = input("[!] Enter API key")
13
14 connection_request = composio.connected_accounts.initiate(
15 user_id=user_id,
16 auth_config_id=auth_config_id,
17 config={"auth_scheme": "API_KEY", "val": {"generic_api_key": user_api_key}}
18 )
19
20 # API Key authentication is immediate - no redirect needed
21 print(f"Successfully connected Documenso for user {user_id}")
22 print(f"Connection status: {connection_request.status}")
23
24 return connection_request.id
25
26
27connection_id = authenticate_toolkit(user_id, documenso_auth_config_id)
28
29# You can verify the connection using:
30connected_account = composio.connected_accounts.get(connection_id)
31print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Documenso toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["DOCUMENSO"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: Create Embedding Presign Token V2 Beta

Description

Tool to create a presign token for embedded authoring sessions. Use when initializing or renewing an embed session token.

Action Parameters

expiresInSeconds
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Document Fields

Description

Tool to delete one or more fields from a document. Use when you have confirmed the field IDs to remove. Supports single-field and batch deletion.

Action Parameters

documentId
integerRequired
fieldIds
integerRequired

Action Response

data
object
error
string
status_code
integerRequired
success
boolean
successful
booleanRequired

Tool Name: Delete Template

Description

Tool to delete a template by ID.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Distribute Document V2

Description

Tool to distribute a document for signing. Use when you need to send a document to all or specific pending recipients.

Action Parameters

documentId
integerRequired
recipients
array

Action Response

data
object
error
string
status_code
integerRequired
successful
booleanRequired

Tool Name: Download Signed Document

Description

Tool to download a signed document file. Use when you need to retrieve the finalized PDF after a document has been signed.

Action Parameters

fileName
string
id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Duplicate Document V2

Description

Tool to duplicate a document. Use when you need to create an exact copy of an existing document. Ensure the source document ID is valid before calling.

Action Parameters

documentId
integerRequired

Action Response

data
object
error
string
status_code
integerRequired
successful
booleanRequired

Tool Name: Find Documents V2

Description

Tool to find documents. Use when retrieving a paginated list of documents for operations requiring a document ID.

Action Parameters

orderBy
string
orderDirection
string
page
integer
perPage
integer
query
string
status
string
teamId
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Template

Description

Tool to fetch a template by ID.

Action Parameters

id
integerRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List Templates

Description

Tool to list templates. Use when fetching available templates with optional pagination.

Action Parameters

page
integer
perPage
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Move Document V2

Description

Tool to move a document to a team. Use when transferring documents between personal and team accounts.

Action Parameters

documentId
stringRequired
teamId
stringRequired

Action Response

data
object
error
string
status_code
integerRequired
successful
booleanRequired

Tool Name: Redistribute Document V2

Description

Tool to redistribute a document to its pending recipients. Use when you need to re-send or re-distribute a sent document to recipients. Ensure the document has pending recipients or specific recipients selected before calling.

Action Parameters

documentId
integerRequired
recipients
arrayRequired

Action Response

data
object
error
string
status_code
integerRequired
successful
booleanRequired

Tool Name: Remove Team Member V1

Description

Tool to remove a member from a team.

Action Parameters

member_id
stringRequired
team_id
stringRequired

Action Response

data
object
error
string
message
string
status_code
integerRequired
success
boolean
successful
booleanRequired

Tool Name: Resend Document For Signing V1

Description

Tool to re-send a document for signing via POST /api/v1/documents/{id}/resend.

Action Parameters

body
object
id
integerRequired

Action Response

data
object
error
string
message
string
status_code
integerRequired
success
boolean
successful
booleanRequired

Tool Name: Update Document Fields

Description

Tool to update one or more fields on a document. Use when you need to adjust properties of existing fields post-creation.

Action Parameters

documentId
integerRequired
updates
objectRequired

Action Response

data
object
error
string
status_code
integerRequired
success
boolean
successful
booleanRequired

Tool Name: Update Document Recipient

Description

Tool to update a document recipient. Use to change name, email, role, signing order or authentication options of a recipient.

Action Parameters

authOptions
object
email
string
id
integerRequired
name
string
recipientId
integerRequired
role
string
signingOrder
integer

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Document V2

Description

Tool to update document properties. Use after confirming the document ID is valid.

Action Parameters

documentId
integerRequired
externalId
string
folderId
integer
teamId
integer
title
string
updates
object
visibility
string

Action Response

data
object
error
string
status_code
integerRequired
successful
booleanRequired

Tool Name: Use Template (v2-beta)

Description

Tool to create a document from a template. Use when you need to instantiate a template with recipients and optional prefills.

Action Parameters

prefillFields
array
recipients
arrayRequired
templateId
integerRequired

Action Response

data
objectRequired
error
string
status_code
integerRequired
successful
booleanRequired