Skip to content
LogoLogo

Service discovery

The gateway catalog is the source of services for which the gateway will actually mint a 402. There is no sample-data fallback.

List services

GET /v1/services
GET /v1/services?q=<query>

Example response shape:

{
  "count": 1,
  "services": [
    {
      "id": "service-id",
      "name": "Service name",
      "description": "What one paid call returns",
      "method": "POST",
      "path": "/v1/resource",
      "resourceUrl": "https://gateway.example/v1/resource",
      "price": "250000",
      "asset": "0x...::usdc::USDC",
      "decimals": 6,
      "payTo": "0x...",
      "network": "sui:testnet",
      "dialects": ["mpp"],
      "rail": "delegate",
      "mimeType": "application/json",
      "status": "live",
      "managed": false,
      "brand": null,
      "activeRevision": 1
    }
  ]
}

Values illustrate types, not deployable terms. price is an exact atomic integer string. Use asset and decimals together for display and keep the integer for authorization.

rail is the settlement engine. For agent commerce expect a spend account (wire tag delegate). The V1 allowance rail is retired; do not plan new integrations against it.

Read one service

GET /v1/services/{id}
GET /v1/services/{id}.md

The JSON resource is authoritative for machine terms. The Markdown form is an agent-readable description. An authenticated owner may receive additional safe management fields, but credential locators are never returned.

Use resourceUrl for the paid call, and compare id, method, path, asset, and recipient with the owner's active policy target. Fetching the catalog does not authorize a purchase.

Registration (sellers)

Canonical create path on the gateway: POST /v1/register (draft, then activate via the owner surface). See Seller quickstart.

GET /SKILL.md
GET /llms.txt
GET /.well-known/mcp.json

/SKILL.md is the agent skill contract for safe discovery and payment. /llms.txt is a short index of live endpoints.