{
  "bindings": {
    "http": "HTTP.md"
  },
  "contract": "2026-09-12",
  "operations": [
    {
      "name": "livez",
      "kind": "operational",
      "doc": "Check whether the process answers without checking dependencies.",
      "params": [],
      "response": "Health",
      "errors": [
        "invalid"
      ],
      "http": {
        "method": "GET",
        "path": "/livez"
      },
      "ws": false
    },
    {
      "name": "health",
      "kind": "operational",
      "doc": "Check the Journal and Bytes dependencies and report world identity.",
      "params": [],
      "response": "Health",
      "errors": [
        "invalid"
      ],
      "http": {
        "method": "GET",
        "path": "/healthz"
      },
      "ws": false
    },
    {
      "name": "describe",
      "kind": "operational",
      "doc": "Describe this management surface and its build.",
      "params": [],
      "response": "Describe",
      "errors": [
        "invalid"
      ],
      "http": {
        "method": "GET",
        "path": "/describe"
      },
      "ws": false
    },
    {
      "name": "describe_file",
      "kind": "operational",
      "doc": "Read an embedded management contract file verbatim.",
      "params": [
        {
          "name": "file",
          "kind": "string",
          "required": true,
          "doc": "Exact name from the description's files list."
        }
      ],
      "errors": [
        "invalid",
        "not_found"
      ],
      "http": {
        "method": "GET",
        "path": "/describe/{file...}"
      },
      "ws": false
    }
  ],
  "refusals": [
    {
      "name": "invalid",
      "http": 400,
      "meaning": "Queries and request bodies are not accepted."
    },
    {
      "name": "not_found",
      "http": 404,
      "meaning": "No such management route or contract file."
    },
    {
      "name": "method_not_allowed",
      "http": 405,
      "meaning": "The route accepts GET only."
    }
  ],
  "service": "dawn",
  "surface": "management"
}
