{
    "swagger": "2.0",
    "info": {
        "description": "Read-only API for inspecting build-job logs and status aggregated by the Hades Log Manager. This service is a local-development aid and is not part of the production Helm deployment.",
        "title": "HadesLogManager API",
        "contact": {},
        "version": "1.0"
    },
    "basePath": "/",
    "paths": {
        "/health": {
            "get": {
                "description": "Liveness probe returning a static OK response.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "health"
                ],
                "summary": "Health check",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                }
            }
        },
        "/jobs": {
            "get": {
                "description": "Returns a list of all known job IDs (active and completed).",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "jobs"
                ],
                "summary": "List jobs",
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "object",
                            "additionalProperties": true
                        }
                    }
                }
            }
        },
        "/jobs/{jobId}/logs": {
            "get": {
                "description": "Returns all aggregated log entries for the given job ID.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "jobs"
                ],
                "summary": "Get job logs",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Job ID",
                        "name": "jobId",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "schema": {
                            "type": "object",
                            "additionalProperties": true
                        }
                    }
                }
            }
        },
        "/jobs/{jobId}/status": {
            "get": {
                "description": "Returns the current build status for the given job ID, or 404 if the job is unknown.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "jobs"
                ],
                "summary": "Get job status",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Job ID",
                        "name": "jobId",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "status",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    },
                    "404": {
                        "description": "error",
                        "schema": {
                            "type": "object",
                            "additionalProperties": {
                                "type": "string"
                            }
                        }
                    }
                }
            }
        }
    }
}