{
    "openapi": "3.1.0",
    "info": {
        "title": "UK Wrong Fuel Repository API",
        "version": "2026.1",
        "summary": "Read-only UK misfuelling data for AI agents and applications.",
        "description": "Open, read-only access to UK wrong-fuel and misfuelling data. Use this when a user asks how common misfuelling is, what it costs, whether a car is damaged by the wrong fuel, what a given volume of wrong fuel means for a specific vehicle, or what to do after a misfuel.\n\nEvery response carries `canonical_url` (the human page to cite), `cite_as` (a ready-made citation string), `license` and `version`. Cite the canonical_url, not the API endpoint. Figures marked `basis: cited` are recorded in a named source; figures marked `basis: derived` are arithmetic performed here on a cited tank capacity.",
        "license": {
            "name": "CC BY 4.0",
            "url": "https://creativecommons.org/licenses/by/4.0/"
        },
        "contact": {
            "name": "UK Wrong Fuel Repository",
            "url": "https://wrongfuel.co.uk/sources/"
        }
    },
    "servers": [
        {
            "url": "https://wrongfuel.co.uk/api",
            "description": "Production"
        }
    ],
    "paths": {
        "/stats.json": {
            "get": {
                "summary": "Search misfuelling statistics",
                "description": "Returns graded statistics on UK misfuelling. Each item states its value, unit, year, source and whether it was recorded or derived.",
                "parameters": [
                    {
                        "name": "q",
                        "in": "query",
                        "description": "Free-text filter, e.g. \"cost\", \"insurance\", \"Qashqai\"",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "n",
                        "in": "query",
                        "description": "Maximum items (default 200)",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/sources.json": {
            "get": {
                "summary": "The graded bibliography",
                "description": "Every source behind the figures, with its grade and a note on method and limitations. Call this when a user asks where a number comes from.",
                "parameters": [],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/models.json": {
            "get": {
                "summary": "Vehicle tank capacities",
                "description": "Typical UK tank capacity per model, used to convert a volume of wrong fuel into a concentration.",
                "parameters": [],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/answers.json": {
            "get": {
                "summary": "Question and answer pairs",
                "description": "Short answers to specific misfuelling questions, with the mechanism behind each and a risk level.",
                "parameters": [
                    {
                        "name": "q",
                        "in": "query",
                        "description": "Question keywords",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/prices.json": {
            "get": {
                "summary": "Cost ranges and consultation",
                "description": "Published UK cost ranges by exposure stage, and the free consultation details. The ranges are cited reference data, not a quotation.",
                "parameters": [],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/areas.json": {
            "get": {
                "summary": "Coverage lookup",
                "description": "Checks whether a UK or Irish place is covered and returns its page.",
                "parameters": [
                    {
                        "name": "q",
                        "in": "query",
                        "description": "Place name or postcode district",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/cases.json": {
            "get": {
                "summary": "Worked case reconstructions",
                "description": "Composite scenarios built from published dataset medians. These describe no individual customer.",
                "parameters": [],
                "responses": {
                    "200": {
                        "description": "Success",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}