[ セキュリティ · レジストリ ]● 2 クレジット · 30 回/分

WHOIS・ RDAP 検索 API

RDAP を通じて権威レジストリから直接、任意のドメイン・IP アドレス・AS 番号の登録情報を取得します。レジストラ、ネームサーバー、DNSSEC、有効期限、不正利用連絡先を平坦な JSON で返します。

RDAP(WHOIS のスクレイピングではありません)ドメイン · IP · ASNレジストリのライブデータ
auth · x-api-key

APIキーをお持ちでない方は

アカウントにサインインしてAPIキーを作成・管理してください。

[ 02 · integrate ]

統合ガイド

スニペットをコピーし、APIキーを差し替えて実行するだけ。任意のHTTPクライアントで動作します — 以下にcURL、JavaScript、Pythonの例を掲載。

spec
GET/api/whois
base
https://www.apipick.com

Registration data for a domain, IP address, or AS number

パラメータ
querystring必須

A domain name, IPv4/IPv6 address, or AS number. The type is detected automatically. github.com

curl -X GET "https://www.apipick.com/api/whois" \
  -H "x-api-key: YOUR_API_KEY"
● 200 · レスポンス
{
  "query": "github.com",
  "type": "domain",
  "found": true,
  "domain": "github.com",
  "unicode_domain": null,
  "nameservers": [
    "dns1.p08.nsone.net",
    "ns-421.awsdns-52.com"
  ],
  "dnssec": false,
  "handle": "1264983250_DOMAIN_COM-VRSN",
  "status": [
    "client delete prohibited",
    "client transfer prohibited"
  ],
  "country": null,
  "registrar": "MarkMonitor Inc.",
  "registered_at": "2007-10-09T18:20:50Z",
  "updated_at": "2024-09-07T09:16:32Z",
  "expires_at": "2026-10-09T18:20:50Z",
  "contacts": [
    {
      "roles": [
        "registrar"
      ],
      "handle": "292",
      "name": "MarkMonitor Inc.",
      "organization": null,
      "email": null,
      "phone": null,
      "address": null,
      "country": null
    }
  ],
  "source": "RDAP (IANA bootstrap via rdap.org)",
  "credits_used": 2,
  "remaining_credits": 98
}

実際のユースケースに対応

有効期限の監視

保有ドメインを定期的に照会し、更新期日の前に通知します。レジストリのライブデータなので、キャッシュによる遅れが生じません。

🕵️

ドメインのデューデリジェンス

取引先のドメインを信頼したり仕入先を承認したりする前に、登録年数、レジストラ、ステータスコードを確認します。

🚨

不正利用の通報

IP や ASN から保有者と不正利用連絡先を特定し、自動通報が実際に読まれるメールボックスへ届くようにします。

🤖

エージェントによる情報補完

1 つのパラメータでドメイン・IP・ASN をすべて扱えるため、LLM にとって簡潔で分かりやすい単一のツール定義になります。

レスポンスのフィールド

フィールド説明
typestring自動判定されたクエリ種別: domain、ip、autnum
foundboolean対象が未登録または未割り当ての場合は false
registrarstring | null指定レジストラ(ドメイン検索)
registered_atstring | nullISO 8601 形式の登録日
expires_atstring | nullISO 8601 形式の有効期限(ドメイン検索)
updated_atstring | nullレコードが最後に変更された ISO 8601 形式の日付
statusstring[]EPP ステータスコード(例: client transfer prohibited)
nameserversstring[]委任されたネームサーバー(ドメイン検索)
dnssecboolean | nullその委任が DNSSEC 署名されているかどうか
cidrstring[]その割り当てに含まれる CIDR ブロック(IP 検索)
asninteger | null自律システム番号(ASN 検索)
contacts[]object[]役割・組織・メール・電話を含む、平坦化した jCard エンティティ
credits_usedintegerこのリクエストで差し引かれたクレジット
remaining_creditsintegerアカウントに残っているクレジット
[ 03 · limits ]

レート制限

スロットリングはAPIキー単位、60秒のスライディングウィンドウです。上限に達すると、Retry-Afterヘッダー付きのクリーンな429が返されます。

リクエストレート

30req/min

APIキー単位・エンドポイント単位。60秒のスライディングウィンドウ。

同時実行数

3concurrent

APIキーごとの同時進行リクエストの最大数。

レスポンスヘッダー
X-RateLimit-Limit1分あたりに許可される最大リクエスト数
X-RateLimit-Remaining現在のウィンドウで残っているリクエスト数
X-RateLimit-Reset現在のウィンドウがリセットされるまでの秒数
Retry-After再試行までの待機秒数(429の場合のみ)
● 429 · リクエストが多すぎます
HTTP/1.1 429 Too Many Requests
Retry-After: 12
X-RateLimit-Limit: 30
X-RateLimit-Remaining: 0
X-RateLimit-Reset: 12

{
  "error": "rate_limit_exceeded",
  "message": "Rate limit exceeded: 30 requests/minute per API key. Retry after 12s.",
  "retry_after": 12
}

データ提供元とライセンス

レコードは各対象の権威レジストリ —— ドメインは Verisign、Nominet などのレジストリ運営者、IP 範囲と AS 番号は ARIN、RIPE NCC、APNIC、LACNIC、AFRINIC —— から、IANA の RDAP ブートストラップ経由で取得しています。キャッシュも再公開も行いません。リクエスト時点でレジストリが返す内容をそのままお届けします。

よくある質問

Q: 従来の WHOIS と何が違いますか?

A: RDAP は IETF がポート 43 の WHOIS の後継として定めたプロトコルです。WHOIS がレジストリごとに形式の異なる自由記述テキストを返しスクレイピングを要するのに対し、RDAP は HTTPS 上で標準スキーマの構造化 JSON を返し、404 も正しく表現されます。当社は IANA のブートストラップ経由で権威レジストリに照会し、jCard の連絡先ブロックを素直なオブジェクトへ平坦化します。

Q: 登録者の連絡先がたいてい空なのはなぜですか?

A: GDPR 以降、多くの gTLD レジストリは公開 RDAP で登録者の氏名・メール・住所を伏せ、指定レジストラと不正利用連絡先のみを公開しています。この非開示はレジストリ側の回答であって、本 API の欠落ではありません。レジストリが公開しないデータは、どの WHOIS 事業者にも表示できません。

Q: IP アドレスや AS 番号でも使えますか?

A: 使えます。IPv4 または IPv6 アドレスを渡せば割り当てネットワーク、CIDR ブロック、保有者、RIR ハンドルが得られ、AS13335 または 13335 を渡せば AS 名と登録者・不正利用・技術の各連絡先が得られます。クエリ種別は入力から自動判定されるため、1 つのパラメータで 3 種類すべてを扱えます。

Q: 未登録のドメインを検索するとどうなりますか?

A: HTTP 200 と found: false が返ります。これは実際の答え —— 空き状況の確認はまさにこの方法で行います —— なので、通常どおりクレジットを消費します。2xx 以外が返るのは上流の障害(レジストリのタイムアウトやレート制限)だけで、その場合は課金されません。

Q: 有効期限はどれくらい最新ですか?

A: リクエスト時点でレジストリ自身の RDAP レコードから直接取得しており、間にキャッシュ層はありません。したがってレジストリと同じだけ最新です。だからこそ有効期限の監視に向いています —— 保有ドメインを毎日照会し、expires_at を基準に通知を出せます。