Skip to content

@memberjunction/esignature-dropboxsign

← Back to eSignature Overview · Core Primitive

The Dropbox Sign (formerly HelloSign) driver for the MemberJunction eSignature subsystem. It implements the BaseSignatureProvider contract against the Dropbox Sign REST API v3, using HTTP Basic authentication with your API key.

Terminal window
npm install @memberjunction/esignature-dropboxsign

You don’t call this package directly. You configure a Dropbox Sign Signature Account and use the SignatureEngine (or the no-code Actions). The engine resolves and drives this provider for you.


Driver keyDropboxSign
Registration@RegisterClass(BaseSignatureProvider, 'DropboxSign')
AuthenticationHTTP Basic (API key as username, empty password)
APIDropbox Sign REST API v3 (api.hellosign.com/v3)
WebhooksHMAC-SHA256 verified
OperationSupported
Create envelope
Get status
Download signed
Void
Parse webhook event
Verify webhook signature
Templates
Embedded signing

These values live in the account’s Credential (encrypted via the Credential Engine) — never in code or environment variables.

KeyRequiredDefaultDescription
apiKeyDropbox Sign API key, sent via HTTP Basic auth.
restBasehttps://api.hellosign.com/v3REST API base.
testModefalseWhen true, requests are flagged as non-billable test requests. Great for development.
connectHmacKey(falls back to apiKey)HMAC secret for verifying webhooks. Dropbox Sign signs callbacks with the account API key by default, so this is optional.

Dropbox Sign supports a first-class test mode that creates non-billable signature requests — ideal for development and CI. Set testMode: true on the account configuration and every request the driver sends is marked test_mode=1. Flip it off for production.

  1. In Dropbox Sign, generate an API key (Settings → API).
  2. In MemberJunction:
    • The Dropbox Sign Signature Provider row is already seeded.
    • Create a Credential holding apiKey (and testMode if developing).
    • Create a Signature Account pointing at that credential.
  3. (Production) Configure a Dropbox Sign callback URL pointing at POST {your-server}/esignature/webhook/DropboxSign.

Dropbox Sign reports state two ways: request-level booleans (is_complete, is_declined) and a per-signer status_code. The driver checks the booleans first, then falls back to the lead signer’s status_code (defaulting to Sent when none is present). Both map onto MemberJunction’s normalized lifecycle:

Request-level (checked first):

Dropbox Sign flagMJ EnvelopeStatus
is_completeCompleted
is_declinedDeclined

Per-signer status_code (fallback):

Dropbox Sign statusMJ EnvelopeStatus
awaiting_signatureSent
on_holdDelivered
signedSigned
declinedDeclined
error, (any unrecognized code)Unknown
(no signer status present)Sent

Dropbox Sign pushes events to POST /esignature/webhook/DropboxSign. Each callback carries an event_hash computed as an HMAC-SHA256 over <event_time><event_type> keyed with your API key (or an explicit connectHmacKey). The driver recomputes and compares it before trusting the event. See the webhook flow.


Terminal window
cd packages/eSignature/Providers/DropboxSign && npm run test

eSignature overviewThe whole subsystem.
Core primitiveThe contract, engine, and data model this driver plugs into.
DocuSign driver · PandaDoc driverSibling providers.