> For the complete documentation index see https://domscan.net/llms.txt. Markdown versions of every docs page are available by appending .md to the page URL.

Source: https://domscan.net/fr/docs/ip-lookup

# Géolocalisation IP

API DomScan : Intelligence IP incluant la géolocalisation, l'ASN et les détails réseau, ainsi que des signaux de sécurité.

Intelligence IP incluant la géolocalisation, l'ASN et les détails réseau, ainsi que des signaux de sécurité. Prend en charge les recherches d'IP directes et la résolution de domaines. Inclut la détection des nœuds de sortie Tor, l'identification des fournisseurs de cloud et la détection des centres de données pour la prévention de la fraude et l'analyse de sécurité.

GET /v1/ip Crédits: 1

#### Paramètres de requête

| Paramètre | Type | requis |
| --- | --- | --- |
| ip | string | optionnel |
| domain | string | optionnel |

#### Champs de réponse

| Champ | Type |
| --- | --- |
| `ip` | string |
| `domain` | string \| null |
| `geolocation` | object |
| `geolocation.country` | string \| null |
| `geolocation.country_name` | string \| null |
| `geolocation.region` | string \| null |
| `geolocation.region_name` | string \| null |
| `geolocation.city` | string \| null |
| `geolocation.postal` | string \| null |
| `geolocation.latitude` | number \| null |
| `geolocation.longitude` | number \| null |
| `geolocation.timezone` | string \| null |
| `geolocation.precision` | string |
| `network` | object |
| `network.asn` | integer \| null |
| `network.asn_name` | string \| null |
| `network.asn_org` | string \| null |
| `network.isp` | string \| null |
| `network.connection_type` | string \| null |
| `security` | object |
| `security.is_proxy` | boolean |
| `security.is_vpn` | boolean |
| `security.is_tor` | boolean |
| `security.is_tor_exit` | boolean |
| `security.is_datacenter` | boolean |
| `security.is_cloud` | boolean |
| `security.cloud_provider` | string \| null |
| `security.threat_score` | integer |
| `security.is_vpn_suspected` | boolean |
| `security.vpn_suspected_provider` | string \| null |
| `security.type_classification` | object |
| `security.type_classification.type` | string |
| `security.type_classification.confidence` | string |
| `security.fcrdns` | object |
| `security.fcrdns.ptr` | string \| null |
| `security.fcrdns.fcrdns_valid` | boolean \| null |
| `intelligence_summary` | object |
| `intelligence_summary.query_type` | string |
| `intelligence_summary.domain_resolved` | boolean |
| `intelligence_summary.cache_status` | string |
| `intelligence_summary.data_source` | string |
| `intelligence_summary.confidence` | string |
| `intelligence_summary.confidence_score` | integer |
| `intelligence_summary.asn_present` | boolean |
| `intelligence_summary.organization_present` | boolean |
| `intelligence_summary.country_present` | boolean |
| `intelligence_summary.security_signal_count` | integer |
| `intelligence_summary.risk_flags[]` | string[] |
| `intelligence_summary.hosting_category` | string |
| `meta` | object |
| `meta.query_time_ms` | integer |
| `meta.cached` | boolean |
| `meta.source` | string |
| `meta.data_updated_at` | string \| null |
| `meta.attribution` | object |
| `meta.attribution.name` | string |
| `meta.attribution.url` | string |
| `meta.attribution.license` | string |
| `meta.attribution.license_url` | string |
| `meta.attribution.modified` | boolean |
| `meta.warning_code` | string \| null |

#### Exemple de requête

```bash
curl -H "X-API-Key: $DOMSCAN_API_KEY" "https://domscan.net/v1/ip?ip=8.8.8.8&domain=status.openai.com"
```

```javascript
const response = await fetch("https://domscan.net/v1/ip?ip=8.8.8.8&domain=status.openai.com", {
  headers: { "X-API-Key": process.env.DOMSCAN_API_KEY },
});
const data = await response.json();
console.log(data);
```

```python
import os
import requests

response = requests.get(
    "https://domscan.net/v1/ip?ip=8.8.8.8&domain=status.openai.com",
    headers={"X-API-Key": os.environ["DOMSCAN_API_KEY"]},
)
print(response.json())
```

```go
package main

import (
	"fmt"
	"io"
	"net/http"
	"os"
)

func main() {
	req, err := http.NewRequest(http.MethodGet, "https://domscan.net/v1/ip?ip=8.8.8.8&domain=status.openai.com", nil)
	if err != nil {
		panic(err)
	}
	req.Header.Set("X-API-Key", os.Getenv("DOMSCAN_API_KEY"))

	resp, err := http.DefaultClient.Do(req)
	if err != nil {
		panic(err)
	}
	defer resp.Body.Close()

	data, err := io.ReadAll(resp.Body)
	if err != nil {
		panic(err)
	}
	fmt.Println(resp.Status, string(data))
}
```

```ruby
require "json"
require "net/http"

uri = URI("https://domscan.net/v1/ip?ip=8.8.8.8&domain=status.openai.com")
request = Net::HTTP::Get.new(uri)
request["X-API-Key"] = ENV.fetch("DOMSCAN_API_KEY")

response = Net::HTTP.start(uri.hostname, uri.port, use_ssl: true) do |http|
  http.request(request)
end
puts JSON.pretty_generate(JSON.parse(response.body))
```

#### Exemple de réponse

```json
{
  "ip": "8.8.8.8",
  "domain": null,
  "geolocation": {
    "country": "US",
    "country_name": "United States",
    "region": null,
    "region_name": "California",
    "city": "Mountain View",
    "postal": null,
    "latitude": 37.422,
    "longitude": -122.085,
    "timezone": null,
    "precision": "city"
  },
  "network": {
    "asn": 15169,
    "asn_name": "AS15169",
    "asn_org": "Google LLC",
    "isp": null,
    "connection_type": "hosting"
  },
  "security": {
    "is_proxy": false,
    "is_vpn": false,
    "is_tor": false,
    "is_tor_exit": false,
    "is_datacenter": true,
    "is_cloud": true,
    "cloud_provider": "Google Cloud",
    "threat_score": 0,
    "type_classification": {
      "type": "datacenter",
      "confidence": "high"
    },
    "fcrdns": {
      "ptr": "dns.google",
      "fcrdns_valid": true
    }
  },
  "intelligence_summary": {
    "query_type": "ip",
    "domain_resolved": false,
    "cache_status": "miss",
    "data_source": "db-ip-lite+enrichment",
    "confidence": "high",
    "confidence_score": 100,
    "asn_present": true,
    "organization_present": true,
    "country_present": true,
    "security_signal_count": 2,
    "risk_flags": [
      "cloud",
      "datacenter"
    ],
    "hosting_category": "cloud"
  },
  "meta": {
    "query_time_ms": 118,
    "cached": false,
    "source": "db-ip-lite+enrichment",
    "data_updated_at": "2026-08-01T01:42:04.000Z",
    "attribution": {
      "name": "DB-IP Lite",
      "url": "https://db-ip.com",
      "license": "CC BY 4.0",
      "license_url": "https://creativecommons.org/licenses/by/4.0/",
      "modified": true
    }
  }
}
```

#### Codes de statut HTTP

- `200` OK
- `400` Requête incorrecte
- `401` Non autorisé
- `402` Paiement requis
- `429` Trop de requêtes
- `503` Service indisponible
- `504` Délai d’attente de la passerelle dépassé
