Sample code for 30+ languages & platforms
Lianja

geo.ipify.org IPv4 Geolocation Lookup

See more Geolocation Examples

Demonstrates how to lookup Geolocation data for an IPv4 address using the geo.ipify.org REST API.

Chilkat Lianja Downloads

Lianja
llSuccess = .F.

// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.

loHttp = createobject("CkHttp")

// Lookup an IPv4 address: 8.8.8.8
lcJsonStr = loHttp.QuickGetStr("https://geo.ipify.org/api/v1?apiKey=API_KEY&ipAddress=8.8.8.8")
if (loHttp.LastMethodSuccess = .F.) then
    ? loHttp.LastErrorText
    release loHttp
    return
endif

loJson = createobject("CkJsonObject")
loJson.EmitCompact = .F.
llSuccess = loJson.Load(lcJsonStr)

? loJson.Emit()

// Sample output:
// Use this online tool to generate parsing code from sample JSON: 
// Generate Parsing Code from JSON

// {
//   "ip": "8.8.8.8",
//   "location": {
//     "country": "IT",
//     "region": "Lombardy",
//     "city": "Milan",
//     "lat": 45.4707,
//     "lng": 9.1889,
//     "postalCode": "20147",
//     "timezone": "+02:00"
//   }
// }

lcIp = loJson.StringOf("ip")
lcLocationCountry = loJson.StringOf("location.country")
lcLocationRegion = loJson.StringOf("location.region")
lcLocationCity = loJson.StringOf("location.city")
lcLocationLat = loJson.StringOf("location.lat")
lcLocationLng = loJson.StringOf("location.lng")
lcLocationPostalCode = loJson.StringOf("location.postalCode")
lcLocationTimezone = loJson.StringOf("location.timezone")


release loHttp
release loJson