Skip to main content

Client libraries

IPLocate provides official client libraries and SDKs for popular programming languages to help you get started quickly.

Official libraries​

For detailed installation instructions and usage examples, see the README for each library on GitHub.

Community libraries & integrations​

Want to see a new language here, or developed your own integration? Let us know!

Installation examples​

Python​

pip install python-iplocate
from iplocate import IPLocateClient

client = IPLocateClient(api_key="YOUR_API_KEY")
result = client.lookup("8.8.8.8")
print(result.country)

Node.js​

npm install node-iplocate
# or
yarn add node-iplocate
# or
pnpm add node-iplocate
import IPLocate from 'node-iplocate';

const client = new IPLocate('YOUR_API_KEY');
const result = await client.lookup('8.8.8.8');
console.log(result);

Ruby​

gem install iplocate
require 'iplocate'

result = IPLocate.lookup('8.8.8.8', 'YOUR_API_KEY')
puts result['country']

PHP​

composer require iplocate/php-iplocate
<?php
require 'vendor/autoload.php';

use IPLocate\IPLocate;

$client = new IPLocate('YOUR_API_KEY');
$result = $client->lookup('8.8.8.8');

echo "IP: {$result->ip}\n";
echo "Country: {$result->country}\n";

Java​

Maven pom.xml
<dependency>
<groupId>io.iplocate</groupId>
<artifactId>java-iplocate</artifactId>
<version>1.0.0</version>
</dependency>
Gradle build.gradle
implementation 'io.iplocate:java-iplocate:1.0.0'
Example.java
import io.iplocate.client.IPLocateClient;
import io.iplocate.client.model.IPLocateResponse;

IPLocateClient client = new IPLocateClient("YOUR_API_KEY");
IPLocateResponse result = client.lookup("8.8.8.8");
System.out.println(result.getCountry());

Go​

go get github.com/iplocate/go-iplocate
package main

import (
"fmt"
"log"
"github.com/iplocate/go-iplocate"
)

func main() {
client := iplocate.NewClient(nil).WithAPIKey("YOUR_API_KEY")
result, err := client.Lookup("8.8.8.8")
if err != nil {
log.Fatal(err)
}
fmt.Println(result)
}

Contributing​

All IPLocate client libraries are open source. Contributions are welcome:

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests
  5. Submit a pull request

Need a different language?​

If you need a client library for a language that's not listed above, you can search GitHub for community-maintained libraries.

Or, you can build your own! Our REST API is simple and well-documented.

Did you know we’ll pay for you to build a client library for a new language? See more on our Build for IPLocate page.