{
  "schema_note": "Canonical public URLs for agents and buyers. Regenerate: npm run docs:sync-endpoints (reads repo-root .env). Commit result for GitHub Pages. Stable HTTPS + mainnet alignment: documentation/PUBLIC_MAINNET_OPERATIONS.md",
  "portal_url": "https://hobie1kenobi.github.io/agentic-crypto-swarm-prototype/",
  "updated_at": "2026-04-11T00:36:42Z",
  "endpoints": [
    {
      "id": "t54_public_origin",
      "label": "T54 XRPL x402 seller (discovery origin)",
      "description": "Discovery appends each SKU path from x402_providers.json. With unified Caddy, base URL ends with /t54.",
      "url": "https://api.agentic-swarm-marketplace.com/t54",
      "network": "xrpl:0",
      "health_url": "https://api.agentic-swarm-marketplace.com/t54/health"
    },
    {
      "id": "base_x402_query",
      "label": "Base USDC x402 seller (facilitator / Bazaar)",
      "description": "Full GET /x402/v1/query URL for Coinbase Bazaar / x402 clients.",
      "url": "https://api.agentic-swarm-marketplace.com/x402/v1/query",
      "network": "eip155:8453",
      "health_url": "https://api.agentic-swarm-marketplace.com/health"
    },
    {
      "id": "base_x402_intake_resale",
      "label": "Base USDC intake resale (same packs as T54 XRPL)",
      "description": "GET /x402/v1/intake-resale?pack_id=<uuid>. USDC settles to X402_SELLER_PAY_TO. Override URL with X402_INTAKE_RESALE_PUBLIC_URL.",
      "url": "https://api.agentic-swarm-marketplace.com/x402/v1/intake-resale",
      "network": "eip155:8453",
      "health_url": "https://api.agentic-swarm-marketplace.com/health"
    },
    {
      "id": "marketplace_public_origin",
      "label": "Marketplace HTTP (Stripe MPP, buyer API, webhooks)",
      "description": "Stripe MPP + buyer API + webhooks: unified Caddy maps /webhooks/stripe, /v1/*, /marketplace/* to marketplace:serve (8055). Same public HTTPS origin as x402/T54 when MARKETPLACE_PUBLIC_BASE_URL matches your tunnel.",
      "url": "https://api.agentic-swarm-marketplace.com",
      "network": "marketplace",
      "health_url": "https://api.agentic-swarm-marketplace.com/health"
    },
    {
      "id": "mcp_t54_sse",
      "label": "MCP T54 x402 (SSE, remote clients)",
      "description": "Streamable HTTP (Smithery): POST .../mcp (port 9052, mcp>=1.23). SSE: GET .../mcp/sse, POST .../mcp/messages/ (9051). Caddy: exact /mcp \u2192 9052; /mcp/* \u2192 9051. Set MCP_SSE_PUBLIC_URL to your public HTTPS origin + /mcp.",
      "url": "https://api.agentic-swarm-marketplace.com/mcp",
      "sse_url": "https://api.agentic-swarm-marketplace.com/mcp/sse",
      "messages_url": "https://api.agentic-swarm-marketplace.com/mcp/messages/",
      "network": "mcp",
      "health_url": ""
    }
  ]
}
