IP Checker Logo

Документация по API для разработчиков

Небольшой и предсказуемый JSON API. Конечные точки проксируются через наш серверный уровень абстракции провайдера с нормализацией ответов, легким кэшированием и корректной обработкой ошибок.

Конечные точки (Endpoints)

GET /api/my-ip

Возвращает данные геолокации и сети для публичного IP-адреса отправителя запроса, каким его видит сервер.

curl https://ipcheck.mubarokah.com/api/my-ip

GET /api/lookup?q=<ip|domain>

Поиск любого IPv4, IPv6 или домена. Схемы (http/https) и пути отклоняются.

curl "https://ipcheck.mubarokah.com/api/lookup?q=8.8.8.8"

POST /api/bulk

Пакетный поиск (до 50 за один запрос). Параллельные запросы ограничиваются на стороне сервера.

curl -X POST -H 'content-type: application/json' \
  -d '{"queries":["8.8.8.8","1.1.1.1","example.com"]}' \
  https://ipcheck.mubarokah.com/api/bulk

Структура ответа

{
  "ok": true,
  "query": "8.8.8.8",
  "ip": "8.8.8.8",
  "ipVersion": "IPv4",
  "location": {
    "continent": "North America",
    "country": "United States",
    "countryCode": "US",
    "regionName": "Virginia",
    "city": "Ashburn",
    "zip": "20149",
    "lat": 39.0438,
    "lon": -77.4874,
    "timezone": "America/New_York",
    "utcOffsetSeconds": -14400,
    "currency": "USD"
  },
  "network": {
    "isp": "Google LLC",
    "org": "Google Public DNS",
    "as": "AS15169 Google LLC",
    "asname": "GOOGLE",
    "reverse": "dns.google"
  },
  "flags": { "mobile": false, "proxy": false, "hosting": true }
}

Ошибки

Лимиты запросов и кэширование

Ответы кэшируются на стороне сервера на 10 минут для каждого запроса. Бесплатный публичный тариф вышестоящего провайдера ограничен по частоте запросов и предназначен для некоммерческого использования. Для производственного трафика мы рекомендуем настроить коммерческого провайдера с помощью переменных среды, описанных ниже.

Абстракция провайдера

Установите следующие переменные среды на сервере. Конфиденциальные ключи никогда не передаются в браузер.

IP_PROVIDER=ip-api            # or ip-api-pro
IP_API_KEY=...                # required for pro
IP_API_BASE=http://ip-api.com

Примечания