SharkEyes API поддерживает настройку флагов, которые позволяют гибко управлять проверками. Флаги передаются в теле запроса (JSON) при обращении к эндпоинтам (/check). Можно использовать несколько флагов одновременно.
API Flags
Подробное описание параметров защиты SharkEyes API. В этом разделе представлены все флаги, их назначение и примеры применения.
Флаги защиты
Список флагов
API SharkEyes предоставляет набор флагов для гибкой настройки системы защиты. С их помощью можно управлять проверкой запросов, определять уровень риска и применять индивидуальные правила безопасности.
curl_block:(bool) Блокировка запросов, сделанных через curl.
empty_ua: (bool) Блокировка запросов без User-Agent.
check_user_browsers: (bool) Проверка, что запрос выполнен реальным браузером.
suspicious_user_agent: (bool) Блокировка подозрительных или запрещённых User-Agent.
header_pattern_block: (bool) Блокировка по паттернам в HTTP-заголовках
suspicious_header: (bool) Блокировка при обнаружении подозрительных заголовков
high_frequency_payload: (bool) Блокировка запросов с очень большим телом или большим количеством параметров (анти-брутфорс).
post_only: (bool) Разрешать только POST-запросы
get_only: (bool) Разрешать только GET-запросы.
bad_methods: (bool) Блокировка некорректных/опасных методов (PUT, DELETE, и др.)
fight_mode: (bool) Усиленный режим защиты (агрессивная фильтрация).
under_attack: (bool) Режим «под атакой» — активируется строгая проверка.
policy_manager:(bool) Автоматический выбор правил защиты (динамическая настройка).
Пример использования
Запрос
ip = request.META.get("HTTP_X_FORWARDED_FOR", "").split(",")[0].strip() or request.META.get("REMOTE_ADDR", "Unknown")
url = f"{ML_API_URL}?chat_id=1234567891&ip={ip}"
headers = {
"X-Forwarded-For": ip,
"User-Agent": request.META.get("HTTP_USER_AGENT", "Unknown")
}
# Передаём флаги защиты
flags = {
"block_curl": True,
}
response = requests.post(url, headers=headers, timeout=1, json=flags)
data = response.json()
return data.get("status") == "allowed", data.get("ray_id"), data.get("reason")
Ответ
{
"status": "blocked",
"ray_id": "abc123xyz",
"reason": "Suspicious User-Agent + High IP Risk"
}
Рекомендации
Флаги можно комбинировать для усиленной защиты
Используйте fight_mode и under_attack только во время атак, так как они могут блокировать часть легитимного трафика.
policy_manager рекомендуется для динамической защиты без ручной настройки.