ipapi.co
Version:
IP address to location mapping service. Free & paid API for a secure, fast & reliable IP lookup (city, country, latitude, longitude, timezone) - https://ipapi.co
73 lines (51 loc) • 1.53 kB
Markdown
# Node.js + ipapi (IP address location API)
## Installation
```
npm install ipapi.co
```
## Usage
### From Node.js REPL
```
var ipapi = require('ipapi.co');
var callback = function(loc){
console.log(loc);
};
ipapi.location(callback) // Complete location for your IP address
> {
ip: '50.1.2.3',
city: 'Wilton',
region: 'California',
country: 'US',
postal: 95693,
latitude: 38.3926,
longitude: -121.2429,
timezone: 'America/Los_Angeles'
}
ipapi.location(callback, '', '', 'ip') // Your external IP address
50.1.2.3
ipapi.location(callback, '', '', 'city') // Your city
Wilton
ipapi.location(callback, '', '', 'country') // Your country
US
ipapi.location(callback, '8.8.8.8') // Complete location for IP address 8.8.8.8
> {
ip: '8.8.8.8',
city: 'Mountain View',
region: 'California',
country: 'US',
postal: '94035',
latitude: 37.386,
longitude: -122.0838,
timezone: 'America/Los_Angeles'
}
ipapi.location(callback, '8.8.8.8', '', 'city') // City for IP address 8.8.8.8
Mountain View
ipapi.location(callback, '8.8.8.8', '', 'country') // Country for IP address 8.8.8.8
US
```
### With API Key
API key can be specified in the following ways :
1. Inside `ipapi.js` by setting `API_KEY` variable
2. As a function argument e.g. `ipapi.location(callback, '8.8.8.8', 'secret-key')`
### Function arguments
- Optional arguments (e.g. IP address, key, field) can be an empty string `''` or `undefined`