openapi: 3.0.3 info: title: ipify IP Geolocation Account IP Address API description: The ipify IP Geolocation API (geo.ipify.org) is the commercial counterpart to the free public IP API. It is operated by WhoisXML API and resolves an IPv4 or IPv6 address — or a domain or email — into a geolocation, ISP, Autonomous System (ASN), and reverse-DNS profile. Authentication uses an API key passed as the `apiKey` query parameter. Plans are credit-metered (Country = 1 credit, Country+City = 2, Country+City+VPN = 3). version: 2.0.0 contact: name: ipify Geolocation API url: https://geo.ipify.org/ license: name: Commercial url: https://geo.ipify.org/ x-generated-from: documentation x-last-validated: '2026-05-29' servers: - url: https://geo.ipify.org/api/v2 description: Production IP Geolocation API. - url: https://geo.ipify.org description: Account / service root for non-versioned utility endpoints. tags: - name: IP Address description: Operations that return the caller's public IP address. paths: /: get: operationId: getPublicIp summary: ipify Get Public IP Address description: Return the caller's public IP address. Without query parameters the response body is plain text containing the IP. With `format=json` the response is a JSON object. With `format=jsonp` the response is a JSONP callback wrapper. tags: - IP Address parameters: - name: format in: query required: false description: Response encoding. Omit for plain text. `json` for a JSON object. `jsonp` for a JSONP callback wrapper. schema: type: string enum: - json - jsonp example: json - name: callback in: query required: false description: Custom JSONP callback function name. Only meaningful when `format=jsonp`. Defaults to `callback` if omitted. schema: type: string default: callback example: getip responses: '200': description: Caller's public IP address. content: text/plain: schema: type: string description: Plain-text IP address (default response). example: 98.207.254.136 application/json: schema: $ref: '#/components/schemas/IpResponse' application/javascript: schema: type: string description: JSONP callback wrapping the IP response. example: callback({"ip":"98.207.254.136"}); x-microcks-operation: delay: 0 dispatcher: FALLBACK components: schemas: IpResponse: type: object description: JSON-encoded public IP response from ipify. required: - ip properties: ip: type: string description: The caller's public IP address as an IPv4 or IPv6 literal. example: 98.207.254.136 securitySchemes: ApiKeyQuery: type: apiKey in: query name: apiKey description: Personal API key issued by WhoisXML API for the ipify Geolocation product. Passed as the `apiKey` query parameter on every request.