Skip to main content

Base URL

Use your own deployed instance’s URL (see Deployment), or the operator’s hosted instance if you’re a customer rather than a self-hoster.

Authentication

None beyond x402 payment itself — POST /verify-facilitator is gated by the x402 payment protocol, not an API key. GET / and GET /health are unauthenticated.

GET /

Service metadata — a human-readable description of what this instance does and how to call it.

GET /health

Liveness check — used as this service’s own health check path when deployed (see Deployment).

POST /verify-facilitator

Runs Ward’s full guarantee suite — all eight correctness properties (U1U5, A1A3) — against a facilitator URL you provide, and returns a pass/fail report with reproducible evidence.
string
required
The base URL of the x402 facilitator to test — e.g. https://your-facilitator.example.com. Must implement the standard /verify, /settle, and /supported endpoints.

Pricing

Price

$1.00 per call

Scheme

exact

Network

Algorand TestNet
Payment is enforced by @x402/express’s paymentMiddleware() — a request without a valid PAYMENT-SIGNATURE header receives a standard x402 402 Payment Required response describing the exact payment requirements; retry the same request with a valid signed payment attached, exactly as any x402-compliant client would. The route is tagged extra: { tag: "x402-global-challenge" } for Bazaar/leaderboard attribution, and is registered with declareDiscoveryExtension so it’s discoverable through the payment facilitator’s /discovery/resources catalog once a real payment has settled through it.

Success response

The report body is a ReportSummary (see src/core/report-summary.ts) — a compact, customer-facing reduction of the full WardReport the CLI writes to reports/latest.json. It strips raw wire payloads and msgpack blobs down to human-readable rows/facts per invariant while keeping every pass/fail result, its source citation, and its mustHave status.

Error responses

Deploy your own instance