REST API
v1

API документацияПроверка слов

REST API для автоматической проверки текстов на соответствие 168-ФЗ. Интегрируйте проверку в свои приложения, CRM или сайт. Простой JSON-интерфейс, быстрый ответ.

< 200 мсСреднее время ответа
99.9% uptimeДоступность
10 на ключЗапросов / сек
v1 (стабильная)Версия API

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

Как передавать ключ

Все запросы к API должны содержать заголовок X-Api-Key с вашим персональным ключом.

http
POST /api/external/v1/check HTTP/1.1
Host: imyrist.ru
X-Api-Key: sk_live_your_api_key_here
Content-Type: application/json

Не передавайте ключ через URL-параметры и не публикуйте его в открытом коде.

Как получить ключ

  1. 1Зарегистрируйтесь на imyrist.ru
  2. 2Перейдите в Личный кабинет → Проверка слов → API-ключи
  3. 3Нажмите «Создать ключ» и задайте название
  4. 4Пополните баланс символов в разделе «Тарифы»
  5. 5Скопируйте ключ — он показывается один раз
Зарегистрироваться и получить ключ

Эндпоинты

Базовый URL: https://imyrist.ru/api/external/v1

Проверка текста или слова на соответствие 168-ФЗ

Заголовки запроса

ПолеТипОбязательноОписание
X-Api-KeystringДаВаш API-ключ.
Content-TypestringДаДолжен быть application/json.

Тело запроса (JSON)

ПолеТипОбязательноОписание
textstringДаТекст или слово для проверки. Максимум 50 000 символов.
typestringНетРежим разбивки входных данных."text" | "word" (по умолчанию: "text")
modestringНетЖёсткость проверки: strict — точное совпадение, soft — с учётом словоформ."strict" | "soft" (по умолчанию: "soft")

Пример запроса (curl)

bash
curl -X POST https://imyrist.ru/api/external/v1/check \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "Лучший юрист гарантирует результат и выигрывает каждое дело",
    "type": "text",
    "mode": "soft"
  }'

Ответ 200 OK

ПолеТипОписание
successbooleanВсегда true при успешном ответе.
totalWordsnumberОбщее число слов во входном тексте.
checkedWordsnumberЧисло слов, прошедших проверку.
forbiddenCountnumberКоличество запрещённых слов/словосочетаний.
allowedCountnumberКоличество разрешённых слов.
forbiddenarrayСписок объектов: { word, position, context, fine } — запрещённые слова с позицией и потенциальным штрафом.
allowedarrayСписок разрешённых слов (строки).
riskLevelstring"none" | "low" | "medium" | "high" — итоговый уровень риска.
maxFinenumberМаксимально возможный штраф по 168-ФЗ (в рублях).
charCountnumberЧисло символов, списанных с баланса ключа.
remainingCharsnumberОстаток символов на ключе после запроса.

Пример ответа

json
{
  "success": true,
  "totalWords": 10,
  "checkedWords": 10,
  "forbiddenCount": 2,
  "allowedCount": 8,
  "forbidden": [
    {
      "word": "гарантирует",
      "position": 3,
      "context": "...юрист гарантирует результат...",
      "fine": 50000
    },
    {
      "word": "лучший",
      "position": 1,
      "context": "Лучший юрист...",
      "fine": 100000
    }
  ],
  "allowed": ["юрист", "результат", "выигрывает", "каждое", "дело"],
  "riskLevel": "high",
  "maxFine": 150000,
  "charCount": 62,
  "remainingChars": 49938
}
401Unauthorized
json
{ "error": "Invalid or missing API key" }
402Insufficient chars
json
{
  "error": "Insufficient character balance",
  "remainingChars": 12
}

Тарифы

Стоимость рассчитывается по количеству символов в проверяемом тексте. Чем больше пакет — тем выгоднее цена за символ. Символы не сгорают и действуют бессрочно.

500
50 000 символов
0.01 ₽ / символ
Купить
Популярный
900
100 000 символов
0.009 ₽ / символ
Купить
1 600
200 000 символов
0.008 ₽ / символ
Купить
3 500
500 000 символов
0.007 ₽ / символ
Купить

Детальное сравнение тарифов

Пакет символовСтоимостьЦена за символ~Проверок текстовСрок действия
50 000500 ₽0.010 ₽~800Бессрочно
100 000900 ₽0.009 ₽~1 600Бессрочно
200 0001 600 ₽0.008 ₽~3 200Бессрочно
500 0003 500 ₽0.007 ₽~8 000Бессрочно

* Среднее число проверок рассчитано при тексте длиной ~60 символов. Реальное значение зависит от длины ваших текстов.

Лимиты запросов

10
на ключ
Запросов в секунду
50 000
символов
Макс. длина текста
30
секунд
Таймаут запроса

Как обрабатывать 429 Too Many Requests

При превышении лимита API возвращает статус 429. Используйте экспоненциальный откат (exponential backoff) для повторных попыток.

javascript
async function checkWithRetry(text, maxRetries = 3) {
  for (let attempt = 0; attempt < maxRetries; attempt++) {
    const res = await fetch('/api/external/v1/check', { /* ... */ });

    if (res.status === 429) {
      const delay = Math.pow(2, attempt) * 200; // 200ms, 400ms, 800ms
      await new Promise(r => setTimeout(r, delay));
      continue;
    }

    return res.json();
  }
  throw new Error('Rate limit exceeded after retries');
}

Коды ошибок

КодСтатусОписание
400Bad RequestНекорректный запрос: отсутствуют обязательные поля, недопустимые значения параметров или превышен лимит длины текста.
401UnauthorizedAPI-ключ не передан или не найден в системе. Проверьте заголовок X-Api-Key.
402Payment RequiredНедостаточно символов на ключе. Пополните баланс в личном кабинете.
429Too Many RequestsПревышен лимит запросов: 10 запросов/секунду на ключ. Повторите через короткое время.
500Internal Server ErrorВнутренняя ошибка сервера. Если ошибка повторяется — обратитесь в поддержку.

Примеры кода

curl -X POST https://imyrist.ru/api/external/v1/check \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "Лучший юрист гарантирует результат и выигрывает каждое дело",
    "type": "text",
    "mode": "soft"
  }'

Мониторинг и статистика

Через личный кабинет

В разделе Проверка слов → API-ключи доступны: история проверок, расход символов по дням, топ-проверяемых слов, количество запросов.

Через API

Используйте эндпоинт GET /api/external/v1/key/stats для программного получения баланса и статистики и автоматического пополнения при достижении минимального порога.

Старт за 5 минут

Готовы интегрировать проверку слов?

Зарегистрируйтесь, создайте API-ключ и начните проверять тексты уже сейчас. Первые 500 символов — бесплатно.