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
}
}API para activar monitorización AML de usuarios
Activa o desactiva la monitorización AML continua de varios usuarios a la vez con la API de Didit, con estimación de coste y resultado por usuario.
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
}
}Descripción general
Activa o desactiva la monitorización AML continua para las entidades de usuario seleccionadas, exactamente igual que la acción Monitorización AML continua de la Business Console. La Console y este endpoint ejecutan la misma operación interna, por lo que las reglas, la facturación y los resultados son idénticos. Envía primeroestimate_only: true para ver cuántos usuarios hay seleccionados, cuántos necesitan un nuevo análisis AML, el coste único del análisis y el coste anual de la monitorización. Una simulación no realiza ningún cambio.
Cuándo usarlo
- Onboarding programático: activa la monitorización para los usuarios que importaste o creaste mediante la API sin tener que volver a analizarlos a mano.
- Offboarding: detén la monitorización, y su renovación anual, para los usuarios que abandonaron tu plataforma.
- Control de costes: consulta el impacto exacto en costes de una selección antes de confirmarla.
Cómo se procesa una selección
- Un análisis monitorizado por usuario. Un usuario que se verificó varias veces se monitoriza y se factura una sola vez. Al desactivarla, la monitorización se desactiva en todos los análisis de ese usuario.
- Los usuarios sin análisis AML se analizan primero. Didit crea para ellos una nueva verificación AML (visible en la pestaña Verificaciones del usuario), que se factura como un análisis AML normal, y activa la monitorización en ella. Esto requiere el nombre completo, la fecha de nacimiento y el país del usuario; si a un usuario le falta alguno de ellos, se informa como
skipped_no_identity_dataen lugar de descartarlo sin avisar. - Los usuarios bloqueados se omiten (
skipped_blocked). Las aplicaciones de sandbox nunca crean análisis (skipped_sandbox). - El saldo se comprueba de antemano. La activación se rechaza con
403cuando tu saldo no cubre la estimación, y la respuesta incluye la estimación para que sepas cuánto debes recargar. - Renovación anual. A un usuario recién monitorizado se le factura el precio anual de monitorización en su siguiente fecha de renovación, la misma fecha que muestra la Console en la columna Monitorización continua. Desactivar detiene la renovación; no reembolsa un periodo ya facturado.
Selección y tamaño del lote
Selecciona usuarios convendor_data_list, didit_internal_id_list o ambos; las dos listas se combinan con OR. Una solicitud admite como máximo 1000 identificadores entre ambas listas. Los identificadores que no coinciden con ningún usuario de tu aplicación se devuelven en unmatched, exactamente como se enviaron, y nunca hacen fallar la solicitud: una selección que no coincide con nada finaliza como un trabajo vacío (total: 0) con todos los identificadores listados, la misma convención que siguen los endpoints de eliminación por lotes.
En línea o en segundo plano
Las selecciones de 20 usuarios o menos se procesan en línea y la llamada devuelve200 con el trabajo terminado. Las selecciones más grandes devuelven 202 con un trabajo PENDING; consulta Obtener trabajo de monitorización AML hasta que status sea COMPLETED o FAILED. En ambos casos, el trabajo incluye una entrada en results por usuario con su outcome.
outcome | Significado |
|---|---|
enabled | Monitorización activada en un análisis AML existente. |
screened_and_enabled | Se creó un nuevo análisis AML (facturado) y se activó la monitorización en él. |
already_enabled | La monitorización ya estaba activa; no se cambió nada ni se facturó nada. |
disabled | Monitorización desactivada en todos los análisis del usuario. |
skipped_no_identity_data | Al usuario le falta el nombre completo, la fecha de nacimiento o el país necesarios para el análisis. |
skipped_blocked | El usuario está bloqueado. |
skipped_sandbox | Aplicación de sandbox; no se crea ningún análisis. |
failed_provider | No se pudo completar el análisis. Vuelve a intentarlo más tarde. |
failed_insufficient_balance | El saldo se agotó mientras se ejecutaba el trabajo. |
Webhooks
Activar o desactivar la monitorización no emite ningún webhook propio. Una vez activada la monitorización, los reanálisis siguen disparando los eventos habitualesstatus.updated y data.updated descritos en Monitorización AML continua.
Permisos
Cualquier clave de API activa de la aplicación puede llamar a este endpoint. Las claves de API de Didit son específicas de la aplicación, no del rol: los roles y permisos de la Console deciden lo que una persona puede hacer en la Console y no se evalúan para el tráfico de la Management API.Relacionado
- Obtener tarea de monitorización AML
- Activar o desactivar la monitorización AML para empresas
- Monitorización AML continua
- API de análisis AML
- Listar usuarios
Autorizaciones
La clave de API de tu aplicación, que encontrarás en Developers -> API keys en la Business Console. La clave principal tiene acceso completo. Una clave con nombre puede tener un alcance limitado: ninguno, lectura o escritura por recurso, limitada a algunos flujos o a sesiones aprobadas, a una lista de direcciones IP y a una fecha de caducidad. 401 significa que la clave es incorrecta, se revocó o expiró; 403 significa que no se envió ninguna clave, que la clave no tiene acceso a este recurso o acción, o que la solicitud provino de una dirección fuera de su lista de IP; 404 en una ruta de sesión significa que la sesión está fuera de los flujos o estados de la clave. Una clave sin acceso a contenido multimedia recibe las URL de imágenes, videos y PDF como null, y una clave sin permiso de escritura en sesiones recibe los enlaces y tokens de sesión como null. Consulta https://docs.didit.me/console/api-keys.
Cuerpo
Selecciona usuarios con vendor_data_list, didit_internal_id_list o ambas (las dos listas se combinan con OR). Como máximo 1000 identificadores por solicitud entre ambas listas.
true para activar la monitorización, false para desactivarla.
Si es true, devuelve la estimación del costo y no realiza ninguna escritura: ni análisis, ni facturación, ni tarea.
Tus propios identificadores de los usuarios que se van a activar o desactivar, comparados exactamente como se enviaron.
IDs internos de Didit de los usuarios que se van a activar o desactivar: el didit_internal_id que devuelven los endpoints de creación, obtención y listado.
Respuesta
La estimación (cuando estimate_only es true) o el trabajo completado para una selección procesada en línea.
- Option 1
- Option 2
Vista previa del coste. Se devuelve directamente cuando estimate_only es true (no se escribe nada).
Perfiles que coinciden con la selección.
Perfiles ya monitorizados (no hay nada que hacer al activar; son los que se desactivan al desactivar).
Perfiles cuyo análisis AML existente pasará a estar monitorizado (sin un nuevo análisis).
Perfiles sin ningún análisis AML que se analizarán primero (se factura como un análisis AML normal).
Perfiles que no se pueden analizar porque faltan datos de identidad.
Usuarios bloqueados que se omitirán (siempre 0 para empresas).
Costo único de los nuevos análisis.
0.2
Coste anual de monitorización de los perfiles que pasarán a estar monitorizados.
0.07
Si el saldo de la organización cubre el análisis más el primer año de monitorización.
Identificadores de la solicitud que no coincidieron con ningún perfil de esta aplicación, exactamente como se enviaron.