Skip to content

Cloud Storage

DocuSign
API integration

Ship Cloud Storage features without building the integration. Full DocuSign API access via Proxy, normalized data through Unified APIs, and 60+ MCP-ready tools for AI agents — all extensible to your exact use case.

Talk to us
DocuSign

Use Cases

Why integrate with DocuSign

Common scenarios for SaaS companies building DocuSign integrations for their customers.

01

Automate contract generation from your app's workflow stages

SaaS platforms can trigger DocuSign signing requests automatically when a record hits a specific stage — like sending an offer letter when a candidate reaches 'Offer' in an ATS, or a lease when a tenant is approved. This eliminates manual document prep and reduces time-to-signature.

02

Track signing progress in real time within your product

By syncing signing request statuses, your app can show users exactly where each agreement stands — sent, delivered, viewed, signed, or declined — without requiring them to switch to DocuSign. This powers conditional logic like auto-advancing deal stages or triggering follow-up reminders.

03

Pre-fill documents with CRM or app data to eliminate duplicate entry

SaaS companies can map their internal data (customer name, deal amount, start date) to DocuSign template fields, so end users never have to re-type information that already exists in your system. This reduces errors and dramatically speeds up document turnaround.

04

Archive signed documents back to your platform automatically

After a signing request is completed, your app can pull the finalized PDF and attach it directly to the relevant record — an employee profile, a deal, a tenant file — giving users a single source of truth without manual downloads.

05

Manage DocuSign user permissions and envelope utilization at scale

For enterprise customers with shared DocuSign accounts, your platform can surface which users have active licenses, their roles, and how many envelopes have been consumed — helping admins govern access and manage billing from within your product.

What You Can Build

Ship these features with Truto + DocuSign

Concrete product features your team can ship faster by leveraging Truto’s DocuSign integration instead of building from scratch.

01

Template-powered document generation

Let users select from their DocuSign templates, auto-populate document fields with data from your app, and send signing requests — all without leaving your UI.

02

Real-time signing status dashboard

Display a live view of all outstanding and completed signing requests with statuses like sent, delivered, completed, declined, or voided, synced from DocuSign via Truto's Unified E-Signature API.

03

Multi-party routing with contact management

Build workflows that send agreements to multiple signers (e.g., tenant, co-signer, guarantor) in a defined routing order by leveraging contacts and groups from DocuSign.

04

Signed document write-back to entity records

Automatically fetch completed PDFs and certificates of completion from DocuSign and attach them to the corresponding record in your application — a candidate, deal, property, or loan.

05

License and utilization monitoring for admins

Surface DocuSign user roles, license assignments, and envelope utilization data so your customers' admins can manage permissions and track usage without switching tools.

06

Stage-based automation triggers on signature events

Advance records through your app's pipeline automatically — move a deal to 'Closed Won' or a candidate to 'Hired' — when a signing request status changes to completed.

SuperAI

DocuSign AI agent tools

Comprehensive AI agent toolset with fine-grained control. Integrates with MCP clients like Cursor and Claude, or frameworks like LangChain.

list_all_docu_sign_users

List Docusign users for a specified account with optional filtering by email, status, group, or name. Returns: userId, userName, email, userType, isAdmin, isNAREnabled, userStatus, uri, createdDateTime, userAddedToAccountDateTime, firstName, lastName, jobTitle, company, permissionProfileId, permissionProfileName, userSettings, sendActivationOnInvalidLogin, enableConnectForUser, groupList,…

get_single_docu_sign_user_by_id

Get a single Docusign user by their userId (GUID). Returns the full user object including userId, userName, email, userStatus, createdDateTime, userSettings, groupList, and address information. Required: account_id, id.

create_a_docu_sign_user

Add new users to a Docusign account. The request body is a newUsers array where each user requires at least userName and email. Returns a newUsers array with userId, uri, email, userName, userStatus, and createdDateTime for each created user. Required: account_id. Max 500 users per request.

update_a_docu_sign_user_by_id

Update a Docusign user's information by id. Submit a userInformation object with the fields to change in the request body. Returns the updated user object including userId, userName, email, userStatus, and permissionProfileId. Required: account_id, id. Users can only access their own information; a user with Admin rights cannot update another user's settings.

delete_a_docu_sign_user_by_id

Close one or more Docusign users in an account, preventing them from accessing account features. Users are not permanently deleted and can be re-opened via Users:update by setting userStatus to Active. Returns: users. Required: account_id, users.

create_a_docu_sign_contact

Add one or more contacts to a Docusign account's contacts list. Returns the added contact results including contactId and errorDetails for any items that could not be processed. Required: account_id, contacts.

update_a_docu_sign_contact_by_id

Update one or more contacts in a Docusign account. Returns the updated contact results including contactId and errorDetails for any items that could not be processed. Required: account_id, id, contacts.

delete_a_docu_sign_contact_by_id

Delete a Docusign contact by id. Returns the deleted contact result including contactId and errorDetails if the contact could not be processed. Required: account_id, id.

list_all_docu_sign_contacts

List contacts associated with a Docusign account, optionally from a connected cloud storage provider. Returns contact records including contactId. Required: account_id.

get_single_docu_sign_contact_by_id

Get a single Docusign contact by id, optionally from a connected cloud storage provider. Returns the contact including contactId. Required: account_id, id.

list_all_docu_sign_permission_profiles

List Docusign permission profiles associated with an account. Returns: permissionProfileId, permissionProfileName, modifiedDateTime, modifiedByUsername. Required: account_id.

get_single_docu_sign_permission_profile_by_id

Get a single Docusign permission profile by id. Returns: permissionProfileId, permissionProfileName, modifiedDateTime, modifiedByUsername. Required: account_id, id.

delete_a_docu_sign_user_custom_setting_by_id

Delete custom user settings for a specific DocuSign user. Returns the customSettingsInformation object including the customSettings array, where each item has a name and value. Required: account_id, id. Grouped settings require the X-DocuSign-User-Settings-Key header; without it, only ungrouped settings are deleted.

update_a_docu_sign_user_custom_setting_by_id

Add or update custom user settings for a Docusign user. Returns the updated customSettingsInformation object. Required: account_id, id. There is a 4,000 character limit for all custom user settings per user, including JSON structure.

list_all_docu_sign_user_custom_settings

List custom user settings for a specific Docusign user. Returns the customSettings array of name-value pairs. Required: user_id. Users can only access their own settings; grouped settings are only retrieved when the X-DocuSign-User-Settings-Key header is supplied.

get_single_docu_sign_user_profile_by_id

Get a Docusign user profile for a specified user, including privacy settings and personal information. Returns: userDetails. Required: account_id, id. Users can only access their own profile, even with Admin rights.

update_a_docu_sign_user_profile_by_id

Update a Docusign user's profile, including detail information, privacy settings, and personal information in the user ID card. Returns an empty 200 response on success. Required: account_id, id. Users can only access their own profile, even with Admin rights.

list_all_docu_sign_templates

List Docusign templates for the specified account with optional filtering by folder, dates, search text, and sharing status. Returns: templateId, name, emailSubject, shared, favoritedByMe, documents, recipients, customFields, notification, powerForms, tabs. Required: account_id. A single request returns a maximum of 2,000 templates.

get_single_docu_sign_template_by_id

Get a single Docusign template by id. Returns the template definition including templateId, name, emailSubject, shared, favoritedByMe, documents, and recipients. Required: account_id, id.

list_all_docu_sign_billing_plan

Get the Docusign billing plan for a specified account, including the plan details and currency code. Returns: planId, currencyCode. Required: account_id. Optional query parameters control whether credit card, successor plan, downgrade, metadata, and tax exempt information are included in the response.

get_single_docu_sign_billing_plan_by_id

Get Docusign billing plan details for a specific billing plan by id. Returns: planId, currencyCode. Required: id.

list_all_docu_sign_billing_invoices

List billing invoices for a Docusign account, optionally filtered by date range. Returns: invoiceId, pdfAvailable, amount, billingInvoiceItems. Required: account_id. If from_date or to_date are not specified, returns invoices for the last 365 days.

get_single_docu_sign_billing_invoice_by_id

Get a specific Docusign billing invoice by id. Returns: invoiceId, invoiceNumber, amount, balance, dueDate, pdfAvailable, billingInvoiceItems. Required: account_id, id. If pdfAvailable is true, a PDF version of the invoice is available.

list_all_docu_sign_oauth_user_info

Get the authenticated user's Docusign OAuth profile information. Returns: base_uri.

get_single_docu_sign_bulk_envelope_by_id

Get a specific Docusign bulk send list by id. Returns all details associated with the list including bulkSendListId and bulkCopies, where each copy contains recipients, tabs, and custom fields. Required: account_id, id.

list_all_docu_sign_bulk_envelopes

List Docusign bulk send lists belonging to the current user, along with basic information about each list. Returns: bulkSendListId, name. Required: account_id.

list_all_docu_sign_envelop_comments

Get a PDF transcript of all comments added to documents in a Docusign envelope. Returns the PDF file as a binary byte stream. Required: envelope_id. Comments must be enabled on the account (enableSigningExtensionComments set to true) to use this feature.

list_all_docu_sign_folders

List Docusign folders for an account. Returns: name, type, itemCount, subFolderCount, hasSubFolders, folders, parentFolderId, parentFolderUri. Required: account_id. By default only top-level folders are returned; set sub_folder_depth to -1 for the complete folder hierarchy.

get_single_docu_sign_folder_by_id

Get information about items in a Docusign folder by id. Returns: name, type, itemCount, subFolderCount, hasSubFolders, folders, parentFolderId, parentFolderUri. Required: account_id, id. Set include_items to true to include folder items in the response.

list_all_docu_sign_signing_groups

List Docusign signing groups in an account, optionally filtered by group type and with member information included. Returns: signingGroupId, groupName, groupType, users. Required: account_id.

get_single_docu_sign_signing_group_by_id

Get a single Docusign signing group by id, including group member information. Returns: signingGroupId, groupName, groupType, users. Required: account_id, id.

list_all_docu_sign_user_groups

List user groups associated with a Docusign account. Returns: groupId, groupName, permissionProfileId, groupType, userCount. Required: account_id. Max 100 results per page.

list_all_docu_sign_workspaces

List Docusign workspaces created in an account. Returns each workspace including its workspaceId and status. Required: account_id.

get_single_docu_sign_workspace_by_id

Get a specific Docusign workspace by id. Returns the workspace object including workspaceId and status. Required: account_id, id.

list_all_docu_sign_accounts

Retrieves the account information for the specified account. Required: account_id.

list_all_docu_sign_envelope_documents

List the documents contained in an envelope, including the auto-generated Certificate of Completion. Returns document metadata (name, type, page count, order) rather than the file contents themselves — use download to retrieve the actual PDF bytes.

update_a_docu_sign_envelope_document_by_id

Update a document within a draft or in-progress envelope, replacing its content and/or metadata. Documents are matched by documentId; existing tab assignments referencing that documentId carry over to the replacement content.

delete_a_docu_sign_envelope_document_by_id

Remove one or more documents from a draft, sent, or delivered envelope, identified by their documentId. Any tabs assigned to the removed document(s) are also removed.

docu_sign_envelope_documents_download

Download the PDF content of a specific document within an envelope. In place of a real documentId, the special values combined (all documents merged into one PDF), archive (a ZIP of all PDFs plus the certificate), certificate (Certificate of Completion only), or portfolio (PDF Portfolio) can be used. Returns raw binary file bytes, not JSON; the file name and document ID are returned in the Content-Disposition response header.

list_all_docu_sign_user_group_users

List users in a Docusign group. Returns user records including userId, userName, email, userStatus, uri, and permission profile details. Required: group_id.

list_all_docu_sign_signing_group_users

List members of a Docusign signing group. Returns: email, userName, userId for each member. Required: signing_group_id.

list_all_docu_sign_folder_items

List items in a specified Docusign folder, including envelopes and templates. The include_items parameter is set to true to return folder contents. Returns: envelopeId, status, emailSubject, createdDateTime, initialSentDateTime, sentDateTime, lastModifiedDateTime, statusChangedDateTime, purgeState, brandId, envelopeUri, documentsUri, documentsCombinedUri, certificateUri, recipientsUri,…

get_single_docu_sign_folder_item_by_id

Get the status of a single Docusign envelope by id. Returns the envelope object including envelopeId, status, emailSubject, createdDateTime, sentDateTime, purgeState, and resource URIs for documents, recipients, custom fields, and templates. Required: account_id, id.

list_all_docu_sign_organizations

List Docusign organizations from the Admin API. Returns: id.

list_all_docu_sign_users_admin_api

List users in a DocuSign organization via the Admin API. Returns: id. Required: organization_id.

list_all_docu_sign_envelopes

Search for and list envelopes in the account that match the specified criteria (date range, status, envelope IDs, folder, etc.). At least one of from_date, envelope_ids, or transaction_ids must be provided; if from_date is omitted the search defaults to the last 2 years.

get_single_docu_sign_envelope_by_id

Retrieve the full details of a single envelope by its ID, including status, timestamps, and (optionally) its documents, recipients, custom fields, and tabs.

create_a_docu_sign_envelope

Create a new envelope from documents and/or templates, and either save it as a draft (status: created) or send it immediately (status: sent). An envelope bundles one or more documents with the recipients who need to sign, view, or receive a copy, along with the tabs (signature fields, form fields) assigned to each recipient.

update_a_docu_sign_envelope_by_id

Update an existing envelope's properties. This endpoint is used to send a draft envelope (set status to sent), void a sent envelope (set status to voided with voidedReason), correct envelope details, resend notifications, or modify fields like emailSubject/emailBlurb before completion.

list_all_docu_sign_envelope_tabs

List all tabs on a document in a Docusign envelope, including prefill, smart section, and polyline overlay tabs. Returns: prefillTabs, smartSectionTabs, polyLineOverlayTabs. Required: envelope_id, document_id.

delete_a_docu_sign_envelope_tab_by_id

Delete tabs from a document in a Docusign envelope by specifying the tabs to remove in the request body. Returns the updated tabs object including prefillTabs with textTabs containing value, pageNumber, documentId, xPosition, and yPosition. Required: envelope_id, document_id.

create_a_docu_sign_envelope_tab

Add smartSection and polyLineOverlay tabs to a specific document in a Docusign envelope. Returns: smartSectionTabs, polyLineOverlayTabs. Required: envelope_id, document_id. This method operates only on smartSection and polyLineOverlay tab types.

delete_a_docu_sign_envelope_recipient_tab_by_id

Delete one or more tabs associated with a recipient in a Docusign draft envelope. Returns the updated EnvelopeRecipientTabs object with remaining tab arrays including textTabs, smartSection, and polyLineOverlay. Required: envelope_id, recipient_id. It is an error to delete a tab that has the templateLocked property set to true.

create_a_docu_sign_envelope_sender_view

Create a sender view URL for a Docusign envelope to embed the envelope sender UI in your application. Returns: url. Required: account_id, envelope_id, returnUrl, view. The envelope must be in the created (draft) state; the returned URL expires after 10 minutes.

delete_a_docu_sign_recipient_by_id

Delete a specific recipient from a Docusign envelope. Returns the updated recipients collection including signers and currentRoutingOrder. Required: envelope_id, id. Recipients that have completed their actions cannot be deleted from an In Process envelope.

list_all_docu_sign_envelope_workflows

Get the workflow definition for a Docusign envelope. Returns the workflow object including its steps. If the envelope does not have a workflow object, the API returns a 404. Required: envelope_id.

list_all_docu_sign_template_workflows

Returns the workflow definition for a template. Required: account_id, template_id.

list_all_docu_sign_search_envelopes

Search for Docusign envelopes by date, envelope ID, or status. Returns: envelopeId, status, statusChanged, subject, sender, envelopeUri, documentsUri, recipientsUri, customFieldsUri, attachmentsUri, createdDateTime, sentDateTime, deliveredDateTime, completedDateTime, voidedDateTime, voidedReason, expireDateTime, expireEnabled, purgeState, owner, ownerEmail, customFields, documents, attachments,…

list_all_docu_sign_envelopes_status

List envelope statuses for a Docusign account, retrieving a set of envelopes that changed status within a date range or matching specific envelope/transaction IDs. Returns: envelopeId, status, subject, senderEmail, createdDateTime, envelopeUri, recipientUri. Required: account_id, and exactly one of from_date, envelope_ids, or transaction_ids. Docusign limits polling to once every 15 minutes per…

list_all_docu_sign_webhooks

List all Docusign Connect (webhook) configurations for the specified account. Returns a list of configurations, each including connectId, name, configurationType, urlToPublishTo, deliveryMode, and event settings. Required: account_id.

get_single_docu_sign_webhook_by_id

Get the details of a specific Docusign Connect (webhook) configuration by id. Returns the full configuration object including connectId, name, configurationType, urlToPublishTo, deliveryMode, allowEnvelopePublish, enableLog, allUsers, events, and eventData settings. Required: account_id, id.

create_a_docu_sign_webhook

Create a new Docusign Connect (webhook) configuration for the specified account. Supports account-level (configurationType custom) and Recipient Connect (customrecipient) configurations using JSON SIM or aggregate data models. Returns the created configuration object including connectId, name, configurationType, urlToPublishTo, deliveryMode, allowEnvelopePublish, enableLog, events, and eventData.…

update_a_docu_sign_webhook_by_id

Update a Docusign Connect (webhook) configuration in the specified account. Set allowEnvelopePublish to true to enable the configuration. Returns the updated configuration object including connectId, name, configurationType, urlToPublishTo, deliveryMode, allowEnvelopePublish, enableLog, events, and eventData. Required: account_id. The connectId of the configuration to update must be included in…

delete_a_docu_sign_webhook_by_id

Delete a Docusign Connect (webhook) configuration by id. Returns an empty 200 response on success. Required: account_id, id.

list_all_docu_sign_webhook_logs

List the 100 most recent Docusign Connect webhook delivery log entries for an account. Returns: logId, envelopeId, connectDebugLog. Required: account_id. Log entries are automatically deleted after 15 days; the enableLog Connect configuration setting must be true to record entries.

get_single_docu_sign_webhook_log_by_id

Get a single Docusign Connect webhook delivery log entry by id. Returns: logId, envelopeId, connectDebugLog. Required: account_id, id. Set additional_info to 'true' to include connectDebugLog details in the response.

delete_a_docu_sign_webhook_log_by_id

Delete a Docusign Connect webhook delivery log entry by id. Use 'all' as the id to delete all log entries for the account. Returns an empty 200 response on success. Required: account_id, id.

list_all_docu_sign_webhook_failures

List Docusign Connect webhook delivery failures for an account to identify envelopes that failed to post. Returns: configId, configName, connectId, envelopeId, error, eventDateTime, payload, postTime, retryTime, retryUri, status, url, emailSubject, connectDebugLog. Required: account_id.

list_all_docu_sign_navigator_agreements_api

List Docusign Navigator agreements stored in an account's Agreement Manager repository. Returns each agreement record with its id and model-schema-specific attributes. Required: account_id.

Why Truto

Why use Truto’s MCP server for DocuSign

Other MCP servers give you a static tool list for one app. Truto gives you a managed, multi-tenant MCP infrastructure across 650+ integrations.

01

Auto-generated, always up to date

Tools are dynamically generated from curated documentation — not hand-coded. As integrations evolve, tools stay current without manual maintenance.

02

Fine-grained access control

Scope each MCP server to read-only, write-only, specific methods, or tagged tool groups. Expose only what your AI agent needs — nothing more.

03

Multi-tenant by design

Each MCP server is scoped to a single connected account with its own credentials. The URL itself is the auth token — no shared secrets, no credential leaking across tenants.

04

Works with every MCP client

Standard JSON-RPC 2.0 protocol. Paste the URL into Claude, ChatGPT, Cursor, or any MCP-compatible agent framework — tools are discovered automatically.

05

Built-in auth, rate limits, and error handling

Tool calls execute through Truto’s proxy layer with automatic OAuth refresh, rate-limit handling, and normalized error responses. No raw API plumbing in your agent.

06

Expiring and auditable servers

Create time-limited MCP servers for contractors or automated workflows. Optional dual-auth requires both the URL and a Truto API token for high-security environments.

Unified APIs

Unified APIs for DocuSign

Skip writing code for every integration. Use Truto’s category-specific Unified APIs out of the box or customize the mappings with AI.

Unified User Directory API

Billing

Billing object represents a Bill

View Docs

Licenses

Licenses represent concepts like user seats in apps that support them

View Docs

Roles

The Role object represents a role of a User.

View Docs

Users

The User object represents a User.

View Docs

Utilization

Utilization object represents utilization reports.

View Docs

Unified E-Signature API

Collections

View Docs

Contacts

View Docs

Document Fields

View Docs

Documents

The Document object is used to represent documents of e-signature.

View Docs

Groups

The Group object is used to represent collection of Users.

View Docs

Signing Request Statuses

Signing requests go through various stages and each stage is denoted by this resource. Most of the e-signing products have a set state of statuses like draft, sent, created, etc.

View Docs

Signing Requests

The Signing Request object is used to represent signing requests sent.

View Docs

Templates

The Template object is used to represent templates cofnigured for various entities like Documents, messages, etc.

View Docs

Users

The User object is used to represents a User

View Docs

How It Works

From zero to integrated

Go live with DocuSign in under an hour. No boilerplate, no maintenance burden.

01

Link your customer’s DocuSign account

Use Truto’s frontend SDK to connect your customer’s DocuSign account. We handle all OAuth and API key flows — you don’t need to create the OAuth app.

02

We handle authentication

Don’t spend time refreshing access tokens or figuring out secure storage. We handle it and inject credentials into every API request.

03

Call our API, we call DocuSign

Truto’s Proxy API is a 1-to-1 mapping of the DocuSign API. You call us, we call DocuSign, and pass the response back in the same cycle.

04

Unified response format

Every response follows a single format across all integrations. We translate DocuSign’s pagination into unified cursor-based pagination. Data is always in the result attribute.

FAQs

Common questions about DocuSign on Truto

Authentication, rate limits, data freshness, and everything else you need to know before you integrate.

What authentication method does the DocuSign integration use?

DocuSign supports OAuth 2.0 (Authorization Code Grant) for user-level authentication. Truto handles the full OAuth flow, token refresh, and credential storage so your end users can connect their DocuSign accounts securely without you managing tokens.

Which Truto Unified APIs cover DocuSign?

DocuSign is supported through two Unified APIs: the Unified E-Signature API (covering Templates, Document Fields, Documents, Collections, Contacts, Groups, Signing Requests, Signing Request Statuses, and Users) and the Unified User Directory API (covering Users, Roles, Licenses, Billing, and Utilization).

Does Truto handle DocuSign's API rate limits and pagination?

Yes. Truto manages rate limiting, retry logic, and cursor-based pagination behind the scenes. Your application makes standard Unified API calls and Truto handles the underlying DocuSign API constraints transparently.

Can I read and write signing requests, or is the integration read-only?

The Unified E-Signature API supports both reading and creating signing requests, as well as tracking their statuses. Specific write capabilities for other resources depend on the underlying DocuSign API permissions and can be confirmed during setup.

How does the integration handle multi-account DocuSign setups?

When an end user authenticates, Truto captures the associated DocuSign account context. For organizations with multiple DocuSign accounts, the integration respects the account scope selected during the OAuth consent flow.

What if I need a DocuSign capability that isn't covered by the current Unified API resources?

Truto builds integration tools on request. If you need support for additional DocuSign endpoints — like embedded signing URL generation or specific webhook event types — you can request them and the Truto team will scope and build them for your use case.

DocuSign

Get DocuSign integrated into your app

Our team understands what it takes to make a DocuSign integration successful. A short, crisp 30 minute call with folks who understand the problem.