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
}
}Ativar ou desativar monitorização AML de utilizadores
Ative ou desative a monitorização AML contínua de vários utilizadores numa chamada na Didit, com estimativa de custos e resultados por utilizador.
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
}
}Visão geral
Ativa ou desativa a monitorização AML contínua para as entidades de utilizador selecionadas, exatamente como a ação Monitorização AML contínua na Business Console. A Business Console e este endpoint executam a mesma operação subjacente, pelo que as regras, a faturação e os resultados são idênticos. Envie primeiroestimate_only: true para ver quantos utilizadores estão selecionados, quantos precisam de uma nova triagem AML, o custo único da triagem e o custo anual da monitorização. Uma simulação não escreve nada.
Quando utilizar
- Onboarding programático: ative a monitorização para utilizadores que importou ou criou através da API, sem voltar a fazer a triagem manualmente.
- Offboarding: pare a monitorização, e a sua renovação anual, para utilizadores que deixaram a sua plataforma.
- Controlo de custos: visualize o impacto exato no custo de uma seleção antes de a confirmar.
Como é processada uma seleção
- Uma triagem monitorizada por utilizador. Um utilizador que foi verificado várias vezes é monitorizado e faturado uma única vez. A desativação desliga a monitorização em todas as triagens desse utilizador.
- Os utilizadores sem triagem AML são triados primeiro. A Didit cria uma nova verificação AML para eles (visível no separador Verificações do utilizador), faturada como uma triagem AML normal, e ativa a monitorização nela. Isto requer o nome completo, a data de nascimento e o país do utilizador; um utilizador ao qual falte algum destes dados é reportado como
skipped_no_identity_datae não é ignorado silenciosamente. - Os utilizadores bloqueados são ignorados (
skipped_blocked). As aplicações de sandbox nunca criam triagens (skipped_sandbox). - O saldo é verificado previamente. A ativação é recusada com
403quando o seu saldo não cobre a estimativa, e a resposta inclui a estimativa para que saiba quanto deve carregar. - Renovação anual. Um utilizador recém-monitorizado é faturado pelo preço anual de monitorização na sua próxima data de renovação, a mesma data que a Consola mostra na coluna Monitorização contínua. A desativação interrompe a renovação; não reembolsa um período já faturado.
Seleção e tamanho do lote
Selecione utilizadores comvendor_data_list, didit_internal_id_list, ou ambos; as duas listas são combinadas com OR. Um pedido aceita no máximo 1000 identificadores no total das duas listas. Os identificadores que não correspondem a nenhum utilizador da sua aplicação são devolvidos em unmatched, exatamente como foram enviados, e nunca fazem o pedido falhar: uma seleção sem correspondências é concluída como uma tarefa vazia (total: 0) com todos os identificadores listados, seguindo a mesma convenção dos endpoints de eliminação em lote.
Em linha ou em segundo plano
As seleções de 20 utilizadores ou menos são processadas em linha e a chamada devolve200 com a tarefa concluída. As seleções maiores devolvem 202 com uma tarefa PENDING; consulte Obter tarefa de monitorização AML até que status seja COMPLETED ou FAILED. Em ambos os casos, a tarefa inclui uma entrada results por utilizador com o respetivo outcome.
outcome | Significado |
|---|---|
enabled | Monitorização ativada numa triagem AML existente. |
screened_and_enabled | Foi criada uma nova triagem AML (faturada) e a monitorização foi ativada nela. |
already_enabled | A monitorização já estava ativa; nada foi alterado, nada foi faturado. |
disabled | Monitorização desativada em todas as triagens do utilizador. |
skipped_no_identity_data | O utilizador não tem o nome completo, a data de nascimento ou o país necessários para a triagem. |
skipped_blocked | O utilizador está bloqueado. |
skipped_sandbox | Aplicação de sandbox; não é criada nenhuma triagem. |
failed_provider | A triagem não pôde ser concluída. Tente novamente mais tarde. |
failed_insufficient_balance | O saldo esgotou-se enquanto a tarefa estava em execução. |
Webhooks
Alternar a monitorização não emite nenhum webhook próprio. Depois de a monitorização estar ativa, as retriagens continuam a disparar os eventos habituaisstatus.updated e data.updated descritos em Monitorização AML contínua.
Permissões
Qualquer chave de API ativa da aplicação pode chamar este endpoint. As chaves de API da Didit têm âmbito por aplicação, não por função: as funções e permissões da Consola determinam o que uma pessoa pode fazer na Consola e não são avaliadas para o tráfego da Management API.Relacionados
- Obter tarefa de monitorização AML
- Ativar ou desativar a monitorização AML para empresas
- Monitorização AML contínua
- AML Screening API
- Listar utilizadores
Autorizações
A chave de API da sua aplicação, a partir de Programadores -> Chaves de API na Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter o âmbito definido: nenhum, leitura ou escrita por recurso, limitada a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a uma data de validade. 401 significa que a chave está incorreta, revogada ou expirada; 403 significa que nenhuma chave foi enviada, que a chave não tem acesso a este recurso ou ação, ou que o pedido veio de um endereço fora da sua lista de IP; 404 numa rota de sessão significa que a sessão está fora dos fluxos ou estados da chave. Uma chave sem acesso a multimédia recebe URLs de imagens, vídeos e PDFs como nulos, e uma chave sem permissão de escrita em sessões recebe ligações de sessão e tokens como nulos. Consulte https://docs.didit.me/console/api-keys.
Corpo
Selecione utilizadores com vendor_data_list, didit_internal_id_list ou ambos (as duas listas são combinadas com o operador OR). No máximo 1000 identificadores por pedido no total, nas duas listas.
true para ativar a monitorização, false para a desativar.
Quando for true, devolve a estimativa de custos e não realiza gravações: sem triagem, sem faturação e sem tarefa.
Os seus próprios identificadores dos utilizadores a alternar, correspondidos exatamente como foram enviados.
IDs internos da Didit dos utilizadores a alternar - o didit_internal_id devolvido pelos endpoints de criação, obtenção e listagem.
Resposta
A estimativa (quando estimate_only é true) ou a tarefa concluída para uma seleção processada inline.
- Option 1
- Option 2
Pré-visualização do custo. Devolvida diretamente quando estimate_only é true (nada é gravado).
Perfis correspondidos pela seleção.
Perfis já monitorizados (nada a fazer ao ativar; são estes que a desativação desliga).
Perfis cuja triagem AML existente será alterada para monitorizada (sem nova triagem).
Perfis sem qualquer triagem AML que serão submetidos a triagem primeiro (faturada como uma triagem AML normal).
Perfis que não podem ser submetidos a triagem porque faltam dados de identidade.
Utilizadores bloqueados que serão ignorados (sempre 0 para empresas).
Custo único das novas triagens.
0.2
Custo anual de monitorização dos perfis que passarão a ser monitorizados.
0.07
Se o saldo da organização cobre a triagem mais o primeiro ano de monitorização.
Identificadores do pedido que não corresponderam a nenhum perfil nesta aplicação, exatamente como foram enviados.