GET /ip/{ip}
IP geolocation API
See where an IP comes from. Country, ASN, and network name.
Try it
{
"ip": "8.8.8.8",
"country": "US",
"country_name": "United States",
"continent": "NA",
"asn": "AS15169",
"asn_name": "Google LLC",
?deep=true
}1M requests · $20/mo.
Get startedWhat comes back.
country
ISO 3166-1 alpha-2 code
continent
Continent code
asn
Autonomous system number
asn_name
Network operator / organization name
deep.city
City (operator-published geofeed)
deep.datacenter
Cloud or CDN address space (AWS, GCP, Azure, Oracle, Cloudflare, Fastly, DigitalOcean, Linode, Vultr)
deep.relay
Privacy relay egress (Apple iCloud Private Relay)
deep.tor
Known Tor exit node
deep.vpn
Published egress of a commercial VPN provider we track. false means not on our list, never proof of a home connection
1
Pass an IP
IPv4, IPv6, or me for the address that made the request.
2
Get the network
Country, continent, ASN, and the name on the range.
3
Deep adds the place
Datacenter, relay, Tor, VPN, plus state and city on paid.
Make your first request.
One key works across the APIs. Copy a request in your language and get JSON back.
curl "https://api.parseapi.com/ip/8.8.8.8" \
-H "X-API-Key: YOUR_API_KEY"// Example response · 200
{
"ip": "8.8.8.8",
"country": "US",
"country_name": "United States",
"continent": "NA",
"asn": "AS15169",
"asn_name": "Google LLC"
}API referenceSDKsKeys and authentication
Every response field
Response fields
Deep fields
- deep.statestring or null
- State / province code from geofeed (ISO 3166-2 cleaned to ADM1)
- deep.citystring or null
- City (operator-published geofeed)
- deep.registrystring or null
- Regional internet registry (arin, ripencc, apnic, lacnic, afrinic)
- deep.datacenterboolean
- Cloud or CDN address space (AWS, GCP, Azure, Oracle, Cloudflare, Fastly, DigitalOcean, Linode, Vultr)
- deep.relayboolean
- Privacy relay egress (Apple iCloud Private Relay)
- deep.torboolean
- Known Tor exit node
- deep.vpnboolean
- Published egress of a commercial VPN provider we track. false means not on our list, never proof of a home connection
- deep.providerstring or null
- Provider behind the flag (aws, gcp, azure, oracle, cloudflare, fastly, digitalocean, linode, vultr, apple, mullvad, nordvpn, pia)
Build with IP
All tutorials →QUESTIONS
- What is an ASN?
- The network's number on the internet. AS15169 is Google. asn_name is the operator. Country and continent come back too. Same JSON for IPv4 and IPv6.
- What does deep add?
- Whether the address is cloud or CDN space, a privacy relay like iCloud Private Relay, a Tor exit, or a known VPN egress, plus state and city. Deep ships on paid plans.
- What is a relay?
- A privacy relay hides the real address. iCloud Private Relay is one. deep.relay is true when the IP is an egress for a service like that.
- What is Tor?
- A Tor exit is where hidden traffic reaches the open internet. deep.tor is true when the address is a known exit.
- How does VPN detection work?
- deep.vpn is true when the address is a published egress of a commercial VPN provider we track, taken from server lists the providers publish themselves and refreshed daily. false means the address is not on our list. It is never proof of a home connection, and we never guess from network ownership alone.
- Do I need a key for my own IP?
- GET /ip with no path returns the address that made the request. No key.
- Can I run a list?
- Drop a CSV or Excel file on /bulk/ip. Unique addresses are billed. Duplicates are free.
Use What is my IP? for your own address or bulk IP lookup for a CSV of addresses.