Iran Block logo
IRAN BLOCK

Data & API

Everything this site shows is readable as data. The API is open, needs no key, and is the same one the dashboard uses.

An Atom feed of the newest incidents. Each entry links to the incident's own page with its cross-source evidence.

Every incident has a permanent URL. Link to it rather than to a screenshot, so readers can check the evidence themselves.

IranBlock. “Incident title.” https://iranblock.com/incidents/<id>

Live widgets other sites, channels and READMEs can carry. Every one is served from this site, updates itself, and needs nothing installed on your page.

Choose a widget

Overall status

One service or network

Incidents

Context

Customise

Language

Theme

Code format

Copy and paste

Preview

Exactly what your visitors will see, on a background matching the theme you picked. It updates itself every five minutes.

HTML

<iframe src="https://iranblock.com/embed?lang=en&theme=dark" title="Iran internet status — IranBlock" width="340" height="186" style="border:0;color-scheme:dark" loading="lazy"></iframe>
Open in a new tab

Paste it into your page’s HTML wherever the widget should appear. No script, no plugin, nothing else to install.

Whole-dataset files for analysis. CSV opens directly in a spreadsheet; JSON keeps the full structure.

All endpoints are GET, return JSON, and are served under /api/v1. Responses carry Cache-Control, so polling more often than the stated max-age gains nothing.

API reference — OpenAPI 3.1

1
/api/v1/openapi.json

Access briefing and evidence

8

?days · ?source · ?since · ?until · ?asn · ?domain

/api/v1/briefing
/api/v1/lanes?days=90
/api/v1/destination?domain=telegram.org&days=30
/api/v1/networks?days=7
/api/v1/performance
/api/v1/context
/api/v1/outcomes?source=cp:HTTPS&days=30
/api/v1/atlas

Google traffic — Transparency Report

4

?products · ?from · ?to

/api/v1/google
/api/v1/google/traffic?products=19,6,21
/api/v1/google/daily?from=2019-11-01&to=2019-11-30
/api/v1/google/episodes

Live check from inside Iran

3

?target · ?asn

/api/v1/live/exits
/api/v1/live/probe?target=www.iranintl.com&asn=44244
/api/v1/live/session

APNIC — ISP address-space share

1
/api/v1/apnic/isp-share

ArvanCloud monitoring

2
/api/v1/arvancloud/latest
/api/v1/arvancloud/monitoring

Baselines — every reading against its own 30-day median

1
/api/v1/baseline

BGP.tools prefixes

2
/api/v1/bgptools/prefixes
/api/v1/bgptools/history

Published blocklists and the open lookup (dated snapshots, not live)

8

?q · ?domain · ?ip · ?asn · ?limit

/api/v1/blocklists/lookup?q=torproject.org
/api/v1/blocklists/lookup?q=5.160.0.1
/api/v1/blocklists/sources
/api/v1/blocklists/categories
/api/v1/blocklists/suffixes
/api/v1/blocklists/asn-coverage
/api/v1/blocklists/diff
/api/v1/blocklists/index

Cloudflare Radar

4

?days · ?metric

/api/v1/cloudflare/traffic
/api/v1/cloudflare/quality
/api/v1/cloudflare/status
/api/v1/cloudflare/top-domains

Direct connectivity probes

9

?hours · ?service · ?days

/api/v1/connectivity/services
/api/v1/connectivity/response-times
/api/v1/connectivity/history
/api/v1/connectivity/ooni-history?service=Instagram&days=30
/api/v1/connectivity/verdicts?q=instagram.com
/api/v1/vantage?service=Instagram&days=30
/api/v1/vantage/strategies?days=7
/api/v1/connectivity/service-categories
/api/v1/connectivity/recent-changes

Disruption patterns

9

?days · ?limit

/api/v1/disruptions/frequency
/api/v1/disruptions/service-heatmap
/api/v1/disruptions/timeline
/api/v1/disruptions/correlation
/api/v1/disruptions/protocol-impact
/api/v1/disruptions/duration
/api/v1/disruptions/isp-frequency
/api/v1/disruptions/monthly-heatmap
/api/v1/disruptions/patterns/connectivity

DPI & throttling

13
/api/v1/dpi/throttling-signal
/api/v1/dpi/indicators
/api/v1/dpi/protocol-analysis
/api/v1/dpi/http-versions
/api/v1/dpi/24h-signal
/api/v1/dpi/incident-heatmap
/api/v1/dpi/temporal-pattern
/api/v1/dpi/middlebox
/api/v1/dpi/injectors?days=90
/api/v1/dpi/dns-protocols
/api/v1/dpi/tls-versions
/api/v1/dpi/quality-history
/api/v1/dpi/adoption

Bulk exports

6

?days · ?metric

/api/v1/exports/incidents.json
/api/v1/exports/incidents.csv
/api/v1/exports/source-freshness.json
/api/v1/exports/source-freshness.csv
/api/v1/exports/scores.json
/api/v1/exports/timeseries.csv

Events — corroborated, derived from the signals

2

?days

/api/v1/events
/api/v1/events/:id

Internet freedom scores

2
/api/v1/freedom/scores
/api/v1/freedom/isoc-resilience

IHR — internet chokepoints

3
/api/v1/ihr/hegemony
/api/v1/ihr/top-chokepoints
/api/v1/ihr/summary

Incidents

7

?before · ?day · ?days · ?limit · ?offset · ?source · ?type

/api/v1/incidents/:id/evidence
/api/v1/incidents
/api/v1/incidents/daily
/api/v1/incidents/stats
/api/v1/incidents/area
/api/v1/incidents/summary
/api/v1/incidents/velocity

IODA outage signals

4
/api/v1/ioda/signals
/api/v1/ioda/summary
/api/v1/ioda/asn-signals
/api/v1/ioda/outages

ISP monitoring

2
/api/v1/isp/current
/api/v1/isp/speed

Mobile carriers & eSIM

2
/api/v1/mobile/carriers
/api/v1/mobile/esim-providers

OONI measurements

8

?category · ?days · ?limit · ?test

/api/v1/ooni/latest
/api/v1/ooni/history
/api/v1/ooni/domains
/api/v1/ooni/domains/changes?days=7
/api/v1/ooni/categories
/api/v1/ooni/test-list
/api/v1/ooni/test-list/stats
/api/v1/ooni/blocking-methods

Dashboard overview

1
/api/v1/overview

Circumvention protocols

1
/api/v1/protocols

Monthly reports

2
/api/v1/reports
/api/v1/reports/:month

Resources

3
/api/v1/resources
/api/v1/resources/access-now
/api/v1/resources/reach

BGP routing

9

?days · ?hours · ?prefix

/api/v1/routing/metrics
/api/v1/routing/asn-explorer
/api/v1/routing/bgp-history
/api/v1/routing/bgp-updates
/api/v1/routing/bgp-events
/api/v1/routing/prefix-history
/api/v1/routing/bgp-stream
/api/v1/routing/atlas
/api/v1/routing/ripe-probes

Daily snapshot — canonical JSON with SHA-256

2
/api/v1/snapshot/daily.json
/api/v1/snapshot/daily.sha256

Live status & source freshness

4
/api/v1/status/verdict
/api/v1/status/sources
/api/v1/status/sources/history
/api/v1/status

Tor network usage

3
/api/v1/tor/usage
/api/v1/tor/demand
/api/v1/tor/transports

The data is gathered from independent public sources — OONI, IODA, Cloudflare Radar, Tor Metrics, RIPE Atlas and others — and republished here. Use it freely; cite IranBlock and link the incident URL so readers can verify what you report. How these numbers are produced →