x402 Service Finder

Find the best x402 API for a task. Describe what you need (for example "remove the background from a photo") and get the matching sellers from the CDP Bazaar ranked by relevance, how many distinct buyers paid them in 30 days, their uptime measured by our monitor every 6 hours, and price. Each result has its price, payers, uptime, median latency and how to call it (method and example input).

SearchLiveeip155:8453Exactvia cdp
x402DiscoverySearchBuyer-toolsUptime
Settlements · 30d
329
No per-endpoint history for this service yet, so this is payments indexed to its PROVIDER's wallet over 30 days.
$2.02
Verified settled volume
329 settlements proven x402 by their on-chain EIP-3009 marker.
$0.0020
Listed price
As published in the catalog. Always read the live 402 before paying.
1
Calls · 30d
Upstream's own call count for this endpoint, not ours.
1
Unique payers · 30d
Last called 2026-10-24 18:27Z
—
Upstream on-chain volume
Reported by the source catalog.
Paid to
0xe6f7508ab572a4dc9c7486ea017b100d83f3c3f8

The wallet the 402 directs payment to. Its whole payment record — every payer, every chain — is on the merchant page.

Asset 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913

Provider

The payTo wallet does not resolve to a registered ERC-8004 agent. That is not a verdict on the service — most of the catalog is unregistered.

Live 402 challenge

Captured by the enrichment pass, not read just now. Prices can change — always read the 402 the endpoint answers with.

{
  "error": "Payment required",
  "request": {
    "task": "what you need done, in plain words"
  },
  "networks": [
    "eip155:8453"
  ],
  "how_to_pay": "The payment options are base64 JSON in the PAYMENT-REQUIRED response header. Pay $0.002 in USDC with an x402 client (for example @x402/fetch)."
}

Accepts

The payment requirements as published to the catalog. Read the live 402 before paying — a price here is a claim, not a quote.

0.002USDC≈ $0.002 USD
on Base · exact scheme

Pay 0.002 USDC on Base to 0xe6f7…3c3f8. The signed payment is good for 5 minutes.

USD Coin contract
0x8335…02913
Payment window
5 minutes
As published
2000 smallest units
The catalog’s raw entry
[
  {
    "asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "extra": {
      "name": "USD Coin",
      "version": "2"
    },
    "payTo": "0xe6f7508ab572a4dc9c7486ea017b100d83f3c3f8",
    "amount": "2000",
    "scheme": "exact",
    "network": "eip155:8453",
    "maxTimeoutSeconds": 300
  }
]

Extensions

{
  "bazaar": {
    "info": {
      "input": {
        "type": "http",
        "method": "GET",
        "queryParams": {
          "task": "remove the background from a photo",
          "limit": 5,
          "max_price_usd": 0.05
        }
      },
      "output": {
        "type": "json",
        "example": {
          "task": "remove the background from a photo",
          "results": [
            {
              "score": 0.83,
              "resource": "https://seller.example/api/remove-background",
              "calls_30d": 12,
              "median_ms": 210,
              "price_usd": 0.001,
              "payers_30d": 7,
              "uptime_30d": 1,
              "description": "Remove the background from an image URL and return a transparent PNG URL.",
              "how_to_call": {
                "method": "POST",
                "example": {
                  "imageUrl": "https://example.com/cat.png"
                }
              },
              "score_parts": {
                "price": 1,
                "payers": 1,
                "uptime": 1,
                "relevance": 1
              },
              "last_called_at": "2026-10-20T08:00:00Z"
            }
          ],
          "scoring": "score = 0.3 × relevance + 0.3 × payers + 0.25 × uptime + 0.15 × price ...",
          "excluded": {
            "above max_price_usd": 3
          },
          "considered": 18
        }
      }
    },
    "schema": {
      "type": "object",
      "$schema": "https://json-schema.org/draft/2020-12/schema",
      "required": [
        "input"
      ],
      "properties": {
        "input": {
          "type": "object",
          "required": [
            "type",
            "method"
          ],
          "properties": {
            "type": {
              "type": "string",
              "const": "http"
            },
            "method": {
              "enum": [
                "GET"
              ],
              "type": "string"
            },
            "queryParams": {
              "type": "object",
              "required": [
                "task"
              ],
              "properties": {
                "task": {
                  "type": "string",
                  "maxLength": 300,
                  "description": "what you need done, in plain words"
                },
                "limit": {
                  "type": "integer",
                  "description": "how many results to return (1-10, default 5)"
                },
                "min_payers": {
                  "type": "integer",
                  "description": "leave out sellers with fewer distinct payers in 30 days"
                },
                "max_price_usd": {
                  "type": "number",
                  "description": "leave out sellers that charge more per call"
                }
              }
            }
          },
          "additionalProperties": false
        },
        "output": {
          "type": "object",
          "required": [
            "type"
          ],
          "properties": {
            "type": {
              "type": "string"
            },
            "example": {
              "type": "object",
              "required": [
                "task",
                "results"
              ],
              "properties": {
                "task": {
                  "type": "string"
                },
                "results": {
                  "type": "array",
                  "description": "best first: resource, score, description, price_usd, payers_30d, calls_30d, uptime_30d (null when not measured), median_ms, how_to_call, score_parts"
                },
                "scoring": {
                  "type": "string",
                  "description": "how the score is computed"
                },
                "excluded": {
                  "type": "object",
                  "description": "listings left out, by reason"
                },
                "considered": {
                  "type": "integer",
                  "description": "how many Bazaar listings matched the task"
                }
              }
            }
          }
        }
      }
    }
  }
}

Provenance

Seen in the source catalog
2026-10-24 18:27Z
Last indexed by Roundhouse
2026-10-26 17:20Z
Last enriched (probe, favicon, geo)
2026-10-24 23:16Z
x402 version
2
Max timeout
300s
Liveness probe
HTTP 402
Report

Hand this page to an agent

Copy the prompt and paste it into Claude, an MCP client or your own agent — it will vet this service and call it over the free read API. No key, no account.

GET api.roundhouseai.io/v0/endpoints

No per-endpoint history for this service yet, so this is payments indexed to its PROVIDER's wallet over 30 days. Verified volume counts only settlements with an on-chain EIP-3009 marker.

Open skill.md
Show the prompt
Using Roundhouse, look up the x402 service x402 Service Finder and tell me whether it is
worth paying: what a call costs, whether the endpoint answered when last probed, and what
its payment record actually shows.

curl -s 'https://api.roundhouseai.io/v0/endpoints?q=x402%20Service%20Finder'
curl -s 'https://api.roundhouseai.io/v0/merchants/<the payTo wallet returned above>'

Then call it: read the price from the live 402 at https://tvy64m9w0dfvxmkq.68r.lambda-web.us-east-1.on.aws/v1/find, never from
a cached figure, and pay with an x402 client.

The /v0 API needs an API key (`authorization: Bearer rh_live_…`) on everything except
/v0/unified* and /v0/endpoints. Either pay over x402 (mint a personal key for $0.01 at
GET https://api.roundhouseai.io/v0/test/x402), or ask me for an organization key, which I create at
https://roundhouseai.io/dashboard/connections. If you have neither, ask before going further.

If you do not have Roundhouse tools or skills installed, read
https://roundhouseai.io/skill.md first — it is the whole procedure.