На главную SpeedMeter.dev

API SpeedMeter.dev

Бесплатный API для результатов замеров и статистики по интернет-провайдерам. 1000 запросов в сутки на ключ; единственное условие — ссылка на SpeedMeter.dev.

Бесплатный ключ API

Ключ выдаётся сразу, без регистрации. Почта нужна только для связи по вопросам API.

Ваш ключ. Сохраните его сейчас: повторно мы его не покажем.

Получая ключ, вы принимаете условия ниже. Политика конфиденциальности

Быстрый старт

Передавайте ключ в заголовке Authorization. Все ответы — JSON; скорость в Мбит/с, пинг и джиттер в мс, потери пакетов в процентах.

curl -H "Authorization: Bearer YOUR_KEY" \ "https://speedmeter.dev/api/v1/providers?country=RU&limit=5"

Обращайтесь к API со своего сервера. Не вставляйте ключ в код страницы: его скопируют и израсходуют ваш лимит.

Методы

ЗапросЧто возвращает
GET /api/v1/tests/{testId}Результат одного замера: загрузка, отдача, пинг, джиттер, потери пакетов, провайдер и страна. testId присылает виджет после замера.
GET /api/v1/providersМедианные загрузка, отдача, пинг, джиттер и потери пакетов по сетям провайдеров (ASN) за 30 дней. Параметры: country — две буквы страны, например RU; limit — от 1 до 500, по умолчанию 50.
GET /api/v1/providers/{asn}То же для одной сети, например /api/v1/providers/12389.
POST /api/v1/proxy-checkБез ключа. Проверяет адрес, с которого пришёл запрос: IP, владельца сети, тип сети (хостинг, мобильная или не определён) и местоположение. Его вызывает страница проверки прокси.
GET /api/v1/proxy-checks/{checkId}Результат проверки прокси по её номеру. Номер покупатель видит на странице проверки.
GET /api/v1/usageСколько запросов ваш ключ израсходовал сегодня.
POST /api/v1/keysВыпуск ключа. В теле запроса — email и, по желанию, site. Форма выше делает то же самое.

В статистику попадают только сети, у которых за 30 дней не меньше 30 замеров с 10 разных адресов: на меньших данных медиана — шум. Статистика пересчитывается раз в час.

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

GET /api/v1/tests/5f0c2a1e-8d3b-4c6a-9e2f-1b7d4a9c3e10 { "testId": "5f0c2a1e-8d3b-4c6a-9e2f-1b7d4a9c3e10", "createdAt": "2026-09-29T11:06:05.000Z", "download": 94.2, "upload": 41.7, "ping": 18.5, "jitter": 2.1, "packetLoss": 0, "isp": { "name": "Example Telecom", "asn": 64500 }, "country": "RU", "units": { "download": "Mbps", "upload": "Mbps", "ping": "ms", "jitter": "ms", "packetLoss": "%" }, "source": { "name": "SpeedMeter.dev", "url": "https://speedmeter.dev/" } }

Результаты виджета на вашем сервере

Поставьте на страницу бесплатный виджет. После замера он отправит сообщение с testId; передайте его своему серверу и запросите результат с ключом.

<iframe src="https://speedmeter.dev/widget.html" width="100%" height="320" frameborder="0"></iframe> <script> window.addEventListener('message', function (e) { if (e.origin !== 'https://speedmeter.dev' || !e.data || e.data.type !== 'speedtest-complete') return; // your server calls GET /api/v1/tests/{testId} with the key fetch('/speedtest-result?testId=' + encodeURIComponent(e.data.testId)); }); </script>

Темы, компактный режим и версия на JavaScript описаны в инструкции к виджету. Инструкция к виджету

Лимиты

Условия

Интернет-провайдерам и хостерам

Вопросы?

Пишите об интеграции, лимитах и данных.

support@speedmeter.dev