Reference

Discover paid APIs

Lists every x402 API that settles through Arcus in the standard Bazaar discovery format. Agent wallets and indexers that already speak x402 discovery can find and pay Arcus merchants with no custom integration.

GET/discovery/resources

Request

No authentication. CORS is open and responses are cached for a minute.

request
sh
curl "https://facilitator.arcusnetwork.co/discovery/resources?limit=1&q=wallet"
ParameterMeaning
typeResource type. Only http exists; any other value returns no items.
limitItems per page, 1 to 100. Defaults to 20.
offsetItems to skip. Defaults to 0.
qArcus extra. Case-insensitive text search over merchant and endpoint names and descriptions.
merchantArcus extra. Only endpoints of this merchant id, as listed in the directory.

Response

200 OK
json
{
  "x402Version": 2,
  "items": [
    {
      "resource": "https://arcusnetwork.co/api/merchants/arcus/wallet",
      "type": "http",
      "x402Version": 2,
      "accepts": [
        {
          "scheme": "exact",
          "network": "eip155:5042",
          "amount": "2000",
          "asset": "0x3600000000000000000000000000000000000000",
          "payTo": "0xBuybackWallet",
          "maxTimeoutSeconds": 120,
          "extra": { "name": "USDC", "version": "2" }
        },
        { "scheme": "batch-settlement", "network": "eip155:5042", "amount": "2000", "...": "..." }
      ],
      "lastUpdated": 1790000000,
      "metadata": {
        "title": "Wallet snapshot",
        "description": "USDC and $ARCUS balances, transaction count and account type for any Arc address.",
        "provider": "Arcus Labs",
        "merchant": { "id": "arcus", "name": "Arcus Data", "official": true, "partner": false, "identity": { "agentId": "..." } },
        "pricing": "fixed",
        "hostedByArcus": true,
        "input": { "type": "http", "method": "GET", "queryParams": { "address": "0xE074..." } },
        "inputSchema": { "type": "object", "properties": { "address": { "type": "string" } }, "required": ["address"] },
        "output": { "type": "json" }
      }
    }
  ],
  "pagination": { "limit": 1, "offset": 0, "total": 1 }
}
FieldMeaning
items[].resourceThe URL to call. One item per endpoint.
items[].acceptsThe payment requirements the endpoint quotes. Endpoints Arcus hosts also offer private batch-settlement. The live 402 is always authoritative.
items[].lastUpdatedUnix seconds of the last listing change.
metadata.pricingmetered means amount is a cap: the 402 quotes a per-request ceiling and the merchant refunds the rest.
metadata.inputHow to call the endpoint with example values: queryParams for GET, a JSON body for POST.
metadata.inputSchemaJSON Schema for the parameters, ready to use as a tool definition.
metadata.merchant.identityThe merchant’s ERC-8004 agent identity on Arc mainnet, or null.
pagination.totalItems matching the filters across all pages.