Перейти к содержанию

API псевдонимизации.io

Добро пожаловать в документацию pseudonymize.io. Поместите этот API на пути ваших конфиденциальных данных, прежде чем они достигнут внешних систем (например, LLM, аналитических хранилищ или сторонних инструментов поддержки).

Быстрый старт

Отправьте запрос в Text API для псевдонимизации прозы.

curl -X POST https://api.pseudonymize.io/text \
  -H "Authorization: Bearer ps_live_your_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "Alice Rossi disputed invoice INV-204 from [email protected]",
    "policy": "default"
  }'

Ответ:

{
  "text": "PERSON_01 disputed invoice INV-204 from EMAIL_01",
  "entities": [
    { "type": "PERSON", "original": "Alice Rossi", "pseudonym": "PERSON_01" },
    { "type": "EMAIL", "original": "[email protected]", "pseudonym": "EMAIL_01" }
  ]
}

Аутентификация

Все запросы API должны включать ваш ключ API в заголовок «Авторизация».

Authorization: Bearer ps_live_...

Ключи API генерируются в формате ps_live_.... В целях вашей безопасности полный секретный ключ отображается только один раз при создании. pseudonymize.io никогда не хранит ключи API в открытом виде — сохраняются только необратимый криптографический хеш (SHA-256) и короткий идентифицирующий префикс (ps_live_XXXX).

Вы можете управлять своими ключами API на Dashboard.

Текстовый API

POST https://api.pseudonymize.io/text (также доступен через POST https://api.pseudonymize.io/v1/text и /api/v1/text)

Заменяет идентификаторы внутри текста, не выравнивая текст вокруг них.

Тело запроса

  • text (обязательное поле): текст для обработки.
  • policy (строка, необязательно): используемая политика. По умолчанию установлено значение «по умолчанию».
  • detect (массив, необязательно): определенные типы объектов для обнаружения.
{
  "text": "Call me at +39 333 1234567.",
  "detect": ["PHONE"]
}

API структурированных данных

POST/api/v1/data

Псевдонимизируйте поля идентификаторов, сохраняя при этом строки и схемы пригодными для использования.

Тело запроса

  • payload (объект | массив, обязателен): структура JSON для обработки (также может быть передана как data).
  • policy (строка, необязательно): используемая политика. По умолчанию установлено значение «по умолчанию».
  • detect (массив, необязательно): определенные типы объектов для обнаружения.
{
  "payload": {
    "user": {
      "name": "Mario Rossi",
      "email": "[email protected]"
    }
  },
  "detect": ["PERSON", "EMAIL"]
}

Выставление счетов и резервирование кредита

Pseudonymize.io работает по прозрачной модели оплаты по мере использования:

  • 1 € за миллион учтённых токенов. Каждый успешный запрос округляется вверх до блоков по 1000 токенов (1 кредит), с минимальной платой 0,001 €.
  • Предварительное резервирование: кредиты автоматически резервируются на границе шлюза до того, как полезная нагрузка достигнет основного ядра. Если на счету недостаточно средств, API немедленно возвращает сообщение «402 требуется оплата» без пересылки данных клиента.
  • Гарантия автоматического возврата: если вызов основной обработки вышестоящего уровня завершается сбоем или истекает время ожидания, зарезервированные кредиты немедленно возвращаются в полном объеме.

Псевдонимы и детерминированная идентичность

Pseudonymize.io использует детерминированное сохранение личности в рамках одного запроса. Если «Алиса» встречается три раза в одном документе, она все три раза становится «ЛИЦО_01». Это позволяет магистрам понять, что это один и тот же человек, не зная кто это.

Ошибки и ограничения

Мы используем стандартные коды состояния HTTP.

  • 200 OK: успешная обработка.
  • 400 Bad Request: неверный или отсутствующий формат полезных данных, либо глубина структурированных данных превышает 32 уровня.
  • 401 Unauthorized: ключ API отсутствует, недействителен или неактивен.
  • «402 Требуется оплата»: Осталось недостаточно кредитов. Заблокировано на границе шлюза.
  • «413 Payload Too Large»: размер тела запроса превышает 10 МБ или общее количество структурированных элементов превышает 50 000 ключей.
  • «429 слишком много запросов»: превышен лимит скорости (60 запросов/мин на ключ API, 120 запросов/мин на учетную запись и IP). Заголовок Retry-After указывает, когда следует повторить попытку.
  • 502 Bad Gateway: основной механизм недоступен или сбой внутренней обработки. Кредиты автоматически возвращаются.
  • «504 Gateway Timeout»: основной механизм не ответил в течение 30 секунд. Кредиты автоматически возвращаются.

Поддерживаемые объекты

  • ЧЕЛОВЕК (Имена)
  • ОРГАНИЗАЦИЯ (названия компаний)
  • EMAIL (адреса электронной почты)
  • ТЕЛЕФОН (номера телефонов)
  • LOCATION (Города, адреса)
  • IP (IPv4 и IPv6)
  • IBAN (банковские счета)
  • CARD (Кредитные/дебетовые карты)

Безопасность

  • Таблицы выставления счетов шлюза и метрики структурированных запросов исключают тела запросов и ответов API. Метаданные учетной записи, аутентификации, использования, резервирования и оплаты сохраняются отдельно; удаление учетной записи не удаляет каждую запись или резервную копию.
  • Успешные ответы с Idempotency-Key сохраняются в памяти процесса в течение пятиминутного окна воспроизведения. Сведения об объекте могут содержать оригинальные идентификаторы. Элементы управления механизмом, прокси-сервером, свопом, аварийным дампом и резервным копированием требуют отдельной проверки; нулевое сохранение диска не гарантируется во всей цепочке обработки.
  • Ограничения на обработку и удаление см. в Политике конфиденциальности и на странице «Безопасность».