Intégration Server-to-Server (API REST)
L’API vous permet d’approuver des contrats directement depuis votre Backend et de transmettre les consentements de manière sécurisée au système HashEntry.
Authentification
Section intitulée « Authentification »Les requêtes API doivent inclure l’en-tête HTTP X-API-Key avec votre clé API de site unique depuis le tableau de bord HashEntry.
Signature HMAC des Requêtes
Section intitulée « Signature HMAC des Requêtes »Toutes les requêtes POST doivent être signées avec HMAC-SHA256 pour garantir l’intégrité des requêtes et la protection contre les attaques par rejeu. Le SDK JS gère cela automatiquement ; pour les intégrations côté serveur, vous devez implémenter la signature manuellement.
En-têtes Requis
Section intitulée « En-têtes Requis »| En-tête | Description |
|---|---|
X-API-Key | Votre clé API du site |
X-Signature | Signature HMAC-SHA256 de la requête canonique |
X-Timestamp | Horodatage Unix (secondes) — doit être dans ±300s du temps serveur |
X-Nonce | UUID unique par requête — empêche les attaques par rejeu |
Algorithme de Signature
Section intitulée « Algorithme de Signature »1. timestamp = horodatage Unix actuel (secondes)2. nonce = UUID aléatoire3. bodyHash = SHA-256(corps de la requête en chaîne JSON)4. canonical = "{METHOD}\n{PATH}\n{timestamp}\n{nonce}\n{bodyHash}"5. signature = HMAC-SHA256(canonical, apiKey)Authentification S2S (Server-to-Server)
Section intitulée « Authentification S2S (Server-to-Server) »Pour les intégrations backend automatisées, vous pouvez utiliser le flux S2S Auth qui combine l’authentification par clé API avec des tokens JWT Bearer.
Fonctionnement
Section intitulée « Fonctionnement »- Créez un membre avec le rôle
api_uservia le tableau de bord HashEntry (Paramètres → Équipe → Inviter) - L’utilisateur API se connecte via
POST /api/v1/auth/loginpour obtenir un token JWT - Incluez les deux en-têtes dans les requêtes S2S :
X-API-Key: he_live_xxxAuthorization: Bearer {jwt_token}Points de terminaison S2S
Section intitulée « Points de terminaison S2S »| Méthode | Endpoint | Description |
|---|---|---|
POST | /tool/v1/s2s/consents | Enregistrer un consentement unique |
POST | /tool/v1/s2s/consents/batch | Enregistrer des consentements en lot |
GET | /tool/v1/s2s/consents/export | Exporter les enregistrements de consentement |
Note : Le rôle
api_userest limité à l’accès API S2S uniquement — la connexion au panneau n’est pas autorisée.
Enregistrement du Consentement
Section intitulée « Enregistrement du Consentement »Endpoint : POST https://system.hashentry.com/tool/v1/consents
En-têtes Requis :
Content-Type: application/jsonX-API-Key: VOTRE_CLÉ_API_SECRÈTEX-Signature: {signature_hmac}X-Timestamp: {horodatage_unix}X-Nonce: {uuid_unique}JSON Payload
Section intitulée « JSON Payload »{ "consent_type": "cookie_consent", "decision": "accept", "document_version_id": "politique-de-cookies-uuid"}