Skip to main content

About Docusign

Docusign is an electronic signature and agreement management platform. Connecting Docusign to Serval lets your workflows send envelopes for signature, track their status, read completed agreements, and manage templates across your Docusign account.

What the Docusign integration enables

CapabilityDescription
Send envelopesCreate and send envelopes for signature — single documents or multi-recipient routing
Track envelope statusQuery envelope state (sent, delivered, completed, declined, voided) and status timestamps
Read recipients and tabsList signers, CC recipients, and signing field data on an envelope
Use templatesList and send from pre-built Docusign templates with role-based recipients
Account metadataRead account name, plan, and settings for the connected Docusign account
Anything defined in the Docusign eSignature REST API v2.1 can be accessed through Serval using the Docusign API request action.

Prerequisites

  • A Docusign developer account (free, sign up at developers.docusign.com)
  • Admin permissions on that developer account (required to create apps)
  • A Docusign app with an Integration Key (Client ID) and Secret Key (Client Secret)
Serval uses Docusign’s Authorization Code Grant flow. You need an account that can securely store a client secret — this is the default for Serval’s server-side integration. Do not enable PKCE; PKCE is only required for apps that cannot store a secret (SPAs, native mobile).
Apps can only be created in a developer account, not in production. Docusign requires every app to be built and tested in the developer sandbox first, then promoted to production via the Go-Live process. If you land on apps.docusign.com/admin/apps-and-keys and see “You cannot create an integration key in production”, that is expected — switch to apps-d.docusign.com.

Docusign Configuration

Before connecting in Serval, create a Docusign app in the developer sandbox and configure it for OAuth 2.0. You will connect Serval to it using the Demo environment. When you are ready to use it against real Docusign accounts, follow Promoting your app to Production below.
1

Create a Docusign app in the developer sandbox

  1. Sign in to your developer account at apps-d.docusign.com/admin/apps-and-keys
  2. Click Add App and Integration Key
  3. Enter an app name (for example, Serval) — this is what users see on the Docusign consent screen
  4. Docusign generates an Integration Key. Copy it — this is your Client ID. Keep the page open for the next steps
2

Set the integration type

Under Integration Type, select Private custom integration.
Serval treats each customer’s Docusign app as a private, per-organization app — your Integration Key never leaves your Docusign tenant. Do not pick Public integration or Embedded integration; those are for very different distribution models.
3

Configure the User Application authentication

Scroll to the Authentication section, inside the User Application block, and click through in this order:
  1. “Is your application able to securely store a client secret?” → click Yes
  2. Authentication Method for your App — auto-selects Authorization Code Grant. No action needed
  3. Require Proof Key for Code Exchange (PKCE)leave this unchecked. Serval stores the client secret server-side so PKCE is unnecessary and Docusign will reject your callback if the checkbox is on but Serval is not sending a PKCE verifier
  4. Under Secret Keys, click + Add Secret Key
  5. Docusign reveals the new Secret Key one time only. Copy it immediately — this is your Client Secret. Store it in a password manager
If you lose the Secret Key, you must generate a new one and reconnect Serval.
4

Skip Service Integration (RSA keypairs)

Leave the Service Integration section alone. Do not click Generate RSA or Upload RSA.
RSA keypairs are only used for Docusign’s JWT Grant flow, which is a different authentication model Serval does not use today. Generating a keypair here does nothing for the Serval integration.
5

Add the Serval Redirect URI

Open a new tab, go to Serval → AppsAvailableDocusignConnect. The modal shows a Redirect URI with a copy button. Copy it.Back in Docusign, still on the same app configuration page:
  1. Scroll to Additional SettingsRedirect URIs
  2. Click + Add URI
  3. Paste the Redirect URI from Serval (for example, https://svflow-auth-config.api.serval.com/docusign/oauth/callback)
  4. Click Save
The Redirect URI must match exactly — any difference in scheme (http vs https), trailing slash, host, or path will cause Docusign to reject the OAuth callback with a redirect_uri_mismatch error.
6

Skip CORS configuration

Leave CORS Configuration empty — do not add any Origin URLs or Allowed HTTP Methods. Serval calls the Docusign API server-to-server, never from a browser, so CORS allow-listing is not required.
7

Click Save at the bottom of the page

Scroll to the bottom of the app configuration page and click Save. Without saving, none of your selections (integration type, authentication, redirect URI) will persist.

Settings recap

After saving, your Docusign app should match this:
SectionSettingValue
General InfoApp NameYour choice (e.g. Serval)
General InfoIntegration Keyauto-generated — copy as Client ID
Integration TypePrivate custom integration
AuthenticationCan securely store client secret?Yes
AuthenticationAuthentication MethodAuthorization Code Grant
AuthenticationRequire PKCEUnchecked
AuthenticationSecret Keysone added — copy as Client Secret
Service IntegrationRSA Keypairs(none — leave empty)
Additional SettingsRedirect URIsone entry — the URI shown in Serval’s connect modal
Additional SettingsCORS Configuration(empty — no origins, no methods)

Connect Docusign to Serval

1

Open the Docusign integration in Serval

Navigate to AppsAvailableDocusign and click Connect.
2

Fill in the connection form

In the Connect Docusign dialog:
  1. Copy the Redirect URI at the top and make sure it is added to your Docusign app’s Redirect URIs list (see the previous section)
  2. Select the Environment:
    • Production — your app lives at apps.docusign.com
    • Demo — your app lives at apps-d.docusign.com (developer sandbox)
  3. Enter the Integration Key (Client ID) from your Docusign app
  4. Enter the Secret Key (Client Secret) you generated
  5. Click Connect to Docusign
3

Authorize in Docusign

You will be redirected to Docusign’s consent page.
  1. Sign in to the Docusign account whose data you want Serval to work against
  2. Review the requested permissions (signature, extended) and click Allow
  3. You will be redirected back to Serval with the integration connected
4

Verify the connection

In Serval, open the newly-connected Docusign integration and run the Test Docusign Connection healthcheck. A green result confirms Serval can reach your Docusign account.

OAuth Scopes Requested

Serval requests only these scopes during the Authorization Code flow:
ScopePurpose
signatureRead and manage envelopes, recipients, templates, and documents
extendedIssue a refresh token so the connection stays alive without re-consenting hourly
These are the minimum scopes needed for envelope automation. Serval does not request impersonation (that scope is only used for the JWT Grant flow, which Serval does not use).

Regional Base URIs

Docusign serves the eSignature REST API from region-specific data centers (for example, na4.docusign.net, eu.docusign.net, au.docusign.net, demo.docusign.net). Serval detects your account’s base URI automatically during the OAuth flow — there is nothing to configure. All API calls from Serval workflows go to the correct region for the connected account.

Promoting your app to Production

Once you have tested everything against a Docusign developer sandbox, use Docusign’s Go-Live process to migrate the app into production. Summary:
1

Pass the Go-Live API call requirements

Docusign requires at least 20 successful, distinct API calls from your Integration Key against the developer sandbox before Go-Live eligibility. Running a few real Serval workflows (send envelope, fetch status, list templates, etc.) will accumulate these automatically.
2

Submit the app for review

In the developer sandbox admin, open your app and click ActionsStart Review. Docusign will validate your API-call history and then allow you to promote the app.
3

Promote the Integration Key to Production

Follow Docusign’s on-screen prompts to migrate the Integration Key into each production data center you need (www.docusign.net, eu.docusign.net, etc.).
4

Add the production Redirect URI and generate a new Secret Key

In the production apps.docusign.com/admin/apps-and-keys, re-enter the Redirect URI, and generate a new Secret Key. Production uses different secrets from the sandbox.
5

Reconnect Serval using the Production environment

In Serval, disconnect the Demo-connected Docusign integration and reconnect — this time selecting Production as the environment. Paste the production Integration Key and production Secret Key. Serval will redirect the user to account.docusign.com (instead of account-d.docusign.com) and capture the production base_uri / account_id.

Troubleshooting

redirect_uri_mismatch error on callback The Redirect URI in Docusign must exactly match the one Serval shows in the connect dialog. Check for trailing slashes, http vs https, and environment (Production vs Demo).
invalid_grant on token exchange Usually means the Secret Key is wrong, was regenerated after being entered in Serval, or the code was reused. Reconnect in Serval to trigger a fresh authorization.
Healthcheck fails with 401 Unauthorized Docusign returns 401 if the refresh token has been revoked — for example, by an admin in the My Apps & Keys page in Docusign. Reconnect the integration in Serval to re-authorize.
Connected to the wrong account If your Docusign user has access to multiple accounts, Serval connects to the one you chose during the Docusign consent screen. To switch, disconnect and reconnect, then pick a different account at consent time.

External Resources