{ "openapi": "3.1.0", "info": { "title": "Království public read APIs", "description": "Read-only public resources for the Království neighbourhood pub website. No access token is required. OAuth discovery states that no grant types are supported.", "version": "1.0.0" }, "servers": [ { "url": "https://www.kralovstvi.com" } ], "paths": { "/menu.json": { "get": { "summary": "Bilingual food and drinks menu", "operationId": "getMenu", "responses": { "200": { "description": "Current Czech and English menu data", "content": { "application/json": { "schema": { "type": "object", "properties": { "food": { "type": "array" }, "drinks": { "type": "array" } } } } } } } } }, "/api/status.json": { "get": { "summary": "Site health status", "operationId": "getStatus", "responses": { "200": { "description": "Static availability signal for agents", "content": { "application/json": { "schema": { "type": "object", "properties": { "status": { "type": "string", "enum": ["ok"] }, "service": { "type": "string" } } } } } } } } }, "/openapi.json": { "get": { "summary": "OpenAPI description of public APIs", "operationId": "getOpenApi", "responses": { "200": { "description": "OpenAPI 3.1 document", "content": { "application/json": { "schema": { "type": "object" } } } } } } }, "/.well-known/oauth-authorization-server": { "get": { "summary": "OAuth 2.0 authorization server metadata", "description": "RFC 8414 discovery. grant_types_supported and response_types_supported are empty. No tokens are issued.", "operationId": "getOAuthAuthorizationServerMetadata", "responses": { "200": { "description": "Authorization server metadata", "content": { "application/json": { "schema": { "type": "object" } } } } } } }, "/.well-known/jwks.json": { "get": { "summary": "JSON Web Key Set", "description": "Empty key set. This origin does not sign tokens.", "operationId": "getJwks", "responses": { "200": { "description": "JWKS with no keys", "content": { "application/json": { "schema": { "type": "object", "properties": { "keys": { "type": "array", "maxItems": 0 } } } } } } } } }, "/oauth/authorize": { "get": { "summary": "Authorization endpoint policy", "description": "Always returns access_denied. There is no interactive sign-in.", "operationId": "oauthAuthorize", "responses": { "200": { "description": "OAuth error: access_denied", "content": { "application/json": { "schema": { "type": "object" } } } } } } }, "/oauth/token": { "get": { "summary": "Token endpoint policy", "description": "Always returns unsupported_grant_type. No grant types are supported.", "operationId": "oauthToken", "responses": { "200": { "description": "OAuth error: unsupported_grant_type", "content": { "application/json": { "schema": { "type": "object" } } } } } } }, "/api/docs.md": { "get": { "summary": "Human-readable API documentation", "operationId": "getApiDocs", "responses": { "200": { "description": "Markdown documentation", "content": { "text/markdown": { "schema": { "type": "string" } } } } } } } } }