openapi: 3.0.3 info: title: Waxell Observe Cost Management Prompts API description: 'The Waxell Observe REST API exposes the AI agent governance and observability control plane. It is used by the `waxell-observe` Python SDK and Developer MCP server to record agent runs, log LLM calls and spans, evaluate runtime governance policies, manage prompts, and administer model cost tables. Endpoints are served from a tenant-specific control plane host (e.g. `https://acme.waxell.dev`) at the path prefix `/api/v1/observe/`. Authentication uses the same `wax_sk_` keys issued in the dashboard, presented either as `X-Wax-Key` or as a `Bearer` token. ' version: '1.0' contact: name: Waxell url: https://waxell.ai/ license: name: Proprietary servers: - url: https://{tenant}.waxell.dev description: Tenant-specific Waxell control plane variables: tenant: default: acme description: Tenant subdomain provisioned for your organization security: - WaxKey: [] - BearerAuth: [] tags: - name: Prompts description: Managed prompts retrievable by name and version paths: /api/v1/observe/prompts/{name}/: get: tags: - Prompts summary: Get Managed Prompt description: Retrieve a managed prompt by name, optionally pinned to a version or label. operationId: getPrompt parameters: - in: path name: name required: true schema: type: string description: Name of the managed prompt - in: query name: label required: false schema: type: string description: Label (e.g. `production`, `staging`) to resolve to a specific version - in: query name: version required: false schema: type: integer description: Explicit version number responses: '200': description: Prompt retrieved content: application/json: schema: $ref: '#/components/schemas/Prompt' '404': $ref: '#/components/responses/NotFound' components: schemas: Prompt: type: object properties: name: type: string version: type: integer label: type: string template: type: string variables: type: array items: type: string metadata: type: object additionalProperties: true Error: type: object properties: error: type: string message: type: string request_id: type: string required: - error - message responses: NotFound: description: Resource does not exist. content: application/json: schema: $ref: '#/components/schemas/Error' securitySchemes: WaxKey: type: apiKey in: header name: X-Wax-Key description: Waxell API key issued in the dashboard. Format `wax_sk_...`. BearerAuth: type: http scheme: bearer bearerFormat: wax_sk description: Same `wax_sk_` key passed as a Bearer token.