До основного вмісту

WHOIS API та масова перевірка доменів для бізнесу

Домени · 19.04.2026 · 3 хв читання
Ілюстрація до статті «WHOIS API та масова перевірка доменів для бізнесу»

Ручна перевірка WHOIS підходить для поодиноких запитів. Для моніторингу конкурентів, верифікації лідів або захисту бренду потрібна автоматизація через WHOIS API.

Популярні WHOIS API сервіси

СервісБезкоштовноЦінаОсобливості
WhoisXML API500 запитів/місвід $19/місНормалізований JSON, історія
Whoxy.com100/місвід $10/місReverse WHOIS, bulk
ip-api.com45/хв (IP)БезкоштовноЛише IP-геолокація
domain-coupler.io10/місвід $5/місПростий, швидкий

Приклад на PHP

// WHOIS-запит через WhoisXML API
$apiKey = 'YOUR_API_KEY';
$domain = 'example.com';

$url = "https://www.whoisxmlapi.com/whoisserver/WhoisService"
     . "?apiKey={$apiKey}&domainName={$domain}&outputFormat=JSON";

$response = file_get_contents($url);
$data = json_decode($response, true);

echo "Реєстратор: " . $data['WhoisRecord']['registrarName'] . "
";
echo "Закінчується: " . $data['WhoisRecord']['expiresDate'] . "
";
echo "NS: " . implode(', ', $data['WhoisRecord']['nameServers']['hostNames']) . "
";

Приклад на Python

import requests

API_KEY = 'YOUR_API_KEY'
domains = ['example.com', 'competitor.com', 'anotherdomain.net']

for domain in domains:
    url = f"https://www.whoisxmlapi.com/whoisserver/WhoisService"
    params = {
        'apiKey': API_KEY,
        'domainName': domain,
        'outputFormat': 'JSON'
    }
    resp = requests.get(url, params=params).json()
    record = resp.get('WhoisRecord', {})
    print(f"{domain}: expires {record.get('expiresDate', 'N/A')}")

Використання Python-бібліотеки whois

pip install python-whois

import whois

w = whois.whois('example.com')
print(w.expiration_date)  # Дата закінчення
print(w.registrar)        # Реєстратор
print(w.name_servers)     # NS-сервери
💡 Моніторинг конкурентів: Запускайте WHOIS-перевірку доменів конкурентів щотижня. Якщо домен перейшов до нового власника або змінилися NS-сервери — це сигнал про зміну хостингу або продаж бізнесу.
⚠️ Rate limiting: Публічні WHOIS-сервери обмежують запити (зазвичай 1–5/сек). Масову перевірку виконуйте лише через платні API з офіційними лімітами.

Типові помилки при роботі з WHOIS API

ПомилкаПричина
HTTP 401 UnauthorizedНевірний або прострочений API-ключ, або ключ передано в невірному параметрі — у різних сервісів це apiKey, api_key або окремий заголовок
HTTP 429 Too Many RequestsПеревищено ліміт запитів тарифу: масова перевірка списку доменів без паузи між запитами швидко впирається в rate limit
WhoisRecord.registrarName: null у відповідіДомен використовує «тонкий» WHOIS (характерно для частини ccTLD) — реєстратор не публікує ці дані в загальному протоколі, лише через RDAP реєстру зони
SSL certificate problem: unable to get local issuer certificateЗастарілий CA-бандл на сервері або в PHP не увімкнено розширення openssl — curl не може перевірити ланцюжок сертифікатів API
WhoisCommandFailed: No match for domainДомен вільний, або whois-сервер реєстру тимчасово недоступний; python-whois не робить повторну спробу автоматично
Quota exceeded / HTTP 402 Payment RequiredМісячну квоту безкоштовного тарифу вичерпано раніше дати продовження — лічильник сервісу скидається лише першого числа місяця, а не через 30 днів від реєстрації

Коли WHOIS API не підходить

  • Потрібна перевірка в реальному часі прямо у формі реєстрації на сайті — публічні WHOIS-сервери занадто повільні й лімітовані для синхронного запиту на кожне введення, для цього краще підходить RDAP з власним кешем
  • Бюджету на платний тариф немає, а обсяг перевірок великий — безкоштовні ліміти швидко закінчуються, а масові запити до публічних WHOIS-серверів закінчуються блокуванням IP
  • Потрібні історичні дані WHOIS за минулі роки — звичайний запит віддає лише поточний стан, для історії потрібен окремий платний сервіс на кшталт WhoisXML Historical WHOIS
  • Домен у зоні із закритим за замовчуванням WHOIS (більшість .eu, багато .de) — персональні дані власника не повернуться через жоден API, це обмеження на рівні реєстру, а не сервісу

Перевірка результату

Перш ніж вбудовувати API в продакшен-скрипт, переконайтеся, що ключ справді працює і ліміт не вичерпано заздалегідь — це заощаджує час на налагодженні всього пайплайна. Базові поняття WHOIS і ручну перевірку розбирають статті що таке WHOIS і як перевірити домен онлайн.

# Перевірити, що ключ робочий, одним curl-запитом
curl -s "https://www.whoisxmlapi.com/whoisserver/WhoisService?apiKey=YOUR_KEY&domainName=example.com&outputFormat=JSON" | head -c 200

# Порахувати, скільки доменів зі списку справді отримали відповідь
grep -c '"expiresDate"' results.json
Чи була стаття корисною?
← Назад до бази знань Поставити питання підтримці