← Back to Internet Health Dashboard

Internet Vitals API

Free, public API for internet health data. No API key. No registration. Just fetch.

REST + MCP · JSON · CORS: * · data refreshes every 5 minutes

Quick Start

curl https://internetvitals.com/api/v1/health

Connect to AI Agents via MCP

InternetVitals runs a Model Context Protocol server (streamable HTTP). Claude, Cursor and any other MCP-compatible agent can query internet health directly — five tools: get_internet_health, get_service_status, list_services, get_recent_incidents, get_vitals_history.

https://internetvitals.com/mcp

Example prompt after connecting: “What's the current health of the internet? Is Cloudflare operational right now?”

API Endpoints

MethodEndpointDescription
GET/api/v1/healthCurrent health score + vitals
GET/api/v1/servicesAll 41 services + status
GET/api/v1/services/:slugSingle service detail + uptime + incidents
GET/api/v1/incidents?limit=20&slug=Recent incidents
GET/api/v1/history/vitals?period=24h|7d|30dHealth score history

Example Response

GET /api/v1/health — full response
{
  "health_score": 97.3,
  "status": "healthy",
  "status_label": "The patient is stable.",
  "vitals": {
    "pulse_bpm": 72,
    "temperature_c": 36.8,
    "pressure": "118/76",
    "spo2_pct": 99.1
  },
  "summary": {
    "operational": 38,
    "degraded": 3,
    "outage": 0,
    "unknown": 0,
    "total": 41
  },
  "updated_at": 1751285600,
  "updated_at_human": "2 minutes ago",
  "next_check_in_seconds": 180
}

Available Service Slugs

cloudflare, akamai, fastly, aws, azure, gcp, digitalocean, google-search, youtube, gmail, meta, whatsapp, tiktok, twitter-x, microsoft365, github, npm, docker-hub, vercel, gitlab, stripe, paypal, shopify, zoom, slack, discord, twilio, sendgrid, okta, apple, datadog, hubspot, salesforce, google-dns, cloudflare-dns, openai, anthropic, google-ai, meta-ai, mistral, huggingface

Rate Limits & Terms

No API key required. No rate limits for reasonable use (<1 req/sec). Data updates every 5 minutes — responses are cached for 5 minutes (Cache-Control and X-Data-Updated-At headers tell you how fresh the data is). For high-frequency use, cache on your end.