Интеграция Server-to-Server (REST API)
API позволяет одобрять контракты напрямую с вашего Backend и безопасно передавать согласия в систему HashEntry.
Аутентификация
Заголовок раздела «Аутентификация»API-запросы должны содержать HTTP-заголовок X-API-Key с уникальным ключом API сайта из панели управления HashEntry.
Подпись запросов HMAC
Заголовок раздела «Подпись запросов HMAC»Все POST-запросы должны быть подписаны с помощью HMAC-SHA256 для обеспечения целостности запросов и защиты от повторных атак. JS SDK делает это автоматически; при серверной интеграции подпись необходимо реализовать вручную.
Обязательные заголовки
Заголовок раздела «Обязательные заголовки»| Заголовок | Описание |
|---|---|
X-API-Key | Ваш ключ API сайта |
X-Signature | HMAC-SHA256 подпись канонического запроса |
X-Timestamp | Временная метка Unix (секунды) — должна быть в пределах ±300с от серверного времени |
X-Nonce | Уникальный UUID на каждый запрос — предотвращает повторные атаки |
Алгоритм подписи
Заголовок раздела «Алгоритм подписи»1. timestamp = текущая временная метка Unix (секунды)2. nonce = случайный UUID3. bodyHash = SHA-256(тело запроса в формате JSON)4. canonical = "{METHOD}\n{PATH}\n{timestamp}\n{nonce}\n{bodyHash}"5. signature = HMAC-SHA256(canonical, apiKey)Аутентификация S2S (Server-to-Server)
Заголовок раздела «Аутентификация S2S (Server-to-Server)»Для автоматизированных серверных интеграций используйте S2S Auth — комбинацию аутентификации по ключу API с JWT Bearer-токенами.
Как это работает
Заголовок раздела «Как это работает»- Создайте участника с ролью
api_userчерез панель HashEntry (Настройки → Команда → Пригласить) - API-пользователь входит через
POST /api/v1/auth/loginдля получения JWT-токена - Используйте оба заголовка в S2S-запросах:
X-API-Key: he_live_xxxAuthorization: Bearer {jwt_token}Конечные точки S2S
Заголовок раздела «Конечные точки S2S»| Метод | Endpoint | Описание |
|---|---|---|
POST | /tool/v1/s2s/consents | Запись единичного согласия |
POST | /tool/v1/s2s/consents/batch | Запись пакетных согласий |
GET | /tool/v1/s2s/consents/export | Экспорт записей согласий |
Примечание: Роль
api_userограничена только доступом к S2S API — вход в панель управления невозможен.
Запись согласия
Заголовок раздела «Запись согласия»Endpoint: POST https://system.hashentry.com/tool/v1/consents
Обязательные заголовки:
Content-Type: application/jsonX-API-Key: ВАШ_СЕКРЕТНЫЙ_КЛЮЧ_APIX-Signature: {hmac_подпись}X-Timestamp: {unix_метка}X-Nonce: {уникальный_uuid}JSON Payload
Заголовок раздела «JSON Payload»{ "consent_type": "cookie_consent", "decision": "accept", "document_version_id": "privacy-policy-uuid"}