Passer au contenu principal
POST
curl
Utilisez POST /v3/ip/risk/ lorsque votre backend dispose déjà d’une adresse IP et a besoin d’une décision de risque serveur à serveur. La réponse comprend la géolocalisation, le propriétaire du réseau, les indicateurs VPN/Tor et de centre de données, les données de menace, ainsi que country_mismatch lorsque vous envoyez un pays déclaré.

Interpréter la réponse

  • status vaut In Review lorsque le pays résolu est en conflit avec claimed_country, ou lorsque l’adresse est associée à une infrastructure VPN, Tor ou de centre de données. Sinon, il vaut Approved.
  • ip.ip_country_code contient le code pays résolu. Comparez les pays via ip.country_mismatch plutôt que de comparer vous-même les chaînes de pays brutes.
  • ip.latitude et ip.longitude correspondent à une géolocalisation réseau approximative, et non à une localisation précise de l’appareil.
  • ip.is_vpn_or_tor, ip.is_data_center, ip.proxy_type et ip.threat fournissent les éléments de risque réseau.
  • ip.asn_number, ip.asn_organization, ip.connection_type et ip.carrier décrivent le réseau auquel appartient l’adresse.
  • request_id est l’identifiant de session de l’API. Stockez-le avec vendor_data si vous devez corréler le résultat avec des webhooks ultérieurs ou une activité dans la console.
L’enrichissement IP est effectué dans la mesure du possible. Si aucune source d’enrichissement ne renvoie de données exploitables, l’endpoint renvoie une réponse approuvée avec ip.ip_address: null, ip.country_mismatch: null et un objet ip.threat vide. Certains champs d’enrichissement peuvent aussi valoir null lorsqu’ils sont indisponibles.

Intelligence de l’appareil

L’API IP Risk est un endpoint strictement serveur à serveur. La collecte de l’empreinte de l’appareil ne peut pas être effectuée uniquement serveur à serveur, car un backend ne peut pas observer seul les signaux du navigateur ou de l’appareil. Pour les sessions de parcours hébergé et de SDK, Didit expose sur la réponse de session les champs d’appareil déjà collectés, notamment device_fingerprint, les détails de l’appareil et du navigateur, user_agent, les données brutes de l’appareil et les correspondances entre sessions.

Comportement du sandbox

Les clés sandbox valident la requête et renvoient des données approuvées déterministes. Elles ne contactent pas de services externes d’intelligence, ne consomment pas de crédits, ne créent pas de session et ne contribuent pas à Networks.

Facturation

Les appels à l’API IP Risk coûtent $0.02 au tarif public. Une requête en production est facturable dès que la recherche démarre.

Autorisations

x-api-key
string
header
requis

La clé API de votre application, issue de Développeurs -> Clés API dans la Business Console. La clé principale dispose d'un accès complet. Une clé nommée peut être restreinte : aucun, lecture ou écriture par ressource, limitée à certains workflows ou aux sessions approuvées, à une liste d'adresses IP et à une date d'expiration. 401 signifie que la clé est incorrecte, révoquée ou expirée ; 403 signifie qu'aucune clé n'a été envoyée, que la clé n'a pas accès à cette ressource ou action, ou que la requête provient d'une adresse hors de sa liste d'IP ; 404 sur une route de session signifie que la session est hors des workflows ou des statuts de la clé. Une clé sans accès aux médias reçoit les URL d'images, de vidéos et de PDF à null, et une clé sans accès en écriture aux sessions reçoit les liens et tokens de session à null. Voir https://docs.didit.me/console/api-keys.

Corps

application/json
ip_address
string<ip>
requis

Adresse IPv4 ou IPv6 à évaluer.

Exemple:

"8.8.8.8"

claimed_country
string

Pays ISO 3166-1 alpha-2 ou alpha-3 optionnel déclaré par l'utilisateur ou la session. Utilisé pour calculer country_mismatch.

Maximum string length: 3
Exemple:

"ESP"

user_agent
string

Agent utilisateur observé par votre backend. Enregistré comme contexte de requête ; il ne fournit pas d'empreinte d'appareil.

Maximum string length: 512
vendor_data
string

Votre référence stable pour cette requête. Enregistrée sur la session API et renvoyée dans la réponse.

metadata
object | null

Vos métadonnées JSON non sensibles. Enregistrées sur la session d'API et renvoyées dans la réponse.

Réponse

L'évaluation du risque est terminée. Inspectez status pour connaître la décision ; le code HTTP est toujours 200 pour les recherches terminées.

request_id
string<uuid>
requis

Identifiant de la session d'API créée pour cette requête. Enregistrez-le avec vendor_data si vous devez faire correspondre le résultat avec des webhooks ultérieurs ou l'activité de la console.

status
enum<string>
requis

Décision pour cette session d'API : In Review en cas de risque lié au réseau ou de discordance de pays, sinon Approved.

Options disponibles:
Approved,
In Review
created_at
string<date-time>
requis

Horodatage de cette réponse.

vendor_data
string | null

Écho des vendor_data que vous avez envoyées, null si vous n'en avez pas envoyé.

metadata
object | null

Écho des metadata que vous avez envoyées, null si vous n'en avez pas envoyé.

ip
object

Résultat du risque IP. Les champs d'enrichissement individuels peuvent être null lorsque la recherche n'a renvoyé aucune donnée exploitable.

Dernière modification le 7 novembre 2026