Merchant-0 A2A Protocol Server API

The REST contract behind Merchant-0's agent-commerce surface, served by a FastAPI application at https://api.merchant-0.com and described by a 95-operation OpenAPI 3.1.0 document at /openapi.json. Public routes cover service discovery (GET /api/catalog, /api/publicist/catalog), the AP2-labelled three-step purchase flow (POST /api/ap2/negotiate -> /api/ap2/sign -> /api/ap2/execute, with the result read back from GET /api/intel/{execution_id}), a free 24-hour trial grant, buyer-filed disputes, per-subscription quota (GET /api/subscriptions/{id}/usage), a UCP capability manifest and an MRO product catalog search, plus a REST-shaped MCP manifest (GET /api/mcp/manifest, /api/mcp/tools). The same document also publishes the operator's internal control plane (kill switch, credit limits, price bands, settlement confirmation, agent-council status) gated by a body/query sandbox_token the contract does not describe. The document declares no servers[], no securitySchemes, no tags and only 200/422 responses; the base URL below was confirmed from the host the spec is served on and the agent card's agent_api field.

Operations 95

GET / Root #
POST /message/send A2A Message Send #
GET /health Health #
GET /.well-known/ucp-manifest.json Get Ucp Manifest #
GET /api/ucp/capabilities List Capabilities #
GET /api/ucp/identity Get Identity #
POST /api/ucp/catalog/search Search Catalog #
GET /api/ucp/catalog/search Search Catalog #
GET /api/ucp/catalog/details/{sku} Get Product Details #
GET /api/ucp/inventory/check/{sku} Check Inventory #
POST /api/ucp/negotiate Negotiate Quote #
GET /api/mcp/manifest Get Mcp Manifest #
GET /api/mcp/tools List Mcp Tools #
GET /api/mcp/resources List Mcp Resources #
POST /api/mcp/inventory/search Mcp Inventory Search #
GET /api/mcp/categories Get Categories #
POST /api/ap2/intent Submit Intent #
POST /api/ap2/sign/{intent_id} Sign Cart #
POST /api/ap2/execute/{cart_id} Execute Payment #
GET /api/ap2/cart/{cart_id} Get Cart #
GET /api/ap2/stats Get Ap2 Stats #
POST /api/ucp/checkout Checkout #
GET /api/dashboard/a2a Get Dashboard Data #
GET /api/catalog Get Service Catalog #
GET /api/ap2/executions Get Ap2 Executions #
GET /api/ap2/review/{contract_id} Get Ap2 Review Status #
GET /api/ap2/reviews Get Ap2 Reviews Ceo #
POST /api/ap2/review/{path_id}/approve Ap2 Review Approve #
POST /api/ap2/review/{path_id}/reject Ap2 Review Reject #
GET /api/invoices Get Invoices Cxo #
GET /api/subscriptions Get Subscriptions Cxo #
GET /api/subscriptions/{subscription_id}/usage Get Subscription Usage By Id #
POST /api/subscriptions/renew Trigger Renewal Manually #
GET /api/ucp/manifest Get Ucp Manifest Alias #
GET /api/ucp/inventory/check Check Inventory Alias #
GET /api/mcp/capabilities Get Mcp Capabilities Alias #
POST /api/ap2/negotiate Ap2 Negotiate Alias #
POST /api/ap2/sign Ap2 Sign Alias #
POST /api/ap2/execute Ap2 Execute Alias #
GET /api/intel Get All Intel Queries #
GET /api/intel/{execution_id} Get Intel Result #
GET /harvest/history Get Harvest History #
GET /bank/usd-balance Get Usd Balance #
GET /credit-health Get Credit Health #
GET /sandbox/state Get Sandbox State #
POST /config/credit-limit Update Credit Limit #
GET /config/harvest-threshold Get Harvest Threshold Config #
POST /config/harvest-threshold Update Harvest Threshold #
GET /api/credit/status Get Credit Status Endpoint #
POST /api/webhooks/wise Wise Webhook Receiver #
GET /emergency/status Get Emergency Status #
POST /emergency/kill-switch/arm Arm Kill Switch #
POST /emergency/kill-switch/activate Activate Kill Switch #
POST /emergency/evacuate/initiate Initiate Evacuation #
GET /api/scout/status Get Scout Status #
GET /api/scout/proposals List Scout Proposals #
POST /api/scout/proposals/{proposal_id}/approve Approve Scout Proposal #
POST /api/scout/proposals/{proposal_id}/reject Reject Scout Proposal #
POST /api/scout/proposals/{proposal_id}/veto Veto Scout Proposal #
GET /api/technologist/status Get Technologist Status #
GET /config/price-bands Get Price Bands Config #
POST /config/price-bands/{sku} Update Price Band Config #
GET /api/treasurer/status Get Treasurer Status #
GET /api/diplomat/status Get Diplomat Status #
POST /api/diplomat/reputation/reset Diplomat Reputation Reset #
POST /api/ap2/dispute Ap2 Dispute File #
GET /api/advocate/disputes Get Advocate Disputes #
POST /api/advocate/disputes/{dispute_id}/resolve Resolve Advocate Dispute #
GET /api/advocate/status Get Advocate Status #
POST /api/sentinel/whitelist/add Sentinel Whitelist Add #
POST /api/sentinel/whitelist/remove Sentinel Whitelist Remove #
GET /api/sentinel/status Get Sentinel Status #
GET /api/strategist/status Get Strategist Status #
GET /api/strategist/briefing Get Strategist Briefing #
POST /api/strategist/briefing/generate Post Strategist Briefing Generate #
GET /api/publicist/manifest Get Publicist Manifest #
GET /api/publicist/catalog Get Publicist Catalog #
GET /api/publicist/status Get Publicist Status #
GET /api/subscriptions/delivery Get Subscription Delivery #
GET /api/subscriptions/delivery/status Get Subscription Delivery Status #
GET /api/settlement/status Get Settlement Status #
GET /api/settlement/records Get Settlement Records #
POST /api/settlement/confirm Post Settlement Confirm #
POST /api/discovery/hit Post Discovery Hit #
GET /api/discovery/funnel Get Discovery Funnel #
GET /api/discovery/registry-package Get Discovery Registry Package #
GET /api/outbound/status Get Outbound Status #
GET /api/outbound/targets Get Outbound Targets #
POST /api/outbound/targets Add Outbound Target #
POST /api/outbound/run Run Outbound Now #
POST /api/ap2/trial-grant Post Trial Grant #
POST /api/ap2/trial-execute Post Trial Execute #
GET /api/trial/status Get Trial Status #
GET /api/subscription/referral-code Get Referral Code #
GET /api/subscription/growth-stats Get Subscription Growth Stats #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/merchant-0-a2a-protocol-server-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

merchant-0-com-openapi.json Raw ↑
{
  "openapi": "3.1.0",
  "info": {
    "title": "Merchant-0 A2A Protocol Server",
    "description": "Agent-to-Agent Commerce API for the 2026 Agentic Economy",
    "version": "2026.1"
  },
  "servers": [
    {
      "url": "https://api.merchant-0.com",
      "description": "Production. The spec is served from this host at /openapi.json and the A2A agent card names it as agent_api; the harvested document declares no servers[] (added by API Evangelist, recorded in overlays/merchant-0-com-openapi-overlay.yaml)."
    }
  ],
  "paths": {
    "/": {
      "get": {
        "summary": "Root",
        "description": "API health check.",
        "operationId": "root__get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/message/send": {
      "post": {
        "summary": "A2A Message Send",
        "description": "Minimal JSON-RPC 2.0 handler for A2A ``message/send`` (registry health / discovery).\n\n**No database, no outbound HTTP** -- only reads the request body, parses JSON when\npresent, and returns a fixed payload. Accepts full JSON-RPC 2.0 or simpler JSON\nbodies; always HTTP **200**. Non-JSON-RPC payloads get ``id: null``.",
        "operationId": "a2a_message_send_message_send_post",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/health": {
      "get": {
        "summary": "Health",
        "description": "Detailed health check.",
        "operationId": "health_health_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/.well-known/ucp-manifest.json": {
      "get": {
        "summary": "Get Ucp Manifest",
        "description": "UCP Manifest Discovery Endpoint.\n\nOther agents query this to discover Merchant-0's capabilities.\nStandard location per UCP spec: /.well-known/ucp-manifest.json",
        "operationId": "get_ucp_manifest__well_known_ucp_manifest_json_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/ucp/capabilities": {
      "get": {
        "summary": "List Capabilities",
        "description": "List all UCP capabilities.",
        "operationId": "list_capabilities_api_ucp_capabilities_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/ucp/identity": {
      "get": {
        "summary": "Get Identity",
        "description": "Get Merchant-0's verifiable identity.",
        "operationId": "get_identity_api_ucp_identity_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/ucp/catalog/search": {
      "post": {
        "summary": "Search Catalog",
        "description": "Search product catalog.\n\nUCP Capability: dev.ucp.catalog.search",
        "operationId": "search_catalog_api_ucp_catalog_search_post",
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "title": "Q"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CatalogSearchRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      },
      "get": {
        "summary": "Search Catalog",
        "description": "Search product catalog.\n\nUCP Capability: dev.ucp.catalog.search",
        "operationId": "search_catalog_api_ucp_catalog_search_get",
        "parameters": [
          {
            "name": "q",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "title": "Q"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CatalogSearchRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ucp/catalog/details/{sku}": {
      "get": {
        "summary": "Get Product Details",
        "description": "Get detailed product information.\n\nUCP Capability: dev.ucp.catalog.details",
        "operationId": "get_product_details_api_ucp_catalog_details__sku__get",
        "parameters": [
          {
            "name": "sku",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Sku"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ucp/inventory/check/{sku}": {
      "get": {
        "summary": "Check Inventory",
        "description": "Check real-time stock availability.\n\nUCP Capability: dev.ucp.inventory.check\nA2A CATALOG v1.0: CEO catalog SKUs are resolved from Supabase (or\nstatic seed); other SKUs fall through to the MCP inventory server.",
        "operationId": "check_inventory_api_ucp_inventory_check__sku__get",
        "parameters": [
          {
            "name": "sku",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Sku"
            }
          },
          {
            "name": "quantity",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "default": 1,
              "title": "Quantity"
            }
          },
          {
            "name": "X-Payment",
            "in": "header",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "X-Payment"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ucp/negotiate": {
      "post": {
        "summary": "Negotiate Quote",
        "description": "Request a quote with dynamic pricing.\n\nUCP Capability: dev.ucp.shopping.negotiate\nUses Diplomat with sentiment-based pricing intelligence.",
        "operationId": "negotiate_quote_api_ucp_negotiate_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/NegotiateRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/mcp/manifest": {
      "get": {
        "summary": "Get Mcp Manifest",
        "description": "MCP Server manifest for LLM integration.\n\nDescribes available tools and resources for LLMs.",
        "operationId": "get_mcp_manifest_api_mcp_manifest_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/mcp/tools": {
      "get": {
        "summary": "List Mcp Tools",
        "description": "List available MCP tools.",
        "operationId": "list_mcp_tools_api_mcp_tools_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/mcp/resources": {
      "get": {
        "summary": "List Mcp Resources",
        "description": "List available MCP resources.",
        "operationId": "list_mcp_resources_api_mcp_resources_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/mcp/inventory/search": {
      "post": {
        "summary": "Mcp Inventory Search",
        "description": "MCP Tool: search_inventory\n\nNatural language product search optimized for LLM understanding.",
        "operationId": "mcp_inventory_search_api_mcp_inventory_search_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MCPInventoryQuery"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/mcp/categories": {
      "get": {
        "summary": "Get Categories",
        "description": "Get available product categories.",
        "operationId": "get_categories_api_mcp_categories_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/ap2/intent": {
      "post": {
        "summary": "Submit Intent",
        "description": "Submit AP2 intent mandate.\n\nStep 1 of AP2 flow: Buyer submits purchase intent.",
        "operationId": "submit_intent_api_ap2_intent_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/AP2IntentRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ap2/sign/{intent_id}": {
      "post": {
        "summary": "Sign Cart",
        "description": "Sign cart mandate.\n\nStep 2 of AP2 flow: Generate signed cart mandate.",
        "operationId": "sign_cart_api_ap2_sign__intent_id__post",
        "parameters": [
          {
            "name": "intent_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Intent Id"
            }
          },
          {
            "name": "discount_percent",
            "in": "query",
            "required": false,
            "schema": {
              "type": "number",
              "default": 0.0,
              "title": "Discount Percent"
            }
          },
          {
            "name": "discount_reason",
            "in": "query",
            "required": false,
            "schema": {
              "type": "string",
              "title": "Discount Reason"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ap2/execute/{cart_id}": {
      "post": {
        "summary": "Execute Payment",
        "description": "Execute payment.\n\nStep 3 of AP2 flow: Execute payment with proof.",
        "operationId": "execute_payment_api_ap2_execute__cart_id__post",
        "parameters": [
          {
            "name": "cart_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Cart Id"
            }
          },
          {
            "name": "payment_proof",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Payment Proof"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ap2/cart/{cart_id}": {
      "get": {
        "summary": "Get Cart",
        "description": "Get signed cart details.",
        "operationId": "get_cart_api_ap2_cart__cart_id__get",
        "parameters": [
          {
            "name": "cart_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Cart Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ap2/stats": {
      "get": {
        "summary": "Get Ap2 Stats",
        "description": "Get AP2 transaction statistics.",
        "operationId": "get_ap2_stats_api_ap2_stats_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/ucp/checkout": {
      "post": {
        "summary": "Checkout",
        "description": "Complete checkout flow.\n\nUCP Capability: dev.ucp.shopping.checkout\nCombines intent validation + cart signing in one call.",
        "operationId": "checkout_api_ucp_checkout_post",
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CheckoutRequest"
              }
            }
          },
          "required": true
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/dashboard/a2a": {
      "get": {
        "summary": "Get Dashboard Data",
        "description": "Get A2A dashboard data.\n\nA2A CATALOG v1.0: ``catalog_items_count`` reflects the CEO service\ncatalog (Supabase a2a_catalog when present, else static seed).\n\n  ucp.trust_score / mcp.products_count -- remain 0.0 and 0 until\n  their respective real metrics land; see A2A ENDPOINT PROVISIONING\n  v1.0 notes in-repo.\n\nucp.capabilities_count / ucp.regions / mcp.categories are honest\nservice declarations. diplomat from diplomat handler. ap2 block\nmerges handler stats with Supabase ap2_executions aggregate\n(AP2 PAYMENT WIRING v1.0) for real total_executed and\ntotal_volume_usd.",
        "operationId": "get_dashboard_data_api_dashboard_a2a_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/catalog": {
      "get": {
        "summary": "Get Service Catalog",
        "description": "Public A2A service catalog (A2A CATALOG v1.0).\n\nOptional ``category`` filter: ``intelligence`` | ``data`` | ``commerce``\n| ``agent``. Backed by Supabase when available; otherwise CEO static seed.",
        "operationId": "get_service_catalog_api_catalog_get",
        "parameters": [
          {
            "name": "category",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Category"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Response Get Service Catalog Api Catalog Get"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ap2/executions": {
      "get": {
        "summary": "Get Ap2 Executions",
        "description": "CEO-facing completed AP2 alias executions (buyer_did excluded).",
        "operationId": "get_ap2_executions_api_ap2_executions_get",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "default": 50,
              "title": "Limit"
            }
          },
          {
            "name": "sku",
            "in": "query",
            "required": false,
            "schema": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "type": "null"
                }
              ],
              "title": "Sku"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Response Get Ap2 Executions Api Ap2 Executions Get"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ap2/review/{contract_id}": {
      "get": {
        "summary": "Get Ap2 Review Status",
        "description": "Strategist review status for a contract (buyer_did never returned).",
        "operationId": "get_ap2_review_status_api_ap2_review__contract_id__get",
        "parameters": [
          {
            "name": "contract_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Contract Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Get Ap2 Review Status Api Ap2 Review  Contract Id  Get"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ap2/reviews": {
      "get": {
        "summary": "Get Ap2 Reviews Ceo",
        "description": "Pending / escalated reviews for CEO (no buyer_did in rows).",
        "operationId": "get_ap2_reviews_ceo_api_ap2_reviews_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Get Ap2 Reviews Ceo Api Ap2 Reviews Get"
                }
              }
            }
          }
        }
      }
    },
    "/api/ap2/review/{path_id}/approve": {
      "post": {
        "summary": "Ap2 Review Approve",
        "description": "CEO/Strategist: approve a Strategist-escalated review.\n\nSource of truth is ``ap2_reviews``. The ``{path_id}`` URL segment\naccepts either a ``review_id`` (e.g. ``rev_...``) or a ``contract_id``\n(e.g. ``ap2_...``); the dashboard sends ``contract_id``, CEO test\ncurls typically send ``review_id``, and both paths resolve to the\nsame DB row.",
        "operationId": "ap2_review_approve_api_ap2_review__path_id__approve_post",
        "parameters": [
          {
            "name": "path_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Path Id"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Ap2StrategistReviewActionBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Ap2 Review Approve Api Ap2 Review  Path Id  Approve Post"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/ap2/review/{path_id}/reject": {
      "post": {
        "summary": "Ap2 Review Reject",
        "description": "CEO/Strategist: reject a Strategist-escalated review.\n\nSee ``ap2_review_approve`` for the source-of-truth rationale.",
        "operationId": "ap2_review_reject_api_ap2_review__path_id__reject_post",
        "parameters": [
          {
            "name": "path_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Path Id"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/Ap2StrategistReviewActionBody"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Ap2 Review Reject Api Ap2 Review  Path Id  Reject Post"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/invoices": {
      "get": {
        "summary": "Get Invoices Cxo",
        "description": "CEO-safe invoice list: buyer_did is never returned.",
        "operationId": "get_invoices_cxo_api_invoices_get",
        "parameters": [
          {
            "name": "limit",
            "in": "query",
            "required": false,
            "schema": {
              "type": "integer",
              "default": 50,
              "title": "Limit"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Response Get Invoices Cxo Api Invoices Get"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/subscriptions": {
      "get": {
        "summary": "Get Subscriptions Cxo",
        "description": "CEO-safe subscription list: buyer_did excluded from response.",
        "operationId": "get_subscriptions_cxo_api_subscriptions_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Response Get Subscriptions Cxo Api Subscriptions Get"
                }
              }
            }
          }
        }
      }
    },
    "/api/subscriptions/{subscription_id}/usage": {
      "get": {
        "summary": "Get Subscription Usage By Id",
        "description": "Per-subscription quota (buyer DID never emitted).",
        "operationId": "get_subscription_usage_by_id_api_subscriptions__subscription_id__usage_get",
        "parameters": [
          {
            "name": "subscription_id",
            "in": "path",
            "required": true,
            "schema": {
              "type": "string",
              "title": "Subscription Id"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Response Get Subscription Usage By Id Api Subscriptions  Subscription Id  Usage Get"
                }
              }
            }
          },
          "422": {
            "description": "Validation Error",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/HTTPValidationError"
                }
              }
            }
          }
        }
      }
    },
    "/api/subscriptions/renew": {
      "post": {
        "summary": "Trigger Renewal Manually",
        "description": "Manually trigger subscription renewal job (admin / testing).",
        "operationId": "trigger_renewal_manually_api_subscriptions_renew_post",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "title": "Response Trigger Renewal Manually Api Subscriptions Renew Post"
                }
              }
            }
          }
        }
      }
    },
    "/api/ucp/manifest": {
      "get": {
        "summary": "Get Ucp Manifest Alias",
        "description": "Alias of /.well-known/ucp-manifest.json.\n\nReturns the same UCPManifest payload under the MP-specified path so\nagent SDKs written against /api/ucp/manifest succeed out of the box.",
        "operationId": "get_ucp_manifest_alias_api_ucp_manifest_get",
        "responses": {
          "200": {
            "description": "Successful Response",
            "content": {
              "application/json": {
                "schema": {}
              }
            }
          }
        }
      }
    },
    "/api/ucp/inventory/check": {
      "get": {
        "summary": "Check Inventory Alias",
        "description": "Inventory-check alias at the path-param-less URL.\n\nWithout ``?sku=``: returns the A2A service catalog listing (A2A CATALOG\nv1.0). With ``?sku=``: resolves CEO catalog first, then MC

# --- truncated at 32 KB (132 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/merchant-0-com/refs/heads/main/openapi/merchant-0-com-openapi.json