Integración Server-to-Server (API REST)
La API permite que apruebe contratos/cookies directamente desde su backend, transmitiendo el consentimiento cifrado a nuestra bóveda.
Autenticación
Sección titulada «Autenticación»Las solicitudes API deben incluir el encabezado HTTP X-API-Key con su clave API de sitio única del panel de HashEntry.
Firma HMAC de Solicitudes
Sección titulada «Firma HMAC de Solicitudes»Todas las solicitudes POST deben firmarse con HMAC-SHA256 para garantizar la integridad de la solicitud y protección contra ataques de repetición. El SDK de JS lo maneja automáticamente; para integraciones del lado del servidor, debe implementar la firma manualmente.
Encabezados Requeridos
Sección titulada «Encabezados Requeridos»| Encabezado | Descripción |
|---|---|
X-API-Key | Su clave API del sitio |
X-Signature | Firma HMAC-SHA256 de la solicitud canónica |
X-Timestamp | Marca de tiempo Unix (segundos) — debe estar dentro de ±300s del tiempo del servidor |
X-Nonce | UUID único por solicitud — previene ataques de repetición |
Algoritmo de Firma
Sección titulada «Algoritmo de Firma»1. timestamp = marca de tiempo Unix actual (segundos)2. nonce = UUID aleatorio3. bodyHash = SHA-256(cuerpo de solicitud como cadena JSON)4. canonical = "{METHOD}\n{PATH}\n{timestamp}\n{nonce}\n{bodyHash}"5. signature = HMAC-SHA256(canonical, apiKey)Autenticación S2S (Server-to-Server)
Sección titulada «Autenticación S2S (Server-to-Server)»Para integraciones backend automatizadas, puede usar el flujo S2S Auth que combina autenticación con clave API y tokens JWT Bearer.
Cómo Funciona
Sección titulada «Cómo Funciona»- Cree un miembro con el rol
api_userdesde el panel de HashEntry (Configuración → Equipo → Invitar) - El usuario API inicia sesión vía
POST /api/v1/auth/loginpara obtener un token JWT - Incluya ambos encabezados en las solicitudes S2S:
X-API-Key: he_live_xxxAuthorization: Bearer {jwt_token}Endpoints S2S
Sección titulada «Endpoints S2S»| Método | Endpoint | Descripción |
|---|---|---|
POST | /tool/v1/s2s/consents | Registrar un consentimiento individual |
POST | /tool/v1/s2s/consents/batch | Registrar consentimientos en lote |
GET | /tool/v1/s2s/consents/export | Exportar registros de consentimiento |
Nota: El rol
api_userestá restringido solo al acceso API S2S — no se permite el inicio de sesión en el panel.
Registro de Consentimiento
Sección titulada «Registro de Consentimiento»Endpoint: POST https://system.hashentry.com/tool/v1/consents
Encabezados Requeridos:
Content-Type: application/jsonX-API-Key: TU_CLAVE_SECRETA_DE_APIX-Signature: {firma_hmac}X-Timestamp: {marca_de_tiempo_unix}X-Nonce: {uuid_unico}JSON Payload
Sección titulada «JSON Payload»{ "consent_type": "document_approval", "decision": "accept", "document_version_id": "uuid-politica-de-privacidad", "ip_address": "192.168.1.5", "metadata": { "order_id": "ORD-54321" }}