ping6.net

Документация API

Получите доступ к нашему RESTful API для интеграции инструментов диагностики сети IPv6 в ваши приложения. Все конечные точки возвращают ответы JSON и поддерживают как IPv4, так и IPv6.

Базовый URL
Bash
https://ping6.net/api/v1
Только HTTPS

Все запросы API должны использовать HTTPS для безопасной связи.

CORS Включён

Поддерживаются кросс-доменные запросы с любого домена.

Аутентификация

Большинство конечных точек доступны без аутентификации. Для повышенных лимитов скорости и доступа к премиум-функциям используйте API-ключ.

Анонимный

Аутентификация не требуется. Применяются более низкие лимиты скорости.

API-ключ

Включите ваш API-ключ в заголовок X-API-Key для повышенных лимитов скорости.

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

Лимиты Скорости

Запросы API ограничены по скорости для обеспечения справедливого использования и доступности сервиса.

УровеньЗапросыПримечания
Анонимный100 / minuteОграничение на основе IP. Общее для всех анонимных пользователей с одного IP.
API-ключ1,000 / minuteНа API-ключ. Свяжитесь с нами для повышения лимитов.

Заголовки Лимита Скорости

X-RateLimit-LimitМаксимальное количество разрешённых запросов за окно
X-RateLimit-RemainingОставшиеся запросы в текущем окне
X-RateLimit-ResetUnix-метка времени сброса лимита

Обработка Ошибок

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*
stringqueryIPv6-адрес для проверки

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-резолверов. Поддерживает все распространённые типы записей с особым акцентом на записи AAAA для IPv6.

Parameters

NameTypeInDescription
hostname*
stringpathИмя хоста для запроса
type
enum: AAAA | A | MX | TXT | NS | CNAME | SOA | PTRqueryТип DNS-записи для запроса(default: AAAA)
resolver
enum: cloudflare | google | quad9queryDNS-резолвер для запроса(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 Цели
Отправка ICMP-эхо-запросов на IPv6-адрес или имя хоста и получение статистики задержки. Требуется аутентификация API-ключом.

Parameters

NameTypeInDescription
target*
stringpathIPv6-адрес или имя хоста для ping
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*
stringpathIPv6-адрес или имя хоста для отслеживания
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"