API
Те же данные, что и на сайте, в виде JSON или простого текста. Без ключа и регистрации; действуют ограничения добросовестного использования.
curl https://ipaddress.co.il/api/v1/my-ip?format=textКонечные точки
| Путь | Описание | Данные | Ограничения частоты |
|---|---|---|---|
| GET/api/v1/my-ipПопробуйте: /api/v1/my-ip | Ваш IP-адрес (также простым текстом с ?format=text). | Собственные данные | 120 · 240/мин |
| GET/api/v1/ip/{address}Попробуйте: /api/v1/ip/132.247.0.1 | Данные о сети, маршрутизации, реестре и местоположении адреса. | Собственные данные | 30 · 30/мин |
| GET/api/v1/ip/geolocation?ip=Попробуйте: /api/v1/ip/geolocation?ip=177.224.0.1 | Только оценка местоположения адреса (DB-IP Lite), всегда помечена как оценка. | Собственные данные | 30 · 30/мин |
| GET/api/v1/ip/asn?ip=Попробуйте: /api/v1/ip/asn?ip=2001:1208::1 | Исходная AS и анонсированный префикс адреса, а также выделение регистратуры, в которое он входит. | Собственные данные | 30 · 30/мин |
| GET/api/v1/ip/reverse?ip=Попробуйте: /api/v1/ip/reverse?ip=8.8.8.8 | Запись PTR публичного адреса, в реальном времени, с прямой проверкой. | Запрос в реальном времени | 40 · 60/мин |
| GET/api/v1/ip/blacklist?ip=Попробуйте: /api/v1/ip/blacklist?ip=8.8.8.8 | Результаты DNSBL в реальном времени (SpamCop, PSBL, DroneBL, s5h.net) и признак выходного узла Tor для публичного адреса. | Запрос в реальном времени | 40 · 60/мин |
POST/api/v1/bulkcurl --data-binary $'1.1.1.1\n9.9.9.9' https://ipaddress.co.il/api/v1/bulk | До 100 адресов за раз (JSON {"addresses": […]} или по одному в строке), ответы только из наших собственных данных. Ничего не сохраняется. | Собственные данные | 6 · 3/мин |
| GET/api/v1/asn/{asn}Попробуйте: /api/v1/asn/AS8151 | Держатель, реестр и анонсируемые префиксы автономной системы. | Собственные данные | 30 · 30/мин |
| GET/api/v1/network/{cidr}Попробуйте: /api/v1/network/132.247.0.0/16 | Сеть в нотации CIDR: размер, диапазон, статус особого назначения, кто её анонсирует (с RPKI), выделение регистратуры и оценка местоположения. | Собственные данные | 30 · 30/мин |
| GET/api/v1/network/ipv4?cidr=Попробуйте: /api/v1/network/ipv4?cidr=192.168.1.37/24 | Расчёт подсети для сети IPv4 или IPv6: сеть, широковещательный адрес, маски, рабочий диапазон и количества. | Собственные данные | 120 · 240/мин |
| GET/api/v1/network/ipv6?cidr=Попробуйте: /api/v1/network/ipv6?cidr=2001:db8::/48 | Расчёт подсети для сети IPv4 или IPv6: сеть, широковещательный адрес, маски, рабочий диапазон и количества. | Собственные данные | 120 · 240/мин |
| GET/api/v1/country/{cc}Попробуйте: /api/v1/country/MX | Зарегистрированное в стране адресное пространство и номера AS, что анонсируют её сети, охват RPKI и крупнейшие сети (для IL также оценка по округам). | Собственные данные | 30 · 30/мин |
| GET/api/v1/dns/{domain}?type=A,MXПопробуйте: /api/v1/dns/unam.mx?type=A,MX | Записи DNS домена в реальном времени. | Запрос в реальном времени | 40 · 60/мин |
| GET/api/v1/dns/propagation?name=&type=Попробуйте: /api/v1/dns/propagation?name=unam.mx&type=A | Один и тот же DNS-вопрос нескольким публичным резолверам, с каждым ответом и признаком совпадения. | Запрос в реальном времени | 40 · 60/мин |
| GET/api/v1/rdap/{query}Попробуйте: /api/v1/rdap/AS8151 | Регистрационные данные от ответственного сервера RDAP. | Запрос в реальном времени | 10 · 6/мин |
| GET/api/v1/healthПопробуйте: /api/v1/health | Доступность сервиса. | Собственные данные | 120 · 240/мин |
| GET/api/v1/data-statusПопробуйте: /api/v1/data-status | Возраст и размер каждого набора данных. | Собственные данные | 120 · 240/мин |
Текстовые ярлыки вне /api/v1: /raw выводит ваш адрес, /json — тот же объект, что /my-ip, /country — предполагаемый код вашей страны.
У каждой конечной точки с путём есть и форма с параметром запроса: /ip/lookup?ip=, /asn/lookup?asn=, /dns/lookup?name=, /network/cidr?cidr=. Каждый ответ содержит заголовок X-Request-Id.
curl ipaddress.co.il/rawcurl ipaddress.co.il/jsoncurl ipaddress.co.il/countryОграничения частоты
Запросы ограничиваются для каждого клиентского адреса по алгоритму token bucket. При достижении лимита API отвечает кодом 429 с заголовком Retry-After. Лимиты считаются в памяти по хешированному ключу, который меняется ежедневно; адреса не сохраняются.
Ошибки
Ошибки возвращаются с кодами состояния HTTP и телом JSON вида {"error": {"code": "…", "message": "…"}}.
Версии
Пути в /api/v1/ сохраняют структуру ответа. Могут добавляться новые поля; существующие поля в рамках v1 не удаляются и не переименовываются.
Указание источника
Данные о местоположении предоставлены DB-IP (CC BY 4.0). Если вы их показываете, укажите DB-IP, как требует лицензия.