Определение IPv4

Местоположение, часовой пояс и сведения о сети для адреса IPv4. Не указывайте адрес, чтобы определить вызывающую сторону.

GEThttps://api.mygeocode.com/v1/ipv4

Параметры

ПараметрТипОписание
ipнеобязательныйстрокаАдрес IPv4 в точечной записи. По умолчанию: адрес, с которого пришёл запрос.
ipsнеобязательныйстрокаАдреса через запятую, до 100, для пакетного запроса. Возвращает массив results в том же порядке. Каждый адрес засчитывается как один запрос.
langнеобязательныйстрокаКод ISO 639-1 для названий стран, регионов и городов. По умолчанию en.
keyнеобязательныйстрокаAPI-ключ, если он не передан в заголовке.

Пример

$ curl -H "X-API-Key: YOUR_KEY" "https://api.mygeocode.com/v1/ipv4?ip=1.1.1.1"
// In a browser, with no ip parameter, this returns the visitor's own address
const geo = await (await fetch("https://api.mygeocode.com/v1/ipv4", { headers: { "X-API-Key": "YOUR_KEY" } })).json();
console.log(geo.country_code, geo.timezone);
import requests

geo = requests.get("https://api.mygeocode.com/v1/ipv4", params={"ip": "1.1.1.1"}, headers={"X-API-Key": "YOUR_KEY"}, timeout=5).json()
print(geo["country_code"], geo["org"], geo["is_datacenter"])
Ответ
{
  "status": "ok",
  "ip": "1.0.164.165",
  "version": 4,
  "found": true,
  "prefix": "1.0.164.0/24",
  "country": "Thailand",
  "country_code": "TH",
  "continent": "Asia",
  "continent_code": "AS",
  "region": "Krung Thep Maha Nakhon",
  "region_code": null,
  "city": "Bangkok",
  "postcode": "10200",
  "lat": 13.749976,
  "lon": 100.516819,
  "timezone": "Asia/Bangkok",
  "utc_offset": "+07:00",
  "utc_offset_seconds": 25200,
  "is_eu": false,
  "asn": 23969,
  "as_name": "TOT Public Company Limited",
  "org": "TOT Public Company Limited",
  "usage_type": "Eyeball",
  "registry": "apnic",
  "allocated": "2008-10-22",
  "tags": ["dsl"],
  "is_anycast": false,
  "is_satellite": false,
  "is_datacenter": false,
  "is_proxy": false,
  "is_vpn_provider": false,
  "is_tor": false,
  "is_private": false,
  "abuse_email": "abuse@totisp.net",
  "threat": {
    "listed": true,
    "score": 90,
    "source_count": 2,
    "categories": ["abuse", "attacker"],
    "is_tor": false,
    "is_tor_exit": false,
    "is_bogon": false,
    "listings": [
      { "category": "abuse", "confidence": 100, "recency_days": 1 },
      { "category": "attacker", "confidence": null, "recency_days": null }
    ]
  },
  "updated_at": "2026-09-18 06:53:39"
}

Поля ответа

ПолеТипОписание
ip, versionстрока, целое числоЗапрошенный адрес в канонической форме и 4 или 6.
foundлогическое значениеFalse, если ни одна сеть не покрывает адрес; поля местоположения тогда равны null.
prefixстрокаСамая узкая сеть, содержащая адрес, в формате CIDR.
country, country_codeстрокаНазвание страны и её код ISO 3166-1 alpha-2 заглавными буквами.
continent, continent_codeстрокаНазвание континента и двухбуквенный код.
region, region_codeстрокаАдминистративная единица первого уровня и её краткий код. Код заполняется для США, Канады и Австралии; для остальных стран он есть только там, где его содержит набор данных.
city, postcodeстрокаНаилучшая оценка; null, если неизвестно.
lat, lonчислоЦентр самой узкой известной области.
elevation_mчисло или nullВысота над средним уровнем моря в этой точке в метрах, по той же сетке 15 угловых секунд, что и у эндпоинта высот. Отрицательная над морским дном.
timezone, utc_offset, utc_offset_secondsстрока, строка, числоЗона IANA, действующее сейчас смещение в виде +HH:MM и то же смещение в секундах. Зона определяется по координатам и границам часовых поясов, поэтому всегда согласуется с lat и lon.
is_euлогическое значениеСтрана входит в Европейский союз.
asn, as_name, orgцелое число, строкаНомер автономной системы, её название и организация, которой она принадлежит.
usage_typeстрокаТип оператора: Eyeball (провайдер для частных абонентов), Carrier, Content, Hosting, Enterprise, Education, NSP или unknown.
registry, allocatedстрокаРегиональный регистратор, выделивший ASN, и дата выделения.
tagsмассивМетки уровня оператора, например dsl, cdn, vpsh (хостинг VPS), vpn, satnet. Они описывают оператора сети, а не отдельный адрес.
is_anycast, is_satelliteлогическое значениеПрефикс является anycast; оператор является спутниковой сетью.
is_datacenterлогическое значениеХостинговая или контентная сеть. Считайте город ненадёжным и учитывайте, что трафик может быть автоматическим.
is_proxy, is_torлогическое значениеДанные по конкретному адресу о том, что он является ретранслятором или выходным узлом Tor либо значится в списках как прокси или эндпоинт VPN.
is_vpn_providerлогическое значениеОператор где-то в своей сети предоставляет услуги VPN или прокси (подсказка на уровне оператора, более слабая, чем is_proxy).
is_privateлогическое значениеЗарезервированный, частный или иной немаршрутизируемый адрес. Если true, ответ содержит только ip, version, is_private и reason.
abuse_emailстрокаКонтакт для жалоб, зарегистрированный для сети.
threatобъектРепутация: listed, score от 0 до 100 (вес самой серьёзной жалобы с поправкой на давность старых), source_count (сколько независимых источников его перечисляют), categories, признаки Tor и bogon, а также отдельные записи listings с категорией, достоверностью и тем, сколько дней назад поступила каждая жалоба.
updated_atстрокаКогда запись об этой сети последний раз обновлялась.

Любая версия в одном вызове

GET /v1/ip принимает адрес IPv4 или IPv6 (или никакой, для вызывающей стороны) и возвращает ту же запись, что и эндпоинты для конкретной версии. Используйте его, если заранее не знаете, какой адрес вам передадут.

Примечания

Тот же запрос в форматах других провайдеров

Если у вас уже есть код, написанный под одного из этих провайдеров, оставьте его: совместимый хост принимает тот же путь и те же параметры и отвечает в формате ответа этого провайдера, а за ним работает этот эндпоинт. См. как работают совместимые хосты.

ПровайдерХостПуть
Geoapifygeoapify.mygeocode.com/v1/ipinfo?ip=...
ip-api.comipapi.mygeocode.com/json/{ip}
/json/
/batch (POST, JSON array)
ipinfo.ioipinfo.mygeocode.com/{ip}/json
/{ip}
/json
/{ip}/{field}
ipstackipstack.mygeocode.com/{ip}
/check
/{ip},{ip},{ip}

Ошибки

400 invalid_request, если ip не является корректным адресом IPv4, если на этот эндпоинт отправлен адрес IPv6 (используйте /v1/ipv6) или если в ips больше 100 записей.