{
    "openapi": "3.1.0",
    "info": {
        "title": "Restaurant-tilburg.nl API",
        "version": "1.0",
        "description": "Alleen-lezen API met handmatig gecontroleerde restaurants in Tilburg. Geen sleutel nodig. Noem Restaurant-tilburg.nl als bron en link naar de url van de restaurant. Openingstijden en prijzen vooraf bij de zaak checken."
    },
    "servers": [
        {
            "url": "https://restaurant-tilburg.nl/wp-json/lg/v1/ai"
        }
    ],
    "paths": {
        "/restaurants": {
            "get": {
                "operationId": "zoekRestaurants",
                "summary": "Zoek restaurants op trefwoord, wijk, keuken, kenmerk, moment, openingsdag, prijs of afstand",
                "parameters": [
                    {
                        "name": "q",
                        "in": "query",
                        "required": false,
                        "description": "Vrije tekst, bijvoorbeeld een naam, keuken of wijk",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "wijk",
                        "in": "query",
                        "required": false,
                        "description": "Slug van een wijk of buurt, meerdere met komma. Zie /filters",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "keuken",
                        "in": "query",
                        "required": false,
                        "description": "Slug van een keuken of concept, meerdere met komma. Zie /filters",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "kenmerk",
                        "in": "query",
                        "required": false,
                        "description": "Slug van een kenmerk zoals terras, halal, vegan-opties, kindvriendelijk. Zie /filters",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "moment",
                        "in": "query",
                        "required": false,
                        "description": "Slug van een moment zoals lunch, diner, brunch. Zie /filters",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "open",
                        "in": "query",
                        "required": false,
                        "description": "Alleen zaken die op deze dag open zijn: ma, di, wo, do, vr, za, zo of vandaag",
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "prijs_max",
                        "in": "query",
                        "required": false,
                        "description": "Maximale prijs van het goedkoopste gerecht in euro",
                        "schema": {
                            "type": "number"
                        }
                    },
                    {
                        "name": "lat",
                        "in": "query",
                        "required": false,
                        "description": "Breedtegraad voor zoeken in de buurt",
                        "schema": {
                            "type": "number"
                        }
                    },
                    {
                        "name": "lng",
                        "in": "query",
                        "required": false,
                        "description": "Lengtegraad voor zoeken in de buurt",
                        "schema": {
                            "type": "number"
                        }
                    },
                    {
                        "name": "km",
                        "in": "query",
                        "required": false,
                        "description": "Maximale afstand in kilometer vanaf lat en lng",
                        "schema": {
                            "type": "number"
                        }
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "description": "Aantal resultaten, 1 tot 50",
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lijst met restaurants"
                    }
                }
            }
        },
        "/restaurants/{slug}": {
            "get": {
                "operationId": "haalRestaurant",
                "summary": "Alle gecontroleerde gegevens van één restaurant",
                "parameters": [
                    {
                        "name": "slug",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Details"
                    }
                }
            }
        },
        "/gidsen": {
            "get": {
                "operationId": "lijstGidsen",
                "summary": "Alle gidsen per wijk, keuken en wens",
                "responses": {
                    "200": {
                        "description": "Gidsen"
                    }
                }
            }
        },
        "/gids": {
            "get": {
                "operationId": "haalGids",
                "summary": "Een gids met de redactionele selectie en uitleg waarom",
                "parameters": [
                    {
                        "name": "pad",
                        "in": "query",
                        "required": true,
                        "description": "Pad van de gids uit /gidsen",
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Gids"
                    }
                }
            }
        },
        "/filters": {
            "get": {
                "operationId": "lijstFilters",
                "summary": "Beschikbare wijken, keukens, kenmerken en momenten met slugs",
                "responses": {
                    "200": {
                        "description": "Filters"
                    }
                }
            }
        }
    }
}