REST API для автоматической проверки текстов на соответствие 168-ФЗ. Интегрируйте проверку в свои приложения, CRM или сайт. Простой JSON-интерфейс, быстрый ответ.
Все запросы к API должны содержать заголовок X-Api-Key с вашим персональным ключом.
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-параметры и не публикуйте его в открытом коде.
Базовый URL: https://imyrist.ru/api/external/v1
Проверка текста или слова на соответствие 168-ФЗ
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
| X-Api-Key | string | Да | Ваш API-ключ. |
| Content-Type | string | Да | Должен быть application/json. |
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
| text | string | Да | Текст или слово для проверки. Максимум 50 000 символов. |
| type | string | Нет | Режим разбивки входных данных."text" | "word" (по умолчанию: "text") |
| mode | string | Нет | Жёсткость проверки: strict — точное совпадение, soft — с учётом словоформ."strict" | "soft" (по умолчанию: "soft") |
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"
}'| Поле | Тип | Описание |
|---|---|---|
| success | boolean | Всегда true при успешном ответе. |
| totalWords | number | Общее число слов во входном тексте. |
| checkedWords | number | Число слов, прошедших проверку. |
| forbiddenCount | number | Количество запрещённых слов/словосочетаний. |
| allowedCount | number | Количество разрешённых слов. |
| forbidden | array | Список объектов: { word, position, context, fine } — запрещённые слова с позицией и потенциальным штрафом. |
| allowed | array | Список разрешённых слов (строки). |
| riskLevel | string | "none" | "low" | "medium" | "high" — итоговый уровень риска. |
| maxFine | number | Максимально возможный штраф по 168-ФЗ (в рублях). |
| charCount | number | Число символов, списанных с баланса ключа. |
| remainingChars | number | Остаток символов на ключе после запроса. |
{
"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
}{ "error": "Invalid or missing API key" }{
"error": "Insufficient character balance",
"remainingChars": 12
}Стоимость рассчитывается по количеству символов в проверяемом тексте. Чем больше пакет — тем выгоднее цена за символ. Символы не сгорают и действуют бессрочно.
| Пакет символов | Стоимость | Цена за символ | ~Проверок текстов | Срок действия |
|---|---|---|---|---|
| 50 000 | 500 ₽ | 0.010 ₽ | ~800 | Бессрочно |
| 100 000 | 900 ₽ | 0.009 ₽ | ~1 600 | Бессрочно |
| 200 000 | 1 600 ₽ | 0.008 ₽ | ~3 200 | Бессрочно |
| 500 000 | 3 500 ₽ | 0.007 ₽ | ~8 000 | Бессрочно |
* Среднее число проверок рассчитано при тексте длиной ~60 символов. Реальное значение зависит от длины ваших текстов.
При превышении лимита API возвращает статус 429. Используйте экспоненциальный откат (exponential backoff) для повторных попыток.
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');
}| Код | Статус | Описание |
|---|---|---|
| 400 | Bad Request | Некорректный запрос: отсутствуют обязательные поля, недопустимые значения параметров или превышен лимит длины текста. |
| 401 | Unauthorized | API-ключ не передан или не найден в системе. Проверьте заголовок X-Api-Key. |
| 402 | Payment Required | Недостаточно символов на ключе. Пополните баланс в личном кабинете. |
| 429 | Too Many Requests | Превышен лимит запросов: 10 запросов/секунду на ключ. Повторите через короткое время. |
| 500 | Internal 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-ключи доступны: история проверок, расход символов по дням, топ-проверяемых слов, количество запросов.
Используйте эндпоинт GET /api/external/v1/key/stats для программного получения баланса и статистики и автоматического пополнения при достижении минимального порога.
Зарегистрируйтесь, создайте API-ключ и начните проверять тексты уже сейчас. Первые 500 символов — бесплатно.