Veri ve API

Veri, API ve gömme

Ölçüm noktalarının yaptığı her ölçüm, CC BY 4.0 kapsamında CSV veya JSON olarak herkese açıktır. API açıktır: anahtar yok, kayıt yok, her kaynak. yöntem her alanı açıklar.

İndirmeler

Veri kümesiNe içerirDosyalar
Günlük özetlerUTC 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çümlerHer ö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
Olaylar500'e kadar olay ve not (önce süren olaylar, sonra en yeniler), öncesi ve sırasındaki oranlarla.CSV · JSON
Uygulama verisi, günlükGü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, 30d or 90d; şimdiye kadar. Ya da from ve to (RFC 3339 veya YYYY-MM-DD; to varsayı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ğı, 8359 veya AS8359.
  • probe — /probes iç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

YolParametrelerDö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).
/summarycountry, 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.
/seriescountry, 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.
/countriesrange | 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.
/eventscountry, asn, probe, transport, status=ongoing, limit (≤ 500, default 100)Tespit edilen düşüşler, kesintiler ve editoryal notlar; önce süren olaylar, sonra en yeniler.
/measurementsprobe, 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 GET iç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.