IP Geolocation Sandbox.
Test the IP geolocation integration on Base Sepolia. Five well-known public DNS resolvers, looked up against the live MaxMind data. Same JSON shape as production. Switch to production by removing /sandbox/ from the URL.
How it differs from production
- Production endpoint
GET /v1/ip/:address- Sandbox endpoint
GET /v1/sandbox/ip/:address- Network
- Base Sepolia testnet (
eip155:84532) - Asset
- Test USDC at
0x036CbD53842c5426634e7929541eC2318f3dCF7e - Faucet
- alchemy.com/faucets/base-sepolia
- Price
- $0.002 in test USDC per request — same nominal as production
- Dataset
- 5 public DNS resolvers (8.8.8.8, 1.1.1.1, etc) with live MaxMind data
- Response
- Identical schema to production.
meta.sandbox: truetells you which side you're on. - Bazaar listing
- None — only the production endpoint lists at agentic.market
Curated set
What you can ask for.
Anything else returns a 404 with the available list and a pointer to mainnet for the full dataset.
8.8.8.81.1.1.1208.67.222.2229.9.9.92606:4700:4700::1111Sandbox returns the live MaxMind data for these IPs (so values stay accurate). Anything else returns 404 — production handles any public IPv4 or IPv6.
Six steps
From zero to graduated.
Get test USDC.
Visit the Alchemy Base Sepolia faucet. Drip a few cents to your test wallet.
Try the unpaid call.
See the 402 challenge:
The response carries the network, asset, payTo, and amount.curl -i https://apitoll.io/v1/sandbox/ip/8.8.8.8Sign an EIP-3009 authorization.
Put the signed payload in the
X-PAYMENTheader (base64-encoded JSON). Most agent SDKs (@x402/axios,x402-fetch) handle this automatically.Retry with payment.
You'll get the data back, plus an
x-payment-responsesettlement receipt header.Iterate.
Test against the curated set above until your integration is solid.
Graduate.
Remove
/sandbox/from the URL. Same response shape, real USDC settlement on Base mainnet, full dataset.
Why a sandbox exists
IP-data integrations frequently break on IPv6, on private ranges, or on the precise field-naming differences between providers. Iterate against five known-good IPs in sandbox before paying for unknowns.
The sandbox uses the same code path as production. If your agent works against https://apitoll.io/v1/sandbox/ip/8.8.8.8, removing /sandbox/ is the only change needed to graduate to https://apitoll.io/v1/ip/8.8.8.8.