Sample code for 30+ languages & platforms
PowerShell

ipapi.co IPv4 Geolocation Lookup

See more Geolocation Examples

Demonstrates how to lookup Geolocation data for an IPv4 address using the ipapi.co REST API.

Chilkat PowerShell Downloads

PowerShell
Add-Type -Path "C:\chilkat\ChilkatDotNet47-x64\ChilkatDotNet47.dll"

$success = $false

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

$http = New-Object Chilkat.Http

# Lookup an IPv4 address: 149.250.207.170  (this was a randomly chosen address)
$jsonStr = $http.QuickGetStr("https://ipapi.co/149.250.207.170/json")
if ($http.LastMethodSuccess -eq $false) {
    $($http.LastErrorText)
    exit
}

$json = New-Object Chilkat.JsonObject
$json.EmitCompact = $false
$success = $json.Load($jsonStr)

$($json.Emit())

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

# {
#   "ip": "149.250.207.170",
#   "city": "B�blingen",
#   "region": "Baden-W�rttemberg",
#   "region_code": null,
#   "country": "DE",
#   "country_name": "Germany",
#   "continent_code": "EU",
#   "in_eu": true,
#   "postal": null,
#   "latitude": null,
#   "longitude": null,
#   "timezone": null,
#   "utc_offset": null,
#   "country_calling_code": "+49",
#   "currency": "EUR",
#   "languages": "de",
#   "asn": "AS15854",
#   "org": "EntServ Deutschland GmbH"
# }

$ip = $json.StringOf("ip")
$city = $json.StringOf("city")
$region = $json.StringOf("region")
$region_code = $json.StringOf("region_code")
$country = $json.StringOf("country")
$country_name = $json.StringOf("country_name")
$continent_code = $json.StringOf("continent_code")
$in_eu = $json.BoolOf("in_eu")
$postal = $json.StringOf("postal")
$latitude = $json.StringOf("latitude")
$longitude = $json.StringOf("longitude")
$timezone = $json.StringOf("timezone")
$utc_offset = $json.StringOf("utc_offset")
$country_calling_code = $json.StringOf("country_calling_code")
$currency = $json.StringOf("currency")
$languages = $json.StringOf("languages")
$asn = $json.StringOf("asn")
$org = $json.StringOf("org")