REST API - Programmatischer Zugang3 min read4 sections

IP Lookup (GeoIP)

IP Geolocation: country, city, ISP, ASN, coordinates & local time.

01

Overview

The IP Lookup endpoint resolves any IPv4 or IPv6 address to its geographic location, ISP, and ASN information. Results are returned in JSON format.

Endpoint: GET /api/v1/ip-lookup?ip={ip}

Authentication: Required (API Token or JWT)

Rate Limits: Free: 60/hour, Starter/Pro/Business: unlimited

Data Sources: MaxMind GeoLite2 City + ASN databases, updated weekly.

02

Parameters

ParameterTypeRequiredDescription
ipstringYesIPv4 or IPv6 address to look up (e.g. 8.8.8.8 or 2001:db8::1)
03

Response

{
  "success": true,
  "data": {
    "ip": "8.8.8.8",
    "hostname": "dns.google",
    "continent": "North America",
    "continentCode": "NA",
    "country": "United States",
    "countryCode": "US",
    "region": null,
    "city": null,
    "postalCode": null,
    "latitude": 37.751,
    "longitude": -97.822,
    "timezone": "America/Chicago",
    "asn": {
      "asn": 15169,
      "asnOrg": "Google LLC",
      "isp": null,
      "organization": null,
      "network": null
    },
    "flag": "🇺🇸",
    "localTime": "Jul 28, 2026, 12:51 PM"
  }
}
04

Code Examples

cURL:

curl -H "Authorization: Bearer YOUR_API_TOKEN" \
  "https://provider.tools/api/v1/ip-lookup?ip=8.8.8.8"

Python:

import requests

headers = {"Authorization": "Bearer YOUR_API_TOKEN"}
resp = requests.get("https://provider.tools/api/v1/ip-lookup",
                     params={"ip": "8.8.8.8"},
                     headers=headers)
data = resp.json()
print(f"{data['data']['country']} ({data['data']['countryCode']})")
print(f"ASN: AS{data['data']['asn']['asn']} - {data['data']['asn']['asnOrg']}")

Node.js:

const resp = await fetch(
  "https://provider.tools/api/v1/ip-lookup?ip=8.8.8.8",
  { headers: { "Authorization": "Bearer YOUR_API_TOKEN" } }
)
const data = await resp.json()
console.log(data.data.country, data.data.asn)