curl -X POST 'https://verification.didit.me/v3/lists/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"name": "Trusted office IPs",
"description": "Office egress ranges",
"list_type": "allowlist",
"entry_type": "ip_address"
}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.lists.create(
name="Trusted office IPs",
description="Office egress ranges",
list_type="allowlist",
entry_type="ip_address",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.lists.create({
name: "Trusted office IPs",
description: "Office egress ranges",
list_type: "allowlist",
entry_type: "ip_address",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Lists.Create(ctx, didit.ListsCreateParams{
Name: "Trusted office IPs",
Description: didit.String("Office egress ranges"),
ListType: "allowlist",
EntryType: "ip_address",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.ListsCreateParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.lists().create(ListsCreateParams.builder()
.name("Trusted office IPs")
.description("Office egress ranges")
.listType(ListsCreateParams.ListType.of("allowlist"))
.entryType(ListsCreateParams.EntryType.of("ip_address"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->lists->create([
'name' => 'Trusted office IPs',
'description' => 'Office egress ranges',
'list_type' => 'allowlist',
'entry_type' => 'ip_address',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.lists.create(
name: "Trusted office IPs",
description: "Office egress ranges",
list_type: "allowlist",
entry_type: "ip_address"
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Lists.CreateAsync(new ListsCreateParams
{
Name = "Trusted office IPs",
Description = "Office egress ranges",
ListType = "allowlist",
EntryType = "ip_address",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"uuid": "22222222-3333-4444-5555-666666666666",
"name": "Trusted office IPs",
"description": "Office egress ranges",
"list_type": "allowlist",
"entry_type": "ip_address",
"is_system": false,
"entry_count": 0,
"last_entry_added_at": null,
"created_at": "2026-10-12T09:15:44.031876Z",
"updated_at": "2026-10-12T09:15:44.031876Z"
}Créer une liste via API : liste d'autorisation et personnalisée
POST /v3/lists/ : créez une liste d’autorisation ou personnalisée dans Didit. Paiement à l’appel, sans engagement.
curl -X POST 'https://verification.didit.me/v3/lists/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"name": "Trusted office IPs",
"description": "Office egress ranges",
"list_type": "allowlist",
"entry_type": "ip_address"
}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.lists.create(
name="Trusted office IPs",
description="Office egress ranges",
list_type="allowlist",
entry_type="ip_address",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.lists.create({
name: "Trusted office IPs",
description: "Office egress ranges",
list_type: "allowlist",
entry_type: "ip_address",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Lists.Create(ctx, didit.ListsCreateParams{
Name: "Trusted office IPs",
Description: didit.String("Office egress ranges"),
ListType: "allowlist",
EntryType: "ip_address",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.ListsCreateParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.lists().create(ListsCreateParams.builder()
.name("Trusted office IPs")
.description("Office egress ranges")
.listType(ListsCreateParams.ListType.of("allowlist"))
.entryType(ListsCreateParams.EntryType.of("ip_address"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->lists->create([
'name' => 'Trusted office IPs',
'description' => 'Office egress ranges',
'list_type' => 'allowlist',
'entry_type' => 'ip_address',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.lists.create(
name: "Trusted office IPs",
description: "Office egress ranges",
list_type: "allowlist",
entry_type: "ip_address"
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Lists.CreateAsync(new ListsCreateParams
{
Name = "Trusted office IPs",
Description = "Office egress ranges",
ListType = "allowlist",
EntryType = "ip_address",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"uuid": "22222222-3333-4444-5555-666666666666",
"name": "Trusted office IPs",
"description": "Office egress ranges",
"list_type": "allowlist",
"entry_type": "ip_address",
"is_system": false,
"entry_count": 0,
"last_entry_added_at": null,
"created_at": "2026-10-12T09:15:44.031876Z",
"updated_at": "2026-10-12T09:15:44.031876Z"
}allowlist et custom peuvent être créées : Didit fournit une liste de blocage système par type d’entrée, à laquelle vous ajoutez des éléments avec Créer une entrée.
Choisissez entry_type avec soin : il ne peut pas être modifié par la suite, et il détermine la manière dont chaque valeur est validée lorsque vous l’ajoutez. Consultez Listes pour savoir ce que fait chaque type de liste.Autorisations
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
Nom de la liste. Doit être différent du nom de toutes les autres listes de l'application, listes système incluses.
1 - 255allowlist ou custom. blocklist est refusé avec 400.
allowlist, custom Ce que contient la liste : face, document (numéro de document), phone, email, ip_address (adresse ou plage CIDR), device_fingerprint, wallet_address, bank_account, country (ISO 3166-1 alpha-3), user ou business (vos vendor_data), ou key (toute chaîne). Cela détermine la manière dont les valeurs des entrées sont validées et mises en correspondance. Ne peut pas être modifié ultérieurement.
face, document, phone, email, ip_address, device_fingerprint, wallet_address, bank_account, country, user, business, key Description en texte libre optionnelle.
Réponse
La liste a été créée.
Une liste de blocage, une liste d'autorisation ou une liste personnalisée d'une application.
Identifiant de liste. Utilisez-le comme list_uuid dans les endpoints de liste et d'entrée, et comme valeur d'une condition de règle de workflow ou de transaction avec value_type: "list".
Nom de la liste, unique parmi les listes de l'application.
255Description en texte libre. Chaîne vide lorsqu'elle n'est pas définie.
blocklist : une correspondance refuse la session ou la transaction (listes système uniquement, une par type d'entrée). allowlist : les éléments correspondants sont considérés comme fiables, par exemple une liste d'autorisation de visages ignore l'action de visage dupliqué ; ne prévaut jamais sur une correspondance de liste de blocage. custom : utilisé dans les conditions de règles de transaction et de workflow (value_type: "list").
blocklist, allowlist, custom Ce que contient la liste : face, document (numéro de document), phone, email, ip_address (adresse ou plage CIDR), device_fingerprint, wallet_address, bank_account, country (ISO 3166-1 alpha-3), user ou business (vos vendor_data), ou key (toute chaîne). Cela détermine la manière dont les valeurs des entrées sont validées et mises en correspondance.
face, document, phone, email, ip_address, device_fingerprint, wallet_address, bank_account, country, user, business, key true pour les listes configurées par Didit : une liste de blocage par type d'entrée (face, document, phone, email, ip_address, device_fingerprint, wallet_address, bank_account, user, business), la liste personnalisée High Risk Countries et les listes d'autorisation du système. Les listes système ne peuvent être ni renommées, ni modifiées, ni supprimées ; vous pouvez ajouter et supprimer leurs entrées.
Nombre d'entrées actuellement dans la liste.
x >= 0Moment où l'entrée actuelle la plus récente a été ajoutée. null pour une liste vide.
Moment où la liste a été créée.
Moment où la liste a été mise à jour pour la dernière fois.