Получение информации об IP-адресе

·

В зависимости от системы, для которой вы производите интеграцию с сервисом, настройки могут отличаться, поэтому мы приведем универсальный способ интеграции, используя функционал утилиты cURL.

Стандартный режим

GET-метод:
# curl 'https://ip2api.ru/api/v1?token=ВашТокен&ip=1.1.1.1'

POST-метод:
# curl 'https://ip2api.ru/api/v1' -X POST --data 'token=ВашТокен&ip=1.1.1.1'

В качестве ответа вернется содержимое в формате JSON (набор полей может отличаться в зависимости от тарифного плана и выбранного списка полей):

Copied!
{ "status": "success", "cc": "AU", "country": "Australia", "region": "Queensland", "city": "South Brisbane", "asn": 13335, "timezone": "Australia/Brisbane", "lat": -27.4766, "lon": 153.0166, "mobile": false, "hosting": true, "proxy": false, "isp": "Cloudflare, Inc", "tor": false, "crawler": false, "company": "APNIC and Cloudflare DNS Resolver project", "asname": "Cloudflare, Inc.", "asdomain": "cloudflare.com", "astype": "Hosting", "asroute4": [ "1.0.0.0/24", "1.1.1.0/24", ... ], "asroute6": [ "2400:cb00:4::/48", "2400:cb00:11::/48", "2400:cb00:12::/48", ... ], "asipv4size": 1048320, "asipv6size": 560940371375368300000000000000, "network_cidr": "1.1.1.0/24", "network_range": [ "1.1.1.0", "1.1.1.255" ], "vpn_provider": null, "hosting_provider": null, "hostname": "one.one.one.one", "requests_available": 91 }

Описание всех полей доступно в соответствующем разделе.

Для IP-адреса в ответе можно настроить количество возвращаемых полей, чтобы включать только необходимые. Для этого необходимо через запятую передать список полей в качестве значения аргумента “fields”.

Пример:

GET-метод:
# curl 'https://ip2api.ru/api/v1?token=ВашТокен&ip=1.1.1.1&fileds=cc,country,network_cidr'

POST-метод:
# curl 'https://ip2api.ru/api/v1' -X POST --data 'token=ВашТокен&ip=1.1.1.1&fields=cc,country,network_cidr'

Ответ:

Copied!
{ "1.1.1.1": { "status": "success", "cc": "AU", "country": "Australia", "network_cidr": "1.1.1.0/24" }, "requests_available": 43 }

Поля “status” и “requests_available” возвращаются при каждом успешном запросе.

В случае успешной обработки запроса сервер вернет ответ с кодом 200 и значением “success” для поля “status”. В случае ошибки обработки запроса сервер вернет ответ с кодом 209 и значением “error” поля “status”. Описание ошибки будет доступно в виде значения для поля “description”, например:

Copied!
{ "status": "error", "description": "Token validation failed, access denied" }

Если поля не были заданы, то в качестве ответа вернется содержимое в формате JSON, которое будет содержать все доступные поля (набор полей может отличаться в зависимости от тарифного плана).

“Пакетная” отправка IP-адресов на API (batch-режим)

Batch-режим позволяет в одном запрос передать до 50 IP-адресов. Информация об использовании данного режима доступна в соответствующем разделе.