Skip to main content
This guide helps you move an Adobe Acrobat Sign embedded signing integration to Formable. You still create a send, mint a signing URL, embed it, and download the completed PDF. You drop OAuth, regional hosts, transient documents on every send, and OUT_FOR_SIGNATURE polling in favor of Bearer API keys, template-first sends, and webhook- or poll-driven completion. If you also prepare library documents or authoring views inside your product, migrate that first with Adobe Acrobat Sign → Embedded templates. Formable signing always starts from a prepared template.
New to Formable? Complete the Embedded signing walkthrough first, then use this page as a translation layer from Acrobat Sign agreements and signing URLs.
Prefer a white-glove migration? Email matt@formabledocs.com and we’ll handle moving your Adobe Acrobat Sign integration to the Formable API.

What you’re moving

In Adobe Acrobat Sign you typically:
  1. Authenticate with OAuth (and often x-api-user / on-behalf-of headers) against a regional host such as api.na1.adobesign.com
  2. Upload a transient document, or reference a library document
  3. POST /agreements with participantSetsInfo and state: "IN_PROCESS"
  4. Poll until the agreement is OUT_FOR_SIGNATURE, then call GET /agreements/{agreementId}/signingUrls (or POST .../views with a SIGNING view)
  5. Embed or redirect to the signing URL, detect completion via webhooks or status polling, then download the combined PDF
In Formable you:
  1. Authenticate with a Bearer API key (fmbl_…)
  2. Create an embedded signature request from a templateId with a signers array (each with email, name, and role)
  3. Mint a signingUrl from each signer’s recipientSignatureId (no transient document, no regional host, no status wait)
  4. Load it in a plain iframe (URL lasts 1 hour)
  5. Handle document_completed or poll status, then download the signed envelope
The product journey stays the same: prepare a document, send it, embed signing, react when done. The API surface is smaller and organization-scoped by the key.
1

Get a Formable API key

Create an organization and key in Settings. See Authentication. You do not need OAuth token exchange for the standard integration.
2

Migrate templates and field IDs

Re-upload documents and place fields in Formable. If you embed library authoring, follow Embedded templates migration.
3

Replace POST /agreements

Map participants and merge fields to signers, sender, and optional fields.
4

Replace signingUrls / SIGNING views

Call create signing URL; drop regional hosts and OUT_FOR_SIGNATURE polling.
5

Swap Acrobat Sign webhooks for Formable webhooks

Register one org webhook URL and verify Content-Sha256. See Webhooks.

What’s similar

Several Acrobat Sign ideas transfer directly:
  • A reusable library document / template still backs many sends.
  • You still create a send unit (agreement → signature request), then open a short-lived URL for the signer.
  • Prefill / merge values still happen at send time; Formable uses fields: [{ fieldId, value }].
  • Sandbox / non-production traffic maps to testMode: true. Test mode documents are watermarked and are not legally binding.
  • After completion you still fetch a combined signed PDF.
If your Acrobat Sign flow is “create agreement → get signing URL → iframe → webhook → download,” you are remapping objects and removing transient-document and regional-host bookkeeping, not redesigning the user journey.

What’s different

These Acrobat Sign-specific pieces do not carry over: You no longer upload a transient document per send or wait for Acrobat Sign’s async agreement state machine. Create the request when you’re ready to send, mint the URL when the user is ready to sign, and listen for completion out of band.

Concept map

Endpoint map

Auth

Acrobat Sign:
against a regional host such as https://api.na1.adobesign.com/api/rest/v6/..., often with x-api-user. Formable:
One global API host. No x-api-user. Create the key in Settings and keep it on the server. Full details: Authentication.

Migrate the flow

1. Create the signature request (was: create agreement)

Adobe Acrobat Sign (simplified, from a library document):
Formable:
Response
Pass a signers array on every create. Each signer needs email, name, and role. sender is optional and defaults to the org owner. Map merge field names to Formable fieldIds from the template editor (not Acrobat Sign fieldNames). Save each signer’s recipientSignatureId to mint their signing URL.

2. Create the signing URL (was: signingUrls / SIGNING view)

Adobe Acrobat Sign:
Often after polling GET /agreements/{agreementId} until status is OUT_FOR_SIGNATURE. Formable:
Response
No regional host, no OUT_FOR_SIGNATURE wait, and no separate views payload. Formable URLs last 1 hour. Creating a URL for an already completed request returns 409.

3. Embed on the client

Use onSigningComplete for client UX instead of relying only on a return / redirect URL. Confirm completion with document_completed or by polling status until Completed before downloading. See Embedded signing.

4. Download the signed PDF

Response
Webhook verification uses Content-Sha256. See Verifying webhooks and Webhooks overview.

Differences to plan for

Drop OAuth token exchange and x-api-user headers for a Bearer API key on your server. The organization is implied by the key.
Acrobat Sign often uploads a transient document per agreement. Formable expects a prepared template first. Upload once, place fields, then send with templateId.
You do not wait for an async agreement state before minting a signing URL. Create the signature request, then call create signing URL when the signer is ready.
Drop regional base URL discovery (api.na1, api.eu1, and similar). All Formable calls go to https://api.formabledocs.com.
Listen for onSigningComplete to update the client immediately. Confirm with a webhook or poll before downloading, then build any “signing finished” screen in your own app.

Checklist

1

Create a Formable API key

2

Prepare templates and field IDs

Or migrate the embedded template flow separately.
3

Replace POST /agreements

Use create embedded signature request with signers (including role), optional sender, and optional fields.
4

Replace signingUrls / SIGNING views

Call create signing URL with each signer’s recipientSignatureId; drop regional hosts and OUT_FOR_SIGNATURE polling.
5

Swap Acrobat Sign webhooks for Formable webhooks

Handle document_completed and download the signed envelope.

Next steps

Embedded templates migration

Map library documents and authoring views to Formable.

Embedded signing walkthrough

Full Formable signing walkthrough.

Webhooks

Register endpoints and understand delivery.

Authentication

Bearer fmbl_ API keys.