Разбор агента браузера

Разбор строки агента браузера: браузер и версия, движок, операционная система, тип устройства, архитектура процессора и определение ботов — поисковых краулеров, ИИ-краулеров, HTTP-библиотек и браузеров без интерфейса. Бесплатно, без регистрации и ключей.

5 запросов/мин с IP 50+ сигнатур ботов Браузер + ОС + устройство

Демо

Оставьте поле пустым, чтобы разобрать агента браузера текущего запроса, или вставьте любую строку — например Googlebot или curl/8.5.0.

// результат появится здесь

Адреса запросов

GET https://apipark.ru/ua/json — разбор агента браузера вызывающего
GET https://apipark.ru/ua/json?ua={строка} — разбор переданной строки

Параметры

ПараметрОписаниеПример
uaСтрока агента браузера (URL-encoded). Без неё берётся заголовок запроса?ua=Mozilla%2F5.0...
fieldsВернуть только указанные поля (через запятую)?fields=browser,os,bot
keyключ платного тарифа (опционально)?key=...

Поля ответа

ПолеОписаниеПример
statussuccess или failsuccess
uaРазобранная строка агента браузераMozilla/5.0 ...
browserБраузер: name, version, major{"name":"Chrome","version":"125.0.0.0","major":"125"}
engineДвижок: name, version{"name":"Blink","version":"125.0.0.0"}
osОС: name, version{"name":"Windows","version":"10"}
deviceУстройство: type (desktop/mobile/tablet/...), vendor, model{"type":"mobile","vendor":"Apple","model":"iPhone"}
cpuархитектура процессораamd64
mobileМобильное устройство или планшетfalse
botСтрока похожа на ботаtrue
botNameИмя распознанного ботаGooglebot

Категории ботов

Поисковые краулеры (Googlebot, Bingbot, YandexBot), ИИ-краулеры (GPTBot, ClaudeBot, PerplexityBot), превью соцсетей (Telegram, WhatsApp, VK), SEO-боты (Ahrefs, Semrush), мониторинги (UptimeRobot, Pingdom), HTTP-библиотеки (curl, python-requests, Go, axios) и браузеры без интерфейса (Headless Chrome, Playwright, Selenium).

Примеры

# curl — разобрать собственный агента браузера
curl https://apipark.ru/ua/json

# curl — разобрать произвольную строку
curl "https://apipark.ru/ua/json?ua=Mozilla/5.0%20(compatible;%20Googlebot/2.1)"

# JavaScript
const res = await fetch('https://apipark.ru/ua/json?ua=' + encodeURIComponent(uaString));
const info = await res.json();
if (info.bot) skipAnalytics(info.botName);

# Python
import requests
info = requests.get('https://apipark.ru/ua/json', params={'ua': ua_string}).json()
print(info['browser']['name'], info['os']['name'], info['bot'])

Лимиты

5 запросов в минуту с одного IP-адреса. При превышении вернётся HTTP 429. Заголовки: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset.