{"openapi":"3.1.0","info":{"title":"x402 GeoDNS","version":"1.0.0","description":"Geo-located DNS resolution API. Resolve any hostname from 14 countries to see how CDNs, geo-blocking, and DNS-based routing behave per region. Paid per request via x402 (USDC on Base).","contact":{"url":"https://geodns.iwsolutions.ca"}},"servers":[{"url":"https://geodns.iwsolutions.ca"}],"paths":{"/api/resolve":{"post":{"operationId":"resolveHostname","summary":"Resolve a hostname from specific countries","description":"Performs DNS resolution of a hostname using DNS servers located in the requested countries. Returns per-country results showing how the hostname resolves from each geographic location. Useful for verifying CDN routing, geo-blocking, regional DNS differences, and DNS propagation.","x-x402":{"scheme":"exact","price":"$0.005","network":"eip155:8453","currency":"USDC"},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["hostname","countries"],"properties":{"hostname":{"type":"string","description":"The fully qualified domain name to resolve","example":"google.com"},"countries":{"type":"array","items":{"type":"string","enum":["US","CA","DE","SE","JP","KR","AU","IN","SG","RU","TR","AE","BR","ZA"]},"minItems":1,"maxItems":20,"description":"ISO 3166-1 alpha-2 country codes to resolve from","example":["US","JP","DE"]},"record_type":{"type":"string","enum":["A","AAAA","CNAME","MX","TXT","NS"],"default":"A","description":"DNS record type to query"}}}}}},"responses":{"200":{"description":"DNS resolution results per country","content":{"application/json":{"schema":{"type":"object","properties":{"hostname":{"type":"string"},"record_type":{"type":"string"},"results":{"type":"array","items":{"type":"object","properties":{"country":{"type":"string","description":"ISO 3166-1 alpha-2 code"},"resolver":{"type":"string","description":"Resolver location label"},"records":{"type":"array","items":{"type":"string"},"description":"Resolved DNS records"},"ttl":{"type":"integer"},"resolved_at":{"type":"string","format":"date-time"},"error":{"type":"string","description":"Error message if resolution failed"}}}},"pricing":{"type":"object","properties":{"base_fee":{"type":"string"},"per_country":{"type":"string"},"total_charged":{"type":"string"}}}}}}}},"400":{"description":"Invalid request parameters"},"402":{"description":"Payment required (x402)"}}}},"/api/resolve/countries":{"get":{"operationId":"listCountries","summary":"List supported country codes","description":"Returns all ISO 3166-1 alpha-2 country codes available for geo-located DNS resolution.","responses":{"200":{"description":"List of supported countries","content":{"application/json":{"schema":{"type":"object","properties":{"supported_countries":{"type":"array","items":{"type":"string"}},"count":{"type":"integer"}}}}}}}}}}}