Référence de l'APIAPI de la liste de blocage

API de la liste de blocage

Ajoutez, listez et retirez des entrées de la liste de blocage depuis votre propre système — adresses courriel, numéros de téléphone, numéros de document et adresses ou plages IP, ou le visage, les appareils et l'adresse IP d'une vérification existante.

La liste de blocage est la même que Paramètres → Prévention de la fraude dans le tableau de bord (voir Liste de blocage et détection des doublons). Une vérification qui correspond à une entrée active est rejetée ou envoyée à un examen manuel. Les entrées sont privées à votre organisation.

Les points de terminaison se trouvent sous /api/v1/kyc/blocklist et utilisent une clé d'API (Authorization: Bearer ck_live_…) dotée de la portée kyc:manage. Voir Authentification.

Les valeurs bloquées ne sont jamais renvoyées : l'API donne le type de l'entrée, un indice masqué (une adresse IP ou une plage est renvoyée en entier), l'action, le motif, l'expiration et les compteurs de correspondances.

Ajouter des entrées

POST /api/v1/kyc/blocklist

Bloquer une valeur typée :

{
  "kind": "email",
  "value": "fraud@example.com",
  "action": "reject",
  "reason": "Chargeback ring",
  "expiresAt": "2027-01-01T00:00:00.000Z"
}
ChampTypeRemarques
kindemail | phone | document_number | ipface et device ne peuvent être créés qu'à partir d'une vérification
valuechaîneUne adresse courriel, un numéro de téléphone dans n'importe quel format, un numéro de document, ou une adresse IP / plage CIDR (IPv4 ou IPv6)
actionreject | escalateCe qui se produit en cas de correspondance. Par défaut escalate (examen manuel)
reasonchaîne, facultatifJusqu'à 1 000 caractères ; seule votre équipe la voit
expiresAtdate-heure ISO 8601, facultatifAprès cette date, l'entrée ne correspond plus

Ou bloquer ce que porte une vérification existante :

{
  "fromRequestId": "clx…",
  "kinds": ["face", "device", "ip"],
  "action": "escalate"
}

fromRequestId doit être une vérification de votre organisation. kinds limite ce qui est bloqué (par défaut : tout ce que contient la vérification : visage, numéro(s) de document, téléphone, courriel, adresse IP, appareil). Les types pour lesquels la vérification ne contient aucune donnée sont ignorés.

Réponse 201 :

{
  "data": [
    {
      "id": "clx…",
      "kind": "email",
      "valueHint": "f•••@e•••.com",
      "action": "reject",
      "reason": "Chargeback ring",
      "createdByName": null,
      "sourceRequestId": null,
      "expiresAt": "2027-01-01T00:00:00.000Z",
      "expired": false,
      "matchCount": 0,
      "lastMatchedAt": null,
      "createdAt": "2026-10-24T15:00:00.000Z"
    }
  ]
}

Erreurs : 400 pour une valeur inutilisable ou une vérification sans rien à bloquer, 404 lorsque fromRequestId ne vous appartient pas, 409 lorsqu'une entrée active identique existe déjà.

Lister les entrées

GET /api/v1/kyc/blocklist?kind=email&includeExpired=false&page=1&pageSize=50

Renvoie { "data": [ … ], "total": 12 }. Les entrées expirées sont masquées, sauf si includeExpired=true. pageSize est limité à 200.

Supprimer une entrée

DELETE /api/v1/kyc/blocklist/:id → { "success": true }. Supprimer une entrée qui ne vous appartient pas renvoie 404.

Chaque ajout et chaque suppression est enregistré dans le journal d'audit, avec la clé d'API comme acteur.

Lire le résultat

Une vérification qui correspond porte une entrée blocklist_match dans ses signaux de fraude (GET /api/v1/kyc/requests/:id/fraud-signals), avec details.kind (le type) et details.action, jamais la valeur. Ses déclencheurs de révision ou ses causes de disqualification contiennent blocklist_match, et les règles de politique et de workflow peuvent tester fraud.blocklistMatch et fraud.blocklistKinds.