curl -X PATCH \
https://verification.didit.me/v3/session/11111111-2222-3333-4444-555555555555/update-aml-hit-status/ \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"hit_id": "abc123",
"review_status": "False Positive"
}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.sessions.update_aml_hit_status(
"11111111-2222-3333-4444-555555555555",
hit_id="hit_7c1e9a40b2d35f86e0a4c912",
review_status="False Positive",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.sessions.updateAmlHitStatus("11111111-2222-3333-4444-555555555555", {
hit_id: "hit_7c1e9a40b2d35f86e0a4c912",
review_status: "False Positive",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Sessions.UpdateAMLHitStatus(ctx, "11111111-2222-3333-4444-555555555555", didit.SessionsUpdateAMLHitStatusParams{
HitID: "hit_7c1e9a40b2d35f86e0a4c912",
ReviewStatus: "False Positive",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.SessionsUpdateAmlHitStatusParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.sessions().updateAmlHitStatus("11111111-2222-3333-4444-555555555555", SessionsUpdateAmlHitStatusParams.builder()
.hitId("hit_7c1e9a40b2d35f86e0a4c912")
.reviewStatus(SessionsUpdateAmlHitStatusParams.ReviewStatus.of("False Positive"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->sessions->updateAmlHitStatus('11111111-2222-3333-4444-555555555555', [
'hit_id' => 'hit_7c1e9a40b2d35f86e0a4c912',
'review_status' => 'False Positive',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.sessions.update_aml_hit_status(
"11111111-2222-3333-4444-555555555555",
hit_id: "hit_7c1e9a40b2d35f86e0a4c912",
review_status: "False Positive"
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Sessions.UpdateAmlHitStatusAsync("11111111-2222-3333-4444-555555555555", new SessionsUpdateAmlHitStatusParams
{
HitId = "hit_7c1e9a40b2d35f86e0a4c912",
ReviewStatus = "False Positive",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"message": "Hit status updated successfully",
"hit_id": "hit_7c1e9a40b2d35f86e0a4c912",
"review_status": "False Positive"
}API Atualizar Status de Hit AML: Confirmar e Limpar
Com a API da Didit, marque ocorrências da triagem AML como Correspondência Confirmada, Falso Positivo ou Inconclusivo, individualmente ou em lote.
curl -X PATCH \
https://verification.didit.me/v3/session/11111111-2222-3333-4444-555555555555/update-aml-hit-status/ \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"hit_id": "abc123",
"review_status": "False Positive"
}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.sessions.update_aml_hit_status(
"11111111-2222-3333-4444-555555555555",
hit_id="hit_7c1e9a40b2d35f86e0a4c912",
review_status="False Positive",
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.sessions.updateAmlHitStatus("11111111-2222-3333-4444-555555555555", {
hit_id: "hit_7c1e9a40b2d35f86e0a4c912",
review_status: "False Positive",
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Sessions.UpdateAMLHitStatus(ctx, "11111111-2222-3333-4444-555555555555", didit.SessionsUpdateAMLHitStatusParams{
HitID: "hit_7c1e9a40b2d35f86e0a4c912",
ReviewStatus: "False Positive",
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import me.didit.Didit;
import me.didit.types.SessionsUpdateAmlHitStatusParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.sessions().updateAmlHitStatus("11111111-2222-3333-4444-555555555555", SessionsUpdateAmlHitStatusParams.builder()
.hitId("hit_7c1e9a40b2d35f86e0a4c912")
.reviewStatus(SessionsUpdateAmlHitStatusParams.ReviewStatus.of("False Positive"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->sessions->updateAmlHitStatus('11111111-2222-3333-4444-555555555555', [
'hit_id' => 'hit_7c1e9a40b2d35f86e0a4c912',
'review_status' => 'False Positive',
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.sessions.update_aml_hit_status(
"11111111-2222-3333-4444-555555555555",
hit_id: "hit_7c1e9a40b2d35f86e0a4c912",
review_status: "False Positive"
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Sessions.UpdateAmlHitStatusAsync("11111111-2222-3333-4444-555555555555", new SessionsUpdateAmlHitStatusParams
{
HitId = "hit_7c1e9a40b2d35f86e0a4c912",
ReviewStatus = "False Positive",
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"message": "Hit status updated successfully",
"hit_id": "hit_7c1e9a40b2d35f86e0a4c912",
"review_status": "False Positive"
}O que este endpoint faz
A Análise AML retorna uma lista de ocorrências (hits): possíveis correspondências com listas de sanções, bancos de dados de PEP, listas de monitoramento e mídia adversa. Cada ocorrência tem umreview_status (sua classificação), que começa como Unreviewed ou False Positive conforme a pontuação de correspondência. Este endpoint permite que sua equipe (ou sua automação) registre uma decisão sobre cada ocorrência, sem alterar a decisão geral da sessão.
Encontre as ocorrências e seus IDs na decisão da sessão: no array hits da verificação AML, o id de cada ocorrência é o hit_id que você envia aqui.
O id de uma ocorrência é hit_ seguido de 24 caracteres hexadecimais e permanece o mesmo quando o titular é analisado novamente. Um ID de ocorrência retornado no formato anterior continua sendo aceito; a resposta sempre identifica a ocorrência pelo seu id atual.
Status de revisão
review_status | Significado |
|---|---|
Unreviewed | Padrão para ocorrências no limiar de correspondência ou acima dele; ainda precisa de uma decisão. |
Confirmed Match | Uma correspondência verdadeira com a pessoa ou entidade analisada. |
False Positive | Não é a mesma entidade. Padrão para ocorrências abaixo do limiar de correspondência. |
Inconclusive | Não foi possível determinar. |
False Positive mantém esse status quando o provedor analisa a entidade novamente.Atualizar uma única ocorrência
PATCH /v3/session/{sessionId}/update-aml-hit-status/
curl -X PATCH https://verification.didit.me/v3/session/4c5c7f3a-.../update-aml-hit-status/ \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"hit_id": "hit_7c1e9a40b2d35f86e0a4c912",
"review_status": "False Positive"
}'
?node_id=feature_aml_1 à URL ou inclua "node_id" no corpo para direcionar para uma verificação específica.
Atualizar várias ocorrências de uma vez
PATCH /v3/session/{sessionId}/bulk-update-aml-hit-status/
Envie hit_updates, uma lista de pares { hit_id, review_status }. A operação é tudo ou nada: se algum hit_id não for encontrado, a requisição retorna 404 e nenhuma ocorrência é alterada.
curl -X PATCH https://verification.didit.me/v3/session/4c5c7f3a-.../bulk-update-aml-hit-status/ \
-H "x-api-key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"hit_updates": [
{ "hit_id": "hit_7c1e9a40b2d35f86e0a4c912", "review_status": "Confirmed Match" },
{ "hit_id": "hit_3b8f20d6a91c4e75f0b2d6a8", "review_status": "False Positive" }
]
}'
data.updated e registra uma única entrada de atividade com todas as alterações.
O que acontece após uma atualização
- Webhook: um evento
data.updatedé disparado na sessão. - Registro de auditoria: a alteração é registrada na trilha de revisão da sessão com o autor (chave de API ou usuário), visível na linha do tempo de atividades do painel.
- O status geral da etapa AML não é alterado: mudar a classificação de uma ocorrência não altera, por si só, o status da etapa AML nem a decisão da sessão. Para alterar o status da etapa AML (
Approved/Declined/In Review), use update-feature-status. Para alterar a decisão da sessão, use update-status.
Suporte a KYC e KYB
Funciona tanto para sessões de Verificação de Usuário (KYC) quanto de Verificação de Empresas (KYB): a Didit resolve osessionId em ambas. No KYB, a verificação AML é executada sobre a empresa e suas pessoas-chave; cada verificação AML expõe suas próprias resultados.
Permissão
Requer a permissãowrite:sessions, com uma chave de API de cliente (x-api-key) ou um cabeçalho de autorização de usuário.
Erros
| Status | Significado |
|---|---|
400 | review_status não é um valor válido, hit_id está vazio ou hit_updates está vazio. |
403 | Credenciais ausentes ou inválidas, ou quem chama não tem write:sessions. |
404 | Sessão não encontrada, a sessão não tem verificação AML ou um hit_id não foi encontrado (em lote: nada é alterado). |
Relacionados
- Atualizar o status de uma etapa: altere o status da etapa AML (ou de qualquer outra etapa).
- Atualizar o status da sessão: altere a decisão geral da sessão.
- Recuperar a sessão: leia os
hitsde AML e seus IDs. - Triagem AML: como a análise e a pontuação funcionam.
Autorizações
Chave de API da sua aplicação, em Developers -> API keys no Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter escopo restrito: nenhum acesso, 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á errada, 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 a requisição veio de um endereço fora da sua lista de IPs; 404 em uma rota de sessão significa que a sessão está fora dos fluxos ou status da chave. Uma chave sem acesso a mídia recebe URLs de imagem, vídeo e PDF como null, e uma chave sem permissão de escrita em sessões recebe links e tokens de sessão como null. Consulte https://docs.didit.me/console/api-keys.
Parâmetros de caminho
UUID da sessão de verificação. Aceita IDs de sessão tanto de usuário (KYC) quanto de empresa (KYB): o serviço resolve o ID entre os dois tipos de sessão.
"11111111-2222-3333-4444-555555555555"
Parâmetros de consulta
ID do nó do grafo do fluxo. Obrigatório apenas quando a sessão tem várias verificações AML (uma por nó); omita-o em sessões com uma única verificação AML.
"feature_aml_1"
Corpo
O id da ocorrência no array hits da verificação AML (hit_...). Um id de ocorrência retornado no formato anterior ainda é aceito.
"hit_7c1e9a40b2d35f86e0a4c912"
O novo status de revisão do resultado.
Unreviewed, Confirmed Match, False Positive, Inconclusive "False Positive"
ID opcional do nó do grafo. Use-o (aqui ou como parâmetro de consulta) quando a sessão tiver várias verificações AML.
"feature_aml_1"
Resposta
Status de revisão da ocorrência atualizado.
Sempre Hit status updated successfully.
O id da ocorrência atualizada, como a decisão da sessão o retorna, inclusive quando a requisição indicou a ocorrência por um id no formato anterior.
O status de revisão agora armazenado no resultado.
Unreviewed, Confirmed Match, False Positive, Inconclusive