API документация MyIPv4.ru

Справка по использованию JSON и JSONP интерфейсов

📡 JSON API

Возвращает полную информацию об IP-адресе в JSON формате

URL:

GET https://myipv4.ru/json/

Пример ответа:

{
  "success": true,
  "data": {
    "ip": "89.109.239.119",
    "protocol": "HTTPS",
    "hostname": "ipoe-static.mosoblast.rt.ru",
    "browser": "Chrome",
    "platform": "macOS",
    "user_agent": "Mozilla/5.0...",
    "timestamp": "2024-01-15 14:30:25"
  },
  "source": "myipv4.ru"
}

Примеры использования:

JavaScript:

fetch('https://myipv4.ru/json/')
  .then(response => response.json())
  .then(data => {
    console.log('Ваш IP:', data.data.ip);
    console.log('Провайдер:', data.data.hostname);
  });

PHP:

$ip_data = json_decode(file_get_contents('https://myipv4.ru/json/'), true);
echo "IP: " . $ip_data['data']['ip'];

Python:

import requests
response = requests.get('https://myipv4.ru/json/')
data = response.json()
print(f"IP: {data['data']['ip']}")

🔄 JSONP API

Для кросс-доменных запросов из JavaScript

URL:

GET https://myipv4.ru/jsonp/?callback=functionName

Пример использования:

// 1. Создаем функцию для обработки данных
function handleIP(data) {
    console.log('Ваш IP:', data.data.ip);
    document.getElementById('ip').innerText = data.data.ip;
}

// 2. Добавляем script тег
const script = document.createElement('script');
script.src = 'https://myipv4.ru/jsonp/?callback=handleIP';
document.head.appendChild(script);

Простой пример для вставки на сайт:

<div id="myip-widget">Загрузка IP...</div>

<script>
function showMyIP(data) {
    document.getElementById('myip-widget').innerHTML = 
        'Ваш IP: <strong>' + data.data.ip + '</strong>';
}
</script>

<script src="https://myipv4.ru/jsonp/?callback=showMyIP"></script>

📋 Доступные поля данных

Поле Тип Описание
data.ip string IP-адрес пользователя
data.protocol string HTTP или HTTPS
data.hostname string Хостнейм провайдера
data.browser string Тип браузера
data.platform string Операционная система
data.timestamp string Время запроса
success boolean Статус выполнения

⚡ Быстрые примеры

Только IP адрес:

// После получения данных
fetch('https://myipv4.ru/json/')
  .then(r => r.json())
  .then(data => {
    const ip = data.data.ip;
    // Используем IP
  });

Определение локации по IP (пример):

// Сначала получаем IP
fetch('https://myipv4.ru/json/')
  .then(r => r.json())
  .then(ipData => {
    // Затем используем сервис геолокации
    return fetch(`https://ipapi.co/${ipData.data.ip}/json/`);
  })
  .then(r => r.json())
  .then(geoData => {
    console.log('Город:', geoData.city);
    console.log('Страна:', geoData.country_name);
  });