API Документация
Обзор
ruSpam API предоставляет доступ к нашей системе классификации спама через простые HTTP-запросы. API позволяет интегрировать функциональность обнаружения спама в ваши приложения и сервисы.
Все запросы к API требуют аутентификации с использованием токена API, который должен быть передан в заголовке запроса.
Базовый URL
Аутентификация
Все запросы к API должны включать токен в заголовке token
.
Получение API токена
Для использования API вам необходим персональный токен доступа. Получить токен можно через Telegram бота:
@AntiSpam_moder_bot
Отправьте команду /apikey
боту, чтобы получить персональный токен.
Пошаговая инструкция
- Откройте Telegram и найдите бота @AntiSpam_moder_bot
- Нажмите кнопку "Старт" или отправьте команду
/start
- Отправьте команду
/apikey
- Бот выдаст вам персональный токен и инструкции по его использованию
- Скопируйте полученный токен и используйте его в заголовке ваших API запросов
Важная информация
- Каждый запрос к API расходует определенное количество токенов с вашего баланса
- Стоимость запросов и актуальный прайс-лист доступны в боте @AntiSpam_moder_bot
- Храните ваш токен в безопасности и не передавайте его третьим лицам
Эндпоинты API
/classify
Классифицирует текст как спам или не спам с использованием нейросетевой модели.
Параметры запроса
Параметр | Тип | Описание |
---|---|---|
text | string | Текст для классификации |
Пример запроса
{
"text": "Привет! Как дела? Хочу предложить тебе выгодную инвестицию с доходностью 500% в месяц!"
}
Пример на Python
import requests
import json
# Настройки API
API_URL = "https://ru-spam.ru/classify"
API_TOKEN = "ваш_api_токен"
# Заголовки запроса
headers = {
"Content-Type": "application/json",
"token": API_TOKEN
}
# Данные для классификации
data = {
"text": "Привет! Как дела? Хочу предложить тебе выгодную инвестицию с доходностью 500% в месяц!"
}
try:
# Отправка запроса
response = requests.post(API_URL, headers=headers, json=data)
# Проверка статуса ответа
if response.status_code == 200:
result = response.json()
print(f"Результат классификации:")
print(f"Спам: {'Да' if result['is_spam'] else 'Нет'}")
print(f"Уверенность: {result['confidence']:.2%}")
print(f"Время обработки: {result['processing_time']:.3f} сек")
print(f"Потрачено токенов: {result['tokens_used']}")
print(f"Стоимость: {result['cost']} руб")
print(f"Остаток на балансе: {result['remaining_balance']} руб")
else:
print(f"Ошибка: {response.status_code}")
print(response.text)
except requests.exceptions.RequestException as e:
print(f"Ошибка запроса: {e}")
Пример ответа
{
"processing_time": 0.023,
"tokens_used": 0.5,
"cost": 0.03,
"remaining_balance": 9.97,
"is_spam": true,
"confidence": 0.98
}
/api_stats
Возвращает статистику использования API для указанного токена за последние N дней.
Параметры запроса
Параметр | Тип | Описание |
---|---|---|
days | integer | Количество дней для статистики (по умолчанию 30) |
Пример на Python
import requests
# Настройки API
API_URL = "https://ru-spam.ru/api_stats"
API_TOKEN = "ваш_api_токен"
# Заголовки запроса
headers = {
"token": API_TOKEN
}
# Параметры запроса (опционально)
params = {
"days": 30 # статистика за последние 30 дней
}
try:
# Отправка GET запроса
response = requests.get(API_URL, headers=headers, params=params)
# Проверка статуса ответа
if response.status_code == 200:
stats = response.json()
print(f"Статистика API за {stats['days']} дней:")
print(f"Текущий баланс: {stats['current_balance']} руб")
print(f"")
print(f"Общая статистика:")
print(f"- Всего запросов: {stats['summary']['total_requests']}")
print(f"- Потрачено токенов: {stats['summary']['total_tokens']}")
print(f"- Найдено спама: {stats['summary']['total_spam']}")
print(f"- Не спам: {stats['summary']['total_non_spam']}")
print(f"- Общая стоимость: {stats['summary']['total_cost']} руб")
print(f"")
print(f"Последние дни:")
for day_stat in stats['daily_stats'][-5:]: # Показать последние 5 дней
print(f"- {day_stat['date']}: {day_stat['requests_count']} запросов, {day_stat['total_cost']} руб")
else:
print(f"Ошибка: {response.status_code}")
print(response.text)
except requests.exceptions.RequestException as e:
print(f"Ошибка запроса: {e}")
Пример ответа
{
"token": "ваш_api_токен",
"current_balance": 9.83,
"days": 30,
"daily_stats": [
{
"date": "2023-07-01",
"requests_count": 120,
"total_tokens": 1500,
"spam_count": 45,
"non_spam_count": 75,
"total_cost": 0.9
},
// ...другие дни
],
"summary": {
"total_requests": 3500,
"total_tokens": 42000,
"total_spam": 1200,
"total_non_spam": 2300,
"total_cost": 25.2
}
}
Коды ошибок
Код | Описание |
---|---|
401 | Отсутствует или неверный токен API |
403 | Недостаточно средств на балансе |
500 | Внутренняя ошибка сервера |