GET/v1/envelopes
List envelopes
Query parameters
limitinteger (1–100), default 20cursorstringstatusEnvelopeStatusResponses
200A page of envelopes. EnvelopeListEnvelopeEvery endpoint in the Nex-Sign electronic signature API, with its parameters, request body, responses and error codes. Generated from the OpenAPI 3.1 specification, so this page and openapi.json never drift apart. New to the API? Start with the developer guide.
Send your API token as a Bearer token on every request. Your API token. The business is inferred from the token. All endpoints are served from https://nex-sign.com over HTTPS.
curl https://nex-sign.com/v1/envelopes \
-H "Authorization: Bearer <YOUR_TOKEN>"Uniform envelope. Every response — success or failure — has the shape { success, data, error, meta }. Read success first, then data or error.
Create, track, download and cancel signing envelopes.
/v1/envelopesList envelopesPOST/v1/envelopesCreate & send an envelopeGET/v1/envelopes/{id}Get envelope detail (recipients + documents)GET/v1/envelopes/{id}/auditGet the envelope audit trailGET/v1/envelopes/{id}/documents/{docId}/downloadGet a short-lived download URLPOST/v1/envelopes/{id}/remindRe-send the invite to recipients who haven't signedPOST/v1/envelopes/{id}/voidVoid (cancel) an envelopePOST/v1/envelopes/{id}/recipients/{recipientId}/signing-linkGenerate a signing link for a recipient/v1/envelopesList envelopes
limitinteger (1–100), default 20cursorstringstatusEnvelopeStatus200A page of envelopes. EnvelopeListEnvelope/v1/envelopesCreate & send an envelope
Multipart request: one or more files plus a JSON payload. Returns 202; conversion, delivery and sealing run asynchronously. A field targets its document by documentIndex (0-based upload position, preferred) or documentName (a repeated filename is rejected).
multipart/form-datafilesarray of string (binary)requiredOne or more DOCX files.payloadstringrequiredJSON-encoded CreateEnvelope (see schema).202Accepted — envelope created and dispatched. EnvelopeEnvelope402Uniform error envelope. ErrorEnvelope409Uniform error envelope. ErrorEnvelope422Uniform error envelope. ErrorEnvelope/v1/envelopes/{id}Get envelope detail (recipients + documents)
200Envelope with recipients and documents. EnvelopeDetailEnvelope404Uniform error envelope. ErrorEnvelope/v1/envelopes/{id}/auditGet the envelope audit trail
200Ordered audit events (created, sent, viewed, signed, completed, voided…). /v1/envelopes/{id}/documents/{docId}/downloadGet a short-lived download URL
Returns JSON { url, expiresInSeconds } (not a redirect). The URL is a pre-signed S3 link valid for 900 seconds (15 min). Fetch the docId from GET /v1/envelopes/{id} first.
docIdstring (uuid)requiredtypesource | rendered | signed_docx | signed_pdfrequiredsource = original DOCX · rendered = signer preview PDF · signed_docx = signed working copy · signed_pdf = sealed legal record (with audit certificate).200A time-limited download link. DownloadEnvelope404Uniform error envelope. ErrorEnvelope/v1/envelopes/{id}/remindRe-send the invite to recipients who haven't signed
202Reminder queued. EnvelopeEnvelope/v1/envelopes/{id}/voidVoid (cancel) an envelope
Cancels signing. The recipients' magic links are blocked immediately — a canceled document can no longer be signed — and an envelope.voided webhook fires.
application/jsonreasonstring202Envelope voided. EnvelopeEnvelope/v1/envelopes/{id}/recipients/{recipientId}/signing-linkGenerate a signing link for a recipient
Issues a fresh magic signing link and returns its URL, so you can deliver it via SMS, chat, or your own portal instead of email. The link is a single-use bearer credential that expires (30 days). Works only while the envelope is open (sent/in_progress) and the recipient hasn't signed.
recipientIdstring (uuid)required200A fresh signing link. SigningLinkEnvelope404Uniform error envelope. ErrorEnvelope409Uniform error envelope. ErrorEnvelopePer-business configuration (webhooks, branding).
/v1/business/{id}/webhookSet the webhook URL & secret
Configure where events are POSTed and the secret used to sign them. You choose your own webhookSecret; it is HMAC-SHA256'd over the raw request body into the X-NexSign-Signature header on every delivery.
idstring (uuid)requiredapplication/jsonwebhookUrlstring (uri)webhookSecretstring200Updated business. These are the objects the endpoints above accept and return. Enum types list every permitted value.
EnvelopeStatusdraftsentin_progresscompleteddeclinedvoidedexpired
FieldTypesignaturedate_signed
AnchorTypetextbookmark
ErrorCodebad_requestvalidation_failedunauthorizedforbiddennot_foundconflictpayment_requiredrate_limitedemail_not_verifiedinternal_error
Recipientemailstring (email)requiredfullNamestringrequiredroutingOrderintegerSigning order in sequential mode.FieldTargets a document by documentIndex (preferred) or documentName. If the same anchorKeyword appears multiple times in a document it is placed at every occurrence; the signer adopts once to fill them all.
documentIndexinteger0-based position in the uploaded files. Preferred; collision-proof.documentNamestringOriginal filename. Rejected if two uploaded files share this name.recipientEmailstring (email)requiredtypeFieldTyperequiredanchorKeywordstringrequiredText token in the DOCX (e.g. $signature) or, with anchorType=bookmark, a Word bookmark name.anchorTypeAnchorTyperequiredboolean, default trueEnvelopeidstring (uuid)externalIdstringsubjectstringmessagestringstatusEnvelopeStatussequentialbooleanexpiresAtstring (date-time)sentAtstring (date-time)completedAtstring (date-time)createdAtstring (date-time)Downloadurlstring (uri)Pre-signed S3 URL.expiresInSecondsintegerSigningLinkrecipientEmailstring (email)recipientFullNamestringurlstring (uri)The magic signing link to deliver via any channel.expiresAtstring (date-time)ApiErrorcodeErrorCodemessagestringdetailsobjectPaginationMetalimitintegernextCursorstringhasMorebooleanWebhookEnvelopeSenteventobjectenvelopeIdstringexternalIdstringsubjectstringsentAtstring (date-time)WebhookEnvelopeVoidedeventobjectenvelopeIdstringexternalIdstringreasonstringWebhookEnvelopeCompletedeventobjectenvelopeIdstringexternalIdstringsubjectstringcompletedAtstring (date-time)documentsarray of objectWebhookRecipienteventrecipient.viewed | recipient.signed | recipient.bouncedenvelopeIdstringexternalIdstringrecipientobjectenvelopeStatusEnvelopeStatusCreate an account, grab a token, and send your first 20 documents free.
Get your API token