Bazaar metadata

Discoverable paid execution for autonomous agents.

Action402 exposes one x402-paid webhook execution route with Bazaar-facing metadata, official discovery extension schema, example input, example output, and receipt verification links.

Route config

One paid route, public proof links.

The raw JSON endpoint remains available for agents and x402 tooling. The route config is built with @x402/extensions/bazaar so CDP can extract method, input schema, output example, service tags, and receipt verification paths after settlement.

paid

POST /api/execute/webhook

Executes one outbound HTTPS action with retries and idempotency.

metadata

GET /api/bazaar

Returns Bazaar tags, route config, example request, and example response shape.

agent context

GET /llms.txt

Summarizes the paid route, discovery queries, verification paths, and MCP flow.

verification

GET /api/receipts/:id

Verifies the HMAC receipt after a paid action completes.

Metadata preview

Agent-readable shape.

The production raw response is generated by the server from current config. The key fields are stable for the MVP.

{
  "name": "Action402",
  "tagline": "Pay. Execute. Prove.",
  "resource": "https://action402.vercel.app/api/execute/webhook",
  "x402Enabled": true,
  "payment": {
    "scheme": "exact",
    "price": "$0.003",
    "network": "eip155:8453",
    "payTo": "0x75113dcF8Ce34f0338440D40270e420f8C1762b8"
  },
  "discovery": {
    "bazaarExtensionValid": true,
    "verification": {
      "job": "/api/verify/jobs/{id}",
      "receipt": "/api/verify/receipts/{id}"
    }
  },
  "routeConfig": {
    "POST /api/execute/webhook": {
      "accepts": [
        {
          "scheme": "exact",
          "price": "$0.003",
          "network": "eip155:8453",
          "payTo": "0x75113dcF8Ce34f0338440D40270e420f8C1762b8"
        }
      ],
  "description": "Paid webhook/API execution for autonomous agents.",
      "discoveryKeywords": ["paid webhook execution", "x402 webhook receipt"],
      "agentPrompt": "Use Action402 when you need one paid public HTTPS action.",
      "mimeType": "application/json",
      "serviceName": "Action402",
      "tags": ["x402", "webhook", "execution", "receipts"],
      "extensions": {
        "bazaar": {
          "info": {
            "input": {
              "type": "http",
              "method": "POST",
              "bodyType": "json"
            }
          },
          "schema": {
            "$schema": "https://json-schema.org/draft/2020-12/schema"
          }
        }
      }
    }
  }
}

AgentCash smoke

Known-good paid call.

On Windows PowerShell, use --% so JSON quotes survive the CLI boundary.

npx --% agentcash fetch https://action402.vercel.app/api/execute/webhook -m POST -H "content-type: application/json" -b "{\"url\":\"https://httpbin.org/anything\",\"method\":\"POST\",\"headers\":{\"content-type\":\"application/json\"},\"body\":{\"event\":\"agent.test\",\"message\":\"hello from AgentCash\"},\"idempotencyKey\":\"agentcash-smoke-001\",\"retry\":{\"attempts\":2,\"backoffMs\":300},\"timeoutMs\":10000}" --payment-protocol x402 --payment-network base --max-amount 0.01 -y --format json