Sign Requests

Create Sign Request

Create a new signature request with one or more signers. The request is created in draft status and must be sent explicitly via the send endpoint.

post/sign-requests

Request

  • Base URL: https://www.jurisign.fr/api/v1
  • URL: https://www.jurisign.fr/api/v1/sign-requests
  • Auth: HTTP bearer

Headers

Idempotency-Keystring

Optional. Send a unique key (for example your own order reference) to make this call safely repeatable. If the network drops after your request reaches us but before you get the response, replay the exact same call with the same key: you receive the original response — same body, same status, with an Idempotent-Replayed: true header — and no second signature request is created, so no second SMS is billed. Reusing a key with a DIFFERENT body returns 409: that is an integration bug, not a retry. Keys are scoped to your organization and honoured for 24 hours. Failed responses never consume a key.

Request body

document_idstring uuid required

UUID of a previously uploaded document

subjectstring required

Email subject line for signers

messagestring nullable

Optional message included in the invitation email

metadataobject nullable

Arbitrary key-value metadata for your records

redirect_urlstring uri nullable

Must use https and match the domain declared for your organization, or the request is rejected with a 422. Contact support to register your domain. Why a declared domain: the signer trusts the jurisign.fr link; accepting any URL would let anyone bounce your signers to a lookalike phishing site (open redirect). Your subdomains are accepted automatically; do not declare an IP, localhost or a shared hosting domain. Omit redirect_url while testing. See https://www.jurisign.fr/api/guide#redirection

signing_order_type0 | 1 required

0 = parallel (all signers at once), 1 = sequential (one after another)

expiry_hoursinteger required

Hours until the request expires (max 30 days)

require_selfieboolean

Require signers to take a selfie for identity verification

require_geolocationboolean

Record where each signer signs: the position declared by the signer's device (with its accuracy) and a fingerprint of the device, written to the proof (the signer consents first). Never rejected: included from the Professionnel plan; otherwise billed 1.25 EUR excl. VAT per request on the monthly invoice (or one prepaid 'lieu de signature' credit is used). Never billed in the sandbox.

requires_paraphboolean

Initials on every page: each signer draws initials distinct from the signature, stamped at the bottom of every page (the full signature goes in the signature zones). Not restricted by plan on the API.

auto_sendboolean

Send the invitations immediately after creation, so that a single call replaces POST /sign-requests followed by POST /sign-requests/{id}/send.

identity_verificationboolean

Paid option "Signer identity verification". Before signing, each signer of the request verifies their identity: photo of an identity document, liveness check, face match against the document photo, and match between the name on the document and the prenom/nom you provided. The check is performed by our provider Didit; only the result (status, document type and country, masked number, scores) is kept in the evidence file. The signature remains a simple electronic signature (SES): the verification strengthens the evidence file, it is neither an advanced nor a qualified signature. The per-signer result is returned in signers[].identity_verification (GET /sign-requests/{id}), and the webhooks signer.identity_verified / signer.identity_failed notify each decision; the balance of identity credits is in GET /account/credits.

Available once the option is enabled for your organization; otherwise the field is ignored and the request is created without it.

Billing: one prepaid credit per signer whose verification succeeds (credits are bought in Settings > Billing). A signer who fails or never completes the check consumes no credit. Creation is refused with 422 (errors.identity_verification) when your available credits (balance minus signers already reserved by pending requests) do not cover every signer.

Sandbox: the verification is simulated, and no credit is needed or consumed.

remindersboolean

Automatic e-mail reminders to signers (D+1, D+3, D+5 and the day before expiry). Set to false to disable them for this request, e.g. when your system sends its own reminders (see POST /sign-requests/{id}/remind).

sender_namestring nullable

Name shown to signers as the sender for this request, e.g. your own customer when you sign on their behalf. Displayed as "<sender_name>, via <your organization name>" in the invitation e-mail and on the signing page, and recorded in the evidence file. No URL or HTML. Omit it to keep the default sender name.

Example request

{
  "subject": "Please sign the NDA",
  "redirect_url": "https://app.your-company.com/signed",
  "payment": {
    "amount_cents": 5000,
    "currency": "eur",
    "description": "Acompte devis n°2026-042"
  },
  "expiry_hours": 72,
  "signers": [
    {
      "attachments_requested": [
        "RIB",
        {
          "label": "Justificatif de domicile",
          "required": false
        }
      ]
    }
  ],
  "identity_verification": true
}

Response

Sign request created

Example response

{
  "data": {
    "subject": "Please sign the NDA",
    "redirect_url": "https://app.your-company.com/signed",
    "payment": {
      "amount_cents": 5000,
      "currency": "eur"
    },
    "metadata": {
      "ref": "D-2026-042",
      "source": "api"
    }
  }
}

Changes

No recorded changes to this operation across all 1 revision of this API.