ping6.net

APIドキュメント

RESTful APIにアクセスして、IPv6ネットワーク診断ツールをアプリケーションに統合できます。すべてのエンドポイントはJSON応答を返し、IPv4とIPv6の両方をサポートしています。

ベースURL
Bash
https://ping6.net/api/v1
HTTPSのみ

すべてのAPIリクエストは安全な通信のためにHTTPSを使用する必要があります。

CORS有効

任意のドメインからのクロスオリジンリクエストがサポートされています。

認証

ほとんどのエンドポイントは認証なしで利用できます。より高いレート制限とプレミアム機能へのアクセスには、APIキーを使用してください。

匿名

認証不要。より低いレート制限が適用されます。

APIキー

X-API-KeyヘッダーにAPIキーを含めると、より高いレート制限が適用されます。

Bash
curl -X GET "https://ping6.net/api/v1/ping/google.com" \
-H "X-API-Key: your-api-key-here"

レート制限

APIリクエストは、公正な使用とサービスの可用性を確保するためにレート制限されています。

ティアリクエスト備考
匿名100 / minuteIPベースの制限。同じIPのすべての匿名ユーザーで共有されます。
APIキー1,000 / minuteAPIキーごと。より高い制限についてはお問い合わせください。

レート制限ヘッダー

X-RateLimit-Limitウィンドウごとの最大許可リクエスト数
X-RateLimit-Remaining現在のウィンドウの残りリクエスト数
X-RateLimit-Resetレート制限がリセットされるUnixタイムスタンプ

エラー処理

APIは従来のHTTP応答コードを使用して成功または失敗を示します。

コードステータス説明
400Bad Request無効なリクエストパラメータまたは不正なリクエストボディ。
401Unauthorized保護されたエンドポイントのAPIキーが無効または不足。
404Not Foundリクエストされたリソースまたはエンドポイントが存在しません。
429Too Many Requestsレート制限を超えました。しばらく待ってから再度リクエストしてください。
500Internal Server Errorサーバーエラー。後でもう一度お試しいただくか、サポートにお問い合わせください。
JSON
{
"error": {
"code": "INVALID_ADDRESS",
"message": "The provided address is not a valid IPv6 address",
"details": {
"address": "invalid-address"
}
}
}

APIエンドポイント

GET/myip
自分のIPアドレスを取得
リクエストを行っているクライアントのパブリックIPアドレスを返します。接続がIPv4かIPv6かを自動的に検出します。

Example Response

JSON
{
"ip": "2001:db8:85a3::8a2e:370:7334",
"version": 6,
"isIPv6": true
}

Code Examples

cURL
curl -X GET "https://ping6.net/api/v1/myip" \
-H "Accept: application/json"
GET/validate
IPv6アドレスを検証
IPv6アドレスを検証し、フォーマット、タイプ、正規表現に関する詳細情報を返します。

Parameters

NameTypeInDescription
address*
stringquery検証するIPv6アドレス

Example Response

JSON
{
"valid": true,
"type": "Documentation",
"compressed": "2001:db8::1",
"expanded": "2001:0db8:0000:0000:0000:0000:0000:0001"
}

Code Examples

cURL
curl -X GET "https://ping6.net/api/v1/validate?address=2001:db8::1" \
-H "Accept: application/json"
GET/dns/{hostname}
DNS検索
設定可能なDNSリゾルバを使用してホスト名のDNSレコードをクエリします。IPv6のAAAAレコードに特に焦点を当て、すべての一般的なレコードタイプをサポートしています。

Parameters

NameTypeInDescription
hostname*
stringpathクエリするホスト名
type
enum: AAAA | A | MX | TXT | NS | CNAME | SOA | PTRqueryクエリするDNSレコードタイプ(default: AAAA)
resolver
enum: cloudflare | google | quad9queryクエリに使用するDNSリゾルバ(default: cloudflare)

Example Response

JSON
{
"hostname": "google.com",
"records": [
{
"type": "AAAA",
"value": "2607:f8b0:4004:800::200e",
"ttl": 300
}
],
"resolver": "cloudflare",
"queryTime": 23
}

Code Examples

cURL
curl -X GET "https://ping6.net/api/v1/dns/google.com?type=AAAA&resolver=cloudflare" \
-H "Accept: application/json"
GET/ping/{target}Beta
ターゲットをPing
IPv6アドレスまたはホスト名にICMPエコーリクエストを送信し、レイテンシ統計を受け取ります。APIキー認証が必要です。

Parameters

NameTypeInDescription
target*
stringpathpingするIPv6アドレスまたはホスト名
count
stringquery送信するpingパケット数(1-10)(default: 4)

Example Response

JSON
{
"target": "2001:4860:4860::8888",
"ip": "2001:4860:4860::8888",
"results": [
{
"seq": 1,
"ttl": 117,
"rtt": 12.4
},
{
"seq": 2,
"ttl": 117,
"rtt": 11.8
},
{
"seq": 3,
"ttl": 117,
"rtt": 12.1
},
{
"seq": 4,
"ttl": 117,
"rtt": 11.9
}
],
"stats": {
"transmitted": 4,
"received": 4,
"loss": 0,
"min": 11.8,
"avg": 12.05,
"max": 12.4
}
}

Code Examples

cURL
curl -X GET "https://ping6.net/api/v1/ping/2001:4860:4860::8888?count=4" \
-H "Accept: application/json" \
-H "X-API-Key: your-api-key"
GET/traceroute/{target}Beta
Traceroute
宛先へのネットワークパスをトレースし、ルートに沿った各ホップのレイテンシ情報を表示します。APIキー認証が必要です。

Parameters

NameTypeInDescription
target*
stringpathトレースするIPv6アドレスまたはホスト名
maxHops
stringqueryトレースする最大ホップ数(1-64)(default: 30)

Example Response

JSON
{
"target": "google.com",
"ip": "2607:f8b0:4004:800::200e",
"hops": [
{
"hop": 1,
"ip": "2001:db8::1",
"hostname": "router.local",
"rtt": 1.2
},
{
"hop": 2,
"ip": "2001:db8:1::1",
"hostname": "isp-gateway.net",
"rtt": 5.4
},
{
"hop": 3,
"ip": "2607:f8b0:4004:800::200e",
"hostname": "google.com",
"rtt": 12.8
}
]
}

Code Examples

cURL
curl -X GET "https://ping6.net/api/v1/traceroute/google.com?maxHops=30" \
-H "Accept: application/json" \
-H "X-API-Key: your-api-key"