API et intégrations

Une plateforme ouverte et transparente.

Une API REST documentée, des notifications HTTP sortantes signées, des exports dans des formats ouverts : Dacleo s’intègre à votre SI et le prouve.

Démarrage rapide

Premier appel en quelques étapes.

CLÉ

Créez une clé d’API

Depuis l’espace de travail : portée limitée au strict nécessaire, date d’expiration paramétrable.

portée: documents:lecture · expire: 90 j
APPEL

Interrogez l’API

Toutes les ressources de l’espace de travail sont accessibles en REST, décrites dans la spécification OpenAPI.

GET /api/documents · 200 OK
PREUVE

Vérifiez les signatures

Chaque notification HTTP sortante est signée HMAC-SHA256 ; chaque document porte ses preuves d’intégrité.

x-webhook-signature: ok

API REST

Documentée, à portée limitée, expirable.

Chaque ressource de l’espace de travail est accessible par l’API REST, décrite dans une spécification OpenAPI consultable via Swagger UI. Les clés d’API portent des portées et une date d’expiration.

GET /api/documentsRecherche et liste des documents
POST /api/documentsDépôt d’un document (analyse + empreinte)
POST /api/documents/{id}/finaliseScellement : enveloppe signée Ed25519, horodatage
POST /api/{ressource}/{id}/workflow/transitionFaire avancer un circuit de validation
GET /api/auditJournal d’audit, filtrable, exportable
$ curl https://api.dacleo.example/api/documents/doc_8f21 \
    -H "Authorization: Bearer $DACLEO_CLE_API"

{
  "id": "doc_8f21",
  "classe": "contrat",
  "version_courante": 3,
  "sha256": "9f86d081…f00a08",
  "signature": "ed25519:dacleo-platform-v1",
  "horodatage": "2026-06-10T09:14:33Z"
}
// Node.js 18+ - fetch natif
const rep = await fetch(
  "https://api.dacleo.example/api/documents/doc_8f21",
  { headers: { Authorization: `Bearer ${process.env.DACLEO_CLE_API}` } }
);
const doc = await rep.json();
console.log(doc.sha256, doc.horodatage);
# Python 3 - requests
import os, requests

rep = requests.get(
    "https://api.dacleo.example/api/documents/doc_8f21",
    headers={"Authorization": f"Bearer {os.environ['DACLEO_CLE_API']}"},
    timeout=10,
)
doc = rep.json()
print(doc["sha256"], doc["horodatage"])

Notifications HTTP sortantes

Votre SI est prévenu, et peut le vérifier.

Dacleo - message signé HMAC-SHA256 → SI client ← accusé / reprise espacée - journal de livraison
SIGNATURE

Messages signés

  • HMAC-SHA256 sur chaque livraison
  • Abonnement par type d’événement
FIABILITÉ

Reprises automatiques

  • Reprise à intervalles croissants
  • File de traitement dédiée, journal des échecs
vérifier la signature - node.js
import { createHmac, timingSafeEqual } from "node:crypto";

function verifier(corps, enTete, secret) {
  const recu = enTete.replace(/^sha256=/, "");
  const attendu = createHmac("sha256", secret)
    .update(corps).digest("hex");
  return timingSafeEqual(
    Buffer.from(attendu), Buffer.from(recu));
}
// l'en-tête X-Webhook-Signature: sha256=… accompagne chaque livraison

Rejouez n’importe quelle livraison

Chaque livraison est consignée - code de réponse, durée, tentatives. Une livraison échouée se rejoue d’un clic depuis l’interface, ou par l’API.

journal 200 · 142 ms · tentative 1/5 - rejeu disponible

Sorties et exports

Des formats ouverts, par principe.

CSV / Excel Journaux d’audit et tableaux de bord exportables à la demande ou par rapports programmés
Flux ICS Calendriers consultables par abonnement depuis Outlook ou Google Agenda
PDF générés Documents produits depuis des modèles administrés (HTML → PDF), puis signés automatiquement
Courriel / SMS Courriels transactionnels avec modèles et signature DKIM ; notifications SMS en option
OpenAPI / Swagger UI

Parcourez la spécification avec vos équipes.