B
ip402.xyz GeoIP API — MPP Grade B
datanetworking
Preview responses and set spending limits for this service through use.mpp.land
Free budget controls, response samples, and reliability routing.
On-chain Activity
453
Total txs
453
7d txs
$4.53
7d volume
$4.53
Total volume
2
Unique payers
0
Unique clients
7-day activity
█▁▁▁▁▁▁
Compliance Checks
All paid ops declare 402 response
MUST
10pt
All x-payment-info valid
MUST
10pt
Challenge has Cache-Control: no-store
MUST
5pt
Challenge digest on POST
SHOULD
3pt
Challenge has expires
SHOULD
3pt
Challenge has Problem Details
SHOULD
2pt
Challenge has required params
MUST
5pt
Challenge has WWW-Authenticate
MUST
5pt
Challenge returns 402
MUST
10pt
Correct Content-Type
MUST
5pt
Has Cache-Control on discovery
SHOULD
5pt
Has input schemas
SHOULD
5pt
Has llms.txt
SHOULD
5pt
Has /openapi.json at root
MUST
10pt
Has required top-level fields
MUST
10pt
Served over HTTPS
MUST
10pt
Uses standard categories
SHOULD
2pt
1 issue
- 402 response missing Cache-Control: no-store
Paid Operations (1)
GET /v1/geo dynamic
Paid single IP geolocation lookup
- Amount
- map[amount:0.01 currency:USD mode:fixed]
- Currency
- -
- Method
- Intent
- -
- 402 Declared
- Yes
Non-standard x-payment-info fields:
offers: [map[amount:10000 currency:0x20C000000000000000000000b9537d11c60E8b50 description:Paid IP geolocation + ASN lookup for a single IP address intent:charge method:tempo]] price: map[amount:0.01 currency:USD mode:fixed] protocols: [map[x402:map[]] map[mpp:map[currency:0x20C000000000000000000000b9537d11c60E8b50 intent:charge method:tempo]]] selectors: map[conflicts:ignore selectors and return the unselected challenge set payment_network:[base solana tempo] payment_protocol:[x402 mpp]]
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
| ip | query | string | Yes | - |
| lang | query | string | No | - |
| payment_protocol | query | string | No | `x402` or `mpp`. `tempo` is not accepted as a payment_protocol value. |
| payment_network | query | string | No | `base`, `solana`, or `tempo`. x402 CAIP-2 network IDs are also accepted as compatibility aliases. |
Payment Methods
- Methods
- tempo (from challenge)
- Intents
- charge (from challenge)
- Currencies (discovery)
- -
- Currency (challenge)
- USDC.e on Tempo Mainnet Presto (Tempo Mainnet Presto)
- Multiple Challenges
- No
Recipients
- 0x15A6a5B190de7C3bf33abe7a81e0C0eE77dDf581
Per-endpoint breakdown
- GET /v1/geo
- 0x15A6a5B190de7C3bf33abe7a81e0C0eE77dDf581
Security
- TLS Version
- TLSv1.3
- Challenge ID Unique
- Yes
- Challenge ID Length
- 43
- Digest Binding
- -
Uptime
- Discovery
- Reachable (1630ms)
- Challenge
- Reachable (996ms)
- Last Checked
Schema Completeness
- Paid Operations
- 1
- With Input Schema
- 0
- With Description
- 1
1 missing schema
- GET /v1/geo
Documentation
- Homepage
- https://ip402.xyz/
- API Reference
- https://ip402.xyz/openapi.json
- llms.txt
- https://ip402.xyz/llms.txt reachable
Discovery
- OpenAPI URL
- https://ip402.xyz/openapi.json
- OpenAPI Version
- 3.1.0
- Service Version
- 1
- Document Size
- 4349 bytes
- Document Hash
- 21f16adf696a28b8a8736ad2146d5b06378f0e4ee1c550b6686b80d230eb2fe0
Version History (8 snapshots)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
- document hash changed (no semantic differences detected)
Grade: C (66%) → B (76%)
Scan snapshots
| Date | Grade | Score | Response | Status |
|---|---|---|---|---|
| 2026-06-13 | C | 66% | 915ms | Up |
| 2026-06-14 | C | 66% | 872ms | Up |
| 2026-06-15 | C | 66% | 668ms | Up |
| 2026-06-16 | B | 76% | 1081ms | Up |
| 2026-06-17 | B | 76% | 1597ms | Up |
| 2026-06-18 | B | 76% | 1065ms | Up |
| 2026-06-19 | B | 76% | 1724ms | Up |
| 2026-06-20 | B | 76% | 990ms | Up |