curl -X POST 'https://verification.didit.me/v3/users/aml-monitoring/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"is_enabled": true, "vendor_data_list": ["user-123", "user-456"]}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.users.set_aml_monitoring(
is_enabled=True,
estimate_only=True,
vendor_data_list=["user-123", "user-456"],
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.users.setAmlMonitoring({
is_enabled: true,
estimate_only: true,
vendor_data_list: ["user-123", "user-456"],
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Users.SetAMLMonitoring(ctx, didit.UsersSetAMLMonitoringParams{
IsEnabled: true,
EstimateOnly: didit.Bool(true),
VendorDataList: didit.Some([]string{"user-123", "user-456"}),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.List;
import me.didit.Didit;
import me.didit.types.UsersSetAmlMonitoringParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.users().setAmlMonitoring(UsersSetAmlMonitoringParams.builder()
.isEnabled(true)
.estimateOnly(true)
.vendorDataList(List.of("user-123", "user-456"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->users->setAmlMonitoring([
'is_enabled' => true,
'estimate_only' => true,
'vendor_data_list' => ['user-123', 'user-456'],
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.users.set_aml_monitoring(
is_enabled: true,
estimate_only: true,
vendor_data_list: ["user-123", "user-456"]
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Users.SetAmlMonitoringAsync(new UsersSetAmlMonitoringParams
{
IsEnabled = true,
EstimateOnly = true,
VendorDataList = new string[] { "user-123", "user-456" },
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true,
"unmatched": [
"<string>"
]
}{
"job_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "PENDING",
"is_enabled": true,
"target_type": "user",
"total": 123,
"processed": 123,
"outcomes": {
"enabled": 123,
"screened_and_enabled": 123,
"already_enabled": 123,
"disabled": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"skipped_sandbox": 123,
"failed_provider": 123,
"failed_insufficient_balance": 123
},
"results": [
{
"didit_internal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_data": "<string>",
"outcome": "enabled"
}
],
"error": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
},
"unmatched": [
"<string>"
]
}{
"error": "<string>",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
}
}AML-Überwachung für Benutzer ein-/ausschalten API
Schalten Sie mit Didit die laufende AML-Überwachung für viele Benutzer per Aufruf ein oder aus – inkl. Kostenschätzung und Ergebnis pro Benutzer.
curl -X POST 'https://verification.didit.me/v3/users/aml-monitoring/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"is_enabled": true, "vendor_data_list": ["user-123", "user-456"]}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.users.set_aml_monitoring(
is_enabled=True,
estimate_only=True,
vendor_data_list=["user-123", "user-456"],
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.users.setAmlMonitoring({
is_enabled: true,
estimate_only: true,
vendor_data_list: ["user-123", "user-456"],
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Users.SetAMLMonitoring(ctx, didit.UsersSetAMLMonitoringParams{
IsEnabled: true,
EstimateOnly: didit.Bool(true),
VendorDataList: didit.Some([]string{"user-123", "user-456"}),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.List;
import me.didit.Didit;
import me.didit.types.UsersSetAmlMonitoringParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.users().setAmlMonitoring(UsersSetAmlMonitoringParams.builder()
.isEnabled(true)
.estimateOnly(true)
.vendorDataList(List.of("user-123", "user-456"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->users->setAmlMonitoring([
'is_enabled' => true,
'estimate_only' => true,
'vendor_data_list' => ['user-123', 'user-456'],
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.users.set_aml_monitoring(
is_enabled: true,
estimate_only: true,
vendor_data_list: ["user-123", "user-456"]
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Users.SetAmlMonitoringAsync(new UsersSetAmlMonitoringParams
{
IsEnabled = true,
EstimateOnly = true,
VendorDataList = new string[] { "user-123", "user-456" },
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true,
"unmatched": [
"<string>"
]
}{
"job_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "PENDING",
"is_enabled": true,
"target_type": "user",
"total": 123,
"processed": 123,
"outcomes": {
"enabled": 123,
"screened_and_enabled": 123,
"already_enabled": 123,
"disabled": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"skipped_sandbox": 123,
"failed_provider": 123,
"failed_insufficient_balance": 123
},
"results": [
{
"didit_internal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_data": "<string>",
"outcome": "enabled"
}
],
"error": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
},
"unmatched": [
"<string>"
]
}{
"error": "<string>",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
}
}Überblick
Aktiviert oder deaktiviert die laufende AML-Überwachung für die ausgewählten Benutzer-Entitäten, genau wie die Aktion Laufende AML-Überwachung in der Business Console. Die Console und dieser Endpoint führen dieselbe zugrunde liegende Operation aus, daher sind die Regeln, die Abrechnung und die Ergebnisse identisch. Senden Sie zuerstestimate_only: true, um zu sehen, wie viele Benutzer ausgewählt sind, wie viele ein neues AML-Screening benötigen, welche einmaligen Kosten das Screening verursacht und welche jährlichen Kosten das Monitoring verursacht. Ein Probelauf nimmt keine Änderungen vor.
Wann verwenden
- Programmatisches Onboarding: Aktivieren Sie das Monitoring für Benutzer, die Sie über die API importiert oder angelegt haben, ohne sie manuell erneut zu prüfen.
- Offboarding: Beenden Sie das Monitoring und dessen jährliche Verlängerung für Benutzer, die Ihre Plattform verlassen haben.
- Kostenkontrolle: Prüfen Sie die genauen Kostenauswirkungen einer Auswahl, bevor Sie sie ausführen.
So wird eine Auswahl verarbeitet
- Ein überwachtes Screening pro Benutzer. Ein Benutzer, der sich mehrfach verifiziert hat, wird nur einmal überwacht und einmal abgerechnet. Das Deaktivieren schaltet das Monitoring für alle Screenings dieses Benutzers aus.
- Benutzer ohne AML-Screening werden zuerst geprüft. Didit legt für sie eine neue AML-Verifizierung an (sichtbar im Tab Verifizierungen des Benutzers), rechnet sie wie ein reguläres AML-Screening ab und aktiviert das Monitoring darauf. Dafür werden der vollständige Name, das Geburtsdatum und das Land des Benutzers benötigt. Fehlt eine dieser Angaben, wird der Benutzer als
skipped_no_identity_datagemeldet und nicht stillschweigend übergangen. - Gesperrte Benutzer werden übersprungen (
skipped_blocked). Sandbox-Anwendungen erzeugen niemals Screenings (skipped_sandbox). - Das Guthaben wird vorab geprüft. Die Aktivierung wird mit
403abgelehnt, wenn Ihr Guthaben die Schätzung nicht deckt. Die Antwort enthält die Schätzung, sodass Sie wissen, wie viel Sie aufladen müssen. - Jährliche Verlängerung. Einem neu überwachten Benutzer wird der jährliche Monitoring-Preis zu seinem nächsten Verlängerungsdatum berechnet. Dieses Datum zeigt die Console in der Spalte Laufende AML-Überwachung. Das Deaktivieren beendet die Verlängerung, erstattet aber keinen bereits abgerechneten Zeitraum.
Auswahl und Batch-Größe
Wählen Sie Benutzer übervendor_data_list, didit_internal_id_list oder beide Listen aus. Die beiden Listen werden mit „ODER“ verknüpft. Eine Anfrage akzeptiert insgesamt höchstens 1000 Kennungen aus beiden Listen. Kennungen, zu denen in Ihrer Anwendung kein Benutzer existiert, werden unverändert unter unmatched zurückgegeben. Sie führen nie zu einem Fehler der Anfrage: Eine Auswahl ohne Treffer wird als leerer Job abgeschlossen (total: 0), wobei alle Kennungen aufgeführt werden. Das entspricht der Konvention der Batch-Delete-Endpoints.
Synchron oder im Hintergrund
Auswahlen mit 20 Benutzern oder weniger werden synchron verarbeitet. Der Aufruf liefert200 mit dem abgeschlossenen Job. Größere Auswahlen liefern 202 mit einem Job im Status PENDING. Fragen Sie Job für AML-Monitoring abrufen ab, bis status den Wert COMPLETED oder FAILED hat. In beiden Fällen enthält der Job pro Benutzer einen Eintrag in results mit dessen outcome.
outcome | Bedeutung |
|---|---|
enabled | Monitoring auf einem bestehenden AML-Screening aktiviert. |
screened_and_enabled | Ein neues AML-Screening wurde erstellt (abgerechnet) und das Monitoring darauf aktiviert. |
already_enabled | Das Monitoring war bereits aktiv. Nichts wurde geändert, nichts wurde abgerechnet. |
disabled | Das Monitoring wurde für alle Screenings des Benutzers deaktiviert. |
skipped_no_identity_data | Dem Benutzer fehlen der vollständige Name, das Geburtsdatum oder das Land, die für ein Screening nötig sind. |
skipped_blocked | Der Benutzer ist gesperrt. |
skipped_sandbox | Sandbox-Anwendung. Es wird kein Screening erstellt. |
failed_provider | Das Screening konnte nicht abgeschlossen werden. Versuchen Sie es später erneut. |
failed_insufficient_balance | Das Guthaben ist während der Ausführung des Jobs aufgebraucht. |
Webhooks
Das Umschalten des Monitorings sendet keinen eigenen Webhook. Sobald das Monitoring aktiv ist, lösen erneute Prüfungen die üblichen Ereignissestatus.updated und data.updated aus, die unter Kontinuierliches AML-Monitoring beschrieben sind.
Berechtigungen
Jeder aktive API-Schlüssel der Anwendung kann diesen Endpoint aufrufen. Didit-API-Schlüssel sind anwendungsbezogen, nicht rollenbezogen. Die Rollen und Berechtigungen der Console legen fest, was eine Person in der Console tun darf. Für Datenverkehr der Management API werden sie nicht ausgewertet.Verwandte Seiten
- Job für AML-Monitoring abrufen
- AML-Monitoring für Unternehmen umschalten
- Kontinuierliches AML-Monitoring
- AML-Screening-API
- Benutzer auflisten
Autorisierungen
Der API-Schlüssel Ihrer Anwendung, aus Entwickler -> API-Schlüssel in der Business Console. Der Primärschlüssel hat Vollzugriff. Ein benannter Schlüssel kann im Geltungsbereich eingeschränkt werden: keine, Lese- oder Schreibberechtigung pro Ressource, beschränkt auf bestimmte Workflows oder genehmigte Sitzungen, auf eine Liste von IP-Adressen und auf ein Ablaufdatum. 401 bedeutet, dass der Schlüssel falsch, widerrufen oder abgelaufen ist; 403 bedeutet, dass kein Schlüssel gesendet wurde, der Schlüssel keinen Zugriff auf diese Ressource oder Aktion hat oder die Anfrage von einer Adresse außerhalb seiner IP-Liste stammte; 404 bei einer Sitzungsroute bedeutet, dass die Sitzung außerhalb der Workflows oder Status des Schlüssels liegt. Ein Schlüssel ohne Medienzugriff erhält Bild-, Video- und PDF-URLs als null, und ein Schlüssel ohne Schreibberechtigung für Sitzungen erhält Sitzungslinks und Token als null. Siehe https://docs.didit.me/console/api-keys.
Body
Wählen Sie Benutzer mit vendor_data_list, didit_internal_id_list oder beiden aus (die beiden Listen werden ODER-verknüpft). Maximal 1000 IDs pro Anfrage über beide Listen hinweg.
true, um die Überwachung zu aktivieren, false, um sie zu deaktivieren.
Wenn true, wird die Kostenschätzung zurückgegeben und es werden keine Schreibvorgänge ausgeführt – kein Screening, keine Abrechnung, kein Job.
Ihre eigenen Kennungen der umzuschaltenden Benutzer, exakt so abgeglichen wie übermittelt.
Interne Didit-IDs der umzuschaltenden Benutzer – die von den Create-, Get- und List-Endpoints zurückgegebene didit_internal_id.
Antwort
Die Schätzung (wenn estimate_only true ist) oder der abgeschlossene Job für eine inline verarbeitete Auswahl.
- Option 1
- Option 2
Kostenvorschau. Wird direkt zurückgegeben, wenn estimate_only wahr ist (es wird nichts geschrieben).
Profile, die der Auswahl entsprechen.
Profile, die bereits überwacht werden (beim Aktivieren ist nichts zu tun; diese werden beim Deaktivieren abgeschaltet).
Profile, deren bestehendes AML-Screening auf überwacht umgestellt wird (kein neues Screening).
Profile ohne bisheriges AML-Screening, die zuerst gescreent werden (abgerechnet als reguläres AML-Screening).
Profile, die nicht gescreent werden können, da Identitätsdaten fehlen.
Gesperrte Benutzer, die übersprungen werden (bei Unternehmen immer 0).
Einmalige Kosten für die neuen Screenings.
0.2
Jährliche Überwachungskosten für die Profile, die künftig überwacht werden.
0.07
Gibt an, ob das Guthaben der Organisation das Screening plus das erste Jahr der Überwachung abdeckt.
Kennungen der Anfrage, die mit keinem Profil in dieser Anwendung übereinstimmten, exakt wie gesendet.