Apache Mesos Operator HTTP API

The Mesos Operator HTTP API provides a POST-based API at /api/v1 on both master and agent nodes for cluster administration including health checks, state queries, resource reservation, maintenance scheduling, quota management, and agent lifecycle management. Supports JSON and Protobuf encoding.

OpenAPI Specification

apache-mesos-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Apache Mesos Operator HTTP API
  version: "1.0"
  description: >-
    Minimal OpenAPI for the Apache Mesos Operator HTTP API. All operations are
    POST requests to /api/v1 with a JSON body whose `type` field selects the
    operation (e.g. GET_HEALTH, GET_STATE, RESERVE_RESOURCES).
servers:
  - url: http://localhost:5050
    description: Mesos Master
  - url: http://localhost:5051
    description: Mesos Agent
x-generated-from: https://mesos.apache.org/documentation/latest/operator-http-api/
x-generated-by: claude-crawl-2026-05-08
paths:
  /api/v1:
    post:
      summary: Operator HTTP API call
      description: >-
        Submit an operator API call. The request body must be a JSON or
        Protobuf-encoded `Call` object. The `type` field determines the action,
        for example GET_HEALTH, GET_FLAGS, GET_VERSION, GET_METRICS,
        GET_LOGGING_LEVEL, SET_LOGGING_LEVEL, LIST_FILES, READ_FILE, GET_STATE,
        GET_AGENTS, GET_FRAMEWORKS, GET_EXECUTORS, GET_TASKS, GET_ROLES,
        GET_OPERATIONS, GET_WEIGHTS, UPDATE_WEIGHTS, GET_MASTER,
        RESERVE_RESOURCES, UNRESERVE_RESOURCES, CREATE_VOLUMES, DESTROY_VOLUMES,
        GROW_VOLUME, SHRINK_VOLUME, GET_MAINTENANCE_STATUS,
        GET_MAINTENANCE_SCHEDULE, UPDATE_MAINTENANCE_SCHEDULE,
        START_MAINTENANCE, STOP_MAINTENANCE, GET_QUOTA, UPDATE_QUOTA,
        MARK_AGENT_GONE, DRAIN_AGENT, DEACTIVATE_AGENT, REACTIVATE_AGENT,
        SUBSCRIBE, GET_CONTAINERS, LAUNCH_NESTED_CONTAINER, and
        WAIT_NESTED_CONTAINER.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                type:
                  type: string
                  description: Operator call type
              required:
                - type
          application/x-protobuf:
            schema:
              type: string
              format: binary
      responses:
        "200":
          description: Successful call response
          content:
            application/json:
              schema:
                type: object
        "202":
          description: Accepted (no response body)
        "400":
          description: Malformed call
components:
  schemas:
    GenericObject:
      type: object