IP address geolocation & threat data API
Fast, reliable, built by developers for developers. Access comprehensive IP address intelligence trusted by thousands of businesses:
- Geolocation (IP to country, region)
- Threat & privacy service detection (VPN, proxy, Tor)
- Hosting provider detection
- Company, domain & ASN data
- Downloadable offline databases available


Accurate IP data, all in one place
Fast and scalable infrastructure
Build revolutionary products
Innovators around the world use our accurate and accessible data to improve security, customer satisfaction, data enrichment, and more.
Personalize your website content
Show users events, flights, ads, stores or the weather near them in the correct language, timezone & currency.
Prevent fraud and free trial abuse
Add enhanced security and verification to orders from high-risk countries, protecting you and your business from fraud.
Enforce compliance
Need to charge tax in certain countries, or comply with specific privacy regulations? Detect your users' locations and prompt them to complete their details.
Apply geographic restrictions
Geofence your content, ensuring only users in approved countries can watch, listen or download.
Get started with flexible plans
Whether you're working on a hobby project or processing millions of transactions each day, we've got you covered.
Start using our fast & easy API right away.
- Free up to 1,000 requests per day
- Paid plans from $29/month up to millions of requests per month
- Backed by AWS
Use our complete raw data and customize it to your needs.
- Daily updates
- CSV, JSON, and MMDB formats
- Choose from all fields and data types we offer
API quick start
You can query any IP address (IPv4 and IPv6) by making a simple API request.
Curl
curl https://www.iplocate.io/api/lookup/17.253.0.0?apikey=a0b1c2d3e4f5
JavaScript using fetch
const url = 'https://www.iplocate.io/api/lookup/17.253.0.0?apikey=a0b1c2d3e4f5';
const response = await fetch(url);
const data = await response.json();
console.log(data);
Ruby
require 'iplocate'
results = IPLocate.lookup('17.253.0.0')
puts results.inspect
Python
import requests
ip = '17.253.0.0'
apiKey = 'a0b1c2d3e4f5'
url = f'https://iplocate.io/api/lookup/{ip}&apikey={apiKey}'
response = requests.get(url)
print(response.json())
PHP
<?php
$res = file_get_contents('https://www.iplocate.io/api/lookup/17.253.0.0?apikey=a0b1c2d3e4f5');
$res = json_decode($res);
var_dump($res);