Endpoints

The Ipregistry API provides 5 different endpoints to use based on your needs:

Single IP Lookup

This is the primary Ipregistry endpoint. It is used to look up any given IPv4 or IPv6 addresses. To call this endpoint, simply attach an IP address to the API's base URL (HTTP GET method):

https://api.ipregistry.co/66.165.2.7?key=YOUR_API_KEY

Each request to the single IP lookup endpoint consumes 1 credit.

Batch IP Lookup

The batch IP lookup endpoint allows you to group up to 256 Ipregistry API requests into a single request (you can mix up IPv4 and IPv6 addresses). This can really speed up the processing of bulk IP lookup.

We support 2 methods to pass values to a batch request: comma-separated and JSON array.

Comma-separated parameter

In order to process IP addresses in bulk with this method, simply append multiple comma-separated IP addresses to the API's base URL (HTTP GET method):

https://api.ipregistry.co/66.165.2.7,2a01:e35:2f22:e3d0::2,1.1.1.1?key=YOUR_API_KEY

JSON array as POST body

To make a batch request you can also POST a JSON array containing all IP addresses you'd like to get the data for. Here's an example that uses cURL and the batch endpoint to get information about 3 different IP addresses with a single API call:

curl --data '["66.165.2.7", "2a01:e35:2f22:e3d0::2", "1.1.1.1"]' \
--header "Content-Type: application/json" \
--request POST "https://api.ipregistry.co/?key=YOU_API_KEY"
A batch IP lookup request costs as many credits as IP addresses specified plus one. For instance, the example above costs 4 credits and not 3.

Responses: for JSON outputs, the response includes a results field that has for value a JSON Array that contains one IP data object per requested IP address. Similarly, for XML outputs, a main element <results>...</results> wraps result elements.

Origin IP Lookup

This endpoint returns details for the calling address. It allows you to look up your own —or a visitor to your site IP address details without knowing the IP address in advance:

https://api.ipregistry.co/?key=YOUR_API_KEY

In addition to IP related data, this endpoint also returns user-agent data. This information may be used to filter users or enrich pages based on the application type, operating system, software vendor and revision. If you are interested by User-Agent data only, look at the following endpoints.

This endpoint makes sense when it is invoked from a client browser only. If you invoke it from a server node, we will return IP data for the IP from where the request originates, meaning your server IP address. Each origin IP lookup request costs 1 credit.

User-Agent Parsing

User-Agent parsing allows detecting any browser, device & OS in real-time to bring user experience to perfection (e.g. native app download, tailored advertising, crawler protection, and more).

Requests to this endpoint must be performed with an HTTP POST. The body payload accepts a list containing up to 256 entries:

curl --data '["Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:88.0) Gecko/20100101 Firefox/88.0"]' \
--header "Content-Type: application/json" \
--request POST "https://api.ipregistry.co/user_agent?key=YOUR_API_KEY"
If you pass a single user-agent value to parse, a request consumes 1 credit. In the case you input multiple user-agent values, then each request consumes 1 credit plus the number of user-agent values you pass.

Origin User-Agent Parsing

Similarly to the Origin IP lookup endpoint, you can perform a request from client-side (i.e. user browser) to get the parsed user-agent data without extra steps:

https://api.ipregistry.co/user_agent?key=YOUR_API_KEY
This endpoint makes sense when it is invoked from a client browser only. If you invoke it from a server node, we will return data for the user-agent defined by the application that sends the request to our API from your server. Each request to the origin user-agent parsing endpoint consumes 1 credit.