Démarrage rapide
De zéro à une signature finalisée en 5 minutes, avec curl uniquement.
1. Récupérez une clé API sandbox
Depuis votre organisation Signlift, ouvrez la section Applications externes,
créez une application avec l'environnement sandbox, et copiez la clé API et
le webhook_secret affichés à l'écran. La clé est une chaîne hexadécimale de
64 caractères, sans préfixe — elle n'est affichée qu'une fois (Signlift ne
stocke que son hash SHA-256).
export SIGNLIFT_API_KEY="a3f9b1c8...d4e2"2. Uploadez un document PDF
curl https://app.signlift.eu/api/v1/documents \
-H "X-Api-Key: $SIGNLIFT_API_KEY" \
-F "file=@contract.pdf"Réponse :
{
"id": 42,
"content_type": "pdf",
"sha256_hash": "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
"file_size": 154823,
"status": "ready",
"created_at": "2026-05-17T15:00:00Z"
}3. Créez une signature request
curl https://app.signlift.eu/api/v1/signature_requests \
-H "X-Api-Key: $SIGNLIFT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"signature_request": {
"mode": "sequential",
"validity_days": 30,
"send_email": true,
"identity_declaration_accepted": true,
"signers": [
{
"ref": "jeanne",
"first_name": "Jeanne",
"last_name": "Dupont",
"email": "jeanne@example.com",
"order": 1
}
],
"documents": [
{
"id": 42,
"signers": [
{
"signer_ref": "jeanne",
"stamp": { "type": "magic_field", "value": { "tag": "[SIG_JEANNE]" } }
}
]
}
]
}
}'Extrait de la réponse 201 :
{
"id": 42,
"status": "pending",
"mode": "sequential",
"expires_at": "2026-06-16T15:00:00Z",
"signers": [
{
"id": 1768,
"first_name": "Jeanne",
"last_name": "Dupont",
"email": "jeanne@example.com",
"status": "pending",
"signing_url": "https://app.signlift.eu/sign/eyJhbGciOiJIUzI1NiJ9..."
}
]
}Le statut du signataire est pending au retour synchrone du POST. Il passe à
notified une fois l'e-mail effectivement envoyé (job asynchrone). Pour la
liste complète des champs retournés, voir
Référence — Signature Requests.
Transmettez le signing_url à Jeanne (e-mail, redirect HTTP, iframe) — c'est
une URL absolue prête à l'emploi. Voir
Intégration iframe.
4. Recevez le webhook de complétion
Lorsque tous les signataires ont signé, Signlift POSTe sur l'URL de webhook configurée pour votre application externe :
POST /webhooks/signlift HTTP/1.1
Content-Type: application/json
X-Signlift-Event: request.completed
X-Signlift-Delivery: 12345
X-Signlift-Signature: sha256=a3f9b1c8...
{
"event": "request.completed",
"occurred_at": "2026-05-17T15:12:43Z",
"signature_request": {
"id": 42,
"status": "completed",
"mode": "sequential"
}
}Vérifiez la signature HMAC-SHA256 avant de traiter le payload — voir Webhooks pour le snippet de vérification dans votre langage.
Récupérez ensuite les PDF signés via GET /api/v1/signature_requests/42 —
quand le statut est completed, la réponse contient un tableau
download_urls avec, pour chaque document, son signed_url et son
certificate_url (URLs S3 présignées valables 15 minutes).
Et maintenant ?
- Authentification — clés API et URLs de signature.
- Limites et rate-limits — quotas par plan, comportement en cas de 429.
- Webhooks — signature HMAC, retry policy, idempotence.
- Intégration iframe — embarquer la signature dans votre app.
- Playground interactif — construire un payload sur mesure.