Эндпоинты SharkEyes API

Эта документация описывает все доступные эндпоинты SharkEyes API, их назначение и примеры использования для интеграции защиты от ботов в ваши приложения.

Проверка статуса работы API

Тип запроса GET

JSON-ответ

{ "status": "ok", "version": "1.0.0" }

Основная проверка запроса на подозрительность

Основная проверка клиента (IP, заголовки и прочие данные).

Тип запроса POST

Запрос

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")

JSON-ответ

{"status": "error", "reason": "no IP detected"}

Проверка поддержки JavaScript у клиента

Проверка поддержки JavaScript у клиента. Используется для защиты от ботов без JS.

Тип запроса POST

JSON-ответ

{ "token": token, "redirect": redirect_url }

Валидация токена после JS-челленджа

Проверка валидности токена, выданного checkjs.

Тип запроса POST

Запрос

{ "token": "eyJhbGciOiJIUzI1NiIsInR5..." }

JSON-ответ

{ "status": "ok", "valid": true, "reason": null }