{
 "openapi": "3.1.0",
 "info": {
  "title": "Tonelva open data",
  "version": "1.0.0",
  "summary": "Blood pressure classification tables, free calculators and the reference corpus.",
  "description": "Keyless, CORS-open, no rate limit. Every payload carries its own provenance, licence, scope limits and a `not_published` block naming what is deliberately absent and why.\n\nEvery classification is returned under BOTH the 2017 ACC/AHA and the 2018 ESC/ESH tables. They genuinely disagree about where high blood pressure begins, and quoting one without the other leaves a reader with two reputable sources that contradict each other.\n\nNothing here diagnoses, recommends treatment or sets a personal target, and nothing here measures blood pressure — the readings come from a cuff.",
  "license": {
   "name": "Creative Commons Attribution 4.0 International",
   "url": "https://creativecommons.org/licenses/by/4.0/"
  },
  "contact": {
   "name": "Tonelva",
   "url": "https://tonelva.com/api/",
   "email": "support@tonelva.com"
  }
 },
 "servers": [
  {
   "url": "https://tonelva.com"
  }
 ],
 "paths": {
  "/api/v1/index.json": {
   "get": {
    "operationId": "get_index",
    "summary": "Entry point",
    "description": "Every dataset with its row count and purpose.",
    "responses": {
     "200": {
      "description": "The dataset, with its provenance, licence and caveats in the same document.",
      "content": {
       "application/json": {
        "schema": {
         "type": "object"
        }
       }
      }
     }
    }
   }
  },
  "/api/v1/reference-tables.json": {
   "get": {
    "operationId": "get_reference_tables",
    "summary": "Classification tables",
    "description": "The ACC/AHA and ESC/ESH bands, the derived formulas and the averaging protocol, with the source document on each.",
    "responses": {
     "200": {
      "description": "The dataset, with its provenance, licence and caveats in the same document.",
      "content": {
       "application/json": {
        "schema": {
         "type": "object"
        }
       }
      }
     }
    }
   }
  },
  "/api/v1/tools.json": {
   "get": {
    "operationId": "get_tools",
    "summary": "Free browser calculators",
    "description": "What each tool takes and returns, and which are callable over MCP.",
    "responses": {
     "200": {
      "description": "The dataset, with its provenance, licence and caveats in the same document.",
      "content": {
       "application/json": {
        "schema": {
         "type": "object"
        }
       }
      }
     }
    }
   }
  },
  "/api/v1/guides.json": {
   "get": {
    "operationId": "get_guides",
    "summary": "Reference articles",
    "description": "The corpus with the question each article answers and its markdown twin.",
    "responses": {
     "200": {
      "description": "The dataset, with its provenance, licence and caveats in the same document.",
      "content": {
       "application/json": {
        "schema": {
         "type": "object"
        }
       }
      }
     }
    }
   }
  },
  "/api/v1/tonelva.json": {
   "get": {
    "operationId": "get_tonelva",
    "summary": "What Tonelva does",
    "description": "The product, its capabilities and an equally long list of what it does not do.",
    "responses": {
     "200": {
      "description": "The dataset, with its provenance, licence and caveats in the same document.",
      "content": {
       "application/json": {
        "schema": {
         "type": "object"
        }
       }
      }
     }
    }
   }
  },
  "/api/v1/status.json": {
   "get": {
    "operationId": "get_status",
    "summary": "Build status",
    "description": "When each dataset was last rebuilt, and the date of each guideline encoded.",
    "responses": {
     "200": {
      "description": "The dataset, with its provenance, licence and caveats in the same document.",
      "content": {
       "application/json": {
        "schema": {
         "type": "object"
        }
       }
      }
     }
    }
   }
  }
 },
 "externalDocs": {
  "description": "Human documentation",
  "url": "https://tonelva.com/api/"
 },
 "x-mcp": {
  "endpoint": "https://tonelva.com/mcp",
  "transport": "JSON-RPC 2.0 over HTTP POST"
 },
 "x-a2a": {
  "endpoint": "https://tonelva.com/a2a",
  "card": "https://tonelva.com/.well-known/agent-card.json"
 },
 "x-engine": {
  "url": "https://tonelva.com/js/engine.js",
  "description": "The ES module the browser calculators, these endpoints and the MCP tools all import. One copy of the arithmetic, so there is nothing left to disagree."
 }
}