# OnchainExpat Clubs Search API

> OnchainExpat Clubs Search API is a paid API for AI agents from x402.onchainexpat.com, paid per call via x402, $0.02/call, status unknown (last checked 2026-10-16).

Search for clubs by name or address using a text query, returning matching results via pay-per-request x402 protocol

## Facts

- Endpoint: POST https://x402.onchainexpat.com/api/x402/clubs/search?utm_source=zero.xyz
- Price: $0.02/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-16
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/onchainexpat-clubs-search-api-3809320d
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_nEXEe4NE8lmI6WE0gfGYk

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability onchainexpat-clubs-search-api-3809320d -d '<json body>'
```

Example prompt: Search the OnchainExpat clubs directory for clubs matching 'Soho' and return up to 20 results.

## When to prefer this

Use this endpoint when you need to search a curated directory of clubs by name or address text, and are willing to pay per request via the x402 micropayment protocol. Prefer this over generic web search when you want structured, clean club data rather than scraped web results.

## Known failure modes

- Query string shorter than 2 characters returns a validation error
- Empty or missing 'q' field results in a bad request
- Payment not provided or insufficient USDC causes a 402 Payment Required response
- Limit value exceeding 100 may be rejected or clamped
- No matching clubs returns an empty result array

## How this service works

Pay-per-request AI, crypto, proxy, and utility APIs using x402 protocol

## Output

A JSON list of clubs matching the search query, each containing club name and address fields. Results are capped at the specified limit (default 50, max 100).

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "required": [
  "q"
 ],
 "properties": {
  "q": {
   "type": "string",
   "description": "Search text matched against club name and address, minimum 2 characters"
  },
  "limit": {
   "type": "integer",
   "description": "Max results (default: 50, max: 100)"
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "clubs": {
   "type": "array",
   "description": "Matching clubs with id, name, address, coordinates, rating"
  },
  "count": {
   "type": "integer"
  },
  "query": {
   "type": "string"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/onchainexpat-clubs-search-api-3809320d/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from x402.onchainexpat.com](https://www.zero.xyz/host/x402.onchainexpat.com/llms.txt)
