Get country, city and ISP info of any IP address.
| Name | Type | Required | Example |
|---|---|---|---|
| ip IP Address | string | Yes | 8.8.8.8 |
curl -G "https://www.api.tyno.eu.cc/api/ip-info" \ -H "X-API-KEY: $INFINITY_API_KEY" \ --data "ip=8.8.8.8"
// PHP (server-side)
$apiKey = getenv('INFINITY_API_KEY');
$url = "https://www.api.tyno.eu.cc/api/ip-info?ip=8.8.8.8";
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["X-API-KEY: " . $apiKey]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$res = curl_exec($ch);
curl_close($ch);
echo $res;// Node.js server-side only — do not put API keys in browser JavaScript
const apiKey = process.env.INFINITY_API_KEY;
const url = "https://www.api.tyno.eu.cc/api/ip-info?ip=8.8.8.8";
fetch(url, { headers: { "X-API-KEY": apiKey } })
.then(r => r.json())
.then(data => console.log(data))
.catch(err => console.error(err));# Python (server-side)
import os
import requests
import urllib.parse
url = "https://www.api.tyno.eu.cc/api/ip-info?ip=8.8.8.8"
headers = {"X-API-KEY": os.environ["INFINITY_API_KEY"]}
res = requests.get(url, headers=headers, timeout=20)
print(res.text)// Node.js (server-side)
const axios = require('axios');
axios.get("https://www.api.tyno.eu.cc/api/ip-info?ip=8.8.8.8", { headers: { "X-API-KEY": process.env.INFINITY_API_KEY } })
.then(r => console.log(r.data));{"ip":"8.8.8.8","success":true,"country":"United States","city":"San Jose","connection":{"isp":"Google LLC"}}| Code | Message | Description |
|---|---|---|
| 401 | Invalid API key | The X-API-KEY or Bearer header is missing or invalid; legacy query/body key fields are also accepted. |
| 402 | Credit limit exceeded | Your key has no remaining credits for this API. |
| 429 | Rate limit exceeded | Max 60 requests/minute per key. |
| 400 | Missing required parameter | One of the required parameters listed in docs was not provided. |
Credits apply only to this API. Rate: 60/min per key • 1 credit/hit
| Code | Message |
|---|---|
| 401 | Invalid API key The X-API-KEY or Bearer header is missing or invalid; legacy query/body key fields are also accepted. |
| 402 | Credit limit exceeded Your key has no remaining credits for this API. |
| 429 | Rate limit exceeded Max 60 requests/minute per key. |
| 400 | Missing required parameter One of the required parameters listed in docs was not provided. |