x402 Entity-ID Resolver
One paid endpoint turns an ambiguous name or ticker — "Apple", "ETH", "Stripe" —
into ranked candidates, each carrying verified canonical IDs across registries:
SEC CIK + ticker, GLEIF LEI, Wikidata QID, CoinGecko slug.
The exact, cross-registry ID lookup an LLM can't do reliably. All upstreams are free + deterministic.
Why you can trust it
- Every ID comes straight from the authoritative registry — SEC EDGAR, GLEIF (the official global LEI issuer), Wikidata, CoinGecko. We don't invent, store, or own any of it.
- Each result tags which sources agreed, so you can verify any ID at its registry yourself — paste the CIK into sec.gov, the LEI into gleif.org.
- Deterministic: same name → same verified IDs, every call. No model drift, no hallucinated tickers.
- Stateless, pay-per-call: no account, no API key, no data retained about you or your queries.
What it's for
- KYC / onboarding — "Stripe" → the exact legal entity + its GLEIF LEI before you onboard a counterparty.
- Compliance reporting — a counterparty name → its LEI, which many filings now mandate.
- Ticker disambiguation — "ETH" → the ETF, the token, and Ethereum, separated — you pick the right one instead of an agent guessing wrong.
- Data pipelines — a name → CoinGecko slug to wire a price feed, or → CIK to pull SEC filings.
- Agent tool-use — hand an LLM the verified canonical key it can't recall reliably, so it can call the next API.
Endpoints
GET /resolve?q=<string> — $0.005 USDC via x402 (Base mainnet, EIP-3009). Ranked canonical-ID candidates.
GET /health — free. Service + network status.
GET /llms.txt — free. Machine-readable spec for agents.
Try it
curl "https://x402-entity-resolver-production.up.railway.app/resolve?q=apple"
Unpaid request returns HTTP 402 with payment terms. A wallet holding USDC on Base signs an
EIP-3009 transfer inline (gasless for the buyer); the facilitator verifies + settles. No account,
no API key. Agents: see /llms.txt.