Skip to main content

Scopes

Each API key is assigned one or more scopes that control which endpoints it can access.

Available scopes

ScopeGrants access to
envelopes:readList envelopes, get envelope details, get status
envelopes:writeCreate envelopes, upload paper PDFs, void, remind, update webhook config
esign:writeMint sign-widget embed tokens
vault:readDownload vault documents, view certificates, mint vault embed tokens
vault:writeTrigger vault-in (vault a completed e-sign or paper upload)
vault:releaseVault-out — release the authoritative copy out of the live vault
customers:readList and view customer records
compliance:readView compliance evaluations and reports

Scope to endpoint mapping

EndpointRequired scope
GET /partner/envelopesenvelopes:read
GET /partner/envelopes/:idenvelopes:read
GET /partner/envelopes/:id/statusenvelopes:read
GET /partner/envelopes/:id/signing-linksenvelopes:read
POST /partner/envelopesenvelopes:write
POST /partner/envelopes/:id/uploadenvelopes:write
POST /partner/templatesenvelopes:write
POST /partner/templates/:template_id/fieldsenvelopes:write
POST /partner/envelopes/:id/voidenvelopes:write
POST /partner/envelopes/:id/remindenvelopes:write
PATCH /partner/webhookenvelopes:write
POST /embed/token (sign)esign:write
POST /embed/token (vault)vault:read
GET /partner/envelopes/:id/vault/signed-urlvault:read
GET /partner/envelopes/:id/vault/copy/signed-urlvault:read
POST /partner/envelopes/:id/vault-in-signedvault:write
POST /partner/envelopes/:id/vault-in-uploadvault:write
POST /partner/envelopes/:id/vault-outvault:release
GET /partner/envelopes/:id/vault/certificatecompliance:read
GET /partner/envelopes/:id/compliancecompliance:read

Read-only integration

["envelopes:read", "vault:read", "compliance:read"]

Good for: dashboards, reporting, document viewing.

Full signing integration

["envelopes:read", "envelopes:write", "esign:write", "vault:read", "vault:write"]

Good for: end-to-end signing workflows where the partner triggers vault-in if needed.

Full e-sign + e-vault lifecycle

["envelopes:read", "envelopes:write", "vault:read", "vault:write", "vault:release", "compliance:read"]

Good for: integrations that drive the entire lifecycle including releasing the authoritative copy out of the vault to a secured party.

Complete access

["envelopes:read", "envelopes:write", "esign:write", "vault:read", "vault:write", "vault:release", "customers:read", "compliance:read"]

Good for: deep integrations that manage the full lifecycle including embedded widgets.

Notes on vault scopes

  • vault:write is required for both signed and paper vault-in. The pipeline is the same end state — a vaulted envelope with a SHA-256 hash, UCC §9-105 compliance certificate, and vault custody record PDF. The difference is the source: a completed DocuSeal submission vs. a partner-uploaded PDF.
  • vault:release is intentionally split from vault:write because vault-out is irreversible — the live authoritative path is deleted as part of UCC single-locus enforcement. Only grant this to keys that drive end-of-lifecycle release flows.

Error response

If a request requires a scope the key doesn't have:

// 403 Forbidden
{
"error": "API key missing required scope: vault:release"
}