İndirmeler
| Veri kümesi | Ne içerir | Dosyalar |
|---|---|---|
| Günlük özetler | UTC günü, ölçüm noktası, test ve bağlantı yöntemi başına: test sayısı, başarılar, oran, ortanca süre. En iyi başlangıç noktası. | 30 günlük CSV 90 günlük CSV 90 günlük JSON |
| Ham ölçümler | Her ölçüm noktası sonucu, en eskiden başlayarak. Dosya başına en fazla 31 gün ve 200.000 satır; daha uzun dönemleri from ve to ile birkaç parça halinde isteyin. | 7 günlük CSV 7 günlük JSON 30 günlük CSV |
| Olaylar | 500'e kadar olay ve not (önce süren olaylar, sonra en yeniler), öncesi ve sırasındaki oranlarla. | CSV · JSON |
| Uygulama verisi, günlük | Gün, ülke ve bağlantı yöntemi başına yayımlanan uygulama verisi hücreleri (yalnızca cihaz eşiğinin üzerinde ve ambargodan sonra; bir yıla kadar geriye). Uygulama verisi kapalıyken boş. | CSV · JSON |
Dosyalar colitu-lab-{dataset}-{from}-{to}.{csv|json} biçiminde adlandırılır. Zamanlar RFC 3339'da UTC'dir; oranlar 0 ile 1 arasında kesirlerdir (CSV'de dört ondalık); boş hücreler “ölçülmedi” demektir. Özel bir dönem: https://api.colitu.com/api/v1/lab/export/measurements.csv?from=2026-10-01&to=2026-10-08.
API
Temel adres: https://api.colitu.com/api/v1/lab. Yalnızca okunur, yalnızca GET, kimlik doğrulama yok. Her yanıt aynı zarf içinde JSON'dur:
{
"data": { … },
"license": "CC BY 4.0 — Colitu Lab, lab.colitu.com"
}Hatalar {"error":{"code":"…"}} biçimini kullanır; durum kodları 400 (INVALID_RANGE, INVALID_COUNTRY, INVALID_ASN, INVALID_TRANSPORT, RANGE_TOO_LONG, …), 404 (NOT_FOUND), 429 (RATE_LIMITED) veya 500 (LAB_UNAVAILABLE).
Ortak parametreler
range—24h,48h,7d,30dor90d; şimdiye kadar. Ya dafromveto(RFC 3339 veyaYYYY-MM-DD;tovarsayılan olarak şimdidir; en fazla 366 gün).country— ölçüm noktası ülkesinin ISO 3166 kodu, ör.RU. Asla sunucunun ülkesi değil.asn— ölçüm noktasının ağı,8359veyaAS8359.probe—/probesiçindeki bir ölçüm noktasının kısa adı.transport— virgülle ayrılmış liste:hysteria2,vless-reality,vless-xhttp,trojan,shadowsocks,tuic.
Uç noktalar
| Yol | Parametreler | Döndürür |
|---|---|---|
/overview | — | Ana sayfanın gösterdiği her şey: toplamlar, son 24 saatin bağlantı yöntemi sağlığı ve önceki 24 saate göre değişim, ölçüm noktaları, ülkeler, son olaylar, en yeni 25 ölçüm ve uygulama verisi ayarları (field). |
/summary | country, asn, probe, transport, range | from, to (default 7d) | Seçim için bağlantı yöntemi başına başarı oranı, test sayısı, ortanca süre ve durum; önceki pencere için prev_rate ile; erişim testleri ayrıca. |
/series | country, asn, probe, transport, range | from, to (default 30d) | Bağlantı yöntemi başına zaman içinde başarı oranı. 1 sa (≤ 48 sa), 2 sa (≤ 8 g), 6 sa (≤ 31 g) veya 1 günlük aralıklar; boş aralıkların oranı null'dır. |
/countries | range | from, to (default 30d) | Ölçülen her ülke; ölçüm noktalarından, uygulama verisinden ya da ikisinden, bağlantı yöntemi başına oranlarla. |
/countries/{cc} | range | from, to (default 30d) | Tek bir ülke: bağlantı yöntemleri, erişim, temel ölçümler, ağlar, ölçüm noktaları, olaylar ve uygulama verisi. |
/networks/{asn} | range | from, to (default 7d) | Tek bir ağ (AS8359 veya 8359): bağlantı yöntemleri, erişim, temel ölçümler, parmak izi, ölçüm noktaları, olaylar ve uygulama verisi. |
/protocols/{transport} | range | from, to (default 30d) | Tek bir bağlantı yöntemi: özet, ölçüm noktasına göre, sunucu ülkesine göre, diğerleriyle karşılaştırma, ülkeye göre uygulama verisi. |
/events | country, asn, probe, transport, status=ongoing, limit (≤ 500, default 100) | Tespit edilen düşüşler, kesintiler ve editoryal notlar; önce süren olaylar, sonra en yeniler. |
/measurements | probe, country, asn, transport (one), test, from, to, before_id, limit (≤ 1000, default 100) | Ham sonuçlar, en yeniden başlayarak; from ile en eskiden başlayarak. before_id ile geriye gidilir. transport ayrıca dns-udp, dns-tcp veya https kabul eder; test, tunnel, reach veya baseline'dır. |
/probes | — | Ölçüm noktaları: konum, ağ, tür, sürüm, son rapor, 24 saatlik başarı, 7 günlük raporlama payı. |
/export/{dataset}.{csv|json} | range | from, to (default 7d) | Toplu dosyalar; İndirmeler bölümüne bakın. |
Örnek: /summary?country=RU&range=7d · /series?transport=hysteria2,vless-reality&range=30d
Sınırlar ve önbellek
- İstek sınırı: İstemci başına dakikada 240 istek, indirmeler dahil. Bunun üzerinde API 429 yanıtı verir; bir dakika bekleyin.
- CORS: her kaynaktan
GETiçin açık (Access-Control-Allow-Origin: *); yani API tarayıcıdan çağrılabilir. - Önbellek: yanıtlar 60 saniye önbelleğe alınır (
Cache-Control: public, max-age=60); indirmeler 5 dakika. Yeni sonuçlar ölçüm noktası başına yaklaşık 20 dakikada bir gelir; bu yüzden dakikada birden sık sorgulamanın faydası yoktur.
Gömme
Karşılaştır içindeki her görünümde, tam o seçim için kodu kopyalayan bir Göm düğmesi vardır. Gömmeler Karşılaştır ile aynı parametreleri alır — country, asn, probe, transport, range (24h, 7d, 30d veya 90d) — üçüncü taraf kodu yüklemez ve atıfı beraberinde taşır.
Zaman içinde başarı
<iframe src="https://lab.colitu.com/embed/series?country=RU&transport=hysteria2,vless-reality&range=7d"
title="VPN connectivity in Russia — Colitu Lab" width="100%" height="380"
style="border:0" loading="lazy"></iframe>Bağlantı yöntemi sağlığı (çubuklar)
<iframe src="https://lab.colitu.com/embed/summary?country=RU&range=30d"
title="Transport health in Russia — Colitu Lab" width="100%" height="380"
style="border:0" loading="lazy"></iframe>Nasıl atıf yapılır
Veriyi aldığınız tarihi ve mümkünse kullandığınız sorguyu ya da dosyayı belirterek “Colitu Lab, lab.colitu.com” olarak atıf yapın. Örneğin:
Colitu Lab. (2026). Colitu Lab: Open measurements of VPN connectivity [Data set]. https://lab.colitu.com (retrieved YYYY-MM-DD)@misc{colitulab2026,
author = {{Colitu Lab}},
title = {Colitu Lab: open measurements of VPN connectivity},
year = {2026},
howpublished = {\url{https://lab.colitu.com}},
note = {Data licensed under CC BY 4.0. Accessed YYYY-MM-DD}
}Lisans
Veriler CC BY 4.0 ile lisanslanmıştır: ticari amaçlar dahil her amaç için, atıfla paylaşabilir ve uyarlayabilirsiniz. Verideki ağ adları DB-IP ASN Lite'tan (CC BY 4.0) gelir. Deney betikleri github.com/colitu/vpn-lab adresinde. Sorular: hello@colitu.com.