Bulk Lookup

You can now lookup up to a 100 IP addresses in one API call! This combined with the general speed of ipdata's API means you can geolocate millions of IP addresses very quickly!

Doing bulk lookups is just as easy as looking up single IP Addresses.

Note that bulk lookups are only available to paid users and are currently limited to a 100 at a time. Reach out to support if you need to lookup larger batches.

Make a POST request to https://api.ipdata.co/bulk?api-key=your-paid-api-key with up to a 100 IP Addresses in a JSON Array in the body of the request.

post
Bulk Lookup

https://api.ipdata.co/bulk?api-key=:apikey/
This describes how to make a call to the Bulk Endpoint
Request
Response
Query Parameters
api-key
required
string
Your paid API key
Body Parameters
required
array
A JSON Array of up to a 100 IP Addresses to lookup
200: OK
Successful Response
[
{
"ip": "1.1.1.1",
"is_eu": false,
"city": "",
"region": "",
"region_code": "",
"country_name": "Australia",
"country_code": "AU",
"continent_name": "Oceania",
"continent_code": "OC",
"latitude": -33.494,
"longitude": 143.2104,
"asn": "AS13335",
"organisation": "Cloudflare Inc",
"postal": "",
"calling_code": "61",
"flag": "https://ipdata.co/flags/au.png",
"emoji_flag": "🇦🇺",
"emoji_unicode": "U+1F1E6 U+1F1FA",
"languages": [
{
"name": "English",
"native": "English"
}
],
"currency": {
"name": "Australian Dollar",
"code": "AUD",
"symbol": "AU$",
"native": "$",
"plural": "Australian dollars"
},
"time_zone": {
"name": "",
"abbr": "",
"offset": "",
"is_dst": "",
"current_time": ""
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": true,
"is_threat": true,
"is_bogon": false
},
"count": "695"
},
{
"ip": "2.2.2.2",
"is_eu": true,
"city": "",
"region": "",
"region_code": "",
"country_name": "France",
"country_code": "FR",
"continent_name": "Europe",
"continent_code": "EU",
"latitude": 48.8582,
"longitude": 2.3387000000000002,
"asn": "AS3215",
"organisation": "Orange",
"postal": "",
"calling_code": "33",
"flag": "https://ipdata.co/flags/fr.png",
"emoji_flag": "🇫🇷",
"emoji_unicode": "U+1F1EB U+1F1F7",
"carrier": {
"name": "Orange",
"mcc": "208",
"mnc": "01"
},
"languages": [
{
"name": "French",
"native": "Français"
}
],
"currency": {
"name": "Euro",
"code": "EUR",
"symbol": "€",
"native": "€",
"plural": "euros"
},
"time_zone": {
"name": "Europe/Paris",
"abbr": "CEST",
"offset": "+0200",
"is_dst": true,
"current_time": "2018-10-01T10:37:55.031677+02:00"
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": false,
"is_threat": false,
"is_bogon": false
},
"count": "695"
},
{
"ip": "3.3.3.3",
"is_eu": false,
"city": "Seattle",
"region": "Washington",
"region_code": "WA",
"country_name": "United States",
"country_code": "US",
"continent_name": "North America",
"continent_code": "NA",
"latitude": 47.6344,
"longitude": -122.3422,
"asn": "",
"organisation": "",
"postal": "98109",
"calling_code": "1",
"flag": "https://ipdata.co/flags/us.png",
"emoji_flag": "🇺🇸",
"emoji_unicode": "U+1F1FA U+1F1F8",
"languages": [
{
"name": "English",
"native": "English"
}
],
"currency": {
"name": "US Dollar",
"code": "USD",
"symbol": "$",
"native": "$",
"plural": "US dollars"
},
"time_zone": {
"name": "America/Los_Angeles",
"abbr": "PDT",
"offset": "-0700",
"is_dst": true,
"current_time": "2018-10-01T01:37:55.032920-07:00"
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": false,
"is_threat": false,
"is_bogon": false
},
"count": "695"
},
{
"ip": "4.4.4.4",
"is_eu": false,
"city": "",
"region": "",
"region_code": "",
"country_name": "United States",
"country_code": "US",
"continent_name": "North America",
"continent_code": "NA",
"latitude": 37.751,
"longitude": -97.822,
"asn": "AS3356",
"organisation": "Level 3 Parent, LLC",
"postal": "",
"calling_code": "1",
"flag": "https://ipdata.co/flags/us.png",
"emoji_flag": "🇺🇸",
"emoji_unicode": "U+1F1FA U+1F1F8",
"languages": [
{
"name": "English",
"native": "English"
}
],
"currency": {
"name": "US Dollar",
"code": "USD",
"symbol": "$",
"native": "$",
"plural": "US dollars"
},
"time_zone": {
"name": "",
"abbr": "",
"offset": "",
"is_dst": "",
"current_time": ""
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": false,
"is_threat": false,
"is_bogon": false
},
"count": "695"
},
{
"ip": "5.5.5.5",
"is_eu": true,
"city": "",
"region": "",
"region_code": "",
"country_name": "Germany",
"country_code": "DE",
"continent_name": "Europe",
"continent_code": "EU",
"latitude": 51.2993,
"longitude": 9.491,
"asn": "AS12638",
"organisation": "Telefonica Germany",
"postal": "",
"calling_code": "49",
"flag": "https://ipdata.co/flags/de.png",
"emoji_flag": "🇩🇪",
"emoji_unicode": "U+1F1E9 U+1F1EA",
"languages": [
{
"name": "German",
"native": "Deutsch"
}
],
"currency": {
"name": "Euro",
"code": "EUR",
"symbol": "€",
"native": "€",
"plural": "euros"
},
"time_zone": {
"name": "",
"abbr": "",
"offset": "",
"is_dst": "",
"current_time": ""
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": false,
"is_threat": false,
"is_bogon": false
},
"count": "695"
},
{
"ip": "6.6.6.6",
"is_eu": false,
"city": "",
"region": "",
"region_code": "",
"country_name": "United States",
"country_code": "US",
"continent_name": "North America",
"continent_code": "NA",
"latitude": 37.751,
"longitude": -97.822,
"asn": "",
"organisation": "",
"postal": "",
"calling_code": "1",
"flag": "https://ipdata.co/flags/us.png",
"emoji_flag": "🇺🇸",
"emoji_unicode": "U+1F1FA U+1F1F8",
"languages": [
{
"name": "English",
"native": "English"
}
],
"currency": {
"name": "US Dollar",
"code": "USD",
"symbol": "$",
"native": "$",
"plural": "US dollars"
},
"time_zone": {
"name": "",
"abbr": "",
"offset": "",
"is_dst": "",
"current_time": ""
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": false,
"is_threat": false,
"is_bogon": false
},
"count": "695"
},
{
"ip": "7.7.7.7",
"is_eu": false,
"city": "",
"region": "",
"region_code": "",
"country_name": "United States",
"country_code": "US",
"continent_name": "North America",
"continent_code": "NA",
"latitude": 37.751,
"longitude": -97.822,
"asn": "AS27651",
"organisation": "ENTEL CHILE S.A.",
"postal": "",
"calling_code": "1",
"flag": "https://ipdata.co/flags/us.png",
"emoji_flag": "🇺🇸",
"emoji_unicode": "U+1F1FA U+1F1F8",
"languages": [
{
"name": "English",
"native": "English"
}
],
"currency": {
"name": "US Dollar",
"code": "USD",
"symbol": "$",
"native": "$",
"plural": "US dollars"
},
"time_zone": {
"name": "",
"abbr": "",
"offset": "",
"is_dst": "",
"current_time": ""
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": false,
"is_threat": false,
"is_bogon": false
},
"count": "695"
},
{
"ip": "8.8.8.8",
"is_eu": false,
"city": "",
"region": "",
"region_code": "",
"country_name": "United States",
"country_code": "US",
"continent_name": "North America",
"continent_code": "NA",
"latitude": 37.751,
"longitude": -97.822,
"asn": "AS15169",
"organisation": "Google LLC",
"postal": "",
"calling_code": "1",
"flag": "https://ipdata.co/flags/us.png",
"emoji_flag": "🇺🇸",
"emoji_unicode": "U+1F1FA U+1F1F8",
"languages": [
{
"name": "English",
"native": "English"
}
],
"currency": {
"name": "US Dollar",
"code": "USD",
"symbol": "$",
"native": "$",
"plural": "US dollars"
},
"time_zone": {
"name": "",
"abbr": "",
"offset": "",
"is_dst": "",
"current_time": ""
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": true,
"is_threat": true,
"is_bogon": false
},
"count": "695"
},
{
"ip": "9.9.9.9",
"is_eu": true,
"city": "",
"region": "",
"region_code": "",
"country_name": "France",
"country_code": "FR",
"continent_name": "Europe",
"continent_code": "EU",
"latitude": 48.8582,
"longitude": 2.3387000000000002,
"asn": "AS19281",
"organisation": "Quad9",
"postal": "",
"calling_code": "33",
"flag": "https://ipdata.co/flags/fr.png",
"emoji_flag": "🇫🇷",
"emoji_unicode": "U+1F1EB U+1F1F7",
"languages": [
{
"name": "French",
"native": "Français"
}
],
"currency": {
"name": "Euro",
"code": "EUR",
"symbol": "€",
"native": "€",
"plural": "euros"
},
"time_zone": {
"name": "Europe/Paris",
"abbr": "CEST",
"offset": "+0200",
"is_dst": true,
"current_time": "2018-10-01T10:37:55.043064+02:00"
},
"threat": {
"is_tor": false,
"is_proxy": false,
"is_anonymous": false,
"is_known_attacker": false,
"is_known_abuser": false,
"is_threat": false,
"is_bogon": false
},
"count": "695"
}
]
400: Bad Request
Response when IPs are more than a 100
{"message": "Bulk requests should not contain more than 100 IP addresses."}