DATPAQ IP Geolocation API
Geographic location data for IPv4 and IPv6 addresses
Geographic location data for IPv4 and IPv6 addresses
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/datpaq-com:datpaq-com-ip-geolocation-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Datpaq Com IP Geolocation API
version: 1.1.0
contact:
name: Datpaq Support
url: https://datpaq.com
license:
name: Proprietary
description: 'Operations tagged IP Geolocation across 2 of this provider''s published API definitions: datpaq-com.yaml, datpaq-com-openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
security:
- ApiKeyHeader: []
- ApiKeyQuery: []
tags:
- name: IP Geolocation
description: Geographic location data for IPv4 and IPv6 addresses
paths:
/ip-geolocation:
get:
tags:
- IP Geolocation
operationId: ipGeolocationGet
summary: Get geographic location for an IP address
description: Returns country, region, city, coordinates, ISP, ASN, and timezone for any IPv4 or IPv6 address.
parameters:
- name: ip
in: query
required: true
schema:
type: string
example: 8.8.8.8
responses:
'200':
description: Geolocation data
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
ip: 8.8.8.8
location:
country: United States
region: California
city: Mountain View
latitude: 37.386
longitude: -122.0838
network:
network: 8.8.8.0/24
asn: 15169
org: Google LLC
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
post:
tags:
- IP Geolocation
operationId: ipGeolocationPost
summary: Get geographic location for an IP address (POST)
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- ip
properties:
ip:
type: string
example: 8.8.8.8
example:
ip: 8.8.8.8
responses:
'200':
description: Geolocation data
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
ip: 8.8.8.8
location:
country: United States
region: California
city: Mountain View
latitude: 37.386
longitude: -122.0838
network:
network: 8.8.8.0/24
asn: 15169
org: Google LLC
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
/ip-geolocation/batch:
post:
tags:
- IP Geolocation
operationId: ipGeolocationBatch
summary: Batch IP geolocation lookup
requestBody:
required: true
content:
application/json:
schema:
type: object
required:
- ips
properties:
ips:
type: array
items:
type: string
maxItems: 100
example:
- 8.8.8.8
- 1.1.1.1
example:
ips:
- 8.8.8.8
- 1.1.1.1
- 208.67.222.222
include_logs: false
responses:
'200':
description: Geolocation data for each IP
content:
application/json:
schema:
$ref: '#/components/schemas/GenericSuccess'
example:
summary:
total_requested: 3
valid_ips: 3
invalid_ips: 0
found: 2
not_found: 1
errors: 0
processing_time_ms: 45
results:
- ip: 8.8.8.8
found: true
location:
country: United States
region: California
city: Mountain View
latitude: 37.386
longitude: -122.0838
network:
network: 8.8.8.0/24
asn: AS15169
org: Google LLC
- ip: 1.1.1.1
found: true
location:
country: Australia
region: New South Wales
city: Sydney
latitude: -33.8688
longitude: 151.2093
network:
network: 1.1.1.0/24
asn: AS13335
org: Cloudflare, Inc.
- ip: 208.67.222.222
found: false
error: IP not found in geolocation database
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'429':
$ref: '#/components/responses/RateLimited'
default:
$ref: '#/components/responses/ServiceUnavailable'
servers:
- url: https://datpaq.com/api/v1
description: Production
- url: https://staging.datpaq.com/api/v1
description: Staging
components:
schemas:
ErrorResponse:
type: object
properties:
error:
type: string
description: Human-readable error message
example: Invalid API key
correlationId:
type: string
description: Request tracking identifier for support
example: abc123-def456-789ghi
service:
type: string
description: Service name that produced the error
example: ip-geolocation
GenericSuccess:
type: object
description: Standard success envelope. The data property structure varies by endpoint.
properties:
correlationId:
type: string
description: Request tracking identifier
example: abc123-def456
data:
type: object
description: Response payload (structure varies by endpoint)
cached:
type: boolean
description: Whether the response was served from cache
example: false
responses:
BadRequest:
description: Bad request — missing or invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
RateLimited:
description: Rate limit exceeded — retry after the indicated period
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
ServiceUnavailable:
description: Service temporarily unavailable
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
Unauthorized:
description: Unauthorized — missing or invalid API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
securitySchemes:
ApiKeyHeader:
type: apiKey
in: header
name: x-api-key
description: API key passed via x-api-key request header
ApiKeyQuery:
type: apiKey
in: query
name: api_key
description: API key passed as api_key query parameter
x-refined-from:
- datpaq-com.yaml
- datpaq-com-openapi.yaml