Official Python SDK for the Ip2Geo API
Project description
ip2geo — Python SDK
Official Python SDK for the Ip2Geo API — fast IP geolocation, network intelligence, and security risk detection.
🚀 Get an API Key (Free)
You need an API key to use Ip2Geo.
👉 Get your free API key here:
https://ip2geoapi.com/
Free plan includes
- ✅ 100,000 requests / month
- ✅ No credit card required
- ✅ Full access to security intelligence data
- ✅ Instant activation
🧠 Why Ip2Geo?
- Most IP data providers:
- Charge extra for security fields
- Require credit cards upfront
- Hide important data behind higher tiers
- Ip2Geo provides security intelligence by default, even on the free plan.
✨ Features
- 🌍 Accurate IP geolocation (country, city, timezone, ISP)
- 🛡️ Security intelligence included:
- VPN detection
- Proxy detection
- TOR detection
- Hosting / ASN classification
- Trust score & risk level
- ⚡ Fast global API
- 📦 Simple, lightweight Python SDK
- 🔓 No hidden paid-only fields (others charge extra for security data)
📦 Installation
pip install ip2geoapi
Quick Start
from ip2geo import Ip2Geo
client = Ip2Geo("YOUR_API_KEY")
data = client.lookup("8.8.8.8")
print(data)
Lookup your IP
from ip2geo import Ip2Geo
client = Ip2Geo("YOUR_API_KEY")
data = client.lookup("check")
print(data)
API Response
{
"success": true,
"ip": "8.8.8.8",
"version": "ipv4",
"geo": {
"city": "Chicago",
"country": "United States",
"countryCode": "US",
"region": null,
"regionCode": null,
"latitude": 37.751,
"longitude": -97.822,
"postalCode": null,
"geonameId": 6252001,
"accuracyRadius": 1000,
"metroCode": null,
"continentName": "North America",
"continentCode": "NA",
"isEuMember": false
},
"countryInfo": {
"name": "United States of America",
"alpha2Code": "US",
"alpha3Code": "USA",
"flag": "https://api.ip2geoapi.com/assets/flags/us.svg",
"callingCodes": [
"1"
],
"currencies": [
{
"code": "USD",
"name": "United States dollar",
"symbol": "$"
}
],
"languages": [
{
"iso639_1": "en",
"iso639_2": "eng",
"name": "English",
"nativeName": "English"
}
]
},
"timezoneInfo": {
"timezone": "America/Chicago",
"utcOffsetSeconds": -21600,
"utcOffsetText": "-06:00",
"utcOffsetHours": -6,
"isDst": false,
"abbreviation": "CST",
"localTime": "2025-12-22T21:46:07-06:00"
},
"network": {
"cidr": "8.8.8.8/32",
"prefixLen": 32,
"asn": 15169,
"asFormatted": "AS15169",
"asName": "GOOGLE",
"isp": "Google",
"organization": "Google",
"connectionType": "Corporate",
"mobile": {
"mcc": null,
"mnc": null
}
},
"asDetails": {
"asn": 15169,
"abuser_score": "0.001 (Low)",
"descr": "GOOGLE, US",
"country": "us",
"active": true,
"org": "Google LLC",
"domain": "google.com",
"abuse": "network-abuse@google.com",
"type": "hosting",
"created": "2000-03-30",
"updated": "2012-02-24",
"rir": "ARIN"
},
"security": {
"isHosting": true,
"isProxy": false,
"proxyType": null,
"isVpn": false,
"vpnProvider": null,
"vpnProviderUrl": null,
"isTor": false,
"isAnonymous": true,
"trustScore": 65,
"riskLevel": "medium"
}
}
📄 Response Formats
JSON (default)
client.lookup("8.8.8.8")
YAML
client.lookup("8.8.8.8", format="yml")
XML
client.lookup("8.8.8.8", format="xml")
JSONP Callbacks
client.lookup("8.8.8.8", format="jsonp", callback="cbFunction")
Parameter Reference
| Parameter | Type | Required | Accepted Values | Description |
|---|---|---|---|---|
ip |
str |
Yes* | IPv4 / IPv6 | IP address to lookup. If check, your own IP is detected automatically. |
format |
str |
Optional | json (default), xml, yml, jsonp |
Response format. Defaults to JSON. |
callback |
str |
Optional | Alphanumeric + _ (max 64 chars) |
JSONP callback function name. Only valid when format="jsonp". |
📘 Documentation
Full API documentation and field reference: https://ip2geoapi.com/documentation/
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ip2geoapi-0.1.4.tar.gz.
File metadata
- Download URL: ip2geoapi-0.1.4.tar.gz
- Upload date:
- Size: 4.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
624c556dd0132a5ae9047294ce3a34ec74b690d638dda5146156a97a626bed6b
|
|
| MD5 |
a1c2438d3630d30324a64eeae42c353a
|
|
| BLAKE2b-256 |
0e1c3483b59d97a8a8fbef9ccc6051cbc55c17e6925bf61b8e4460a6d063919a
|
File details
Details for the file ip2geoapi-0.1.4-py3-none-any.whl.
File metadata
- Download URL: ip2geoapi-0.1.4-py3-none-any.whl
- Upload date:
- Size: 4.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
44a8e6458dcb5a6996f60eddd77a636cf41a5fe85c455b4b83960d2ee6263816
|
|
| MD5 |
ac72e14a16dc5db59f7dff6e0e8c19a4
|
|
| BLAKE2b-256 |
5d3226f88bec377cdc26f1aab84ddc6ba4774683e3f181918b4f3b4c9326886c
|