Sample code for 30+ languages & platforms
Dart

ip2location.io GeoLocation API

See more Geolocation Examples

Demonstrates how to lookup Geolocation data for an IPv4 address using the ip2location.io GeoLocation API.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

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

  final http = CkHttp();

  // Note: This is not a real API key.  Replace with your own...
  http.setUrlVar('api_key', '2C312FBC9E667E5A0211F5152E5A1333');
  http.setUrlVar('ip_address', '8.8.8.8');

  // Note: When first creating an ip2location.io account, make sure to at least subscribe to the free access.
  // Otherwise your API key will not yet work..
  final String jsonStr;
  try {
    jsonStr = http.quickGetStr('https://api.ip2location.io/?key={\$api_key}&ip={\$ip_address}&format=json');
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  final json = CkJsonObject();
  json.emitCompact = false;
  json.load(jsonStr);

  print(json.emit());

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

  // {
  //   "ip": "8.8.8.8",
  //   "country_code": "US",
  //   "country_name": "United States of America",
  //   "region_name": "California",
  //   "city_name": "Mountain View",
  //   "latitude": 37.405992,
  //   "longitude": -122.078515,
  //   "zip_code": "94043",
  //   "time_zone": "-07:00",
  //   "asn": "15169",
  //   "as": "Google LLC",
  //   "is_proxy": false
  // }

  final ip = json.stringOf('ip');
  final countryCode = json.stringOf('country_code');
  final countryName = json.stringOf('country_name');
  final regionName = json.stringOf('region_name');
  final cityName = json.stringOf('city_name');
  final latitude = json.stringOf('latitude');
  final longitude = json.stringOf('longitude');
  final zipCode = json.stringOf('zip_code');
  final timeZone = json.stringOf('time_zone');
  final asn = json.stringOf('asn');
  final vAs = json.stringOf('as');
}