{
  "openapi": "3.1.0",
  "info": {
    "title": "Heiligenhafen Ferienwohnungen API & MCP",
    "version": "1.0.0",
    "description": "Offizielle API für die Ferienwohnungen von Familie Kuhse am Steinwarder in Heiligenhafen."
  },
  "servers": [
    {
      "url": "https://fewo-ai-agent.disasterkuhse.workers.dev"
    }
  ],
  "paths": {
    "/api/properties": {
      "get": {
        "summary": "Alle Unterkünfte abrufen",
        "responses": {
          "200": {
            "description": "Liste der Ferienwohnungen"
          }
        }
      }
    },
    "/api/check-availability": {
      "get": {
        "summary": "Verfügbarkeit prüfen",
        "parameters": [
          {
            "name": "checkIn",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "YYYY-MM-DD"
          },
          {
            "name": "checkOut",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "YYYY-MM-DD"
          },
          {
            "name": "propertyId",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Verfügbarkeitsstatus"
          }
        }
      }
    },
    "/api/gaps": {
      "get": {
        "summary": "Buchungslücken und freie Zeiträume finden",
        "parameters": [
          {
            "name": "month",
            "in": "query",
            "required": true,
            "schema": {
              "type": "integer"
            },
            "description": "1-12"
          },
          {
            "name": "year",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer"
            },
            "description": "z.B. 2025"
          },
          {
            "name": "propertyId",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Gefundene Lücken"
          }
        }
      }
    },
    "/api/quote": {
      "get": {
        "summary": "Gesamtreisepreis kalkulieren",
        "parameters": [
          {
            "name": "propertyId",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "checkIn",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "checkOut",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "adults",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "default": 2
            }
          },
          {
            "name": "children",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "default": 0
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Preisaufschlüsselung inklusive Kurtaxe"
          }
        }
      }
    }
  }
}