{ "openapi": "3.0.3", "info": { "title": "Michael Schiemer API", "version": "1.0.0", "description": "API documentation for Michael Schiemer's custom PHP framework", "contact": { "name": "Michael Schiemer", "email": "contact@michaelschiemer.dev" }, "license": { "name": "MIT", "url": "https://opensource.org/licenses/MIT" } }, "servers": [ { "url": "http://localhost", "description": "Local development server (HTTP)" }, { "url": "https://localhost", "description": "Local development server (HTTPS)" }, { "url": "https://api.michaelschiemer.dev", "description": "Production server" } ], "paths": { "/api/users": { "get": { "summary": "List all users", "operationId": "ExampleApiController_listUsers", "description": "Retrieve a paginated list of all users in the system", "tags": [ "Users" ], "parameters": [ { "name": "page", "in": "query", "required": false, "schema": { "type": "integer" }, "description": "Page number for pagination", "example": 1 }, { "name": "limit", "in": "query", "required": false, "schema": { "type": "integer" }, "description": "Number of items per page", "example": 20 }, { "name": "search", "in": "query", "required": false, "schema": { "type": "string" }, "description": "Search term to filter users", "example": "john" } ], "responses": { "200": { "description": "List of users retrieved successfully", "content": { "application/json": { "example": { "data": [ { "id": 1, "name": "John Doe", "email": "john@example.com", "created_at": "2024-01-01T00:00:00Z" } ], "pagination": { "current_page": 1, "total_pages": 5, "total_items": 100 } } } } }, "401": { "description": "Unauthorized - Invalid or missing authentication token" } }, "security": [ { "bearerAuth": [] } ] } }, "/kontakt": { "post": { "summary": "Submit contact form", "operationId": "ShowContact_senden", "description": "Submit a contact form message", "tags": [ "Contact" ], "requestBody": { "required": true, "content": { "application/json": { "example": { "name": "John Doe", "email": "john@example.com", "subject": "Question about services", "message": "I would like to know more about your services." } } }, "description": "Contact form data" }, "responses": { "200": { "description": "Contact form submitted successfully", "content": { "application/json": { "example": { "success": true, "message": "Thank you for your message" } } } }, "400": { "description": "Validation error - Invalid form data" } } } } }, "components": { "securitySchemes": { "bearerAuth": { "type": "http", "scheme": "bearer", "bearerFormat": "JWT" }, "apiKey": { "type": "apiKey", "in": "header", "name": "X-API-Key" } } }, "tags": [ { "name": "Users" }, { "name": "Contact" } ] }