API reference
POSTRequires Bearer token
Create a signing envelope
/api/v4/envelopes
Batch of documents plus an ordered list of signers. Multipart: documents[] (PDFs, max 10 MB each) and a JSON string payload. Attachments: attachments_{idx}[] (max 15 MiB each), where idx is the document index.
payload fields:
title,messagesigning_order:ordered(default) oranysignature_level:simple,advanced(default when omitted),qualifiedsigners[]:name,first_name,email,phone,priority,positionspositionskeys are document indexes ("0","1", …). Each mark:page,x,y(mm), optionalwidth/height,type. Oranchoralone: text printed in the PDF, nox/y. The signature is centered on that text and covers it.- optional
password:{ enabled, user_password, owner_password }(user_passwordmin 4)
Each signer in the 201 response includes uuid, signing_url, and optionally dev_otp_code in test mode.
Path parameters
This endpoint has no path parameters.
Query parameters
This endpoint has no query parameters.
Request body
| Field | Type | Description |
|---|---|---|
documents Required | array | PDFs to sign (max 10 MB each). e.g. ["example"] |
payload Required | object | JSON string (multipart) with envelope metadata and signers. See nested payload.* fields.e.g. {"title":"NDA Q1","message":"Please sign","signing_order":"ordered","signature_level":"advanced","signers":[{"name":"Dupont","first_name":"Jean","email":"jean@example.com","phone":"+2250700000001","priority":1,"positions":{"0":[{"page":0,"x":120,"y":200,"width":200,"height":70,"type":"signature"}]}}]} |
attachments_0 | array | Optional attachments for document index 0 (repeat attachments_{idx}). |
Responses
| Status | Meaning |
|---|---|
| 201 | See the example response. |
| 401 | Missing or invalid Bearer token. |