API REST

OpenAPI 3.1, webhooks signés, SDK Python · Go · TypeScript

Intégrez SecuFile dans vos workflows CRM, ERP ou plateformes immobilières. Spec OpenAPI publique, chiffrement client-side documenté, idempotency keys.

# Uploader un document chiffré côté client puis demander la signature
curl -X POST https://api.secuaas.com/v1/secufile/documents \
  -H "Authorization: Bearer $CV_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "filename": "promesse-achat-12345.pdf",
    "ciphertext_url": "https://blob.example.com/abc123",
    "key_wrap": "vault://kms/key/01HX...",
    "signers": [{"email":"client@example.com","role":"buyer"}]
  }'
# → { "document_id": "doc_01HX...", "signature_url": "https://..." }
bash

Auth Bearer

Tokens API avec scopes granulaires (documents:read, documents:write, signatures:create, audit:read…).

Idempotency-Key

Tous les POST acceptent un header Idempotency-Key (UUID v4) pour la sécurité de retry et la dédup en cas d'erreur réseau.

Webhooks signés

HMAC-SHA256 sur chaque payload (document.signed, document.viewed, share.expired…), retry avec backoff.

OpenAPI 3.1

Spec publique téléchargeable, génération de clients auto, exemples cURL pour chaque endpoint, sandbox sandbox.secuaas.com.

Vérification webhook

Chaque webhook envoyé par ConformVault est signé. Vérifiez la signature côté serveur pour rejeter les payloads non authentiques.

webhook-verify.js
// Vérification HMAC-SHA256 d'un webhook ConformVault
import crypto from 'node:crypto';

function verify(signature, body, secret) {
  const expected = 'sha256=' + crypto
    .createHmac('sha256', secret)
    .update(body)
    .digest('hex');
  return crypto.timingSafeEqual(
    Buffer.from(signature),
    Buffer.from(expected),
  );
}

Endpoints principaux

  • POST /v1/documentsUploader un document chiffré
  • GET /v1/documents/{id}Métadonnées + clé wrappée
  • POST /v1/documents/{id}/signaturesDemander une signature
  • POST /v1/sharesCréer un lien signé à expiration
  • GET /v1/auditJournal d'audit Loi 25
  • POST /v1/webhooksCréer un webhook signé