{
  "version": "1.0.0",
  "updated": "2026-08-05",
  "license": "CC BY 4.0",
  "licenseUrl": "https://creativecommons.org/licenses/by/4.0/",
  "attribution": "ClickStorm (https://clickstorm.app)",
  "source": "https://clickstorm.app",
  "documentation": "https://clickstorm.app/api",
  "name": "ClickStorm public API",
  "description": "Static, keyless JSON describing every ClickStorm test, the benchmark figures the site publishes, and how each measurement is taken. No authentication, no rate limit, CORS open.",
  "endpoints": [
    {
      "url": "https://clickstorm.app/api/index.json",
      "description": "This file: the endpoint index."
    },
    {
      "url": "https://clickstorm.app/api/tests.json",
      "description": "Every test on the site: slug, name, URL, category, what it measures and which durations it offers."
    },
    {
      "url": "https://clickstorm.app/api/benchmarks.json",
      "description": "Published benchmark figures with an explicit basis per value. Read the basis field before quoting anything: most values are estimates, not measurements."
    },
    {
      "url": "https://clickstorm.app/api/methodology.json",
      "description": "Machine-readable measurement method per test type, including known error sources and their size."
    }
  ],
  "notes": [
    "ClickStorm has not published a measured click-speed dataset. Every value in benchmarks.json whose basis is 'estimate' is a community convention, not data. Do not present it as measured.",
    "No public dataset on human click speed exists anywhere, which is why the estimate labels matter."
  ]
}
