Use este endpoint para criar fluxos de verificação (workflows) pela API sem precisar montar você mesmo os nós do grafo do fluxo. Envie um array features na ordem em que os usuários devem concluir as verificações. A Didit o converte internamente em um fluxo baseado em nós e adiciona automaticamente a etapa final de status.Este endpoint POST /v3/workflows/ cria apenas fluxos simples e lineares, ou seja, uma lista features plana. Para ramificações, roteamento condicional, Document AI e nós de recusa/decisão, use o formato de grafo de nós documentado abaixo (usado pelo editor visual no console e pelas ferramentas de fluxo do Didit MCP).Consulte Configurações de recursos do fluxo para ver todos os campos de config aceitos por cada recurso.
A ordem dos recursos é importante. Por exemplo, coloque OCR antes de FACE_MATCH, NFC, DATABASE_VALIDATION ou de verificações AML do usuário que dependam dos dados do documento.
A estrutura exata do objeto config depende do recurso. Consulte a lista completa de campos, valores padrão, configurações obrigatórias, intervalos de valores e exemplos em Configurações de recursos do fluxo.Para OCR, omita config.documents_allowed, envie null ou envie {} para permitir todos os tipos de documento compatíveis. Inclua-o apenas quando quiser restringir o fluxo a países ou tipos de documento específicos. Para QUESTIONNAIRE, config.questionnaire_uuid é obrigatório.
Você pode incluir qualquer um destes campos de nível superior ao criar um fluxo para controlar o comportamento das sessões. Todos são opcionais e, quando omitidos, assumem os valores padrão do fluxo.
Campo
Tipo
Descrição
is_white_label_enabled
boolean
Ativa a personalização de marca própria para as sessões criadas com este fluxo. Padrão false.
is_desktop_allowed
boolean
Permite que o fluxo de verificação seja executado em navegadores de desktop. Padrão false.
max_retry_attempts
integer (0–10)
Número máximo de novas tentativas permitidas após uma verificação recusada. 0 bloqueia o usuário após a primeira recusa. Padrão 3.
retry_window_days
integer (1–365) ou null
Janela móvel, em dias, usada para contar as novas tentativas (null = limite sem prazo). Padrão 7.
session_expiration_time
integer (3600–2419200)
Segundos até uma sessão não concluída expirar. Mínimo de 1 hora, máximo de 4 semanas. Padrão 604800 (7 dias).
response_attributes
object ou null
Limita os campos retornados para cada recurso, por exemplo {"id_verifications": ["full_name", "document_number"], "face_matches": null}. null ou uma chave ausente retorna todos os campos. Uma lista vazia retorna apenas status, warnings, node_id, is_nfc_skipped e skip_reason, e os demais campos retornam null.
Uma lista linear de features não consegue expressar “se X, então Y”. Para ramificação condicional (recusar com base em um status, rotear com base em um campo extraído, condicionar uma etapa a uma correspondência), uma etapa de requisição de Document AI ou nós terminais de recusa/decisão, os fluxos de verificação (workflows) da Didit usam um grafo de nós, a mesma estrutura que o construtor visual do console gera.
A forma mais simples de montar um fluxo em grafo é o Didit MCP: peça a um agente em linguagem natural (“após a verificação de identidade, se a profissão for ≈ ‘Software Engineer’, adicione uma etapa de comprovante de fundos”) e ele constrói, valida e salva o grafo para você. A estrutura abaixo é o que essas ferramentas (e o console) geram.
Um grafo é { start_node, nodes }. nodes é um mapa de id do nó → nó. As arestas são implícitas: cada nó aponta para a frente via next (incondicional) e/ou branches[].goto (condicional).
start_node deve ser um nó de recurso. As ramificações são avaliadas em ordem e a primeira correspondência prevalece; um rules: [] vazio é o “else” que captura todo o resto (mantenha-o por último). session_status: "Determine" decide automaticamente com base nos resultados combinados dos recursos.
Todo nó de ramificação deve ter uma ramificação else explícita, ou seja, uma ramificação com rules: [] que roteia as sessões que não atendem a nenhuma das condições. Não dependa do next do nó de ramificação como alternativa: um next isolado aparece como uma aresta ambígua no construtor e é fácil de omitir. Quando você envia um nó de ramificação com um next e sem ramificação else, a API converte esse next em uma ramificação else explícita para você (assim, { …, "branches": [<conditions>], "next": "liveness" } é salvo como branches: [<conditions>, { "id": "else", "rules": [], "goto": "liveness" }]). Crie o else você mesmo para ser explícito; a conversão é uma rede de segurança, não um substituto.
Campos identificam um resultado de recurso (kyc.status, aml.status, document_ai.status, face_match.score, …) ou um valor extraído (kyc.full_name, kyc.age, kyc.nationality, kyc.extra_fields.profession, um campo do Document AI document_ai.<key>, expected_details.*). Uma ramificação só pode ler um campo cujo recurso tenha sido executado em todos os caminhos que chegam até ela.
Operadores:equals, not_equals, greater_than(_or_equals), less_than(_or_equals), contains, not_contains, in, not_in, is_empty, is_not_empty, regex e fuzzy_match (apenas campos de texto; exige um score de 0 a 100, que é um limiar de similaridade, por exemplo, profissão ≥ 80% semelhante a “Software Engineer”).
Ramificação com base no motivo de o NFC não ter sido executado
Após um nó NFC, use nfc.skip_reason com equals ou in para rotear as sessões de acordo com o motivo pelo qual a leitura do chip não aconteceu. O campo tem estes sete valores estáveis:
USER_SKIPPED
DOCUMENT_WITHOUT_CHIP
CHIP_CERTIFICATE_UNAVAILABLE
DEVICE_WITHOUT_NFC
INTEGRATION_WITHOUT_NFC_ACCESS
MRZ_KEY_UNAVAILABLE
JPKI_UNAVAILABLE
Consulte Motivos para pular o NFC para saber o significado de cada valor. Quando o NFC é bem-sucedido, nfc.skip_reason é null, portanto nenhuma regra equals ou in para um motivo de pulo corresponde.O campo também é preenchido para nós NFC pulados por uma condição de bloqueio. Isso inclui casos em que não existe relatório nem aviso de NFC, e casos em que allow_nfc_skip é false, mas a condição do documento ou do dispositivo impede a execução do NFC. Assim, você pode rotear essas sessões sem depender de uma entrada em nfc_verifications[].
Sessões armazenadas antes de a capacidade de NFC passar a ter três estados podem ter has_device_nfc_support: false. Por isso, uma sessão web mais antiga pode ser resolvida como DEVICE_WITHOUT_NFC em vez de INTEGRATION_WITHOUT_NFC_ACCESS.
Este grafo usa equals para um pulo feito pelo usuário, in para pulos por condição de bloqueio ou por capacidade, e um else explícito para o NFC bem-sucedido. A ramificação vem depois do nó NFC, e cada destino aponta para a frente até um nó terminal:
Para expressar “o NFC não foi realizado por nenhum motivo conhecido”, use in com todos os sete valores. Mantenha uma ramificação else explícita para o NFC bem-sucedido (nfc.skip_reason: null) e para qualquer valor futuro que o seu grafo ainda não reconheça.
Um nó de recurso DOCUMENT_AI solicita um ou mais documentos e extrai campos nomeados:
{ "node_type": "feature", "feature": "DOCUMENT_AI", "label": "Proof of Funds", "config": { "document_ai_documents": [ { "document_key": "proof_of_funds", "title": "Proof of Funds", "description": "Upload a recent bank statement.", "fields": [ { "key": "account_holder", "name": "Account holder", "instruction": "The full name of the account holder as printed on the statement.", "type": "text", "required": true, "is_full_name": true }, { "key": "closing_balance", "name": "Closing balance", "instruction": "The closing balance amount.", "type": "number", "required": true } ] } ], "document_ai_missing_required_fields_action": "REVIEW", "document_ai_name_mismatch_action": "REVIEW" }, "next": "final_decision"}
Cada campo configurado se torna um valor ramificável document_ai.<key>, e o resultado da etapa é document_ai.status.Defina "is_full_name": true no campo que contém o nome completo do titular do documento. O valor extraído é comparado com o nome completo da identidade verificada (o nome do OCR/da verificação de identidade ou os dados esperados da sessão), e document_ai_name_mismatch_action decide o que acontece quando há divergência abaixo de document_ai_name_match_score_threshold. A flag é opcional (um documento pode não marcar nenhum campo) e no máximo um campo por documento pode defini-la. Consulte Configurações de recursos do fluxo → Document AI para ver todos os campos de configuração do Document AI.
A edição do grafo é feita por aplicação e usa os endpoints do console/de gerenciamento (Bearer de usuário + read:workflows/write:workflows). Um grafo só pode ser editado em uma versão de rascunho, então o ciclo de vida é criar rascunho → definir grafo → publicar:
O endpoint de validação responde { "is_valid": true, "graph": …, "warnings": [] }. Um aviso é apenas informativo: o grafo é válido, é salvo e é publicado mesmo com avisos. Cada entrada indica o nó de ramificação e o ramo a que se refere, para que um construtor possa apontar para a condição exata:
{ "type": "branch_outcome_contradiction", "node_id": "after_ocr", "branch_id": "b1", "severity": "warning", "message": "Branch 1 only matches sessions where ID Verification Status is Approved or In Review, but every path from it ends in the session outcome \"Declined\". Check the condition or the outcome.", "params": { "branchNumber": 1, "field": "ID Verification Status", "allowed": "Approved or In Review", "outcome": "Declined" }}
type
O que significa
branch_outcome_contradiction
A condição do ramo e o resultado alcançado por todos os caminhos a partir dele se contradizem - por exemplo, kyc.status NOT EQUALS Declined direcionado para um resultado Declined. O resultado pode estar várias etapas adiante no caminho.
branch_condition_unreachable
O ramo nunca pode corresponder, porque todos os caminhos que chegam a essa ramificação já limitam esse campo de status a valores que a condição exclui.
else_branch_unreachable
O ramo else nunca pode ser executado: os outros braços já cobrem todos os valores que o campo pode assumir nesse ponto.
Um grafo inválido responde 400 com errorse uma lista warnings gerada conforme possível. Apenas errors impedem que o grafo seja salvo.
Exemplo prático: direcionar engenheiros de software para comprovante de fundos
Após a verificação de identidade: se ela foi recusada, recuse a sessão; se a profissão ≈ “Software Engineer” do titular (≥80% de similaridade), solicite um documento de comprovante de fundos; em seguida, tome uma decisão final.
O nó final usa session_status: "Determine", que decide automaticamente (aprova / recusa / coloca em revisão) com base nos recursos que de fato foram executados na sessão — assim, tanto o caminho do comprovante de fundos quanto o caminho else são resolvidos corretamente sem que nenhuma ramificação leia document_ai.status (que não existe no caminho que pula o Document AI). Lembre-se: uma ramificação só pode ler um campo cujo recurso foi executado em todos os caminhos que chegam até ela.Envie-o como { "graph": <above> } para o endpoint …/workflow-graph/ (valide antes). Para criar um fluxo novo do zero, use o didit_workflow_set_graph do MCP; para modificar um fluxo existente, use didit_workflow_edit_graph (operações pequenas, preserva os nós e as listas de permissão existentes). Consulte o Didit MCP.
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.
Corpo
application/json
Cria um fluxo de verificação (workflow) linear simples. A API converte internamente esta lista de recursos em um grafo de fluxo baseado em nós. Lista de campos permitidos RESTRITA: qualquer chave não listada aqui (incluindo workflow_type) é rejeitada com 400.
Nome de exibição do fluxo de verificação (workflow) (máximo de 50 caracteres). O padrão é "ID Verification" quando omitido; sempre defina-o para que os fluxos continuem distinguíveis.
Número máximo de envios de prova de vida por sessão. Padrão 3: uma tentativa inicial mais duas novas tentativas. Esse valor também é copiado para os nós de prova de vida e de estimativa de idade gerados no fluxo de verificação (workflow), a menos que a configuração no nível do recurso o substitua.
Número máximo de envios de correspondência facial por sessão. Padrão 3: uma tentativa inicial mais duas novas tentativas. Esse valor também é copiado para os nós de correspondência facial gerados no fluxo de verificação (workflow), a menos que a configuração no nível do recurso o substitua.
Segundos até a expiração de uma sessão não concluída. Mínimo de 1 hora (3600), máximo de 4 semanas (2419200).
Intervalo obrigatório: 3600 <= x <= 2419200
Resposta
Fluxo de verificação (workflow) criado. O corpo da resposta é a configuração COMPLETA do fluxo, a mesma serialização bruta de VerificationSettings retornada por GET /v3/workflows/{settings_uuid}/ (~190 campos: cada ativação de recurso, limiar, ação e o workflow_graph gerado), e não o item compacto da lista. Armazene o uuid (também exposto como workflow_id) para poder referenciá-lo em chamadas posteriores de criação de sessão. Observação: features é uma string unida por " + " e os preços são números JSON.
Os campos abaixo são tipados; o objeto também traz todas as outras colunas da configuração do fluxo de verificação (ativação de recursos, limiares, ações de aviso, documentos permitidos, callbacks) como propriedades adicionais. Os campos que não se aplicam ao workflow_type são null.
Quais níveis de Assinatura eletrônica podem assinar neste momento. Verifique antes de definir signature_level. Retornado em fluxos kyc, kyb e de grafo.
Indica se um fluxo simples de KYC ou KYB executa a Verificação bancária. Ela é executada após as etapas de contato (e a Verificação de localização) e antes da validação de banco de dados, da AML e da análise de IP. A Verificação bancária ainda não está disponível para todos: ativá-la é recusado onde quer que ela não esteja habilitada.
Configurações de verificação bancária de um fluxo simples, com as mesmas chaves aceitas por um nó BANK_VERIFICATION (por exemplo, bank_countries e bank_method_order). Chaves desconhecidas são descartadas. Todas as chaves são opcionais e uma chave ausente mantém seu valor padrão, então {} significa todos os valores padrão. Consulte Configurações de verificação bancária.
Indica se um fluxo simples de KYC executa a Verificação de localização. Ela é executada após as etapas de contato e antes da Verificação bancária e da validação de banco de dados. Fluxos de empresas (KYB) não podem executá-la.
Configurações de verificação de localização de um fluxo de verificação (workflow) simples, com as mesmas chaves que um nó GEOLOCATION aceita (por exemplo, is_geolocation_geofencing_enabled e geolocation_max_attempts). Chaves desconhecidas são descartadas. Todas as chaves são opcionais e uma chave ausente mantém seu valor padrão, então {} significa todos os valores padrão.
Exemplo:
{}
Última modificação em 1 de novembro de 2026
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Didit Docs","description":"The best way to integrate identity and fraud checks into your app. One API, four product lines (KYC · KYB · Transaction Monitoring · Wallet Screening), 220+ countries, 14,000+ documents, sub-2s inference, $10 free credit/month.","colors":{"primary":"#2567FF","light":"#90B1FF","dark":"#1B4FE0"},"logo":{"light":"https://mintcdn.com/didit-0f962782/dCzNNoYCusBNdK3I/logo/didit.svg?fit=max\u0026auto=format\u0026n=dCzNNoYCusBNdK3I\u0026q=85\u0026s=9f162fb8295fa1fd9300a24b293ce0b7","dark":"https://mintcdn.com/didit-0f962782/TefoKXCbZA_GIK5a/logo/didit-logo-wordmark-white.svg?fit=max\u0026auto=format\u0026n=TefoKXCbZA_GIK5a\u0026q=85\u0026s=c8c541689c814ca6a2c873cf6185a3a7","href":"https://docs.didit.me"},"favicon":"https://mintcdn.com/didit-0f962782/t6r0B-WdGMU5mSS-/favicon.ico?fit=max\u0026auto=format\u0026n=t6r0B-WdGMU5mSS-\u0026q=85\u0026s=b291917b960ebe959ae3b1aa233eafa8","api":{"examples":{"prefill":true},"mdx":{"auth":{"method":"key","name":"x-api-key"},"server":"https://verification.didit.me"}},"background":{"color":{"light":"#FFFFFF","dark":"#1A1A1A"}},"navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Support"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Sign in","href":"https://business.didit.me"}},"footer":{"socials":{"x":"https://x.com/didit","github":"https://github.com/didit-protocol","linkedin":"https://linkedin.com/company/91001155","website":"https://didit.me"}},"search":{"prompt":"Search Didit docs..."},"seo":{"metatags":{"twitter:site":"@didit","theme-color":"#2567FF","apple-mobile-web-app-title":"Didit Docs"},"organization":{"id":"https://didit.me/#organization","name":"Didit","legalName":"Didit Protocol","url":"https://didit.me","logo":"https://didit.me/logos/primary-horizontal-light.png","sameAs":["https://www.linkedin.com/company/91001155","https://www.youtube.com/@getdidit","https://github.com/didit-protocol","https://x.com/didit"]},"indexing":"navigable"},"fonts":{"heading":{"family":"Inter","weight":500},"body":{"family":"Inter","weight":400}},"errors":{"404":{"redirect":false,"title":"Page not found","description":"This page moved or never existed. [Back to docs](/)"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"thumbnails":{"appearance":"light","background":"https://mintcdn.com/didit-0f962782/Xkecx-xLq1K2abHK/images/og-thumbnail-backplate.png?fit=max\u0026auto=format\u0026n=Xkecx-xLq1K2abHK\u0026q=85\u0026s=c699fa252554b2ac8d4c631e209a1473","fonts":{"family":"Inter"}},"metadata":{"timestamp":true},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","href":""},{"language":"es","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Soporte"},{"icon":"signal","href":"https://status.didit.me","label":"Estado"}],"primary":{"type":"button","label":"Iniciar sesión","href":"https://business.didit.me"}},"href":"es"},{"language":"pt-BR","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suporte"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Entrar","href":"https://business.didit.me"}},"href":"pt-br"},{"language":"ja","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"サポート"},{"icon":"signal","href":"https://status.didit.me","label":"ステータス"}],"primary":{"type":"button","label":"サインイン","href":"https://business.didit.me"}},"href":"ja"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"didit-0f962782","hasAudioNarration":false,"actualSubdomain":"didit-0f962782","customDomains":["docs.didit.me"],"gitSource":{"type":"github","owner":"didit-protocol","repo":"mintlify-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae6fa1c62ef36be88636f75","collectionId":"50020d30-4212-40ce-b44f-967797e5972b","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae6fa1c62ef36be88636f75"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae71ae0a0d878501ab6c761","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"es","tag":"Referencia de la API","count":432},{"language":"ja","tag":"APIリファレンス","count":432},{"language":"pt-BR","tag":"Referência da API","count":432},{"language":"en","tag":"API Reference","count":424},{"language":"en","tag":"Database Validation","count":129},{"language":"es","tag":"Validación de base de datos","count":129},{"language":"ja","tag":"データベース検証","count":129},{"language":"pt-BR","tag":"Validação de banco de dados","count":129},{"language":"es","tag":"Primeros pasos","count":93},{"language":"ja","tag":"はじめに","count":93},{"language":"pt-BR","tag":"Primeiros passos","count":93},{"language":"en","tag":"Get Started","count":87},{"language":"en","tag":"User Verification","count":74},{"language":"es","tag":"Verificación de usuarios","count":74},{"language":"ja","tag":"ユーザー認証","count":74},{"language":"pt-BR","tag":"Verificação de usuários","count":74},{"language":"en","tag":"Integrate / SDKs","count":62},{"language":"es","tag":"Integración / SDKs","count":62},{"language":"ja","tag":"連携 / SDK","count":62},{"language":"pt-BR","tag":"Integração / SDKs","count":62},{"language":"en","tag":"Travel Rule","count":55},{"language":"es","tag":"Travel Rule","count":55},{"language":"ja","tag":"トラベルルール","count":55},{"language":"pt-BR","tag":"Travel Rule","count":55},{"language":"en","tag":"Verification","count":48},{"language":"es","tag":"Verificación","count":48},{"language":"ja","tag":"検証","count":48},{"language":"pt-BR","tag":"Verificação","count":48},{"language":"en","tag":"Authentication","count":37},{"language":"es","tag":"Autenticación","count":37},{"language":"ja","tag":"認証","count":37},{"language":"pt-BR","tag":"Autenticação","count":37},{"language":"en","tag":"Digital ID wallets","count":35},{"language":"en","tag":"User and Business Verifications","count":35},{"language":"es","tag":"Wallets de identidad digital","count":35},{"language":"es","tag":"Verificaciones de usuarios y empresas","count":35},{"language":"ja","tag":"デジタルIDウォレット","count":35},{"language":"ja","tag":"ユーザーと企業の認証","count":35},{"language":"pt-BR","tag":"Carteiras de identidade digital","count":35},{"language":"pt-BR","tag":"Verificações de usuários e empresas","count":35}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","href":"/_mintlify/custom/didit-0f962782/e74dc7c3efa9e767/style.css"}],"page":{"pagePath":"pt-br/management-api/workflows/create","slug":"/pt-br/management-api/workflows/create","pageMetadata":{"title":"API para criar workflow: monte seu fluxo de KYC","sidebarTitle":"Criar workflow","description":"Crie via API um workflow de verificação da Didit com recursos em ordem: KYC, KYB, AML e biometria em um só fluxo. Pague por chamada, sem contratos.","keywords":["API para criar workflow","API de workflow de verificação","API de workflow de KYC","CRUD de workflow","criar workflow programaticamente","POST workflows","Didit Management API","API de verificação de identidade","orquestrador de workflows"],"openapi":"pt-br/openapi-25.json POST /v3/workflows/","href":"/pt-br/management-api/workflows/create"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Crie via API um workflow de verificação da Didit com recursos em ordem: KYC, KYB, AML e biometria em um só fluxo. Pague por chamada, sem contratos.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];const __snippet_AGENT_PROMPT_LABELS_1j2ntij={en:{copy:`Copy`,copied:`Copied`,copyTitle:`Copy prompt to clipboard`,copiedTitle:`Copied!`,pasteInto:`Paste into`},es:{copy:`Copiar`,copied:`Copiado`,copyTitle:`Copiar el prompt al portapapeles`,copiedTitle:`¡Copiado!`,pasteInto:`Pegar en`},\"pt-BR\":{copy:`Copiar`,copied:`Copiado`,copyTitle:`Copiar o prompt para a área de transferência`,copiedTitle:`Copiado!`,pasteInto:`Colar em`},ja:{copy:`コピー`,copied:`コピーしました`,copyTitle:`プロンプトをクリップボードにコピー`,copiedTitle:`コピーしました`,pasteInto:`貼り付け先`}};const AgentPromptAccordion=({prompt,title=`AI Agent Integration Prompt`,lang=`en`})=>{const[copied,setCopied]=React.useState(false);const labels=__snippet_AGENT_PROMPT_LABELS_1j2ntij[lang]||__snippet_AGENT_PROMPT_LABELS_1j2ntij.en;const handleCopy=e=>{e.stopPropagation();if(!prompt)return;navigator.clipboard.writeText(prompt.trim()).then(()=>{setCopied(true);setTimeout(()=>setCopied(false),2e3)})};const agents=[`Claude Code`,`Codex`,`Cursor`,`Devin`,`Windsurf`,`GitHub Copilot`];return _jsxs(`div`,{className:`didit-agent-card`,children:[_jsxs(`div`,{className:`didit-agent-titlebar`,children:[_jsxs(`div`,{className:`didit-agent-dots`,\"aria-hidden\":`true`,children:[_jsx(`span`,{className:`didit-agent-dot didit-agent-dot-red`}),_jsx(`span`,{className:`didit-agent-dot didit-agent-dot-yellow`}),_jsx(`span`,{className:`didit-agent-dot didit-agent-dot-green`})]}),_jsx(`span`,{className:`didit-agent-filename`,children:title}),_jsx(`button`,{type:`button`,className:`didit-agent-copy ${copied?`didit-agent-copy-copied`:``}`,onClick:handleCopy,title:labels.copyTitle,\"aria-label\":copied?labels.copiedTitle:labels.copyTitle,children:copied?_jsxs(_Fragment,{children:[_jsx(`svg`,{width:`13`,height:`13`,viewBox:`0 0 16 16`,fill:`none`,children:_jsx(`path`,{d:`M3 8.5l3.5 3.5L13 4`,stroke:`currentColor`,strokeWidth:`2`,strokeLinecap:`round`,strokeLinejoin:`round`})}),_jsx(`span`,{children:labels.copied})]}):_jsxs(_Fragment,{children:[_jsxs(`svg`,{width:`13`,height:`13`,viewBox:`0 0 16 16`,fill:`none`,children:[_jsx(`rect`,{x:`5`,y:`5`,width:`9`,height:`9`,rx:`1.5`,stroke:`currentColor`,strokeWidth:`1.5`}),_jsx(`path`,{d:`M11 5V3.5A1.5 1.5 0 0 0 9.5 2h-6A1.5 1.5 0 0 0 2 3.5v6A1.5 1.5 0 0 0 3.5 11H5`,stroke:`currentColor`,strokeWidth:`1.5`})]}),_jsx(`span`,{children:labels.copy})]})})]}),_jsx(`pre`,{className:`didit-agent-body`,children:_jsx(`code`,{children:prompt.trim()})}),_jsxs(`div`,{className:`didit-agent-footer`,children:[_jsx(`span`,{className:`didit-agent-footer-label`,children:labels.pasteInto}),_jsx(`div`,{className:`didit-agent-chips`,children:agents.map(name=>_jsx(`span`,{className:`didit-agent-chip`,children:name},name))})]})]})};function _createMdxContent(props){const _components={a:`a`,blockquote:`blockquote`,code:`code`,em:`em`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Info,Note,Table,Warning,_MdxComponentBoundary}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Warning)_missingMdxReference(`Warning`,true);if(!_MdxComponentBoundary)_missingMdxReference(`_MdxComponentBoundary`,true);return _jsxs(_Fragment,{children:[_jsx(_MdxComponentBoundary,{name:`AgentPromptAccordion`,children:_jsx(AgentPromptAccordion,{lang:`pt-BR`,title:`Prompt da API de criação de workflow`,prompt:`Create a simple Didit workflow through the Management API.\n\nEndpoint:\nPOST https://verification.didit.me/v3/workflows/\n\nAuthentication:\nUse the x-api-key header with my Didit API key.\n\nRequirements:\n- Use the simple v3 API shape with features.\n- Send features in the exact order users should complete them.\n- Do not send workflow_graph, branches, actions, webhooks, or conditional logic.\n- Didit will convert the features array into a linear node-based workflow and add the final status step automatically.\n- Use uppercase feature values such as OCR, LIVENESS, FACE_MATCH, AML, QUESTIONNAIRE, EMAIL_VERIFICATION, PHONE_VERIFICATION, or PROOF_OF_ADDRESS.\n- Configure each feature with the fields from /management-api/workflows/feature-configs.\n- For an OCR feature, omit config.documents_allowed or send an empty object to allow every supported document type. Send config.documents_allowed only to restrict the allowed documents.\n- Put dependency features first. For example, put OCR before FACE_MATCH, NFC, DATABASE_VALIDATION, or user AML checks that depend on document data.\n- For a QUESTIONNAIRE feature, first create the questionnaire with POST /v3/questionnaires/ and use the returned questionnaire_id as config.questionnaire_uuid.\n- Store the workflow uuid returned by the response. Use it as workflow_id when creating sessions and as settings_uuid when updating this workflow.\n\nExample KYC request body:\n{\n\"workflow_label\": \"Standard KYC\",\n\"features\": [\n{\n \"feature\": \"OCR\",\n \"config\": {\n \"documents_allowed\": {\n \"USA\": {\n \"DL\": {\n \"enabled\": 1,\n \"sides\": 2\n }\n }\n },\n \"duplicated_user_action\": \"REVIEW\"\n }\n},\n{\n \"feature\": \"LIVENESS\",\n \"config\": {\n \"face_liveness_method\": \"PASSIVE\"\n }\n},\n{\n \"feature\": \"FACE_MATCH\"\n}\n]\n}\n\nExample questionnaire workflow body:\n{\n\"workflow_label\": \"Source of Funds\",\n\"features\": [\n{\n \"feature\": \"QUESTIONNAIRE\",\n \"config\": {\n \"questionnaire_uuid\": \"11111111-2222-3333-4444-555555555555\",\n \"review_questionnaire_manually\": true\n }\n}\n]\n}\n\nBuild the API call, handle validation errors, and return the workflow uuid from the response.`})}),`\n`,_jsxs(_components.p,{children:[`Use este endpoint para criar fluxos de verificação (workflows) pela API sem precisar montar você mesmo os nós do grafo do fluxo. Envie um array `,_jsx(_components.code,{children:`features`}),` na ordem em que os usuários devem concluir as verificações. A Didit o converte internamente em um fluxo baseado em nós e adiciona automaticamente a etapa final de status.`]}),`\n`,_jsxs(_components.p,{children:[`Este endpoint `,_jsx(_components.code,{children:`POST /v3/workflows/`}),` cria apenas fluxos `,_jsx(_components.strong,{children:`simples e lineares`}),`, ou seja, uma lista `,_jsx(_components.code,{children:`features`}),` plana. Para `,_jsx(_components.strong,{children:`ramificações, roteamento condicional, Document AI e nós de recusa/decisão`}),`, use o `,_jsx(_components.strong,{children:_jsx(_components.a,{href:`#ramifica%C3%A7%C3%A3o-e-fluxos-baseados-em-n%C3%B3s-grafo`,children:`formato de grafo`})}),` de nós documentado abaixo (usado pelo editor visual no console e pelas ferramentas de fluxo do `,_jsx(_components.a,{href:`/pt-br/integration/mcp/overview`,children:`Didit MCP`}),`).`]}),`\n`,_jsxs(_components.p,{children:[`Consulte `,_jsx(_components.a,{href:`/pt-br/management-api/workflows/feature-configs`,children:`Configurações de recursos do fluxo`}),` para ver todos os campos de `,_jsx(_components.code,{children:`config`}),` aceitos por cada recurso.`]}),`\n`,_jsx(Heading,{level:`2`,id:`fluxo-de-kyc-básico`,children:`Fluxo de KYC básico`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`28`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`28`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"workflow_label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Standard KYC\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"features\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"OCR\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"config\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"documents_allowed\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"USA\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"DL\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"enabled\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"sides\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"duplicated_user_action\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"REVIEW\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"LIVENESS\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"config\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"face_liveness_method\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"PASSIVE\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"FACE_MATCH\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`fluxo-com-questionário`,children:`Fluxo com questionário`}),`\n`,_jsxs(_components.p,{children:[`Primeiro, crie o questionário com `,_jsx(_components.code,{children:`POST /v3/questionnaires/`}),`. Depois, use o `,_jsx(_components.code,{children:`questionnaire_id`}),` retornado como `,_jsx(_components.code,{children:`questionnaire_uuid`}),`.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`12`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`12`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"workflow_label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Source of Funds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"features\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"QUESTIONNAIRE\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"config\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"questionnaire_uuid\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"11111111-2222-3333-4444-555555555555\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"review_questionnaire_manually\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`A ordem dos recursos é importante. Por exemplo, coloque `,_jsx(_components.code,{children:`OCR`}),` antes de `,_jsx(_components.code,{children:`FACE_MATCH`}),`, `,_jsx(_components.code,{children:`NFC`}),`, `,_jsx(_components.code,{children:`DATABASE_VALIDATION`}),` ou de verificações AML do usuário que dependam dos dados do documento.`]}),`\n`,_jsx(Heading,{level:`2`,id:`referência-de-configuração-de-recursos`,children:`Referência de configuração de recursos`}),`\n`,_jsxs(_components.p,{children:[`Cada item de `,_jsx(_components.code,{children:`features[]`}),` tem este formato:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`5`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"OCR\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ID Verification\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"config\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {}`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`A estrutura exata do objeto `,_jsx(_components.code,{children:`config`}),` depende do recurso. Consulte a lista completa de campos, valores padrão, configurações obrigatórias, intervalos de valores e exemplos em `,_jsx(_components.a,{href:`/pt-br/management-api/workflows/feature-configs`,children:`Configurações de recursos do fluxo`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Para `,_jsx(_components.code,{children:`OCR`}),`, omita `,_jsx(_components.code,{children:`config.documents_allowed`}),`, envie `,_jsx(_components.code,{children:`null`}),` ou envie `,_jsx(_components.code,{children:`{}`}),` para permitir todos os tipos de documento compatíveis. Inclua-o apenas quando quiser restringir o fluxo a países ou tipos de documento específicos. Para `,_jsx(_components.code,{children:`QUESTIONNAIRE`}),`, `,_jsx(_components.code,{children:`config.questionnaire_uuid`}),` é obrigatório.`]}),`\n`,_jsx(Heading,{level:`2`,id:`configurações-opcionais-do-fluxo`,children:`Configurações opcionais do fluxo`}),`\n`,_jsx(_components.p,{children:`Você pode incluir qualquer um destes campos de nível superior ao criar um fluxo para controlar o comportamento das sessões. Todos são opcionais e, quando omitidos, assumem os valores padrão do fluxo.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Campo`}),_jsx(_components.th,{children:`Tipo`}),_jsx(_components.th,{children:`Descrição`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`is_white_label_enabled`})}),_jsx(_components.td,{children:`boolean`}),_jsxs(_components.td,{children:[`Ativa a personalização de marca própria para as sessões criadas com este fluxo. Padrão `,_jsx(_components.code,{children:`false`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`is_desktop_allowed`})}),_jsx(_components.td,{children:`boolean`}),_jsxs(_components.td,{children:[`Permite que o fluxo de verificação seja executado em navegadores de desktop. Padrão `,_jsx(_components.code,{children:`false`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`max_retry_attempts`})}),_jsx(_components.td,{children:`integer (0–10)`}),_jsxs(_components.td,{children:[`Número máximo de novas tentativas permitidas após uma verificação recusada. `,_jsx(_components.code,{children:`0`}),` bloqueia o usuário após a primeira recusa. Padrão `,_jsx(_components.code,{children:`3`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`retry_window_days`})}),_jsxs(_components.td,{children:[`integer (1–365) ou `,_jsx(_components.code,{children:`null`})]}),_jsxs(_components.td,{children:[`Janela móvel, em dias, usada para contar as novas tentativas (`,_jsx(_components.code,{children:`null`}),` = limite sem prazo). Padrão `,_jsx(_components.code,{children:`7`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`session_expiration_time`})}),_jsx(_components.td,{children:`integer (3600–2419200)`}),_jsxs(_components.td,{children:[`Segundos até uma sessão não concluída expirar. Mínimo de 1 hora, máximo de 4 semanas. Padrão `,_jsx(_components.code,{children:`604800`}),` (7 dias).`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`response_attributes`})}),_jsxs(_components.td,{children:[`object ou `,_jsx(_components.code,{children:`null`})]}),_jsxs(_components.td,{children:[`Limita os campos retornados para cada recurso, por exemplo `,_jsx(_components.code,{children:`{\"id_verifications\": [\"full_name\", \"document_number\"], \"face_matches\": null}`}),`. `,_jsx(_components.code,{children:`null`}),` ou uma chave ausente retorna todos os campos. Uma lista vazia retorna apenas `,_jsx(_components.code,{children:`status`}),`, `,_jsx(_components.code,{children:`warnings`}),`, `,_jsx(_components.code,{children:`node_id`}),`, `,_jsx(_components.code,{children:`is_nfc_skipped`}),` e `,_jsx(_components.code,{children:`skip_reason`}),`, e os demais campos retornam `,_jsx(_components.code,{children:`null`}),`.`]})]})]})]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`13`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`13`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"workflow_label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Standard KYC\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"is_white_label_enabled\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"is_desktop_allowed\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"max_retry_attempts\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`5`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"retry_window_days\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`14`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"session_expiration_time\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`86400`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"features\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"OCR\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"LIVENESS\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"FACE_MATCH\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`ramificação-e-fluxos-baseados-em-nós-grafo`,children:`Ramificação e fluxos baseados em nós (grafo)`}),`\n`,_jsxs(_components.p,{children:[`Uma lista linear de `,_jsx(_components.code,{children:`features`}),` não consegue expressar “se X, então Y”. Para `,_jsx(_components.strong,{children:`ramificação condicional`}),` (recusar com base em um status, rotear com base em um campo extraído, condicionar uma etapa a uma correspondência), uma etapa de requisição de `,_jsx(_components.strong,{children:`Document AI`}),` ou nós terminais de `,_jsx(_components.strong,{children:`recusa/decisão`}),`, os fluxos de verificação (workflows) da Didit usam um `,_jsx(_components.strong,{children:`grafo de nós`}),`, a mesma estrutura que o construtor visual do console gera.`]}),`\n`,_jsx(Info,{children:_jsxs(_components.p,{children:[`A forma mais simples de montar um fluxo em grafo é o `,_jsx(_components.strong,{children:_jsx(_components.a,{href:`/pt-br/integration/mcp/overview`,children:`Didit MCP`})}),`: peça a um agente em linguagem natural (“após a verificação de identidade, se a profissão for ≈ ‘Software Engineer’, adicione uma etapa de comprovante de fundos”) e ele constrói, valida e salva o grafo para você. A estrutura abaixo é o que essas ferramentas (e o console) geram.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`formato-do-grafo`,children:`Formato do grafo`}),`\n`,_jsxs(_components.p,{children:[`Um grafo é `,_jsx(_components.code,{children:`{ start_node, nodes }`}),`. `,_jsx(_components.code,{children:`nodes`}),` é um mapa de id do nó → nó. As arestas são implícitas: cada nó aponta para a frente via `,_jsx(_components.code,{children:`next`}),` (incondicional) e/ou `,_jsx(_components.code,{children:`branches[].goto`}),` (condicional).`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Tipo de nó`}),_jsx(_components.th,{children:`Formato`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`feature`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`{ \"node_type\": \"feature\", \"feature\": \"OCR\", \"config\": {…}, \"next\": \"\u003cid>\", \"branches\": [] }`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`branch`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`{ \"node_type\": \"branch\", \"branches\": [ { \"id\", \"logic\": \"and\"|\"or\", \"rules\": [\u003crule>], \"goto\": \"\u003cid>\" } ], \"next\": \"\u003cfallback id>\" }`})})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`status`}),` (terminal)`]}),_jsx(_components.td,{children:_jsx(_components.code,{children:`{ \"node_type\": \"status\", \"session_status\": \"Approved\"|\"Declined\"|\"In Review\"|\"Determine\" }`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`action`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`{ \"node_type\": \"action\", \"actions\": [ { \"type\": \"add_tag\"|\"add_review\"|… } ], \"next\": \"\u003cid>\" }`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`webhook`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`{ \"node_type\": \"webhook\", \"config\": { \"url\", \"method\" }, \"branches\": [], \"next\": \"\u003cid>\" }`})})]})]})]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`start_node`}),` deve ser um nó de recurso. As ramificações são avaliadas em ordem e `,_jsx(_components.strong,{children:`a primeira correspondência prevalece`}),`; um `,_jsx(_components.code,{children:`rules: []`}),` vazio é o “else” que captura todo o resto (mantenha-o por último). `,_jsx(_components.code,{children:`session_status: \"Determine\"`}),` decide automaticamente com base nos resultados combinados dos recursos.`]}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Todo nó de ramificação deve ter uma ramificação else explícita`}),`, ou seja, uma ramificação com `,_jsx(_components.code,{children:`rules: []`}),` que roteia as sessões que não atendem a nenhuma das condições. Não dependa do `,_jsx(_components.code,{children:`next`}),` do nó de ramificação como alternativa: um `,_jsx(_components.code,{children:`next`}),` isolado aparece como uma aresta ambígua no construtor e é fácil de omitir. Quando você envia um nó de ramificação com um `,_jsx(_components.code,{children:`next`}),` e sem ramificação else, a API `,_jsxs(_components.strong,{children:[`converte esse `,_jsx(_components.code,{children:`next`}),` em uma ramificação else explícita`]}),` para você (assim, `,_jsx(_components.code,{children:`{ …, \"branches\": [\u003cconditions>], \"next\": \"liveness\" }`}),` é salvo como `,_jsx(_components.code,{children:`branches: [\u003cconditions>, { \"id\": \"else\", \"rules\": [], \"goto\": \"liveness\" }]`}),`). Crie o else você mesmo para ser explícito; a conversão é uma rede de segurança, não um substituto.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`regras-e-operadores-de-ramificação`,children:`Regras e operadores de ramificação`}),`\n`,_jsxs(_components.p,{children:[`Cada regra compara um `,_jsx(_components.strong,{children:`campo`}),` a um `,_jsx(_components.strong,{children:`valor`}),` usando um `,_jsx(_components.strong,{children:`operador`}),`:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`1`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`1`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{ `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"field\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"kyc.extra_fields.profession\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"operator\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"fuzzy_match\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"value\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Software Engineer\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"score\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`80`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`]})})}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Campos`}),` identificam um resultado de recurso (`,_jsx(_components.code,{children:`kyc.status`}),`, `,_jsx(_components.code,{children:`aml.status`}),`, `,_jsx(_components.code,{children:`document_ai.status`}),`, `,_jsx(_components.code,{children:`face_match.score`}),`, …) ou um valor extraído (`,_jsx(_components.code,{children:`kyc.full_name`}),`, `,_jsx(_components.code,{children:`kyc.age`}),`, `,_jsx(_components.code,{children:`kyc.nationality`}),`, `,_jsx(_components.code,{children:`kyc.extra_fields.profession`}),`, um campo do Document AI `,_jsx(_components.code,{children:`document_ai.\u003ckey>`}),`, `,_jsx(_components.code,{children:`expected_details.*`}),`). Uma ramificação só pode ler um campo cujo recurso tenha sido executado em todos os caminhos que chegam até ela.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Operadores:`}),` `,_jsx(_components.code,{children:`equals`}),`, `,_jsx(_components.code,{children:`not_equals`}),`, `,_jsx(_components.code,{children:`greater_than(_or_equals)`}),`, `,_jsx(_components.code,{children:`less_than(_or_equals)`}),`, `,_jsx(_components.code,{children:`contains`}),`, `,_jsx(_components.code,{children:`not_contains`}),`, `,_jsx(_components.code,{children:`in`}),`, `,_jsx(_components.code,{children:`not_in`}),`, `,_jsx(_components.code,{children:`is_empty`}),`, `,_jsx(_components.code,{children:`is_not_empty`}),`, `,_jsx(_components.code,{children:`regex`}),` e `,_jsx(_components.strong,{children:_jsx(_components.code,{children:`fuzzy_match`})}),` (apenas campos de texto; exige um `,_jsx(_components.code,{children:`score`}),` de 0 a 100, que é um limiar de similaridade, por exemplo, profissão ≥ 80% semelhante a “Software Engineer”).`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`ramificação-com-base-no-motivo-de-o-nfc-não-ter-sido-executado`,children:`Ramificação com base no motivo de o NFC não ter sido executado`}),`\n`,_jsxs(_components.p,{children:[`Após um nó `,_jsx(_components.code,{children:`NFC`}),`, use `,_jsx(_components.code,{children:`nfc.skip_reason`}),` com `,_jsx(_components.code,{children:`equals`}),` ou `,_jsx(_components.code,{children:`in`}),` para rotear as sessões de acordo com o motivo pelo qual a leitura do chip não aconteceu. O campo tem estes sete valores estáveis:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`USER_SKIPPED`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`DOCUMENT_WITHOUT_CHIP`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`CHIP_CERTIFICATE_UNAVAILABLE`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`DEVICE_WITHOUT_NFC`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`INTEGRATION_WITHOUT_NFC_ACCESS`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`MRZ_KEY_UNAVAILABLE`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`JPKI_UNAVAILABLE`})}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Consulte `,_jsx(_components.a,{href:`/pt-br/core-technology/nfc-verification/warnings-nfc-verification#motivos-de-omiss%C3%A3o`,children:`Motivos para pular o NFC`}),` para saber o significado de cada valor. Quando o NFC é bem-sucedido, `,_jsx(_components.code,{children:`nfc.skip_reason`}),` é `,_jsx(_components.code,{children:`null`}),`, portanto nenhuma regra `,_jsx(_components.code,{children:`equals`}),` ou `,_jsx(_components.code,{children:`in`}),` para um motivo de pulo corresponde.`]}),`\n`,_jsxs(_components.p,{children:[`O campo também é preenchido para nós NFC `,_jsx(_components.strong,{children:`pulados por uma condição de bloqueio`}),`. Isso inclui casos em que não existe relatório nem aviso de NFC, e casos em que `,_jsx(_components.code,{children:`allow_nfc_skip`}),` é `,_jsx(_components.code,{children:`false`}),`, mas a condição do documento ou do dispositivo impede a execução do NFC. Assim, você pode rotear essas sessões sem depender de uma entrada em `,_jsx(_components.code,{children:`nfc_verifications[]`}),`.`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`Sessões armazenadas antes de a capacidade de NFC passar a ter três estados podem ter `,_jsx(_components.code,{children:`has_device_nfc_support: false`}),`. Por isso, uma sessão web mais antiga pode ser resolvida como `,_jsx(_components.code,{children:`DEVICE_WITHOUT_NFC`}),` em vez de `,_jsx(_components.code,{children:`INTEGRATION_WITHOUT_NFC_ACCESS`}),`.`]})}),`\n`,_jsxs(_components.p,{children:[`Este grafo usa `,_jsx(_components.code,{children:`equals`}),` para um pulo feito pelo usuário, `,_jsx(_components.code,{children:`in`}),` para pulos por condição de bloqueio ou por capacidade, e um else explícito para o NFC bem-sucedido. A ramificação vem depois do nó `,_jsx(_components.code,{children:`NFC`}),`, e cada destino aponta para a frente até um nó terminal:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`56`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`56`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"start_node\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ocr\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"nodes\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"ocr\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"OCR\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"next\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"nfc\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"nfc\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"NFC\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"config\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"allow_nfc_skip\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"next\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"route_nfc\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"route_nfc\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"branch\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"branches\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"user_skipped\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"logic\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"and\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"rules\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"field\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"nfc.skip_reason\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"operator\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"equals\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"value\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"USER_SKIPPED\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"goto\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"manual_review\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"nfc_unavailable\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"logic\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"and\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"rules\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"field\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"nfc.skip_reason\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"operator\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"in\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"value\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"DOCUMENT_WITHOUT_CHIP\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"CHIP_CERTIFICATE_UNAVAILABLE\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"DEVICE_WITHOUT_NFC\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"INTEGRATION_WITHOUT_NFC_ACCESS\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"MRZ_KEY_UNAVAILABLE\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"JPKI_UNAVAILABLE\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"goto\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"manual_review\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"else\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"logic\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"and\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"rules\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"goto\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"approved\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"manual_review\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"session_status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"In Review\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"approved\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"session_status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Approved\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Para expressar “o NFC não foi realizado por nenhum motivo conhecido”, use `,_jsx(_components.code,{children:`in`}),` com `,_jsx(_components.strong,{children:`todos os sete`}),` valores. Mantenha uma ramificação else explícita para o NFC bem-sucedido (`,_jsx(_components.code,{children:`nfc.skip_reason: null`}),`) e para qualquer valor futuro que o seu grafo ainda não reconheça.`]}),`\n`,_jsx(Heading,{level:`3`,id:`document-ai-por-exemplo-comprovante-de-fundos`,children:`Document AI (por exemplo, comprovante de fundos)`}),`\n`,_jsxs(_components.p,{children:[`Um nó de recurso `,_jsx(_components.code,{children:`DOCUMENT_AI`}),` solicita um ou mais documentos e extrai campos nomeados:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`34`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`34`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"DOCUMENT_AI\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Proof of Funds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"config\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"document_ai_documents\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"document_key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"proof_of_funds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"title\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Proof of Funds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"description\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Upload a recent bank statement.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"fields\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"account_holder\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Account holder\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"instruction\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"The full name of the account holder as printed on the statement.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"required\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"is_full_name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"closing_balance\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Closing balance\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"instruction\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"The closing balance amount.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"number\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"required\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"document_ai_missing_required_fields_action\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"REVIEW\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"document_ai_name_mismatch_action\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"REVIEW\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"next\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"final_decision\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`Cada campo configurado se torna um valor ramificável `,_jsx(_components.code,{children:`document_ai.\u003ckey>`}),`, e o resultado da etapa é `,_jsx(_components.code,{children:`document_ai.status`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Defina `,_jsx(_components.code,{children:`\"is_full_name\": true`}),` no campo que contém o nome completo do titular do documento. O valor extraído é comparado com o nome completo da identidade verificada (o nome do OCR/da verificação de identidade ou os dados esperados da sessão), e `,_jsx(_components.code,{children:`document_ai_name_mismatch_action`}),` decide o que acontece quando há divergência abaixo de `,_jsx(_components.code,{children:`document_ai_name_match_score_threshold`}),`. A flag é `,_jsx(_components.strong,{children:`opcional`}),` (um documento pode não marcar nenhum campo) e `,_jsx(_components.strong,{children:`no máximo um campo por documento`}),` pode defini-la. Consulte `,_jsx(_components.a,{href:`/pt-br/management-api/workflows/feature-configs#document-ai`,children:`Configurações de recursos do fluxo → Document AI`}),` para ver todos os campos de configuração do Document AI.`]}),`\n`,_jsx(Heading,{level:`3`,id:`endpoints-e-ciclo-de-vida-do-rascunho`,children:`Endpoints e ciclo de vida do rascunho`}),`\n`,_jsxs(_components.p,{children:[`A edição do grafo é feita por aplicação e usa os endpoints do console/de gerenciamento (Bearer de usuário + `,_jsx(_components.code,{children:`read:workflows`}),`/`,_jsx(_components.code,{children:`write:workflows`}),`). Um grafo só pode ser editado em uma versão de `,_jsx(_components.strong,{children:`rascunho`}),`, então o ciclo de vida é `,_jsx(_components.strong,{children:`criar rascunho → definir grafo → publicar`}),`:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Método`}),_jsx(_components.th,{children:`Caminho`}),_jsx(_components.th,{children:`Finalidade`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`GET`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`…/verification-settings/{settings_uuid}/workflow-graph/`})}),_jsxs(_components.td,{children:[`Grafo atual + `,_jsx(_components.code,{children:`status`}),`/`,_jsx(_components.code,{children:`is_editable`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`POST`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`…/application/{app}/workflow-graph/validate/`}),` (corpo `,_jsx(_components.code,{children:`{ \"graph\": … }`}),`)`]}),_jsx(_components.td,{children:`Validação de teste (dry-run)`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`GET`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`…/application/{app}/workflow-graph/field-definitions/`})}),_jsx(_components.td,{children:`Campos que permitem ramificação + operadores válidos`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`POST`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`…/verification-settings/{settings_uuid}/create-draft/`})}),_jsx(_components.td,{children:`Rascunho editável a partir de uma versão publicada`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`PUT`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`…/verification-settings/{settings_uuid}/workflow-graph/`}),` (corpo `,_jsx(_components.code,{children:`{ \"graph\": … }`}),`)`]}),_jsx(_components.td,{children:`Salvar o grafo`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`PATCH`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`…/verification-settings/{settings_uuid}/`}),` (corpo `,_jsx(_components.code,{children:`{ \"status\": \"published\" }`}),`)`]}),_jsx(_components.td,{children:`Publicar o rascunho`})]})]})]}),`\n`,_jsx(Heading,{level:`4`,id:`avisos-de-validação`,children:`Avisos de validação`}),`\n`,_jsxs(_components.p,{children:[`O endpoint de validação responde `,_jsx(_components.code,{children:`{ \"is_valid\": true, \"graph\": …, \"warnings\": [] }`}),`. Um aviso é apenas `,_jsx(_components.strong,{children:`informativo`}),`: o grafo é válido, é salvo e é publicado mesmo com avisos. Cada entrada indica o nó de ramificação e o ramo a que se refere, para que um construtor possa apontar para a condição exata:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`8`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"branch_outcome_contradiction\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"node_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"after_ocr\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"branch_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"b1\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"severity\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"warning\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"message\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Branch 1 only matches sessions where ID Verification Status is Approved or In Review, but every path from it ends in the session outcome `}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:`\\\\\"`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`Declined`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:`\\\\\"`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`. Check the condition or the outcome.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"params\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"branchNumber\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"field\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ID Verification Status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"allowed\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Approved or In Review\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"outcome\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Declined\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:_jsx(_components.code,{children:`type`})}),_jsx(_components.th,{children:`O que significa`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`branch_outcome_contradiction`})}),_jsxs(_components.td,{children:[`A condição do ramo e o resultado alcançado por todos os caminhos a partir dele se contradizem - por exemplo, `,_jsx(_components.code,{children:`kyc.status NOT EQUALS Declined`}),` direcionado para um resultado `,_jsx(_components.code,{children:`Declined`}),`. O resultado pode estar várias etapas adiante no caminho.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`branch_condition_unreachable`})}),_jsx(_components.td,{children:`O ramo nunca pode corresponder, porque todos os caminhos que chegam a essa ramificação já limitam esse campo de status a valores que a condição exclui.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`else_branch_unreachable`})}),_jsx(_components.td,{children:`O ramo else nunca pode ser executado: os outros braços já cobrem todos os valores que o campo pode assumir nesse ponto.`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Um grafo inválido responde `,_jsx(_components.code,{children:`400`}),` com `,_jsx(_components.code,{children:`errors`}),` `,_jsx(_components.strong,{children:`e`}),` uma lista `,_jsx(_components.code,{children:`warnings`}),` gerada conforme possível. Apenas `,_jsx(_components.code,{children:`errors`}),` impedem que o grafo seja salvo.`]}),`\n`,_jsx(Heading,{level:`3`,id:`exemplo-prático-direcionar-engenheiros-de-software-para-comprovante-de-fundos`,children:`Exemplo prático: direcionar engenheiros de software para comprovante de fundos`}),`\n`,_jsxs(_components.blockquote,{children:[`\n`,_jsxs(_components.p,{children:[`Após a verificação de identidade: se ela foi `,_jsx(_components.strong,{children:`recusada`}),`, recuse a sessão; se a `,_jsx(_components.strong,{children:`profissão ≈ “Software Engineer”`}),` do titular (≥80% de similaridade), solicite um documento de `,_jsx(_components.strong,{children:`comprovante de fundos`}),`; em seguida, tome uma decisão final.`]}),`\n`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`33`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`33`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"start_node\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ocr_1\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"nodes\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"ocr_1\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"OCR\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"ID Verification\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"next\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"after_ocr\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"after_ocr\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"branch\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Route after ID verification\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"branches\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"declined\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"logic\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"or\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"rules\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [ { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"field\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"kyc.status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"operator\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"equals\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"value\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Declined\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } ], `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"goto\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"decline\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"software_engineer\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"logic\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"and\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"rules\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [ { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"field\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"kyc.extra_fields.profession\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"operator\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"fuzzy_match\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"value\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Software Engineer\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"score\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`80`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` } ], `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"goto\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"proof_of_funds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"else\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"logic\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"and\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"rules\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [], `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"goto\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"final_decision\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ]`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"proof_of_funds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"feature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"DOCUMENT_AI\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Proof of Funds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"config\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: {`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"document_ai_documents\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"document_key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"proof_of_funds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"title\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Proof of Funds\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"description\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Upload a recent bank statement.\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"fields\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"account_holder\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Account holder\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"required\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"key\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"closing_balance\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Closing balance\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"number\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"required\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ] }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"document_ai_missing_required_fields_action\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"REVIEW\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"next\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"final_decision\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"final_decision\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"session_status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Determine\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Final decision\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` },`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"decline\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"node_type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"session_status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Declined\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"label\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Declined\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`O nó final usa `,_jsx(_components.code,{children:`session_status: \"Determine\"`}),`, que `,_jsx(_components.strong,{children:`decide automaticamente`}),` (aprova / recusa / coloca em revisão) com base nos recursos que de fato foram executados na sessão — assim, tanto o caminho do comprovante de fundos quanto o caminho else são resolvidos corretamente sem que nenhuma ramificação leia `,_jsx(_components.code,{children:`document_ai.status`}),` (que não existe no caminho que pula o Document AI). Lembre-se: uma ramificação só pode ler um campo cujo recurso foi executado em `,_jsx(_components.em,{children:`todos`}),` os caminhos que chegam até ela.`]}),`\n`,_jsxs(_components.p,{children:[`Envie-o como `,_jsx(_components.code,{children:`{ \"graph\": \u003cabove> }`}),` para o endpoint `,_jsx(_components.code,{children:`…/workflow-graph/`}),` (valide antes). Para criar um fluxo `,_jsx(_components.strong,{children:`novo`}),` do zero, use o `,_jsx(_components.code,{children:`didit_workflow_set_graph`}),` do MCP; para `,_jsx(_components.strong,{children:`modificar um fluxo existente`}),`, use `,_jsx(_components.code,{children:`didit_workflow_edit_graph`}),` (operações pequenas, preserva os nós e as listas de permissão existentes). Consulte o `,_jsx(_components.a,{href:`/pt-br/integration/mcp/tools`,children:`Didit MCP`}),`.`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{__snippet_AGENT_PROMPT_LABELS_1j2ntij,AgentPromptAccordion,default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"API para criar workflow: monte seu fluxo de KYC","sidebarTitle":"Criar workflow","description":"Crie via API um workflow de verificação da Didit com recursos em ordem: KYC, KYB, AML e biometria em um só fluxo. Pague por chamada, sem contratos.","keywords":["API para criar workflow","API de workflow de verificação","API de workflow de KYC","CRUD de workflow","criar workflow programaticamente","POST workflows","Didit Management API","API de verificação de identidade","orquestrador de workflows"],"openapi":"pt-br/openapi-25.json POST /v3/workflows/","href":"/pt-br/management-api/workflows/create"}}},"mdxSourceWithNoJs":null,"noJsSplices":[[172,2833,"undefined;const AgentPromptAccordion=()=>null;function _crea"]]},"mdxExtracts":{"tableOfContents":[{"title":"Fluxo de KYC básico","slug":"fluxo-de-kyc-básico","depth":2,"children":[]},{"title":"Fluxo com questionário","slug":"fluxo-com-questionário","depth":2,"children":[]},{"title":"Referência de configuração de recursos","slug":"referência-de-configuração-de-recursos","depth":2,"children":[]},{"title":"Configurações opcionais do fluxo","slug":"configurações-opcionais-do-fluxo","depth":2,"children":[]},{"title":"Ramificação e fluxos baseados em nós (grafo)","slug":"ramificação-e-fluxos-baseados-em-nós-grafo","depth":2,"children":[{"title":"Formato do grafo","slug":"formato-do-grafo","depth":3,"children":[]},{"title":"Regras e operadores de ramificação","slug":"regras-e-operadores-de-ramificação","depth":3,"children":[]},{"title":"Ramificação com base no motivo de o NFC não ter sido executado","slug":"ramificação-com-base-no-motivo-de-o-nfc-não-ter-sido-executado","depth":3,"children":[]},{"title":"Document AI (por exemplo, comprovante de fundos)","slug":"document-ai-por-exemplo-comprovante-de-fundos","depth":3,"children":[]},{"title":"Endpoints e ciclo de vida do rascunho","slug":"endpoints-e-ciclo-de-vida-do-rascunho","depth":3,"children":[]},{"title":"Avisos de validação","slug":"avisos-de-validação","depth":4,"children":[]},{"title":"Exemplo prático: direcionar engenheiros de software para comprovante de fundos","slug":"exemplo-prático-direcionar-engenheiros-de-software-para-comprovante-de-fundos","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/didit-0f962782/5fb7c0c336c92274/snippets/data/database-validation-coverage.js","/_mintlify/custom/didit-0f962782/4ac7d3c2a19a354d/database-validation-playground.js"],"openApiReferenceData":{"operation":{"summary":"Criar fluxo de verificação","description":"Crie via API um workflow de verificação da Didit com recursos em ordem: KYC, KYB, AML e biometria em um só fluxo. Pague por chamada, sem contratos.","operationId":"create_workflow","x-didit-sdk":{"resource":"workflows","method":"create","auth":"api_key","server":true},"tags":["Workflows"],"requestBody":"6352c148-ddbc-48fb-a2ae-69dfc7400049","responses":{"201":"bc66e501-65b1-4ba8-8437-17dba3d54fa0","400":"54672dc3-6d98-49d4-af96-8cb9178c53e9","403":"892b42b5-a838-45dd-802b-998bbd405e9b","415":"8915eb9e-8557-4fa1-a27d-668111c08d96","429":"5b2806c9-db1d-481a-8fbe-87971ac9c43d","500":"edd1ebea-5e70-490e-8dfb-0879f59c9174"},"security":["44d88c81-8ea8-4016-bded-c3deb1888de1"],"x-codeSamples":[{"lang":"curl","label":"cURL","source":"curl -X POST 'https://verification.didit.me/v3/workflows/' \\\n -H 'x-api-key: YOUR_API_KEY' \\\n -H 'Content-Type: application/json' \\\n -d '{\n \"workflow_label\": \"Standard KYC\",\n \"features\": [\n {\"feature\": \"OCR\"},\n {\"feature\": \"LIVENESS\", \"config\": {\"face_liveness_method\": \"passive\"}},\n {\"feature\": \"FACE_MATCH\", \"config\": {\"face_match_score_decline_threshold\": 40, \"face_match_score_review_threshold\": 60}}\n ]\n }'"},{"lang":"python","label":"Python","source":"from didit import Didit\n\n# Reads DIDIT_API_KEY.\nclient = Didit()\n\nresult = client.workflows.create(\n workflow_label=\"Standard KYC\",\n features=[{\n \"feature\": \"OCR\",\n \"config\": {\"duplicated_user_action\": \"review\"},\n }, {\n \"feature\": \"LIVENESS\",\n \"config\": {\"face_liveness_method\": \"passive\"},\n }, {\n \"feature\": \"FACE_MATCH\",\n \"config\": {\"face_match_score_decline_threshold\": 40, \"face_match_score_review_threshold\": 60},\n }],\n)\nprint(result)"},{"lang":"javascript","label":"Node.js","source":"import Didit from \"@didit-protocol/sdk-node\";\n\n// Reads DIDIT_API_KEY.\nconst didit = new Didit();\n\nconst result = await didit.workflows.create({\n workflow_label: \"Standard KYC\",\n features: [{\n feature: \"OCR\",\n config: { duplicated_user_action: \"review\" },\n }, {\n feature: \"LIVENESS\",\n config: { face_liveness_method: \"passive\" },\n }, {\n feature: \"FACE_MATCH\",\n config: { face_match_score_decline_threshold: 40, face_match_score_review_threshold: 60 },\n }],\n});\nconsole.log(result);"},{"lang":"go","label":"Go","source":"ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Workflows.Create(ctx, didit.SimpleWorkflowRequest{\n\tWorkflowLabel: didit.String(\"Standard KYC\"),\n\tFeatures: []didit.SimpleWorkflowFeature{{\n\t\tFeature: \"OCR\",\n\t\tConfig: didit.Some(map[string]any{\"duplicated_user_action\": \"review\"}),\n\t}, {\n\t\tFeature: \"LIVENESS\",\n\t\tConfig: didit.Some(map[string]any{\"face_liveness_method\": \"passive\"}),\n\t}, {\n\t\tFeature: \"FACE_MATCH\",\n\t\tConfig: didit.Some(map[string]any{\"face_match_score_decline_threshold\": 40, \"face_match_score_review_threshold\": 60}),\n\t}},\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"},{"lang":"java","label":"Java","source":"import java.util.List;\nimport java.util.Map;\nimport me.didit.Didit;\nimport me.didit.types.SimpleWorkflowFeature;\nimport me.didit.types.SimpleWorkflowRequest;\n\n// Reads DIDIT_API_KEY.\nDidit client = new Didit();\n\nvar result = client.workflows().create(SimpleWorkflowRequest.builder()\n .workflowLabel(\"Standard KYC\")\n .features(List.of(\n SimpleWorkflowFeature.builder()\n .feature(SimpleWorkflowFeature.Feature.of(\"OCR\"))\n .config(Map.of(\"duplicated_user_action\", \"review\"))\n .build(),\n SimpleWorkflowFeature.builder()\n .feature(SimpleWorkflowFeature.Feature.of(\"LIVENESS\"))\n .config(Map.of(\"face_liveness_method\", \"passive\"))\n .build(),\n SimpleWorkflowFeature.builder()\n .feature(SimpleWorkflowFeature.Feature.of(\"FACE_MATCH\"))\n .config(Map.of(\"face_match_score_decline_threshold\", 40, \"face_match_score_review_threshold\", 60))\n .build()))\n .build());\nSystem.out.println(result);"},{"lang":"php","label":"PHP","source":"\u003c?php\n\nrequire 'vendor/autoload.php';\n\nuse Didit\\DiditClient;\n\n// Reads DIDIT_API_KEY.\n$didit = new DiditClient();\n\n$result = $didit->workflows->create([\n 'workflow_label' => 'Standard KYC',\n 'features' => [[\n 'feature' => 'OCR',\n 'config' => ['duplicated_user_action' => 'review'],\n ], [\n 'feature' => 'LIVENESS',\n 'config' => ['face_liveness_method' => 'passive'],\n ], [\n 'feature' => 'FACE_MATCH',\n 'config' => ['face_match_score_decline_threshold' => 40, 'face_match_score_review_threshold' => 60],\n ]],\n]);\nprint_r($result->toArray());"},{"lang":"ruby","label":"Ruby","source":"require \"didit\"\n\n# Reads DIDIT_API_KEY.\ndidit = Didit::Client.new\n\nresult = didit.workflows.create(\n workflow_label: \"Standard KYC\",\n features: [{\n feature: \"OCR\",\n config: { duplicated_user_action: \"review\" },\n }, {\n feature: \"LIVENESS\",\n config: { face_liveness_method: \"passive\" },\n }, {\n feature: \"FACE_MATCH\",\n config: { face_match_score_decline_threshold: 40, face_match_score_review_threshold: 60 },\n }]\n)\nputs result.to_h"},{"lang":"csharp","label":".NET","source":"using System;\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Didit;\n\n// Reads DIDIT_API_KEY.\nusing var client = new DiditClient();\n\nvar result = await client.Workflows.CreateAsync(new SimpleWorkflowRequest\n{\n WorkflowLabel = \"Standard KYC\",\n Features = new SimpleWorkflowFeature[]\n {\n new()\n {\n Feature = \"OCR\",\n Config = new Dictionary\u003cstring, object> { [\"duplicated_user_action\"] = \"review\" },\n },\n new()\n {\n Feature = \"LIVENESS\",\n Config = new Dictionary\u003cstring, object> { [\"face_liveness_method\"] = \"passive\" },\n },\n new()\n {\n Feature = \"FACE_MATCH\",\n Config = new Dictionary\u003cstring, object> { [\"face_match_score_decline_threshold\"] = 40, [\"face_match_score_review_threshold\"] = 60 },\n },\n },\n});\nConsole.WriteLine(JsonSerializer.Serialize(result));"}],"method":"post","type":"path","servers":["4dad0e93-45e1-4b49-b424-12516c3891fa"],"path":"/v3/workflows/","baseUrlOptions":["https://verification.didit.me"],"title":"Criar fluxo de verificação","codeSamples":[{"label":"cURL","lang":"curl","source":"curl -X POST 'https://verification.didit.me/v3/workflows/' \\\n -H 'x-api-key: YOUR_API_KEY' \\\n -H 'Content-Type: application/json' \\\n -d '{\n \"workflow_label\": \"Standard KYC\",\n \"features\": [\n {\"feature\": \"OCR\"},\n {\"feature\": \"LIVENESS\", \"config\": {\"face_liveness_method\": \"passive\"}},\n {\"feature\": \"FACE_MATCH\", \"config\": {\"face_match_score_decline_threshold\": 40, \"face_match_score_review_threshold\": 60}}\n ]\n }'"},{"label":"Python","lang":"python","source":"from didit import Didit\n\n# Reads DIDIT_API_KEY.\nclient = Didit()\n\nresult = client.workflows.create(\n workflow_label=\"Standard KYC\",\n features=[{\n \"feature\": \"OCR\",\n \"config\": {\"duplicated_user_action\": \"review\"},\n }, {\n \"feature\": \"LIVENESS\",\n \"config\": {\"face_liveness_method\": \"passive\"},\n }, {\n \"feature\": \"FACE_MATCH\",\n \"config\": {\"face_match_score_decline_threshold\": 40, \"face_match_score_review_threshold\": 60},\n }],\n)\nprint(result)"},{"label":"Node.js","lang":"javascript","source":"import Didit from \"@didit-protocol/sdk-node\";\n\n// Reads DIDIT_API_KEY.\nconst didit = new Didit();\n\nconst result = await didit.workflows.create({\n workflow_label: \"Standard KYC\",\n features: [{\n feature: \"OCR\",\n config: { duplicated_user_action: \"review\" },\n }, {\n feature: \"LIVENESS\",\n config: { face_liveness_method: \"passive\" },\n }, {\n feature: \"FACE_MATCH\",\n config: { face_match_score_decline_threshold: 40, face_match_score_review_threshold: 60 },\n }],\n});\nconsole.log(result);"},{"label":"Go","lang":"go","source":"ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Workflows.Create(ctx, didit.SimpleWorkflowRequest{\n\tWorkflowLabel: didit.String(\"Standard KYC\"),\n\tFeatures: []didit.SimpleWorkflowFeature{{\n\t\tFeature: \"OCR\",\n\t\tConfig: didit.Some(map[string]any{\"duplicated_user_action\": \"review\"}),\n\t}, {\n\t\tFeature: \"LIVENESS\",\n\t\tConfig: didit.Some(map[string]any{\"face_liveness_method\": \"passive\"}),\n\t}, {\n\t\tFeature: \"FACE_MATCH\",\n\t\tConfig: didit.Some(map[string]any{\"face_match_score_decline_threshold\": 40, \"face_match_score_review_threshold\": 60}),\n\t}},\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"},{"label":"Java","lang":"java","source":"import java.util.List;\nimport java.util.Map;\nimport me.didit.Didit;\nimport me.didit.types.SimpleWorkflowFeature;\nimport me.didit.types.SimpleWorkflowRequest;\n\n// Reads DIDIT_API_KEY.\nDidit client = new Didit();\n\nvar result = client.workflows().create(SimpleWorkflowRequest.builder()\n .workflowLabel(\"Standard KYC\")\n .features(List.of(\n SimpleWorkflowFeature.builder()\n .feature(SimpleWorkflowFeature.Feature.of(\"OCR\"))\n .config(Map.of(\"duplicated_user_action\", \"review\"))\n .build(),\n SimpleWorkflowFeature.builder()\n .feature(SimpleWorkflowFeature.Feature.of(\"LIVENESS\"))\n .config(Map.of(\"face_liveness_method\", \"passive\"))\n .build(),\n SimpleWorkflowFeature.builder()\n .feature(SimpleWorkflowFeature.Feature.of(\"FACE_MATCH\"))\n .config(Map.of(\"face_match_score_decline_threshold\", 40, \"face_match_score_review_threshold\", 60))\n .build()))\n .build());\nSystem.out.println(result);"},{"label":"PHP","lang":"php","source":"\u003c?php\n\nrequire 'vendor/autoload.php';\n\nuse Didit\\DiditClient;\n\n// Reads DIDIT_API_KEY.\n$didit = new DiditClient();\n\n$result = $didit->workflows->create([\n 'workflow_label' => 'Standard KYC',\n 'features' => [[\n 'feature' => 'OCR',\n 'config' => ['duplicated_user_action' => 'review'],\n ], [\n 'feature' => 'LIVENESS',\n 'config' => ['face_liveness_method' => 'passive'],\n ], [\n 'feature' => 'FACE_MATCH',\n 'config' => ['face_match_score_decline_threshold' => 40, 'face_match_score_review_threshold' => 60],\n ]],\n]);\nprint_r($result->toArray());"},{"label":"Ruby","lang":"ruby","source":"require \"didit\"\n\n# Reads DIDIT_API_KEY.\ndidit = Didit::Client.new\n\nresult = didit.workflows.create(\n workflow_label: \"Standard KYC\",\n features: [{\n feature: \"OCR\",\n config: { duplicated_user_action: \"review\" },\n }, {\n feature: \"LIVENESS\",\n config: { face_liveness_method: \"passive\" },\n }, {\n feature: \"FACE_MATCH\",\n config: { face_match_score_decline_threshold: 40, face_match_score_review_threshold: 60 },\n }]\n)\nputs result.to_h"},{"label":".NET","lang":"csharp","source":"using System;\nusing System.Collections.Generic;\nusing System.Text.Json;\nusing Didit;\n\n// Reads DIDIT_API_KEY.\nusing var client = new DiditClient();\n\nvar result = await client.Workflows.CreateAsync(new SimpleWorkflowRequest\n{\n WorkflowLabel = \"Standard KYC\",\n Features = new SimpleWorkflowFeature[]\n {\n new()\n {\n Feature = \"OCR\",\n Config = new Dictionary\u003cstring, object> { [\"duplicated_user_action\"] = \"review\" },\n },\n new()\n {\n Feature = \"LIVENESS\",\n Config = new Dictionary\u003cstring, object> { [\"face_liveness_method\"] = \"passive\" },\n },\n new()\n {\n Feature = \"FACE_MATCH\",\n Config = new Dictionary\u003cstring, object> { [\"face_match_score_decline_threshold\"] = 40, [\"face_match_score_review_threshold\"] = 60 },\n },\n },\n});\nConsole.WriteLine(JsonSerializer.Serialize(result));"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.features.items.0.feature":"OCR","body.features.items.0.config":{"duplicated_user_action":"review"},"body.features.items.1.feature":"LIVENESS","body.features.items.1.config":{"face_liveness_method":"passive"},"body.features.items.2.feature":"FACE_MATCH","body.features.items.2.config":{"face_match_score_decline_threshold":40,"face_match_score_review_threshold":60},"body.workflow_label":"Standard KYC"},{"body.features.items.0.feature":"OCR","body.features.items.1.feature":"AML","body.features.items.1.config":{"aml_score_review_threshold":70,"aml_score_approve_threshold":30},"body.workflow_label":"KYC with AML"},{"body.features.items.0.feature":"QUESTIONNAIRE","body.features.items.0.config":{"questionnaire_uuid":"11111111-2222-3333-4444-555555555555","review_questionnaire_manually":true},"body.workflow_label":"Source of Funds"}]},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","description":"Cria um fluxo de verificação (workflow) linear simples. A API converte internamente esta lista de recursos em um grafo de fluxo baseado em nós. Lista de campos permitidos RESTRITA: qualquer chave não listada aqui (incluindo `workflow_type`) é rejeitada com 400.","required":["features"],"properties":{"features":{"type":"array","minItems":1,"description":"Recursos de verificação em ordem de execução. A API vincula cada item ao seguinte e adiciona automaticamente um nó final de status.","items":{"type":"object","required":["feature"],"properties":{"feature":{"type":"string","description":"Recurso a ser executado. Use os valores em maiúsculas mostrados aqui.","enum":["OCR","NFC","LIVENESS","FACE_MATCH","PROOF_OF_ADDRESS","QUESTIONNAIRE","DOCUMENT_AI","PHONE_VERIFICATION","EMAIL_VERIFICATION","DATABASE_VALIDATION","AML","IP_ANALYSIS","AGE_ESTIMATION","KYB_REGISTRY","KYB_DOCUMENTS","KYB_KEY_PEOPLE","SIGNATURE"],"isRequired":true,"uniqueKey":"features.items.[INDEX].feature","typeLabel":"enum\u003cstring>"},"config":{"type":"object","description":"Configurações específicas do recurso. Para `QUESTIONNAIRE`, inclua `questionnaire_uuid` com o `questionnaire_id` retornado pelo endpoint de criação de questionário. Para `SIGNATURE`, um fluxo de verificação (workflow) que entra em produção precisa de um documento para assinar: defina `signature_documents_source` como `session` ou `both` para que cada sessão possa trazer o seu, ou envie `status: \"draft\"` e adicione os documentos antes de publicar. `signature_level: \"aes\"` é recusado com `aes_not_available` enquanto `signature_availability.aes` for `false` no fluxo. Para `OCR`, `methods` seleciona quais métodos de Verificação de identidade cada país pode usar (captura de documento, consulta sem documento a uma fonte governamental ou outra fonte oficial e carteiras de identidade digital); se omitido, todos os países usam somente captura de documento. Para `SIGNATURE`, consulte as [configurações de Assinatura eletrônica](/pt-br/management-api/workflows/feature-configs#assinatura-eletrônica): `signature_level` aceita, por enquanto, `simple` (o padrão, sem necessidade de verificação de identidade, e-mail ou telefone) e `aes`, e os documentos do fluxo e seus campos são gerenciados no console; por isso, pela API, envie documentos e campos por sessão com `signature_documents_source: \"session\"`.","additionalProperties":true,"uniqueKey":"features.items.[INDEX].config","typeLabel":"object"},"label":{"type":"string","description":"Rótulo interno opcional para este nó do fluxo.","uniqueKey":"features.items.[INDEX].label","typeLabel":"string"}},"uniqueKey":"features.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"features","typeLabel":"object[]"},"workflow_label":{"type":"string","maxLength":50,"default":"ID Verification","description":"Nome de exibição do fluxo de verificação (workflow) (máximo de 50 caracteres). O padrão é `\"ID Verification\"` quando omitido; sempre defina-o para que os fluxos continuem distinguíveis.","example":"Standard KYC","uniqueKey":"workflow_label","typeLabel":"string"},"is_default":{"type":"boolean","description":"Define este fluxo como padrão para novas sessões.","uniqueKey":"is_default","typeLabel":"boolean"},"status":{"type":"string","enum":["draft","published"],"description":"Omita este campo para criar um fluxo publicado, pronto para sessões. Use `draft` somente quando quiser salvar sem publicar.","uniqueKey":"status","typeLabel":"enum\u003cstring>"},"is_white_label_enabled":{"type":"boolean","description":"Ativa a personalização de marca própria para as sessões criadas com este fluxo.","default":false,"uniqueKey":"is_white_label_enabled","typeLabel":"boolean"},"is_desktop_allowed":{"type":"boolean","description":"Permite que o fluxo de verificação seja executado em navegadores desktop.","default":false,"uniqueKey":"is_desktop_allowed","typeLabel":"boolean"},"max_retry_attempts":{"type":"integer","minimum":0,"maximum":10,"default":3,"description":"Número máximo de novas tentativas permitidas após uma verificação recusada. `0` bloqueia o usuário após a primeira recusa.","uniqueKey":"max_retry_attempts","typeLabel":"integer"},"retry_window_days":{"oneOf":[{"type":"integer","minimum":1,"maximum":365,"default":7,"description":"Janela móvel em dias usada para contar as novas tentativas. `null` aplica um limite para todo o histórico.","uniqueKey":"retry_window_days.oneOf.0","typeLabel":"integer"},{"type":"null","minimum":1,"maximum":365,"default":7,"description":"Janela móvel em dias usada para contar as novas tentativas. `null` aplica um limite para todo o histórico.","uniqueKey":"retry_window_days.oneOf.1","typeLabel":"null"}],"uniqueKey":"retry_window_days","typeLabel":"integer | null"},"face_liveness_max_attempts":{"type":"integer","minimum":1,"maximum":3,"default":3,"description":"Número máximo de envios de prova de vida por sessão. Padrão 3: uma tentativa inicial mais duas novas tentativas. Esse valor também é copiado para os nós de prova de vida e de estimativa de idade gerados no fluxo de verificação (workflow), a menos que a configuração no nível do recurso o substitua.","uniqueKey":"face_liveness_max_attempts","typeLabel":"integer"},"face_match_max_attempts":{"type":"integer","minimum":1,"maximum":3,"default":3,"description":"Número máximo de envios de correspondência facial por sessão. Padrão 3: uma tentativa inicial mais duas novas tentativas. Esse valor também é copiado para os nós de correspondência facial gerados no fluxo de verificação (workflow), a menos que a configuração no nível do recurso o substitua.","uniqueKey":"face_match_max_attempts","typeLabel":"integer"},"session_expiration_time":{"type":"integer","minimum":3600,"maximum":2419200,"default":604800,"description":"Segundos até a expiração de uma sessão não concluída. Mínimo de 1 hora (3600), máximo de 4 semanas (2419200).","uniqueKey":"session_expiration_time","typeLabel":"integer"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Simple KYC":{"title":"Simple KYC","value":{"workflow_label":"Standard KYC","features":[{"feature":"OCR","config":{"duplicated_user_action":"review"}},{"feature":"LIVENESS","config":{"face_liveness_method":"passive"}},{"feature":"FACE_MATCH","config":{"face_match_score_decline_threshold":40,"face_match_score_review_threshold":60}}]}},"KYC + AML":{"title":"KYC + AML","value":{"workflow_label":"KYC with AML","features":[{"feature":"OCR"},{"feature":"AML","config":{"aml_score_review_threshold":70,"aml_score_approve_threshold":30}}]}},"Questionnaire workflow":{"title":"Questionnaire workflow","value":{"workflow_label":"Source of Funds","features":[{"feature":"QUESTIONNAIRE","config":{"questionnaire_uuid":"11111111-2222-3333-4444-555555555555","review_questionnaire_manually":true}}]}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"bc66e501-65b1-4ba8-8437-17dba3d54fa0":{"description":"Fluxo de verificação (workflow) criado. O corpo da resposta é a configuração COMPLETA do fluxo, a mesma serialização bruta de `VerificationSettings` retornada por `GET /v3/workflows/{settings_uuid}/` (~190 campos: cada ativação de recurso, limiar, ação e o `workflow_graph` gerado), e não o item compacto da lista. Armazene o `uuid` (também exposto como `workflow_id`) para poder referenciá-lo em chamadas posteriores de criação de sessão. Observação: `features` é uma string unida por `\" + \"` e os preços são números JSON.","content":{"application/json":{"schema":{"type":"object","description":"Os campos abaixo são tipados; o objeto também traz todas as outras colunas da configuração do fluxo de verificação (ativação de recursos, limiares, ações de aviso, documentos permitidos, callbacks) como propriedades adicionais. Os campos que não se aplicam ao `workflow_type` são `null`.","properties":{"uuid":{"type":"string","format":"uuid","description":"Identificador da versão (`settings_uuid`). Cada versão de um fluxo tem o seu próprio.","uniqueKey":"uuid","typeLabel":"string\u003cuuid>"},"workflow_id":{"type":"string","format":"uuid","description":"Identificador estável compartilhado por todas as versões do fluxo. As sessões criadas com ele usam a versão publicada mais recente.","uniqueKey":"workflow_id","typeLabel":"string\u003cuuid>"},"workflow_label":{"type":"string","description":"Nome de exibição do fluxo.","uniqueKey":"workflow_label","typeLabel":"string"},"workflow_type":{"oneOf":[{"type":"string","enum":["kyc","kyb","adaptive_age_verification","biometric_authentication","address_verification","questionnaire_verification","email_verification","phone_verification",null],"description":"Modelo do fluxo. `null` para fluxos em grafo criados sem modelo.","uniqueKey":"workflow_type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["kyc","kyb","adaptive_age_verification","biometric_authentication","address_verification","questionnaire_verification","email_verification","phone_verification",null],"description":"Modelo do fluxo. `null` para fluxos em grafo criados sem modelo.","uniqueKey":"workflow_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"workflow_type","typeLabel":"enum\u003cstring> | null"},"is_default":{"type":"boolean","description":"Se este é o fluxo de verificação (workflow) padrão da aplicação.","uniqueKey":"is_default","typeLabel":"boolean"},"is_archived":{"type":"boolean","description":"Fluxos arquivados não podem iniciar novas sessões.","uniqueKey":"is_archived","typeLabel":"boolean"},"version":{"type":"integer","description":"Número da versão dentro do fluxo.","uniqueKey":"version","typeLabel":"integer"},"status":{"type":"string","enum":["draft","published"],"description":"As versões de rascunho são editáveis; as versões publicadas são imutáveis e usadas para novas sessões.","uniqueKey":"status","typeLabel":"enum\u003cstring>"},"published_at":{"oneOf":[{"type":"string","format":"date-time","description":"Quando esta versão foi publicada. `null` para rascunhos.","uniqueKey":"published_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Quando esta versão foi publicada. `null` para rascunhos.","uniqueKey":"published_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"published_at","typeLabel":"string\u003cdate-time> | null"},"is_simple_workflow":{"type":"boolean","description":"`true` quando o fluxo não tem um `workflow_graph` personalizado.","uniqueKey":"is_simple_workflow","typeLabel":"boolean"},"is_editable":{"type":"boolean","description":"`true` apenas para versões `draft`.","uniqueKey":"is_editable","typeLabel":"boolean"},"workflow_url":{"type":"string","format":"uri","description":"URL pública que inicia uma sessão com este fluxo.","uniqueKey":"workflow_url","typeLabel":"string\u003curi>"},"workflow_graph":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Estrutura de grafo do fluxo (nós e arestas). `null` para fluxos simples.","uniqueKey":"workflow_graph.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Estrutura de grafo do fluxo (nós e arestas). `null` para fluxos simples.","uniqueKey":"workflow_graph.oneOf.1","typeLabel":"null"}],"uniqueKey":"workflow_graph","typeLabel":"object | null"},"features":{"type":"string","description":"Recursos ativados unidos por `\" + \"`, por exemplo `\"OCR + LIVENESS\"`.","uniqueKey":"features","typeLabel":"string"},"total_price":{"oneOf":[{"type":"number","description":"Preço por sessão; para fluxos em grafo, o caminho mais caro.","uniqueKey":"total_price.oneOf.0","typeLabel":"number"},{"type":"null","description":"Preço por sessão; para fluxos em grafo, o caminho mais caro.","uniqueKey":"total_price.oneOf.1","typeLabel":"null"}],"uniqueKey":"total_price","typeLabel":"number | null"},"min_price":{"oneOf":[{"type":"number","description":"Preço do caminho mais barato do fluxo.","uniqueKey":"min_price.oneOf.0","typeLabel":"number"},{"type":"null","description":"Preço do caminho mais barato do fluxo.","uniqueKey":"min_price.oneOf.1","typeLabel":"null"}],"uniqueKey":"min_price","typeLabel":"number | null"},"max_price":{"oneOf":[{"type":"number","description":"Preço do caminho mais caro do fluxo.","uniqueKey":"max_price.oneOf.0","typeLabel":"number"},{"type":"null","description":"Preço do caminho mais caro do fluxo.","uniqueKey":"max_price.oneOf.1","typeLabel":"null"}],"uniqueKey":"max_price","typeLabel":"number | null"},"special_add_on_prices":{"oneOf":[{"type":"object","additionalProperties":true,"description":"Preços de complementos específicos da organização, ou `null` quando nenhum está definido.","uniqueKey":"special_add_on_prices.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"Preços de complementos específicos da organização, ou `null` quando nenhum está definido.","uniqueKey":"special_add_on_prices.oneOf.1","typeLabel":"null"}],"uniqueKey":"special_add_on_prices","typeLabel":"object | null"},"max_retry_attempts":{"type":"integer","description":"Novas tentativas permitidas após uma verificação recusada.","uniqueKey":"max_retry_attempts","typeLabel":"integer"},"retry_window_days":{"oneOf":[{"type":"integer","description":"Dias durante os quais as novas tentativas são permitidas.","uniqueKey":"retry_window_days.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Dias durante os quais as novas tentativas são permitidas.","uniqueKey":"retry_window_days.oneOf.1","typeLabel":"null"}],"uniqueKey":"retry_window_days","typeLabel":"integer | null"},"session_expiration_time":{"type":"integer","description":"Segundos até a expiração de uma sessão não concluída.","uniqueKey":"session_expiration_time","typeLabel":"integer"},"questionnaire":{"oneOf":[{"type":"object","additionalProperties":true,"description":"O questionário vinculado ao fluxo, ou `null`.","uniqueKey":"questionnaire.oneOf.0","typeLabel":"object"},{"type":"null","additionalProperties":true,"description":"O questionário vinculado ao fluxo, ou `null`.","uniqueKey":"questionnaire.oneOf.1","typeLabel":"null"}],"uniqueKey":"questionnaire","typeLabel":"object | null"},"kyb_role_settings":{"type":"array","items":{"type":"object","additionalProperties":true,"uniqueKey":"kyb_role_settings.items.[INDEX]","typeLabel":"object"},"description":"Configurações de verificação por função para as pessoas-chave do KYB.","uniqueKey":"kyb_role_settings","typeLabel":"object[]"},"created_at":{"type":"string","format":"date-time","uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"},"signature_availability":{"type":"object","description":"Quais níveis de Assinatura eletrônica podem assinar neste momento. Verifique antes de definir `signature_level`. Retornado em fluxos `kyc`, `kyb` e de grafo.","properties":{"simple":{"type":"boolean","description":"O Simple está sempre disponível.","uniqueKey":"signature_availability.simple","typeLabel":"boolean"},"aes":{"type":"boolean","description":"Indica se a assinatura Avançada (AES) pode assinar agora. Enquanto for `false`, salvar uma nova etapa com `signature_level: \"aes\"` é recusado com `aes_not_available`.","uniqueKey":"signature_availability.aes","typeLabel":"boolean"},"qes":{"type":"boolean","description":"Indica se a assinatura Qualificada (QES) pode assinar agora. É `false` até que um provedor qualificado seja conectado.","uniqueKey":"signature_availability.qes","typeLabel":"boolean"}},"uniqueKey":"signature_availability","typeLabel":"object"},"is_bank_verification_enabled":{"type":"boolean","description":"Indica se um fluxo simples de KYC ou KYB executa a Verificação bancária. Ela é executada após as etapas de contato (e a Verificação de localização) e antes da validação de banco de dados, da AML e da análise de IP. A Verificação bancária ainda não está disponível para todos: ativá-la é recusado onde quer que ela não esteja habilitada.","uniqueKey":"is_bank_verification_enabled","typeLabel":"boolean"},"bank_verification_config":{"type":"object","additionalProperties":true,"description":"Configurações de verificação bancária de um fluxo simples, com as mesmas chaves aceitas por um nó `BANK_VERIFICATION` (por exemplo, `bank_countries` e `bank_method_order`). Chaves desconhecidas são descartadas. Todas as chaves são opcionais e uma chave ausente mantém seu valor padrão, então `{}` significa todos os valores padrão. Consulte [Configurações de verificação bancária](/pt-br/management-api/workflows/feature-configs#verificação-bancária).","example":{},"uniqueKey":"bank_verification_config","typeLabel":"object"},"is_geolocation_enabled":{"type":"boolean","description":"Indica se um fluxo simples de KYC executa a Verificação de localização. Ela é executada após as etapas de contato e antes da Verificação bancária e da validação de banco de dados. Fluxos de empresas (KYB) não podem executá-la.","uniqueKey":"is_geolocation_enabled","typeLabel":"boolean"},"geolocation_config":{"type":"object","additionalProperties":true,"description":"Configurações de verificação de localização de um fluxo de verificação (workflow) simples, com as mesmas chaves que um nó `GEOLOCATION` aceita (por exemplo, `is_geolocation_geofencing_enabled` e `geolocation_max_attempts`). Chaves desconhecidas são descartadas. Todas as chaves são opcionais e uma chave ausente mantém seu valor padrão, então `{}` significa todos os valores padrão.","example":{},"uniqueKey":"geolocation_config","typeLabel":"object"}},"additionalProperties":true,"uniqueKey":"","typeLabel":"object"},"examples":{"Created (abbreviated)":{"title":"Created (abbreviated)","value":{"uuid":"c3d4e5f6-7890-12cd-ef34-333333333333","workflow_id":"c3d4e5f6-7890-12cd-ef34-333333333333","workflow_label":"Standard KYC","workflow_type":null,"is_default":false,"is_archived":false,"total_price":0.15,"min_price":0.15,"max_price":0.15,"features":"OCR + LIVENESS + FACE_MATCH","is_simple_workflow":false,"is_editable":false,"workflow_url":"https://verify.didit.me/u/w9TkPOx8RWG3UAz5ZRQGVQ","workflow_graph":{"start_node":"ocr","nodes":"... one node per feature plus a final status node ..."},"max_retry_attempts":3,"retry_window_days":7,"session_expiration_time":604800,"version":1,"status":"published","published_at":"2026-05-17T10:30:00Z","created_at":"2026-05-17T10:30:00Z","updated_at":"2026-05-17T10:30:00Z"}}},"exampleType":"examples"}},"exampleType":"examples"},"54672dc3-6d98-49d4-af96-8cb9178c53e9":{"description":"Erro de validação. Causas comuns: uma chave de nível superior fora da lista de chaves aceitas (por exemplo, `workflow_type`), um valor de `feature` desconhecido, um recurso colocado antes da sua dependência (por exemplo, `FACE_MATCH` antes de `OCR`), um recurso passivo (`AML`, `IP_ANALYSIS`, `DATABASE_VALIDATION`, `KYB_KEY_PEOPLE`) usado como primeira etapa, um recurso `QUESTIONNAIRE` cujo `config.questionnaire_uuid` não existe para esta aplicação, um recurso `SIGNATURE` que entraria em produção sem nenhum documento para assinar, um recurso `SIGNATURE` com `signature_level: \"aes\"` enquanto Advanced (AES) não está disponível (`aes_not_available`, veja `signature_availability` no fluxo) ou um limiar fora do intervalo. O corpo é um objeto de erro de validação do DRF: as chaves são nomes de campos e os valores são arrays de mensagens legíveis.","content":{"application/json":{"examples":{"Advanced (AES) not available":{"title":"Advanced (AES) not available","value":{"features":{"signature_level":["Node 'signature': Advanced (AES) is not available yet (aes_not_available)."]}}},"Signature step with no document":{"title":"Signature step with no document","value":{"features":{"non_field_errors":["Node 'signature': Add a document to sign, or let each session bring its own."]}}},"Missing feature":{"title":"Missing feature","value":{"features":["At least one feature is required."]}},"Unknown top-level field":{"title":"Unknown top-level field","value":{"workflow_type":["The v3 workflow API only accepts `workflow_label`, `is_default`, `status`, `features`, `is_white_label_enabled`, `is_desktop_allowed`, `max_retry_attempts`, `retry_window_days`, `session_expiration_time`, `face_liveness_max_attempts`, `face_match_max_attempts`."]}},"Unknown feature":{"title":"Unknown feature","value":{"features":["Invalid feature 'FOO'. Allowed values: AGE_ESTIMATION, AML, DATABASE_VALIDATION, EMAIL_VERIFICATION, FACE_MATCH, IP_ANALYSIS, KYB_DOCUMENTS, KYB_KEY_PEOPLE, KYB_REGISTRY, LIVENESS, NFC, OCR, PHONE_VERIFICATION, PROOF_OF_ADDRESS, QUESTIONNAIRE."]}},"Ordering":{"title":"Ordering","value":{"features":["Feature 'FACE_MATCH' must appear after one of: OCR."]}},"Questionnaire not found":{"title":"Questionnaire not found","value":{"features":"Questionnaire '11111111-2222-3333-4444-555555555555' was not found for this application. Create the questionnaire first, then use its questionnaire_id."}}},"exampleType":"examples"}},"exampleType":"examples"},"892b42b5-a838-45dd-802b-998bbd405e9b":{"description":"A chave de API está ausente, malformada, expirada ou tem escopo para outra aplicação. Renove pela [Auth API](/pt-br/auth-api/get-credentials) e tente novamente.","content":{"application/json":{"examples":{"Invalid token":{"title":"Invalid token","value":{"detail":"You do not have permission to perform this action."}}},"exampleType":"examples"}},"exampleType":"examples"},"8915eb9e-8557-4fa1-a27d-668111c08d96":{"description":"Tipo de mídia não suportado. Defina `Content-Type: application/json` e envie um corpo JSON.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"5b2806c9-db1d-481a-8fbe-87971ac9c43d":{"description":"Limite de requisições excedido. Tente novamente com backoff exponencial.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}},"edd1ebea-5e70-490e-8dfb-0879f59c9174":{"description":"Erro inesperado do servidor ao criar o fluxo. É seguro tentar novamente.","content":{"_mintlify/placeholder":{"schema":{"type":"object","description":""}}}}},"security":{"44d88c81-8ea8-4016-bded-c3deb1888de1":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","description":"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.","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"4dad0e93-45e1-4b49-b424-12516c3891fa":{"url":"https://verification.didit.me"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"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.","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"x-api-key","type":"string","description":"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.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"x-api-key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"pt-br/openapi-25.json"},"subdomain":"didit-0f962782","siteName":"Didit Docs","title":"API para criar workflow: monte seu fluxo de KYC - Didit Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/management-api/workflows/create","matchLevel":1},"es":{"href":"/es/management-api/workflows/create","matchLevel":1},"pt-BR":{"href":"/pt-br/management-api/workflows/create","matchLevel":0},"ja":{"href":"/ja/management-api/workflows/create","matchLevel":1}}},"lastModified":"2026-11-01T10:59:40.790Z","gitLastModified":"2026-11-01T10:56:28.000Z","originalFileLocation":"pt-br/management-api/workflows/create.mdx","locale":"pt-BR"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Crie via API um workflow de verificação da Didit com recursos em ordem: KYC, KYB, AML e biometria em um só fluxo. Pague por chamada, sem contratos.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Didit Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"API para criar workflow: monte seu fluxo de KYC - Didit Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Crie via API um workflow de verificação da Didit com recursos em ordem: KYC, KYB, AML e biometria em um só fluxo. Pague por chamada, sem contratos.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Didit Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.didit.me/pt-br/management-api/workflows/create\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://didit-0f962782.mintlify.app/_mintlify/api/og/v2?division=Fluxos+de+trabalho\u0026amp;title=API+para+criar+workflow%3A+monte+seu+fluxo+de+KYC\u0026amp;description=Crie+via+API+um+workflow+de+verifica%C3%A7%C3%A3o+da+Didit+com+recursos+em+ordem%3A+KYC%2C+KYB%2C+AML+e+biometria+em+um+s%C3%B3+fluxo.+Pague+por+chamada%2C+sem+contratos.\u0026amp;theme=f6d5c5eb819d99f700ee852a\u0026amp;signature=52926d545aeda090f17785b2422660c430049b4a42c8a3dcc347aecd5597e97b\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"API para criar workflow: monte seu fluxo de KYC - Didit Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Crie via API um workflow de verificação da Didit com recursos em ordem: KYC, KYB, AML e biometria em um só fluxo. Pague por chamada, sem contratos.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://didit-0f962782.mintlify.app/_mintlify/api/og/v2?division=Fluxos+de+trabalho\u0026amp;title=API+para+criar+workflow%3A+monte+seu+fluxo+de+KYC\u0026amp;description=Crie+via+API+um+workflow+de+verifica%C3%A7%C3%A3o+da+Didit+com+recursos+em+ordem%3A+KYC%2C+KYB%2C+AML+e+biometria+em+um+s%C3%B3+fluxo.+Pague+por+chamada%2C+sem+contratos.\u0026amp;theme=f6d5c5eb819d99f700ee852a\u0026amp;signature=52926d545aeda090f17785b2422660c430049b4a42c8a3dcc347aecd5597e97b\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/didit-0f962782/h7Er2opLBVoQwrdf/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Didit Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2567FF\">\u003cmeta data-mint-head name=\"theme-color\" content=\"#2567FF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.didit.me/pt-br/management-api/workflows/create\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/pt-br/management-api/workflows/create.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.didit.me/pt-br/management-api/workflows/create\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.didit.me/management-api/workflows/create\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.didit.me/es/management-api/workflows/create\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.didit.me/ja/management-api/workflows/create\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.didit.me/management-api/workflows/create\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://didit.me/#organization\",\"name\":\"Didit\",\"legalName\":\"Didit Protocol\",\"url\":\"https://didit.me\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://didit.me/logos/primary-horizontal-light.png\"},\"sameAs\":[\"https://www.linkedin.com/company/91001155\",\"https://www.youtube.com/@getdidit\",\"https://github.com/didit-protocol\",\"https://x.com/didit\"]},{\"@type\":\"WebSite\",\"@id\":\"https://docs.didit.me#website\",\"name\":\"Didit Docs\",\"url\":\"https://docs.didit.me\",\"publisher\":{\"@id\":\"https://didit.me/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.didit.me/pt-br/management-api/workflows/create#webpage\",\"url\":\"https://docs.didit.me/pt-br/management-api/workflows/create\",\"name\":\"API para criar workflow: monte seu fluxo de KYC\",\"description\":\"Crie via API um workflow de verificação da Didit com recursos em ordem: KYC, KYB, AML e biometria em um só fluxo. Pague por chamada, sem contratos.\",\"dateModified\":\"2026-11-01T10:56:28.000Z\",\"isPartOf\":{\"@id\":\"https://docs.didit.me#website\"},\"breadcrumb\":{\"@id\":\"https://docs.didit.me/pt-br/management-api/workflows/create#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.didit.me/pt-br/management-api/workflows/create#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Fluxos de trabalho\",\"item\":\"https://docs.didit.me/pt-br/management-api/workflows/list\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API para criar workflow: monte seu fluxo de KYC\",\"item\":\"https://docs.didit.me/pt-br/management-api/workflows/create\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.didit.me/pt-br/management-api/workflows/create#apireference\",\"headline\":\"API para criar workflow: monte seu fluxo de KYC\",\"name\":\"API para criar workflow: monte seu fluxo de KYC\",\"description\":\"Crie via API um workflow de verificação da Didit com recursos em ordem: KYC, KYB, AML e biometria em um só fluxo. Pague por chamada, sem contratos.\",\"url\":\"https://docs.didit.me/pt-br/management-api/workflows/create\",\"mainEntityOfPage\":{\"@id\":\"https://docs.didit.me/pt-br/management-api/workflows/create#webpage\"},\"dateModified\":\"2026-11-01T10:56:28.000Z\",\"keywords\":\"API para criar workflow, API de workflow de verificação, API de workflow de KYC, CRUD de workflow, criar workflow programaticamente, POST workflows, Didit Management API, API de verificação de identidade, orquestrador de workflows\",\"publisher\":{\"@id\":\"https://didit.me/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.didit.me#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Didit Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Didit Docs","nav":{"global":null,"languages":[{"language":"en","pages":[{"title":"en","href":"/management-api/workflows/create"}]},{"language":"es","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Soporte"},{"icon":"signal","href":"https://status.didit.me","label":"Estado"}],"primary":{"type":"button","label":"Iniciar sesión","href":"https://business.didit.me"}},"pages":[{"title":"es","href":"/es/management-api/workflows/create"}]},{"language":"pt-BR","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suporte"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Entrar","href":"https://business.didit.me"}},"tabs":[{"tab":"Primeiros passos","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/rocket.svg","pages":[{"title":"Primeiros passos","href":"/pt-br"}]},{"tab":"Integração / SDKs","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/code.svg","pages":[{"title":"Integração / SDKs","href":"/pt-br/integration/sdks"}]},{"tab":"Referência da API","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/code.svg","groups":[{"group":"Visão geral","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/overview.svg","pages":[{"title":"Referência da API Didit: API REST de verificação","sidebarTitle":"Referência da API","href":"/pt-br/api-reference/overview"},{"title":"API de healthcheck: sonda pública de disponibilidade","sidebarTitle":"Healthcheck","openapi":"pt-br/openapi-healthcheck.json GET /system/healthcheck","href":"/pt-br/api-reference/healthcheck"},{"title":"API de status do serviço: feed público de status da Didit","sidebarTitle":"Status do serviço","openapi":"pt-br/openapi-25.json GET /v3/status/","href":"/pt-br/api-reference/service-status"},{"title":"API de preços de verificação bancária: feed público","sidebarTitle":"Preços de verificação bancária","openapi":"pt-br/openapi-25.json GET /v3/organization/bank-verification-pricing/","href":"/pt-br/api-reference/bank-verification-pricing"}]},{"group":"Verificações de usuários e empresas","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/user-verifications.svg","pages":[{"title":"API de Sessões: verificação KYC e KYB unificada","sidebarTitle":"Visão geral","href":"/pt-br/sessions-api/overview"},{"title":"API de criação de sessão: inicie a verificação KYC ou KYB","sidebarTitle":"Criar sessão","openapi":"pt-br/openapi-25.json POST /v3/session/","href":"/pt-br/sessions-api/create-session"},{"title":"Importar dados de outro provedor","openapi":"pt-br/openapi-25.json POST /v3/session/imports/","href":"/pt-br/sessions-api/import-verifications"},{"title":"API para consultar sessão: decisão de KYC e KYB","sidebarTitle":"Consultar sessão","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/decision/","href":"/pt-br/sessions-api/retrieve-session"},{"title":"API para listar sessões: filtre sessões de KYC e KYB","sidebarTitle":"Listar sessões","openapi":"pt-br/openapi-25.json GET /v3/sessions/","href":"/pt-br/sessions-api/list-sessions"},{"title":"API para atualizar status da sessão: aprovar e recusar","sidebarTitle":"Atualizar status da sessão","openapi":"pt-br/openapi-25.json PATCH /v3/session/{sessionId}/update-status/","href":"/pt-br/sessions-api/update-status"},{"title":"Pré-visualizar e-mail de reenvio da verificação","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/resubmission-preview/","href":"/pt-br/sessions-api/preview-resubmission"},{"title":"API de prévia do e-mail de decisão: aprovado e recusado","sidebarTitle":"Pré-visualizar e-mail de decisão","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/decision-email-preview/","href":"/pt-br/sessions-api/preview-decision-email"},{"title":"Atualizar status de recurso na API: aprovar ou recusar","sidebarTitle":"Atualizar status de recurso","openapi":"pt-br/openapi-25.json PATCH /v3/session/{sessionId}/features/{nodeId}/update-status/","href":"/pt-br/sessions-api/update-feature-status"},{"title":"Listar substituições de recurso: histórico de status","sidebarTitle":"Listar substituições de recurso","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/features/overrides/","href":"/pt-br/sessions-api/list-feature-overrides"},{"title":"Cancelar Override de Recurso na API: Descartar Pendente","sidebarTitle":"Cancelar override de recurso","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/features/overrides/{overrideId}/cancel/","href":"/pt-br/sessions-api/cancel-feature-override"},{"title":"API Atualizar Status de Hit AML: Confirmar e Limpar","sidebarTitle":"Atualizar status de ocorrência AML","openapi":"pt-br/openapi-25.json PATCH /v3/session/{sessionId}/update-aml-hit-status/","href":"/pt-br/sessions-api/update-aml-hit-status"},{"title":"Atualizar dados da sessão: corrigir campos KYC e KYB","sidebarTitle":"Atualizar dados da sessão","href":"/pt-br/sessions-api/update-data"},{"title":"Atualizar status da verificação AML via API","sidebarTitle":"Atualizar status AML","openapi":"pt-br/openapi-25.json PATCH /v3/session/{sessionId}/update-aml-status/","href":"/pt-br/sessions-api/update-aml-status"},{"title":"Atualizar dados do Document AI via API","sidebarTitle":"Atualizar dados do Document AI","openapi":"pt-br/openapi-25.json PATCH /v3/document-ai/{sessionId}/documents/{documentUuid}/","href":"/pt-br/sessions-api/update-document-ai-data"},{"title":"API para regenerar sessão KYC de pessoas-chave do KYB","sidebarTitle":"Regenerar sessão KYC de pessoa-chave","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/","href":"/pt-br/sessions-api/regenerate-kyb-party"},{"title":"API para enviar documentos KYB","sidebarTitle":"Enviar documentos KYB","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/kyb/documents/","href":"/pt-br/sessions-api/kyb-upload-documents"},{"title":"API para listar partes extraídas do KYB","sidebarTitle":"Listar partes extraídas do KYB","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/kyb/extracted-parties/","href":"/pt-br/sessions-api/kyb-extracted-parties"},{"title":"Listar rascunhos de partes KYB via API","sidebarTitle":"Listar rascunhos de partes KYB","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/kyb/parties/drafts/","href":"/pt-br/sessions-api/kyb-list-party-drafts"},{"title":"API para criar rascunho de parte no KYB","sidebarTitle":"Criar rascunho de parte KYB","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/kyb/parties/drafts/","href":"/pt-br/sessions-api/kyb-create-party-draft"},{"title":"Editar rascunho de parte KYB via API","sidebarTitle":"Editar rascunho de parte KYB","openapi":"pt-br/openapi-25.json PATCH /v3/session/{sessionId}/kyb/parties/drafts/{draftId}/","href":"/pt-br/sessions-api/kyb-update-party-draft"},{"title":"Excluir rascunho de parte do KYB via API","sidebarTitle":"Excluir rascunho de parte KYB","openapi":"pt-br/openapi-25.json DELETE /v3/session/{sessionId}/kyb/parties/drafts/{draftId}/","href":"/pt-br/sessions-api/kyb-delete-party-draft"},{"title":"Enviar pessoas-chave do KYB: API","sidebarTitle":"Enviar pessoas-chave do KYB","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/kyb/parties/submit/","href":"/pt-br/sessions-api/kyb-submit-parties"},{"title":"Adicionar imagens a uma sessão via API","sidebarTitle":"Adicionar imagens à sessão","openapi":"pt-br/openapi-25.json PATCH /v3/session/{sessionId}/add-images/","href":"/pt-br/sessions-api/add-images"},{"title":"API para excluir sessão: direito ao esquecimento do GDPR","sidebarTitle":"Excluir sessão","openapi":"pt-br/openapi-25.json DELETE /v3/session/{sessionId}/delete/","href":"/pt-br/sessions-api/delete-session"},{"title":"API para gerar PDF: relatórios de conformidade KYC e KYB","sidebarTitle":"Gerar PDF","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/generate-pdf/","href":"/pt-br/sessions-api/generate-pdf"},{"title":"Exportar arquivos da sessão (API): baixe tudo em um ZIP","sidebarTitle":"Exportar arquivos","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/files-export/","href":"/pt-br/sessions-api/export-files"},{"title":"Exportar arquivos da sessão: status e link de download","sidebarTitle":"Obter exportação de arquivos","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/files-export/{exportId}/","href":"/pt-br/sessions-api/get-files-export"},{"group":"Assinaturas eletrônicas","pages":[{"title":"Baixar documento assinado via API: PDF assinado","sidebarTitle":"Baixar documento assinado","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/signatures/{nodeId}/documents/{documentId}/file/","href":"/pt-br/sessions-api/electronic-signature/download-signed-document"},{"title":"API de evidências de assinatura: PDF de auditoria","sidebarTitle":"Baixar evidências","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/signatures/{nodeId}/evidence/","href":"/pt-br/sessions-api/electronic-signature/download-evidence"},{"title":"API de imagem de assinatura: PNG da assinatura adotada","sidebarTitle":"Baixar imagem da assinatura","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/signatures/{nodeId}/fields/{fieldId}/image/","href":"/pt-br/sessions-api/electronic-signature/download-field-image"},{"title":"Validar assinaturas via API: reverifique PDFs assinados","sidebarTitle":"Validar assinaturas","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/signatures/{nodeId}/validate/","href":"/pt-br/sessions-api/electronic-signature/validate-signatures"}]},{"title":"API Share Session: KYC reutilizável entre parceiros","sidebarTitle":"Visão geral","href":"/pt-br/sessions-api/share-session/overview"},{"title":"API Share Session: gerar token de compartilhamento","sidebarTitle":"Compartilhar sessão","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/share/","href":"/pt-br/sessions-api/share-session/share"},{"title":"API de importar sessão compartilhada: KYC e KYB","sidebarTitle":"Importar sessão compartilhada","openapi":"pt-br/openapi-25.json POST /v3/session/import-shared/","href":"/pt-br/sessions-api/share-session/import"}]},{"group":"Listas","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/lists.svg","pages":[{"title":"API de listas da Didit: listas de bloqueio e de permissão","sidebarTitle":"Visão geral","href":"/pt-br/management-api/lists/overview"},{"title":"API para listar listas: listas de bloqueio e de permissão","sidebarTitle":"Listar listas","openapi":"pt-br/openapi-25.json GET /v3/lists/","href":"/pt-br/management-api/lists/list"},{"title":"API para criar lista: allowlist e lista personalizada","sidebarTitle":"Criar lista","openapi":"pt-br/openapi-25.json POST /v3/lists/","href":"/pt-br/management-api/lists/create"},{"title":"API Obter lista: consultar lista de conformidade","sidebarTitle":"Obter lista","openapi":"pt-br/openapi-25.json GET /v3/lists/{list_uuid}/","href":"/pt-br/management-api/lists/get"},{"title":"API para atualizar lista: editar lista de conformidade","sidebarTitle":"Atualizar lista","openapi":"pt-br/openapi-25.json PATCH /v3/lists/{list_uuid}/","href":"/pt-br/management-api/lists/update"},{"title":"Excluir lista via API: remover lista de conformidade","sidebarTitle":"Excluir lista","openapi":"pt-br/openapi-25.json DELETE /v3/lists/{list_uuid}/","href":"/pt-br/management-api/lists/delete"},{"title":"API de entradas de lista: itens de bloqueio e permissão","sidebarTitle":"Entradas da lista","openapi":"pt-br/openapi-25.json GET /v3/lists/{list_uuid}/entries/","href":"/pt-br/management-api/lists/list-entries"},{"title":"Criar entrada em lista via API: bloqueio e permissões","sidebarTitle":"Criar entrada de lista","openapi":"pt-br/openapi-25.json POST /v3/lists/{list_uuid}/entries/","href":"/pt-br/management-api/lists/create-entry"},{"title":"API para excluir entrada da lista: desbloquear item","sidebarTitle":"Excluir entrada da lista","openapi":"pt-br/openapi-25.json DELETE /v3/lists/{list_uuid}/entries/{entry_uuid}/","href":"/pt-br/management-api/lists/delete-entry"},{"title":"API de upload de rosto: listas biométricas","sidebarTitle":"Enviar rosto","openapi":"pt-br/openapi-25.json POST /v3/lists/{list_uuid}/entries/face-upload/","href":"/pt-br/management-api/lists/upload-face"}]},{"group":"Lista de bloqueio","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/lists.svg","pages":[{"title":"API de lista de bloqueio: listar itens bloqueados","sidebarTitle":"Listar itens bloqueados","openapi":"pt-br/openapi-25.json GET /v3/blocklist/","href":"/pt-br/management-api/blocklist/list"},{"title":"API para adicionar à lista de bloqueio: itens da sessão","sidebarTitle":"Adicionar à lista de bloqueio","openapi":"pt-br/openapi-25.json POST /v3/blocklist/add/","href":"/pt-br/management-api/blocklist/add"},{"title":"API para remover da lista de bloqueio: itens da sessão","sidebarTitle":"Remover da lista de bloqueio","openapi":"pt-br/openapi-25.json POST /v3/blocklist/remove/","href":"/pt-br/management-api/blocklist/remove"}]},{"group":"Fluxos de trabalho","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/workflows.svg","pages":[{"title":"API para listar workflows: fluxos de verificação","sidebarTitle":"Listar workflows","description":"Liste todos os workflows de KYC e KYB da sua organização Didit e gerencie fluxos de verificação via API. Pagamento por uso, sem contratos.","openapi":"pt-br/openapi-25.json GET /v3/workflows/","href":"/pt-br/management-api/workflows/list"},{"title":"API para criar workflow: monte seu fluxo de KYC","sidebarTitle":"Criar workflow","openapi":"pt-br/openapi-25.json POST /v3/workflows/","href":"/pt-br/management-api/workflows/create"},{"title":"Configurações de recursos de workflow: referência da API","sidebarTitle":"Configurações de recursos","description":"Campos de configuração aceitos por POST e PATCH /v3/workflows/ da Didit para criar workflows lineares simples com o array features.","href":"/pt-br/management-api/workflows/feature-configs"},{"title":"API Obter Workflow: consultar fluxo de KYC","sidebarTitle":"Obter workflow","openapi":"pt-br/openapi-25.json GET /v3/workflows/{settings_uuid}/","href":"/pt-br/management-api/workflows/get"},{"title":"API para atualizar workflow: editar fluxo de KYC","sidebarTitle":"Atualizar workflow","openapi":"pt-br/openapi-25.json PATCH /v3/workflows/{settings_uuid}/","href":"/pt-br/management-api/workflows/update"},{"title":"API para excluir workflow: remover fluxo de KYC","sidebarTitle":"Excluir workflow","openapi":"pt-br/openapi-25.json DELETE /v3/workflows/{settings_uuid}/","href":"/pt-br/management-api/workflows/delete"}]},{"group":"Questionários","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/task-square.svg","pages":[{"title":"API para listar questionários: formulários de KYC","sidebarTitle":"Listar questionários","openapi":"pt-br/openapi-25.json GET /v3/questionnaires/","href":"/pt-br/management-api/questionnaires/list"},{"title":"API para criar questionário: formulário KYC personalizado","sidebarTitle":"Criar questionário","openapi":"pt-br/openapi-25.json POST /v3/questionnaires/","href":"/pt-br/management-api/questionnaires/create"},{"title":"Obter questionário KYC via API: consultar formulário","sidebarTitle":"Obter questionário","openapi":"pt-br/openapi-25.json GET /v3/questionnaires/{questionnaire_uuid}/","href":"/pt-br/management-api/questionnaires/get"},{"title":"Atualizar questionário via API: editar formulário KYC","sidebarTitle":"Atualizar questionário","openapi":"pt-br/openapi-25.json PATCH /v3/questionnaires/{questionnaire_uuid}/","href":"/pt-br/management-api/questionnaires/update"},{"title":"Excluir questionário via API: remover formulário KYC","sidebarTitle":"Excluir questionário","openapi":"pt-br/openapi-25.json DELETE /v3/questionnaires/{questionnaire_uuid}/","href":"/pt-br/management-api/questionnaires/delete"}]},{"group":"Usuários","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/users.svg","pages":[{"title":"API para listar usuários: entidades User do fornecedor","sidebarTitle":"Listar usuários","openapi":"pt-br/openapi-25.json GET /v3/users/","href":"/pt-br/management-api/users/list"},{"title":"API para criar usuário: entidade User do fornecedor","sidebarTitle":"Criar usuário","openapi":"pt-br/openapi-25.json POST /v3/users/create/","href":"/pt-br/management-api/users/create"},{"title":"API de upload de rosto do usuário: perfil com vendor_data","sidebarTitle":"Enviar rosto do usuário","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/vendor-users/by-id/{didit_internal_id}/faces/upload/","href":"/pt-br/management-api/users/upload-face"},{"title":"Obter usuário via API: entidade User do fornecedor","sidebarTitle":"Obter usuário","openapi":"pt-br/openapi-25.json GET /v3/users/{vendor_data}/","href":"/pt-br/management-api/users/get"},{"title":"PDF do histórico do usuário via API: todas as sessões","sidebarTitle":"PDF do histórico do usuário","openapi":"pt-br/openapi-25.json GET /v3/users/{vendor_data}/generate-pdf/","href":"/pt-br/management-api/users/generate-pdf"},{"title":"API para atualizar usuário: entidade User do fornecedor","sidebarTitle":"Atualizar usuário","openapi":"pt-br/openapi-25.json PATCH /v3/users/{vendor_data}/","href":"/pt-br/management-api/users/update"},{"title":"Atualizar status do usuário na API: bloquear ou sinalizar","sidebarTitle":"Atualizar status do usuário","openapi":"pt-br/openapi-25.json PATCH /v3/users/{vendor_data}/update-status/","href":"/pt-br/management-api/users/update-status"},{"title":"API de exclusão de usuários em lote: apagamento GDPR","sidebarTitle":"Excluir usuários em lote","openapi":"pt-br/openapi-25.json POST /v3/users/delete/","href":"/pt-br/management-api/users/delete"}]},{"group":"Templates biométricos","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/liveness.svg","pages":[{"title":"API de templates biométricos","sidebarTitle":"Visão geral","href":"/pt-br/management-api/biometric-templates/overview"},{"title":"Listar templates biométricos via API","sidebarTitle":"Listar templates","openapi":"pt-br/openapi-25.json GET /v3/biometric-templates/","href":"/pt-br/management-api/biometric-templates/list"},{"title":"Contar templates biométricos via API","sidebarTitle":"Contar templates","openapi":"pt-br/openapi-25.json GET /v3/biometric-templates/count/","href":"/pt-br/management-api/biometric-templates/count"},{"title":"Obter template biométrico via API","sidebarTitle":"Obter template","openapi":"pt-br/openapi-25.json GET /v3/biometric-templates/{template_uuid}/","href":"/pt-br/management-api/biometric-templates/get"},{"title":"Expurgar template biométrico pela API","sidebarTitle":"Expurgar template","openapi":"pt-br/openapi-25.json DELETE /v3/biometric-templates/{template_uuid}/","href":"/pt-br/management-api/biometric-templates/purge"},{"title":"API de exclusão em massa de templates biométricos","sidebarTitle":"Exclusão em massa","openapi":"pt-br/openapi-25.json POST /v3/biometric-templates/delete/","href":"/pt-br/management-api/biometric-templates/batch-purge"}]},{"group":"Empresas","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/businesses.svg","pages":[{"title":"API para listar empresas: entidades KYB","sidebarTitle":"Listar empresas","openapi":"pt-br/openapi-25.json GET /v3/businesses/","href":"/pt-br/management-api/businesses/list"},{"title":"API para criar empresa: entidade KYB de fornecedor","sidebarTitle":"Criar empresa","openapi":"pt-br/openapi-25.json POST /v3/businesses/create/","href":"/pt-br/management-api/businesses/create"},{"title":"API Obter Empresa: entidade KYB por vendor_data","sidebarTitle":"Obter empresa","openapi":"pt-br/openapi-25.json GET /v3/businesses/{vendor_data}/","href":"/pt-br/management-api/businesses/get"},{"title":"API de PDF da sessão KYB de empresa","sidebarTitle":"Gerar PDF da sessão de empresa","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/businesses/{business_session_id}/pdf/","href":"/pt-br/management-api/businesses/generate-session-pdf"},{"title":"API para atualizar empresa (KYB): entidade do fornecedor","sidebarTitle":"Atualizar empresa","openapi":"pt-br/openapi-25.json PATCH /v3/businesses/{vendor_data}/","href":"/pt-br/management-api/businesses/update"},{"title":"API Atualizar Status da Empresa: bloquear ou sinalizar","sidebarTitle":"Atualizar status da empresa","openapi":"pt-br/openapi-25.json PATCH /v3/businesses/{vendor_data}/update-status/","href":"/pt-br/management-api/businesses/update-status"},{"title":"API para excluir empresas em lote: remoção de dados KYB","sidebarTitle":"Excluir empresas em lote","openapi":"pt-br/openapi-25.json POST /v3/businesses/delete/","href":"/pt-br/management-api/businesses/delete"}]},{"group":"Monitoramento contínuo de AML","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/aml-screening.svg","pages":[{"title":"Ativar ou desativar monitoramento AML de usuários na API","sidebarTitle":"Ativar para usuários","openapi":"pt-br/openapi-25.json POST /v3/users/aml-monitoring/","href":"/pt-br/management-api/aml-monitoring/toggle-users"},{"title":"API para ativar monitoramento AML de empresas","sidebarTitle":"Ativar para empresas","openapi":"pt-br/openapi-25.json POST /v3/businesses/aml-monitoring/","href":"/pt-br/management-api/aml-monitoring/toggle-businesses"},{"title":"Consultar job de monitoramento AML via API","sidebarTitle":"Consultar job de monitoramento AML","openapi":"pt-br/openapi-25.json GET /v3/aml-monitoring/jobs/{job_id}/","href":"/pt-br/management-api/aml-monitoring/get-job"}]},{"group":"Casos","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/clipboard-check.svg","pages":[{"title":"API para listar casos de conformidade","sidebarTitle":"Listar casos","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/","href":"/pt-br/management-api/cases/list"},{"title":"API de criação de caso","sidebarTitle":"Criar caso","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/","href":"/pt-br/management-api/cases/create"},{"title":"Obter caso via API","sidebarTitle":"Obter caso","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/","href":"/pt-br/management-api/cases/get"},{"title":"API de atualização de caso","sidebarTitle":"Atualizar caso","openapi":"pt-br/openapi-25.json PATCH /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/","href":"/pt-br/management-api/cases/update"},{"title":"API para excluir caso de conformidade","sidebarTitle":"Excluir caso","openapi":"pt-br/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/","href":"/pt-br/management-api/cases/delete"},{"title":"API para resolver caso","sidebarTitle":"Resolver caso","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/resolve/","href":"/pt-br/management-api/cases/resolve"},{"title":"API para solicitar informações em um caso","sidebarTitle":"Solicitar informações (aguardando usuário)","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/request-info/","href":"/pt-br/management-api/cases/request-info"},{"title":"API de transferência de caso","sidebarTitle":"Transferir caso","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/transfer/","href":"/pt-br/management-api/cases/transfer"},{"title":"API para imprimir caso em PDF","sidebarTitle":"Imprimir caso","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/print/","href":"/pt-br/management-api/cases/print"},{"title":"API de análise de casos","sidebarTitle":"Análise de casos","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/statistics/","href":"/pt-br/management-api/cases/statistics"},{"title":"API de atualização de status de casos em massa","sidebarTitle":"Status de casos em massa","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/bulk/status/","href":"/pt-br/management-api/cases/bulk-status"},{"title":"API para listar notas de casos","sidebarTitle":"Listar notas do caso","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/notes/","href":"/pt-br/management-api/cases/list-notes"},{"title":"API para criar nota de caso","sidebarTitle":"Criar nota de caso","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/notes/","href":"/pt-br/management-api/cases/create-note"}]},{"group":"Blueprints de casos","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/sliders.svg","pages":[{"title":"Listar blueprints de caso via API","sidebarTitle":"Listar blueprints de caso","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/","href":"/pt-br/management-api/case-blueprints/list"},{"title":"Criar blueprint de caso via API","sidebarTitle":"Criar blueprint de caso","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/","href":"/pt-br/management-api/case-blueprints/create"},{"title":"Instalar presets de blueprints: API de gerenciamento","sidebarTitle":"Instalar presets","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/presets/install/","href":"/pt-br/management-api/case-blueprints/install-presets"}]},{"group":"Redes","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/link.svg","pages":[{"title":"API para listar redes de fraude","sidebarTitle":"Listar redes","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/","href":"/pt-br/management-api/networks/list"},{"title":"API para obter rede de fraude","sidebarTitle":"Obter rede","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/","href":"/pt-br/management-api/networks/get"},{"title":"Adicionar tag a uma rede de fraude via API","sidebarTitle":"Adicionar tag à rede","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/add/","href":"/pt-br/management-api/networks/add-tag"},{"title":"Remover tag de rede de fraude via API","sidebarTitle":"Remover tag da rede","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/remove/","href":"/pt-br/management-api/networks/remove-tag"},{"title":"API de grafo de rede de fraude","sidebarTitle":"Obter grafo da rede","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/graph/","href":"/pt-br/management-api/networks/graph"},{"title":"Listar membros de rede de fraude via API","sidebarTitle":"Listar membros da rede","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/members/","href":"/pt-br/management-api/networks/members"},{"title":"API para listar sinais de redes de fraude","sidebarTitle":"Listar sinais de rede","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/signals/","href":"/pt-br/management-api/networks/signals"},{"title":"API de linha do tempo de redes de fraude","sidebarTitle":"Obter linha do tempo da rede","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/timeline/","href":"/pt-br/management-api/networks/timeline"},{"title":"API de mapa de redes de fraude","sidebarTitle":"Obter mapa da rede","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/map/","href":"/pt-br/management-api/networks/map"},{"title":"API de consulta de participação em redes de fraude","sidebarTitle":"Consulta de participação","href":"/pt-br/management-api/networks/membership-lookup"}]},{"group":"Modelos de relatório","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/task-square.svg","pages":[{"title":"Listar modelos de relatório UIF via API","sidebarTitle":"Listar modelos de relatório","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/report-templates/","href":"/pt-br/management-api/report-templates/list"},{"title":"Criar modelo de relatório via API","sidebarTitle":"Criar modelo de relatório","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/report-templates/","href":"/pt-br/management-api/report-templates/create"}]},{"group":"Relatórios regulatórios","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/search-file.svg","pages":[{"title":"API para criar relatório à UIF a partir de um caso","sidebarTitle":"Criar relatório a partir de caso","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/regulatory-reports/","href":"/pt-br/management-api/regulatory-reports/create-for-case"},{"title":"API para listar relatórios à UIF","sidebarTitle":"Listar relatórios","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/","href":"/pt-br/management-api/regulatory-reports/list"},{"title":"API para validar relatório à UIF","sidebarTitle":"Validar relatório","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/validate/","href":"/pt-br/management-api/regulatory-reports/validate"},{"title":"API para finalizar relatório à UIF","sidebarTitle":"Finalizar relatório","openapi":"pt-br/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/finalize/","href":"/pt-br/management-api/regulatory-reports/finalize"},{"title":"Excluir relatório FIU via API","sidebarTitle":"Excluir relatório","openapi":"pt-br/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/","href":"/pt-br/management-api/regulatory-reports/delete"},{"title":"API de URL de download de relatório para a UIF","sidebarTitle":"URL de download do relatório","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/download-url/","href":"/pt-br/management-api/regulatory-reports/download-url"}]},{"group":"Transações","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"API para listar transações: monitoramento KYT","sidebarTitle":"Listar transações","openapi":"pt-br/openapi-25.json GET /v3/transactions/","href":"/pt-br/management-api/transactions/list"},{"title":"API de criação de transação: envio ao KYT","sidebarTitle":"Criar transação","openapi":"pt-br/openapi-25.json POST /v3/transactions/","href":"/pt-br/management-api/transactions/create"},{"title":"API de exclusão em lote de transações","sidebarTitle":"Excluir transações em lote","openapi":"pt-br/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/transactions/delete/","href":"/pt-br/management-api/transactions/delete"},{"title":"API de consulta de transação: detalhes de KYT","sidebarTitle":"Obter transação","openapi":"pt-br/openapi-25.json GET /v3/transactions/{transaction_id}/","href":"/pt-br/management-api/transactions/get"},{"title":"Listar notas de transação via API","sidebarTitle":"Listar notas de transação","openapi":"pt-br/openapi-25.json GET /v3/transactions/{transaction_id}/notes/","href":"/pt-br/management-api/transactions/list-notes"},{"title":"API para criar nota de transação","sidebarTitle":"Criar nota de transação","openapi":"pt-br/openapi-25.json POST /v3/transactions/{transaction_id}/notes/","href":"/pt-br/management-api/transactions/create-note"},{"title":"API para listar transações relacionadas","sidebarTitle":"Listar transações relacionadas","openapi":"pt-br/openapi-25.json GET /v3/transactions/{transaction_id}/related/","href":"/pt-br/management-api/transactions/list-related"},{"title":"API de relatório em PDF de transações","sidebarTitle":"Gerar PDF da transação","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/transactions/{transaction_uuid}/pdf/","href":"/pt-br/management-api/transactions/generate-pdf"},{"title":"API de triagem de carteira cripto: AML sob demanda","sidebarTitle":"Triagem de carteira","openapi":"pt-br/openapi-25.json POST /v3/wallet-screening/","href":"/pt-br/management-api/transactions/screen-wallet"},{"title":"API de relatório PDF de triagem de carteira","sidebarTitle":"PDF de triagem de carteira","openapi":"pt-br/openapi-25.json POST /v3/wallet-screening/pdf/","href":"/pt-br/management-api/transactions/screen-wallet-pdf"},{"title":"API de token de transação do SDK: KYT no lado do cliente","sidebarTitle":"Gerar token de transação do SDK","openapi":"pt-br/openapi-25.json POST /v3/transactions/sdk-token/","href":"/pt-br/management-api/transactions/sdk-token"},{"title":"Enviar transação pelo SDK: KYT no lado do cliente","sidebarTitle":"Enviar transação (token do SDK)","openapi":"pt-br/openapi-25.json POST /v1/transactions/","href":"/pt-br/management-api/transactions/submit-sdk"},{"title":"Consultar transação via SDK: KYT no lado do cliente","sidebarTitle":"Consultar transação (token SDK)","openapi":"pt-br/openapi-25.json GET /v1/transactions/{transaction_id}/","href":"/pt-br/management-api/transactions/get-sdk"},{"title":"Listar regras de monitoramento de transações via API","sidebarTitle":"Listar regras","openapi":"pt-br/openapi-25.json GET /v3/transactions/rules/","href":"/pt-br/management-api/transactions/rules-list"},{"title":"Criar regra de monitoramento de transações - Regras KYT","sidebarTitle":"Criar regra","openapi":"pt-br/openapi-25.json POST /v3/transactions/rules/","href":"/pt-br/management-api/transactions/rules-create"},{"title":"API para obter regra de monitoramento de transações","sidebarTitle":"Obter regra","openapi":"pt-br/openapi-25.json GET /v3/transactions/rules/{rule_uuid}/","href":"/pt-br/management-api/transactions/rules-get"},{"title":"Atualizar regra de monitoramento de transações via API","sidebarTitle":"Atualizar regra","openapi":"pt-br/openapi-25.json PATCH /v3/transactions/rules/{rule_uuid}/","href":"/pt-br/management-api/transactions/rules-update"},{"title":"Excluir regra de monitoramento de transações via API","sidebarTitle":"Excluir regra","openapi":"pt-br/openapi-25.json DELETE /v3/transactions/rules/{rule_uuid}/","href":"/pt-br/management-api/transactions/rules-delete"},{"title":"API de backtest de regras de monitoramento de transações","sidebarTitle":"Backtest de regras","openapi":"pt-br/openapi-25.json POST /v3/transactions/rules/backtest/","href":"/pt-br/management-api/transactions/rules-backtest"},{"title":"API de biblioteca de regras de transações: 150+ presets","sidebarTitle":"Listar biblioteca de regras","openapi":"pt-br/openapi-25.json GET /v3/transactions/rules/library/","href":"/pt-br/management-api/transactions/rules-library"},{"title":"Instalar regras de monitoramento de transações (API)","sidebarTitle":"Instalar regras da biblioteca","openapi":"pt-br/openapi-25.json POST /v3/transactions/rules/install/","href":"/pt-br/management-api/transactions/rules-install"},{"title":"Desinstalar regras predefinidas de transações via API","sidebarTitle":"Desinstalar regras da biblioteca","openapi":"pt-br/openapi-25.json DELETE /v3/transactions/rules/install/","href":"/pt-br/management-api/transactions/rules-uninstall"}]},{"group":"Eventos de monitoramento","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"Listar eventos de monitoramento: API da Didit","sidebarTitle":"Listar eventos de monitoramento","openapi":"pt-br/openapi-25.json GET /v3/events/","href":"/pt-br/management-api/monitoring-events/list"},{"title":"API para criar evento de monitoramento","sidebarTitle":"Criar evento de monitoramento","openapi":"pt-br/openapi-25.json POST /v3/events/","href":"/pt-br/management-api/monitoring-events/create"},{"title":"API de eventos de monitoramento em lote","sidebarTitle":"Criar eventos em lote","openapi":"pt-br/openapi-25.json POST /v3/events/batch/","href":"/pt-br/management-api/monitoring-events/create-batch"},{"title":"Token do SDK de monitoramento: gerar via API","sidebarTitle":"Gerar token do SDK","openapi":"pt-br/openapi-25.json POST /v3/events/sdk-token/","href":"/pt-br/management-api/monitoring-events/sdk-token"},{"title":"Obter evento de monitoramento via API","sidebarTitle":"Obter evento de monitoramento","openapi":"pt-br/openapi-25.json GET /v3/events/{event_uuid}/","href":"/pt-br/management-api/monitoring-events/get"},{"title":"Linha do tempo de eventos do sujeito via API","sidebarTitle":"Obter linha do tempo do sujeito","openapi":"pt-br/openapi-25.json GET /v3/events/subjects/{vendor_data}/","href":"/pt-br/management-api/monitoring-events/subject-timeline"},{"title":"API de métricas de enriquecimento de eventos","sidebarTitle":"Obter métricas de enriquecimento","openapi":"pt-br/openapi-25.json GET /v3/events/enrichment-metrics/","href":"/pt-br/management-api/monitoring-events/enrichment-metrics"},{"title":"Excluir evento de monitoramento via API","sidebarTitle":"Excluir evento de monitoramento","openapi":"pt-br/openapi-25.json DELETE /v3/events/{event_uuid}/delete/","href":"/pt-br/management-api/monitoring-events/delete"}]},{"group":"Travel Rule","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"API de configurações da Travel Rule: perfil de VASP","sidebarTitle":"Obter configurações da Travel Rule","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/settings/","href":"/pt-br/management-api/travel-rule/get-settings"},{"title":"Atualizar configurações da Travel Rule via API","sidebarTitle":"Atualizar configurações da Travel Rule","openapi":"pt-br/openapi-25.json PUT /v3/travel-rule/settings/","href":"/pt-br/management-api/travel-rule/update-settings"},{"title":"API para obter redes de Travel Rule","sidebarTitle":"Consultar redes de Travel Rule","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/networks/","href":"/pt-br/management-api/travel-rule/get-networks"},{"title":"API para obter o questionário da rede Travel Rule","sidebarTitle":"Obter questionário da rede","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/networks/questionnaire/","href":"/pt-br/management-api/travel-rule/get-network-questionnaire"},{"title":"API para salvar o questionário de rede da Travel Rule","sidebarTitle":"Salvar respostas do questionário","openapi":"pt-br/openapi-25.json PUT /v3/travel-rule/networks/questionnaire/","href":"/pt-br/management-api/travel-rule/update-network-questionnaire"},{"title":"API para enviar o questionário de rede da Travel Rule","sidebarTitle":"Enviar questionário de rede","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/networks/questionnaire/submit/","href":"/pt-br/management-api/travel-rule/submit-network-questionnaire"},{"title":"Acesso à rede Travel Rule: API de solicitação","sidebarTitle":"Solicitar rede Travel Rule","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/networks/{network}/request/","href":"/pt-br/management-api/travel-rule/request-network"},{"title":"E-mail de conformidade da Travel Rule: API de confirmação","sidebarTitle":"Confirmar e-mail de conformidade","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/settings/compliance-email/confirmation/","href":"/pt-br/management-api/travel-rule/send-compliance-email-confirmation"},{"title":"API para listar transferências da Travel Rule","sidebarTitle":"Listar transferências","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/transfers/","href":"/pt-br/management-api/travel-rule/list-transfers"},{"title":"Listar depósitos sem correspondência da Travel Rule (API)","sidebarTitle":"Listar depósitos sem correspondência","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/unmatched/","href":"/pt-br/management-api/travel-rule/list-unmatched-deposits"},{"title":"Vincular depósito da Travel Rule a uma mensagem via API","sidebarTitle":"Vincular depósito pendente","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/unmatched/{transaction_uuid}/match/","href":"/pt-br/management-api/travel-rule/match-unmatched-deposit"},{"title":"API de ações de transferência Travel Rule","sidebarTitle":"Finalizar, cancelar, reenviar ou atualizar","openapi":"pt-br/openapi-25.json PATCH /v3/transactions/{transaction_id}/travel-rule/","href":"/pt-br/management-api/travel-rule/update-transfer"},{"title":"API para confirmar propriedade de carteira na Travel Rule","sidebarTitle":"Confirmar propriedade da carteira","openapi":"pt-br/openapi-25.json POST /v3/transactions/{transaction_id}/travel-rule/ownership/","href":"/pt-br/management-api/travel-rule/confirm-ownership"},{"title":"API para listar mensagens da Travel Rule","sidebarTitle":"Listar mensagens da Travel Rule","openapi":"pt-br/openapi-25.json GET /v3/transactions/{transaction_id}/travel-rule/messages/","href":"/pt-br/management-api/travel-rule/list-messages"},{"title":"API para enviar mensagem da Travel Rule","sidebarTitle":"Enviar mensagem da Travel Rule","openapi":"pt-br/openapi-25.json POST /v3/transactions/{transaction_id}/travel-rule/messages/","href":"/pt-br/management-api/travel-rule/create-message"},{"title":"Registrar transferência sunrise recebida: API Travel Rule","sidebarTitle":"Registrar recebida (sunrise)","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/inbound/","href":"/pt-br/management-api/travel-rule/register-inbound"},{"title":"API de transferência de entrada de VASP de teste","sidebarTitle":"Acionar entrada do VASP de teste","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/test-vasp/inbound/","href":"/pt-br/management-api/travel-rule/trigger-test-vasp-inbound"},{"title":"API de busca no diretório de VASPs: rotas da Travel Rule","sidebarTitle":"Buscar no diretório de VASPs","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/vasps/","href":"/pt-br/management-api/travel-rule/search-vasps"},{"title":"Obter entrada de VASP no diretório: API da Travel Rule","sidebarTitle":"Obter entrada de VASP","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/","href":"/pt-br/management-api/travel-rule/get-vasp"},{"title":"Decisão sobre VASP contraparte via API: Travel Rule","sidebarTitle":"Sua decisão sobre um VASP","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/decision/","href":"/pt-br/management-api/travel-rule/get-vasp-decision"},{"title":"API para definir decisão de VASP contraparte: Travel Rule","sidebarTitle":"Definir decisão sobre um VASP","openapi":"pt-br/openapi-25.json PUT /v3/travel-rule/vasps/{vasp_id}/decision/","href":"/pt-br/management-api/travel-rule/set-vasp-decision"},{"title":"Remover decisão de VASP da contraparte: API Travel Rule","sidebarTitle":"Remover sua decisão sobre um VASP","openapi":"pt-br/openapi-25.json DELETE /v3/travel-rule/vasps/{vasp_id}/decision/","href":"/pt-br/management-api/travel-rule/clear-vasp-decision"},{"title":"Consultar triagem de VASP contraparte: API da Travel Rule","sidebarTitle":"Obter triagem de um VASP","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/screening/","href":"/pt-br/management-api/travel-rule/get-vasp-screening"},{"title":"Triagem de VASP contraparte via API: checagem de sanções","sidebarTitle":"Triagem de VASP contraparte","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/vasps/{vasp_id}/screening/","href":"/pt-br/management-api/travel-rule/screen-vasp"},{"title":"Questionários de due diligence de VASP: API para listar","sidebarTitle":"Listar questionários de due diligence","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/questionnaires/","href":"/pt-br/management-api/travel-rule/list-vasp-questionnaires"},{"title":"Enviar questionário de due diligence a VASP via API","sidebarTitle":"Enviar questionário de due diligence","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/vasps/{vasp_id}/questionnaires/","href":"/pt-br/management-api/travel-rule/send-vasp-questionnaire"},{"title":"Listar contatos de contraparte: Travel Rule por e-mail","sidebarTitle":"Listar contatos de contrapartes","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/counterparty-contacts/","href":"/pt-br/management-api/travel-rule/list-counterparty-contacts"},{"title":"API de contato de contraparte - Travel Rule por e-mail","sidebarTitle":"Adicionar contato de contraparte","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/counterparty-contacts/","href":"/pt-br/management-api/travel-rule/create-counterparty-contact"},{"title":"Excluir contato de contraparte via API - Travel Rule","sidebarTitle":"Excluir contato de contraparte","openapi":"pt-br/openapi-25.json DELETE /v3/travel-rule/counterparty-contacts/{contact_uuid}/","href":"/pt-br/management-api/travel-rule/delete-counterparty-contact"},{"title":"API para listar endereços de carteira: Travel Rule","sidebarTitle":"Listar endereços de carteira","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/wallet-addresses/","href":"/pt-br/management-api/travel-rule/list-wallet-addresses"},{"title":"API para registrar endereço de carteira: Travel Rule","sidebarTitle":"Registrar endereço de carteira","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/wallet-addresses/","href":"/pt-br/management-api/travel-rule/create-wallet-address"},{"title":"API para importar endereços de carteira | Travel Rule","sidebarTitle":"Importar endereços de carteira","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/wallet-addresses/import/","href":"/pt-br/management-api/travel-rule/import-wallet-addresses"},{"title":"Atualizar endereço de carteira: API da Travel Rule","sidebarTitle":"Atualizar endereço de carteira","openapi":"pt-br/openapi-25.json PATCH /v3/travel-rule/wallet-addresses/{entry_uuid}/","href":"/pt-br/management-api/travel-rule/update-wallet-address"},{"title":"API para excluir endereço de carteira: Travel Rule","sidebarTitle":"Excluir endereço de carteira","openapi":"pt-br/openapi-25.json DELETE /v3/travel-rule/wallet-addresses/{entry_uuid}/","href":"/pt-br/management-api/travel-rule/delete-wallet-address"},{"title":"Listar comprovantes de carteira por captura de tela","sidebarTitle":"Listar comprovantes a revisar","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/wallet-proofs/","href":"/pt-br/management-api/travel-rule/list-wallet-proofs"},{"title":"Aprovar ou rejeitar prova de carteira por captura de tela","sidebarTitle":"Decidir prova de carteira","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/wallet-proofs/{proof_uuid}/decision/","href":"/pt-br/management-api/travel-rule/decide-wallet-proof"},{"title":"Criar sessão de widget de propriedade de carteira","sidebarTitle":"Criar sessão do widget de carteira","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/widget-session/","href":"/pt-br/management-api/travel-rule/create-widget-session"},{"title":"API de contexto do widget de propriedade de carteira","sidebarTitle":"Obter contexto do widget","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/widget/{token}/","href":"/pt-br/management-api/travel-rule/get-widget-context"},{"title":"API para iniciar prova de propriedade de carteira","sidebarTitle":"Iniciar prova do widget","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/widget/{token}/proofs/","href":"/pt-br/management-api/travel-rule/create-widget-proof"},{"title":"API para enviar prova de propriedade de carteira","sidebarTitle":"Enviar evidência da prova","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/widget/{token}/proofs/{proof_id}/verify/","href":"/pt-br/management-api/travel-rule/verify-widget-proof"},{"title":"API de seleção de VASP no widget: contraparte Travel Rule","sidebarTitle":"Escolher VASP de contraparte no widget","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/widget/{token}/vasps/","href":"/pt-br/management-api/travel-rule/select-widget-vasp"},{"title":"API de seletor de VASP: busca no diretório Travel Rule","sidebarTitle":"Buscar VASPs no widget de carteira","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/widget/{token}/vasps/","href":"/pt-br/management-api/travel-rule/search-widget-vasps"},{"title":"API Obter Dados de Coleta por E-mail | Travel Rule","sidebarTitle":"Obter coleta por e-mail","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/pickup/{token}/","href":"/pt-br/management-api/travel-rule/get-pickup"},{"title":"Responder à retirada por e-mail: API da Travel Rule","sidebarTitle":"Responder retirada por e-mail","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/pickup/{token}/respond/","href":"/pt-br/management-api/travel-rule/respond-pickup"},{"title":"Listar mensagens de retirada: API Travel Rule por e-mail","sidebarTitle":"Listar mensagens de retirada","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/pickup/{token}/messages/","href":"/pt-br/management-api/travel-rule/list-pickup-messages"},{"title":"Responder no portal de retirada - Travel Rule por e-mail","sidebarTitle":"Responder no portal de retirada","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/pickup/{token}/messages/","href":"/pt-br/management-api/travel-rule/create-pickup-message"},{"title":"Consultar convite de adesão à Travel Rule: API Didit","sidebarTitle":"Consultar convite de adesão","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/join/{token}/","href":"/pt-br/management-api/travel-rule/get-join-invitation"},{"title":"Cadastrar conta gratuita de Travel Rule via API","sidebarTitle":"Cadastrar conta gratuita","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/join/{token}/","href":"/pt-br/management-api/travel-rule/register-join"},{"title":"Verificar conta gratuita da Travel Rule via API","sidebarTitle":"Verificar conta gratuita","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/join/{token}/verify/","href":"/pt-br/management-api/travel-rule/verify-join"},{"title":"API para obter workspace gratuito da Travel Rule","sidebarTitle":"Obter workspace gratuito","openapi":"pt-br/openapi-25.json GET /v3/travel-rule/workspace/","href":"/pt-br/management-api/travel-rule/get-workspace"},{"title":"Reivindicar entrada no diretório: Travel Rule gratuita","sidebarTitle":"Reivindicar entrada no diretório","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/workspace/claim/","href":"/pt-br/management-api/travel-rule/claim-workspace"},{"title":"API para enviar código de domínio - Travel Rule gratuita","sidebarTitle":"Enviar código de domínio","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/workspace/domain/code/","href":"/pt-br/management-api/travel-rule/send-workspace-domain-code"},{"title":"API Confirmar Código de Domínio - Travel Rule Grátis","sidebarTitle":"Confirmar código de domínio","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/workspace/domain/confirm/","href":"/pt-br/management-api/travel-rule/confirm-workspace-domain"},{"title":"Verificar domínio por DNS: adesão gratuita Travel Rule","sidebarTitle":"Verificar domínio por DNS","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/workspace/domain/dns/","href":"/pt-br/management-api/travel-rule/verify-workspace-domain-dns"},{"title":"Ativar faturamento de saída na API da Travel Rule","sidebarTitle":"Ativar faturamento de saída","openapi":"pt-br/openapi-25.json POST /v3/travel-rule/workspace/billing/","href":"/pt-br/management-api/travel-rule/enable-workspace-billing"}]},{"group":"Operações de sessão","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/play.svg","pages":[{"title":"Excluir sessões em lote via API: limpeza de KYC","sidebarTitle":"Excluir sessões em lote","openapi":"pt-br/openapi-25.json POST /v3/sessions/delete/","href":"/pt-br/management-api/sessions/batch-delete"},{"title":"Consultar job de exclusão de sessões via API","sidebarTitle":"Consultar job de exclusão","openapi":"pt-br/openapi-25.json GET /v3/sessions/delete/{job_id}/","href":"/pt-br/management-api/sessions/get-deletion-job"},{"title":"API de revisões de sessão: registro de auditoria KYC","sidebarTitle":"Listar revisões de sessão","openapi":"pt-br/openapi-25.json GET /v3/sessions/{session_id}/reviews/","href":"/pt-br/management-api/sessions/list-reviews"},{"title":"API para criar revisão de sessão: KYC manual","sidebarTitle":"Criar revisão de sessão","openapi":"pt-br/openapi-25.json POST /v3/sessions/{session_id}/reviews/","href":"/pt-br/management-api/sessions/create-review"},{"title":"API para listar eventos de sessão","sidebarTitle":"Listar eventos de sessão","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/events/","href":"/pt-br/management-api/sessions/list-events"},{"title":"Entregas de webhooks da sessão: API para listar","sidebarTitle":"Listar entregas de webhooks","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/webhooks/","href":"/pt-br/management-api/sessions/list-webhooks"},{"title":"Consultar entrega de webhook da sessão: API","sidebarTitle":"Consultar entrega de webhook","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/webhook/{webhook_uuid}","href":"/pt-br/management-api/sessions/get-webhook"},{"title":"Reenviar webhook de sessão: API de entrega","sidebarTitle":"Reenviar webhook de sessão","openapi":"pt-br/openapi-25.json POST /v3/session/{sessionId}/webhook/{webhook_uuid}/resend","href":"/pt-br/management-api/sessions/resend-webhook"},{"title":"Histórico de triagem AML: listar via API","sidebarTitle":"Listar histórico de triagem AML","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/aml-screening-history/","href":"/pt-br/management-api/sessions/aml-screening-history"},{"title":"Histórico de triagem AML em CSV: API de exportação","sidebarTitle":"Exportar histórico AML","openapi":"pt-br/openapi-25.json GET /v3/session/{sessionId}/aml-screening-history/export/","href":"/pt-br/management-api/sessions/export-aml-screening-history"}]},{"group":"Personalização","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/sliders.svg","pages":[{"title":"API para obter a personalização de marca (branding)","sidebarTitle":"Obter branding","openapi":"pt-br/openapi-25.json GET /v3/customization/","href":"/pt-br/management-api/customization/get"},{"title":"Atualizar personalização de marca via API | Didit","sidebarTitle":"Atualizar marca","openapi":"pt-br/openapi-25.json PATCH /v3/customization/","href":"/pt-br/management-api/customization/update"}]},{"group":"Webhook","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/link.svg","pages":[{"title":"Listar destinos de webhook pela API","sidebarTitle":"Listar destinos de webhook","openapi":"pt-br/openapi-25.json GET /v3/webhook/destinations/","href":"/pt-br/management-api/webhook/list-destinations"},{"title":"Criar destino de webhook via API","sidebarTitle":"Criar destino de webhook","openapi":"pt-br/openapi-25.json POST /v3/webhook/destinations/","href":"/pt-br/management-api/webhook/create-destination"},{"title":"Consultar destino do webhook: Management API da Didit","sidebarTitle":"Obter destino do webhook","openapi":"pt-br/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/","href":"/pt-br/management-api/webhook/get-destination"},{"title":"Atualizar destino de webhook: API","sidebarTitle":"Atualizar destino de webhook","openapi":"pt-br/openapi-25.json PATCH /v3/webhook/destinations/{destination_uuid}/","href":"/pt-br/management-api/webhook/update-destination"},{"title":"Excluir destino de webhook via API","sidebarTitle":"Excluir destino de webhook","openapi":"pt-br/openapi-25.json DELETE /v3/webhook/destinations/{destination_uuid}/","href":"/pt-br/management-api/webhook/delete-destination"},{"title":"Obter configuração de webhook via API","sidebarTitle":"Obter configuração de webhook","openapi":"pt-br/openapi-25.json GET /v3/webhook/","href":"/pt-br/management-api/webhook/get-config"},{"title":"Atualizar configuração de webhook pela API","sidebarTitle":"Atualizar configuração de webhook","openapi":"pt-br/openapi-25.json PATCH /v3/webhook/","href":"/pt-br/management-api/webhook/update-config"},{"title":"API de análise de destino de webhook","sidebarTitle":"Análise do destino de webhook","openapi":"pt-br/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/analytics/","href":"/pt-br/management-api/webhook/destination-analytics"},{"title":"API para listar entregas de webhook","sidebarTitle":"Listar entregas do webhook","openapi":"pt-br/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/deliveries/","href":"/pt-br/management-api/webhook/list-deliveries"},{"title":"Consultar entrega de webhook pela API","sidebarTitle":"Obter entrega de webhook","openapi":"pt-br/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/deliveries/{delivery_uuid}/","href":"/pt-br/management-api/webhook/get-delivery"},{"title":"Reenviar entrega de webhook: API da Didit","sidebarTitle":"Reenviar entrega de webhook","openapi":"pt-br/openapi-25.json POST /v3/webhook/destinations/{destination_uuid}/deliveries/{delivery_uuid}/resend/","href":"/pt-br/management-api/webhook/resend-delivery"}]},{"group":"Faturamento","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/billing.svg","pages":[{"title":"API de saldo de créditos: faturamento de KYC","sidebarTitle":"Consultar saldo de créditos","openapi":"pt-br/openapi-25.json GET /v3/billing/balance/","href":"/pt-br/management-api/billing/balance"},{"title":"API de recarga de créditos","sidebarTitle":"Recarregar créditos","openapi":"pt-br/openapi-25.json POST /v3/billing/top-up/","href":"/pt-br/management-api/billing/top-up"}]},{"group":"Análises","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/overview.svg","pages":[{"title":"API de analytics da aplicação","sidebarTitle":"Obter analytics da aplicação","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/analytics/","href":"/pt-br/management-api/analytics/get"},{"title":"API de verificações de hoje por hora","sidebarTitle":"Verificações de hoje por hora","openapi":"pt-br/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/analytics/today/","href":"/pt-br/management-api/analytics/today-by-hour"}]},{"group":"Visão geral da API de gerenciamento","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/info.svg","pages":[{"title":"API de gerenciamento v3: fluxos de trabalho e faturamento","sidebarTitle":"API de gerenciamento","href":"/pt-br/sessions-api/management-api"}]},{"group":"API de autenticação (programática)","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/key.svg","pages":[{"title":"Registro programático de conta via Auth API","sidebarTitle":"Registrar conta","openapi":"pt-br/openapi-auth.json POST /programmatic/register/","href":"/pt-br/auth-api/register"},{"title":"API de verificação de e-mail: obtenha credenciais Didit","sidebarTitle":"Verificar e-mail","openapi":"pt-br/openapi-auth.json POST /programmatic/verify-email/","href":"/pt-br/auth-api/verify-email"},{"title":"API de login programático: tokens de autenticação","sidebarTitle":"Login","openapi":"pt-br/openapi-auth.json POST /programmatic/login/","href":"/pt-br/auth-api/login"},{"title":"API de credenciais Didit: obter client_id e api_key","sidebarTitle":"Obter credenciais","openapi":"pt-br/openapi-auth.json GET /organizations/me/{org_id}/applications/{app_id}/","href":"/pt-br/auth-api/get-credentials"},{"title":"API de criação de aplicações: apps via programação","sidebarTitle":"Criar aplicação","openapi":"pt-br/openapi-auth.json POST /organizations/me/{org_id}/applications/","href":"/pt-br/auth-api/create-application"},{"title":"API para atualizar aplicação: gerencie apps de clientes","sidebarTitle":"Atualizar aplicação","openapi":"pt-br/openapi-auth.json PATCH /organizations/me/{org_id}/applications/{app_id}/","href":"/pt-br/auth-api/update-application"}]},{"group":"Identidade e documentos","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/id-scan.svg","pages":[{"title":"API de Verificação de ID: OCR e Autenticidade","sidebarTitle":"API de verificação de identidade","openapi":"pt-br/openapi-25.json POST /v3/id-verification/","href":"/pt-br/standalone-apis/id-verification"},{"title":"API de comprovante de endereço: verificação POA e OCR","sidebarTitle":"API de comprovante de residência","openapi":"pt-br/openapi-25.json POST /v3/poa/","href":"/pt-br/standalone-apis/proof-of-address"},{"title":"API de validação de endereço: verificar e normalizar","sidebarTitle":"Validação de endereço","openapi":"pt-br/openapi-25.json POST /v3/address-validation/","href":"/pt-br/standalone-apis/address-validation"}]},{"group":"Carteiras de identidade digital","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/id-scan.svg","pages":[{"title":"Carteiras de identidade digital: APIs de verificação","sidebarTitle":"APIs de carteira digital","href":"/pt-br/standalone-apis/digital-id-wallets"},{"title":"Catálogo de API de carteiras de identidade digital","sidebarTitle":"Listar carteiras de ID digital","openapi":"pt-br/openapi-25.json GET /v3/id-verification/wallets/","href":"/pt-br/standalone-apis/digital-id-wallet-catalog"},{"group":"Iniciar verificação","pages":[{"title":"API de verificação BankID Suécia","sidebarTitle":"BankID Suécia","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/bankid-se/","href":"/pt-br/api-reference/digital-id-wallets/bankid-se"},{"title":"API de verificação Finnish Trust Network","sidebarTitle":"Finnish Trust Network","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/ftn/","href":"/pt-br/api-reference/digital-id-wallets/ftn"},{"title":"API de verificação MitID pessoal","sidebarTitle":"MitID pessoal","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/mitid/","href":"/pt-br/api-reference/digital-id-wallets/mitid"},{"title":"API de verificação de identidade Mobile-ID","sidebarTitle":"Mobile-ID","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/mobile-id/","href":"/pt-br/api-reference/digital-id-wallets/mobile-id"},{"title":"API de verificação Smart-ID","sidebarTitle":"Smart-ID","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/smart-id/","href":"/pt-br/api-reference/digital-id-wallets/smart-id"},{"title":"iDIN identificação completa: API de verificação","sidebarTitle":"iDIN identificação completa","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/idin/","href":"/pt-br/api-reference/digital-id-wallets/idin"},{"title":"API de verificação de identidade Auðkenni","sidebarTitle":"Auðkenni","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/audkenni/","href":"/pt-br/api-reference/digital-id-wallets/audkenni"},{"title":"API de verificação Bank iD","sidebarTitle":"Bank iD","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/bankid-cz/","href":"/pt-br/api-reference/digital-id-wallets/bankid-cz"},{"title":"BankID Noruega: API de verificação de identidade","sidebarTitle":"BankID Noruega","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/bankid-no/","href":"/pt-br/api-reference/digital-id-wallets/bankid-no"},{"title":"API de verificação de ID Buypass","sidebarTitle":"Buypass ID","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/buypass/","href":"/pt-br/api-reference/digital-id-wallets/buypass"},{"title":"API ConnectID: verificação de identidade","sidebarTitle":"ConnectID","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/connectid/","href":"/pt-br/api-reference/digital-id-wallets/connectid"},{"title":"API de verificação Diia","sidebarTitle":"Diia","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/diia/","href":"/pt-br/api-reference/digital-id-wallets/diia"},{"title":"EUDI Wallet: API de verificação de identidade","sidebarTitle":"EUDI Wallet","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/eudi/","href":"/pt-br/api-reference/digital-id-wallets/eudi"},{"title":"API de verificação do ID-card estoniano","sidebarTitle":"ID-card estoniano","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/idcard-ee/","href":"/pt-br/api-reference/digital-id-wallets/idcard-ee"},{"title":"API de verificação FranceConnect","sidebarTitle":"FranceConnect","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/franceconnect/","href":"/pt-br/api-reference/digital-id-wallets/franceconnect"},{"title":"Freja eID: API de verificação de identidade","sidebarTitle":"Freja eID","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/frejaid/","href":"/pt-br/api-reference/digital-id-wallets/frejaid"},{"title":"API do GOV.UK Wallet para verificação de identidade","sidebarTitle":"GOV.UK Wallet","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/govuk-wallet/","href":"/pt-br/api-reference/digital-id-wallets/govuk-wallet"},{"title":"API de verificação de identidade com Google Wallet ID","sidebarTitle":"Google Wallet ID","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/google-wallet/","href":"/pt-br/api-reference/digital-id-wallets/google-wallet"},{"title":"API de verificação de identidade MojeID","sidebarTitle":"MojeID","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/mojeid/","href":"/pt-br/api-reference/digital-id-wallets/mojeid"},{"title":"API de verificação OneID","sidebarTitle":"OneID","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/oneid/","href":"/pt-br/api-reference/digital-id-wallets/oneid"},{"title":"API de verificação Personalausweis Profile 2","sidebarTitle":"Personalausweis Profile 2","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/personalausweis/","href":"/pt-br/api-reference/digital-id-wallets/personalausweis"},{"title":"API de verificação UAE PASS","sidebarTitle":"UAE PASS","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/uae-pass/","href":"/pt-br/api-reference/digital-id-wallets/uae-pass"},{"title":"API de verificação Vipps Plus","sidebarTitle":"Vipps Plus","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/vipps/","href":"/pt-br/api-reference/digital-id-wallets/vipps"},{"title":"API de verificação eParaksts mobile","sidebarTitle":"eParaksts mobile","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/eparaksts-mobile/","href":"/pt-br/api-reference/digital-id-wallets/eparaksts-mobile"},{"title":"API gov.br para verificação de identidade","sidebarTitle":"gov.br","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/govbr/","href":"/pt-br/api-reference/digital-id-wallets/govbr"},{"title":"API de verificação itsme","sidebarTitle":"itsme","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/itsme/","href":"/pt-br/api-reference/digital-id-wallets/itsme"}]},{"title":"Obter resultado de verificação da carteira de ID digital","sidebarTitle":"Obter verificação da carteira","openapi":"pt-br/openapi-25.json GET /v3/id-verification/wallets/verifications/{request_id}/","href":"/pt-br/standalone-apis/digital-id-wallet-result"},{"title":"Enviar resposta de carteira da Digital Credentials API","sidebarTitle":"Enviar resposta da carteira","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/verifications/{request_id}/response/","href":"/pt-br/standalone-apis/digital-id-wallet-response"},{"title":"Consultar autenticação Smart-ID e Mobile-ID (polling)","sidebarTitle":"Consultar verificação de carteira","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/verifications/{request_id}/poll/","href":"/pt-br/standalone-apis/digital-id-wallet-poll"},{"title":"Cancelar verificação de carteira de identidade digital","sidebarTitle":"Cancelar verificação da carteira","openapi":"pt-br/openapi-25.json POST /v3/id-verification/wallets/verifications/{request_id}/cancel/","href":"/pt-br/standalone-apis/digital-id-wallet-cancel"}]},{"group":"Document AI","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/document-ai.svg","pages":[{"title":"Document AI API: extração de dados de documentos","sidebarTitle":"API Document AI","openapi":"pt-br/openapi-25.json POST /v3/document-ai/","href":"/pt-br/standalone-apis/document-ai"}]},{"group":"API de validação em bases de dados","pages":[{"title":"API de Validação de Base de Dados: Documento Nacional","sidebarTitle":"API de validação em bases","openapi":"pt-br/openapi-25.json POST /v3/database-validation/","href":"/pt-br/standalone-apis/database-validation"}]},{"group":"Validação de banco de dados","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/driver-2.svg","pages":[{"group":"🇦🇷 Argentina","pages":[{"title":"API de verificação de dados do DNI argentino: Data Match","sidebarTitle":"Argentina - Dados do DNI (RENAPER, sem selfie)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/argentina/renaper-data"},{"title":"Verificação de DNI na Argentina (RENAPER) via API","sidebarTitle":"Argentina - DNI (RENAPER)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/argentina/renaper"},{"title":"API de verificação de cidadãos da Argentina (AFIP)","sidebarTitle":"Cidadãos da Argentina (AFIP)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/argentina/citizens"},{"title":"API de verificação em bureau de crédito da Argentina","sidebarTitle":"Bureau de crédito Argentina","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/argentina/credit-bureau"}]},{"group":"🇦🇺 Austrália","pages":[{"title":"Verificação de certidão de nascimento: API DVS Austrália","sidebarTitle":"Austrália - DVS - Certidão de nascimento","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/birth-certificate"},{"title":"Verificação do cartão Centrelink na Austrália (DVS) – API","sidebarTitle":"Austrália - DVS - Cartão Centrelink","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/centrelink-card"},{"title":"Verificação de ImmiCard na Austrália (DVS) - API","sidebarTitle":"Austrália - DVS - ImmiCard","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/immicard"},{"title":"API de verificação de documento de viagem (DVS) Austrália","sidebarTitle":"Austrália - DVS - Documento de viagem","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/travel-document"},{"title":"Certidão de Mudança de Nome da Austrália (DVS) – API","sidebarTitle":"Austrália – Mudança de Nome (DVS)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/change-of-name-certificate"},{"title":"API de Certificado de Cidadania da Austrália (DVS)","sidebarTitle":"Austrália - DVS – Certificado de Cidadania","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/citizenship-certificate"},{"title":"API de Certidão de Casamento da Austrália – DVS","sidebarTitle":"Austrália – Certidão de Casamento (DVS)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/marriage-certificate"},{"title":"API de bureau de crédito da Austrália: ID Match","sidebarTitle":"Bureau de crédito da Austrália","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/credit-bureau"},{"title":"API de verificação de óbito na Austrália (BDM)","sidebarTitle":"Óbito Austrália (BDM)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/death-check"},{"title":"API de verificação Electoral Roll da Austrália: ID Match","sidebarTitle":"Cadastro eleitoral da Austrália","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/electoral-roll"},{"title":"API de verificação de superannuation e folha na Austrália","sidebarTitle":"Superannuation e folha (Austrália)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/superannuation-payroll"},{"title":"API de verificação VEVO da Austrália em tempo real","sidebarTitle":"VEVO Austrália","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/vevo"},{"title":"Verificação de carteira de motorista da Austrália (DVS)","sidebarTitle":"DVS - Carteira de motorista australiana","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/driver-licence"},{"title":"DVS - API de verificação do Cartão Medicare da Austrália","sidebarTitle":"DVS - Cartão Medicare da Austrália","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/medicare-card"},{"title":"API de verificação de passaporte DVS Austrália: ID Match","sidebarTitle":"DVS - Passaporte da Austrália","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/passport"},{"title":"API de verificação de visto da Austrália (DVS)","sidebarTitle":"DVS - Visto australiano","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/australia/visa"}]},{"title":"API de verificação de bureau de crédito da Áustria","sidebarTitle":"Bureau de crédito da Áustria","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/austria/credit-bureau"},{"title":"API de verificação de CI da Bolívia em tempo real","sidebarTitle":"Bolívia - verificação da CI","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/bolivia/cedula"},{"group":"🇧🇷 Brasil","pages":[{"title":"API de verificação BRA - Unico IDCloud (CPF + selfie)","sidebarTitle":"BRA - Unico IDCloud (CPF + selfie)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/unico-idcloud"},{"title":"API CNH com QR code e comparação facial (Datavalid)","sidebarTitle":"Brasil - CNH QR code + facial (Datavalid)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/cnh-facial-qrcode"},{"title":"API de CPF + face match (Datavalid) no Brasil: ID Match","sidebarTitle":"Brasil - CPF + biometria facial (Datavalid)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/cpf-facial"},{"title":"API de consulta de CPF: situação cadastral em tempo real","sidebarTitle":"Brasil - consulta de CPF","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/cpf"},{"title":"API de Quadro de Sócios e Administradores (QSA) do Brasil","sidebarTitle":"Brasil - Sócios e Administradores (QSA)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/company-directors"},{"title":"Consulta CNPJ: API de registro de empresas do Brasil","sidebarTitle":"Brasil - Registro de empresas (CNPJ)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/company-registry"},{"title":"Consulta de óbito por CPF no Brasil: API em tempo real","sidebarTitle":"Brasil - Óbito (CPF)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/death-check"},{"title":"API de antecedentes criminais da Polícia Federal - Brasil","sidebarTitle":"Antecedentes criminais (PF)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/antecedentes-criminais-pf"},{"title":"API de verificação residencial no Brasil: identidade","sidebarTitle":"Brasil residencial","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/residential"},{"title":"API de verificação de CPF/CNPJ: cadastro fiscal do Brasil","sidebarTitle":"Cadastro fiscal (CPF/CNPJ)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/brazil/tax-registration"}]},{"title":"API de ID nacional do Camboja: correspondência de dados","sidebarTitle":"Identidade nacional do Camboja","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/cambodia/national-id"},{"group":"🇨🇦 Canadá","pages":[{"title":"Verificação em bureau de crédito do Canadá (FINTRAC)","sidebarTitle":"Bureau de crédito Canadá (FINTRAC)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/canada/credit-bureau-fintrac"},{"title":"API Bureau de Crédito 2 Canadá (não FINTRAC): ID Match","sidebarTitle":"Bureau de Crédito 2 do Canadá (não FINTRAC)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/canada/credit-bureau-2-non-fintrac"},{"title":"API de verificação residencial do Canadá: identidade","sidebarTitle":"Canadá Residencial","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/canada/residential"}]},{"title":"Verificação de RUT no Chile: API em tempo real","sidebarTitle":"Chile - Verificação de RUT","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/chile/rut"},{"group":"🇨🇳 China","pages":[{"title":"API de verificação de cartão bancário da China","sidebarTitle":"Cartão bancário da China","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/china/bank-card"},{"title":"API de Verificação de ID Nacional da China: Consulta","sidebarTitle":"Identidade nacional da China","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/china/national-id"},{"title":"API de verificação de passaporte da China em tempo real","sidebarTitle":"Passaporte da China","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/china/passport-verification"},{"title":"API de verificação de telefone na China: ID em tempo real","sidebarTitle":"Telefone na China","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/china/phone"}]},{"group":"🇨🇴 Colômbia","pages":[{"title":"API de verificação de Cédula da Colômbia: identidade","sidebarTitle":"Colômbia - verificação de Cédula","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/colombia/cedula"},{"title":"API de status de estrangeiro Migración Colombia","sidebarTitle":"Colômbia - Migración Colombia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/colombia/migracion"}]},{"title":"API de verificação de cédula da Costa Rica: Data Match","sidebarTitle":"Costa Rica - Cédula","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/costa-rica/cedula"},{"group":"🇩🇰 Dinamarca","pages":[{"title":"API Denmark Consumer 2: verificação de identidade","sidebarTitle":"Denmark Consumer 2","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/denmark/consumer-2"},{"title":"API de Verificação de ID Nacional da Dinamarca","sidebarTitle":"ID nacional da Dinamarca","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/denmark/national-id"}]},{"title":"API de verificação de Cédula da República Dominicana","sidebarTitle":"República Dominicana - Cédula","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/dominican-republic/cedula"},{"title":"API de verificação de Cédula do Equador em tempo real","sidebarTitle":"Equador - Cédula","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/ecuador/cedula"},{"title":"API de verificação do DUI de El Salvador: identidade","sidebarTitle":"El Salvador - verificação do DUI","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/el-salvador/dui"},{"group":"🇫🇮 Finlândia","pages":[{"title":"API Finland Consumer 2: verificação de identidade","sidebarTitle":"Finland Consumer 2","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/finland/consumer-2"},{"title":"API de verificação de ID nacional da Finlândia","sidebarTitle":"ID nacional da Finlândia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/finland/national-id"}]},{"group":"🇫🇷 França","pages":[{"title":"API de verificação de telefone da França em tempo real","sidebarTitle":"Telefone França","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/france/phone"},{"title":"API de verificação residencial na França: identidade","sidebarTitle":"França residencial","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/france/residential"},{"title":"API de verificação de contas de consumo da França","sidebarTitle":"Contas de consumo França","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/france/utility"}]},{"group":"🇩🇪 Alemanha","pages":[{"title":"API de verificação em bureau de crédito da Alemanha","sidebarTitle":"Bureau de crédito da Alemanha","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/germany/credit-bureau"},{"title":"API de verificação Telefone 2 Alemanha: tempo real","sidebarTitle":"Alemanha Telefone 2","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/germany/phone-2"}]},{"group":"🌐 Global","pages":[{"title":"API de verificação Global Core Intelligence Service","sidebarTitle":"Global - Core Intelligence Service","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/global/intelligence-service"},{"title":"Enriquecimento de identidade global: API de verificação","sidebarTitle":"Global - Enriquecimento de identidade","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/global/identity-enrichment"},{"title":"Verificação de SIM Swap global: correspondência telco","sidebarTitle":"Global - SIM Swap","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/global/swap"}]},{"group":"🇬🇹 Guatemala","pages":[{"title":"API de DPI + face match na Guatemala (RENAP): ID Match","sidebarTitle":"Guatemala - DPI + facial (RENAP)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/guatemala/dpi-facial"},{"title":"Verificação de DPI da Guatemala: consulta em tempo real","sidebarTitle":"Guatemala - verificação de DPI","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/guatemala/dpi"}]},{"title":"API de verificação do DNI de Honduras em tempo real","sidebarTitle":"Honduras - verificação do DNI","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/honduras/dni"},{"group":"🇮🇳 Índia","pages":[{"title":"API Aadhaar da Índia (UIDAI): correspondência de dados","sidebarTitle":"Aadhaar (UIDAI) da Índia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/india/aadhaar"},{"title":"API de verificação de CNH da Índia (RTO)","sidebarTitle":"Carteira de motorista da Índia (RTO)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/india/drivers-licence"},{"title":"API EPIC da Índia (registro de eleitor) (ECI)","sidebarTitle":"EPIC da Índia (registro de eleitor)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/india/epic-voter-s-registration"},{"title":"API PAN da Índia (Permanent Account Number) (ITD)","sidebarTitle":"PAN da Índia (ITD)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/india/pan-permanent-account-number"}]},{"title":"API de verificação de KTP da Indonésia | Didit","sidebarTitle":"KTP da Indonésia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/indonesia/residential-identity-card"},{"group":"🇮🇹 Itália","pages":[{"title":"API de bureau de crédito da Itália: match de cabeçalho","sidebarTitle":"Bureau de crédito da Itália","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/italy/credit-bureau"},{"title":"API de verificação residencial na Itália: identidade","sidebarTitle":"Itália residencial","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/italy/residential"}]},{"title":"API de verificação de ID nacional do Quênia","sidebarTitle":"ID Nacional do Quênia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/kenya/national-id"},{"title":"API de ID nacional da Malásia: correspondência de dados","sidebarTitle":"ID nacional da Malásia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/malaysia/national-id"},{"group":"🇲🇽 México","pages":[{"title":"API de verificação de CURP (México) em tempo real","sidebarTitle":"México - verificação de CURP","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/mexico/curp"},{"title":"API de vigência da credencial INE do México","sidebarTitle":"México - vigência da credencial INE","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/mexico/ine-vigencia"}]},{"title":"API de verificação residencial da Holanda: ID Match","sidebarTitle":"Holanda residencial","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/netherlands/residential"},{"group":"🇳🇿 Nova Zelândia","pages":[{"title":"API de verificação de nascimentos DIA, Nova Zelândia","sidebarTitle":"DIA - Nascimentos Nova Zelândia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/new-zealand/births"},{"title":"API de verificação de cidadania da Nova Zelândia - DIA","sidebarTitle":"DIA - Cidadania da Nova Zelândia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/new-zealand/citizenship"},{"title":"API de verificação de passaporte da Nova Zelândia (DIA)","sidebarTitle":"DIA - Passaporte da Nova Zelândia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/new-zealand/passport"},{"title":"API de verificação de óbito na Nova Zelândia (BDM)","sidebarTitle":"Óbito Nova Zelândia (BDM)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/new-zealand/death-check"},{"title":"API de carteira de motorista da Nova Zelândia (NZTA)","sidebarTitle":"Habilitação da Nova Zelândia (NZTA)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/new-zealand/drivers-licence"}]},{"group":"🇳🇬 Nigéria","pages":[{"title":"API de BVN da Nigéria (Bank Verification Number)","sidebarTitle":"BVN da Nigéria","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/nigeria/bank-verification-number"},{"title":"Verificação de carteira de motorista da Nigéria (FRSC)","sidebarTitle":"Carteira de motorista da Nigéria (FRSC)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/nigeria/drivers-license"},{"title":"API de Passaporte da Nigéria (NIS): Correspondência de ID","sidebarTitle":"Passaporte da Nigéria (NIS)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/nigeria/passport"},{"title":"Verificação do ID nacional da Nigéria (NIMC) via API","sidebarTitle":"ID nacional da Nigéria (NIMC)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/nigeria/national-id"},{"title":"Verificação de ID nacional da Nigéria + selfie (NIMC)","sidebarTitle":"ID nacional da Nigéria + selfie (NIMC)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/nigeria/national-id-facial"}]},{"title":"API de verificação residencial da Noruega: identidade","sidebarTitle":"Noruega residencial","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/norway/residential"},{"group":"🇵🇦 Panamá","pages":[{"title":"API de cédula do Panamá com face match biométrico","sidebarTitle":"Panamá - Cédula com biometria facial (SIB Plus)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/panama/sib-plus"},{"title":"API Cédula do Panamá com face-match biométrico (SIB)","sidebarTitle":"Panamá - Cédula com biometria facial (SIB)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/panama/sib"}]},{"title":"Paraguai: API de verificação de CI em tempo real","sidebarTitle":"Paraguai - verificação de CI","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/paraguay/cedula"},{"group":"🇵🇪 Peru","pages":[{"title":"API de verificação de DNI do Peru em tempo real","sidebarTitle":"Peru - verificação de DNI","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/peru/dni"},{"title":"Verificação de registro fiscal no Peru (SUNAT) via API","sidebarTitle":"Registro fiscal do Peru (SUNAT)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/peru/tax-registration"}]},{"title":"API de verificação residencial nas Filipinas: ID Match","sidebarTitle":"Residencial Filipinas","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/philippines/residential"},{"group":"🇸🇬 Singapura","pages":[{"title":"API de verificação em bureau de crédito de Singapura","sidebarTitle":"Bureau de crédito de Singapura","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/singapore/credit-bureau"},{"title":"API de Verificação de Conta de Consumo em Singapura","sidebarTitle":"Conta de consumo (Singapura)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/singapore/utility"}]},{"group":"🇿🇦 África do Sul","pages":[{"title":"Verificação de titular de conta bancária na África do Sul","sidebarTitle":"África do Sul - Titular de conta bancária","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/bank-account-holder"},{"title":"API de consulta de diretores de empresas na África do Sul","sidebarTitle":"África do Sul - Diretores de empresas","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/company-directors"},{"title":"Registro de empresas da África do Sul - API de consulta","sidebarTitle":"África do Sul - Registro de empresas","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/company-registry"},{"title":"API de contactabilidade na África do Sul: ID Match","sidebarTitle":"África do Sul - Contactabilidade","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/contactability"},{"title":"Triagem criminal por rosto na África do Sul - API","sidebarTitle":"África do Sul - Triagem criminal facial","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/criminal-face-screening"},{"title":"API DHA Fingerprint Match da África do Sul: ID Match","sidebarTitle":"África do Sul - Impressão digital DHA","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/dha-fingerprint-match"},{"title":"API de recuperação de foto do DHA da África do Sul","sidebarTitle":"África do Sul - Foto DHA","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/dha-photo"},{"title":"Verificação de carteira de motorista na África do Sul API","sidebarTitle":"África do Sul - Carteira de motorista","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/drivers-license"},{"title":"API de triagem de prevenção a fraudes na África do Sul","sidebarTitle":"África do Sul - Prevenção a fraudes","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/fraud-prevention"},{"title":"API de consulta de cargos de diretor na África do Sul","sidebarTitle":"África do Sul - Cargos de diretor","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/person-directorships"},{"title":"API de verificação de arquivo de refugiado: África do Sul","sidebarTitle":"África do Sul - Arquivo de refugiado","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/refugee"},{"title":"Verificação de propriedade de veículo na África do Sul","sidebarTitle":"África do Sul - Propriedade de veículo","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/vehicle-ownership"},{"title":"API de verificação de ID nacional da África do Sul (DHA)","sidebarTitle":"Identidade nacional África do Sul (DHA)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/south-africa/national-id"}]},{"title":"API de verificação de DNI/NIE na Espanha em tempo real","sidebarTitle":"Espanha - DNI/NIE","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/spain/dni"},{"group":"🇸🇪 Suécia","pages":[{"title":"API de ID nacional da Suécia: correspondência","sidebarTitle":"ID nacional da Suécia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/sweden/national-id"},{"title":"API de verificação de telefone da Suécia em tempo real","sidebarTitle":"Telefone Suécia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/sweden/phone"}]},{"title":"API de verificação de birô de crédito da Suíça","sidebarTitle":"Birô de crédito da Suíça","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/switzerland/credit-bureau"},{"title":"API de verificação de ID nacional da Tailândia","sidebarTitle":"ID nacional da Tailândia","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/thailand/national-id"},{"group":"🇬🇧 Reino Unido","pages":[{"title":"API de verificação em bureau de crédito do Reino Unido","sidebarTitle":"Bureau de crédito do Reino Unido","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/united-kingdom/credit-bureau"},{"title":"API de verificação de serviços financeiros do Reino Unido","sidebarTitle":"Serviços financeiros do Reino Unido","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/united-kingdom/financial-services"},{"title":"API de telefone 2 do Reino Unido: correspondência","sidebarTitle":"Reino Unido Telefone 2","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/united-kingdom/phone-2"},{"title":"API de verificação residencial no Reino Unido","sidebarTitle":"Reino Unido residencial","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/united-kingdom/residential"}]},{"group":"🇺🇸 Estados Unidos","pages":[{"title":"API de verificação por bureau de crédito dos EUA","sidebarTitle":"EUA - Bureau de crédito","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/united-states/credit-bureau"},{"title":"API de verificação de óbito nos EUA (SSDMF)","sidebarTitle":"EUA - Verificação de óbito (SSDMF)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/united-states/death-check"},{"title":"API de verificação de serviços financeiros dos EUA","sidebarTitle":"EUA - Serviços financeiros","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/united-states/financial-services"},{"title":"API de verificação Phone 2 dos EUA: correspondência","sidebarTitle":"Estados Unidos - Phone 2","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/united-states/phone-2"},{"title":"API de verificação residencial dos Estados Unidos","sidebarTitle":"Estados Unidos - Residencial","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/united-states/residential"}]},{"title":"API de verificação da CI do Uruguai em tempo real","sidebarTitle":"Uruguai - verificação da CI","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/uruguay/cedula"},{"title":"API de verificação de Cédula da Venezuela","sidebarTitle":"Venezuela - verificação de Cédula","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/venezuela/cedula"},{"title":"API de verificação do NRC da Zâmbia (registro fiscal)","sidebarTitle":"NRC da Zâmbia (registro fiscal)","api":"POST /v3/database-validation/","href":"/pt-br/api-reference/database-validation/zambia/national-id"}]},{"group":"Biometria e rosto","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/liveness.svg","pages":[{"title":"API de Prova de Vida Passiva: Detecção de Deepfake","sidebarTitle":"Liveness passiva","openapi":"pt-br/openapi-25.json POST /v3/passive-liveness/","href":"/pt-br/standalone-apis/passive-liveness"},{"title":"API de comparação facial 1:1 (Face Match)","sidebarTitle":"Face Match","openapi":"pt-br/openapi-25.json POST /v3/face-match/","href":"/pt-br/standalone-apis/face-match"},{"title":"API de busca facial: deduplicação 1:N e redes de fraude","sidebarTitle":"Busca facial","openapi":"pt-br/openapi-25.json POST /v3/face-search/","href":"/pt-br/standalone-apis/face-search"},{"title":"API de estimativa de idade: verificação por selfie","sidebarTitle":"API de estimativa de idade","openapi":"pt-br/openapi-25.json POST /v3/age-estimation/","href":"/pt-br/standalone-apis/age-estimation"}]},{"group":"Conformidade e risco","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/aml-screening.svg","pages":[{"title":"API de triagem AML: sanções, PEP e lista de monitoramento","sidebarTitle":"API de triagem AML","openapi":"pt-br/openapi-25.json POST /v3/aml/","href":"/pt-br/standalone-apis/aml-screening"},{"title":"API de atualização das bases de dados AML","sidebarTitle":"Obter atualização das bases AML","openapi":"pt-br/openapi-25.json GET /v3/aml/dataset-freshness/","href":"/pt-br/standalone-apis/aml-dataset-freshness"},{"title":"API antifraude: Fraud Check da Didit","openapi":"pt-br/openapi-25.json POST /v3/fraud/checks/","href":"/pt-br/standalone-apis/fraud-check"},{"title":"Planejar uma verificação de fraude","openapi":"pt-br/openapi-25.json POST /v3/fraud/checks/plan/","href":"/pt-br/standalone-apis/fraud-check-plan"},{"title":"Obter resultado do Fraud Check (verificação de fraude)","openapi":"pt-br/openapi-25.json GET /v3/fraud/checks/{check_id}/","href":"/pt-br/standalone-apis/fraud-check-result"}]},{"group":"Análise de dispositivo e IP","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/ip-analysis.svg","pages":[{"title":"API de risco de IP: geolocalização, VPN e datacenter","sidebarTitle":"API de risco de IP","openapi":"pt-br/openapi-25.json POST /v3/ip/risk/","href":"/pt-br/standalone-apis/ip-risk"}]},{"group":"Registro KYB","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/businesses.svg","pages":[{"title":"API de registro KYB: busca e seleção de empresas","sidebarTitle":"Visão geral","href":"/pt-br/standalone-apis/kyb-registry"},{"title":"API de busca em registro de empresas (KYB)","sidebarTitle":"Busca KYB em registros","openapi":"pt-br/openapi-25.json POST /v3/kyb/search/","href":"/pt-br/standalone-apis/kyb-registry-search"},{"title":"API KYB Registry Select: obter perfil da empresa","sidebarTitle":"KYB Registry Select","openapi":"pt-br/openapi-25.json POST /v3/kyb/select/","href":"/pt-br/standalone-apis/kyb-registry-select"},{"title":"API de acionistas KYB do registro de empresas","sidebarTitle":"Acionistas KYB do registro","openapi":"pt-br/openapi-25.json POST /v3/kyb/shareholders/","href":"/pt-br/standalone-apis/kyb-registry-shareholders"},{"title":"API de UBO do registro KYB: beneficiários finais","sidebarTitle":"UBOs no registro KYB","openapi":"pt-br/openapi-25.json POST /v3/kyb/ubo/","href":"/pt-br/standalone-apis/kyb-registry-ubo"}]},{"group":"Verificação de e-mail","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/sms-tracking.svg","pages":[{"title":"API de verificação de e-mail: OTP e pontuação de risco","sidebarTitle":"Visão geral","href":"/pt-br/standalone-apis/email-verification"},{"title":"API de OTP por e-mail: enviar código de verificação","sidebarTitle":"Enviar código por e-mail","openapi":"pt-br/openapi-25.json POST /v3/email/send/","href":"/pt-br/standalone-apis/email-send"},{"title":"API para verificar OTP de e-mail: validar código","sidebarTitle":"Verificar código de e-mail","openapi":"pt-br/openapi-25.json POST /v3/email/check/","href":"/pt-br/standalone-apis/email-check"},{"title":"API de risco de e-mail: entregabilidade e vazamentos","sidebarTitle":"API de risco de e-mail","openapi":"pt-br/openapi-25.json POST /v3/email/risk/","href":"/pt-br/standalone-apis/email-risk"}]},{"group":"Verificação de telefone","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/phone-verification.svg","pages":[{"title":"API de verificação de telefone: SMS OTP e sinais de risco","sidebarTitle":"Visão geral","href":"/pt-br/standalone-apis/phone-verification"},{"title":"API de envio de OTP por telefone: verificação por SMS","sidebarTitle":"Enviar código por telefone","openapi":"pt-br/openapi-25.json POST /v3/phone/send/","href":"/pt-br/standalone-apis/phone-send"},{"title":"API Check Phone OTP: validar código SMS","sidebarTitle":"Verificar código","openapi":"pt-br/openapi-25.json POST /v3/phone/check/","href":"/pt-br/standalone-apis/phone-check"},{"title":"API de risco de telefone: operadora e sinais de fraude","sidebarTitle":"API de risco de telefone","openapi":"pt-br/openapi-25.json POST /v3/phone/risk/","href":"/pt-br/standalone-apis/phone-risk"}]},{"group":"Verificação bancária","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/billing.svg","pages":[{"title":"Account Check API: verificar conta bancária de pagamento","sidebarTitle":"Verificação de conta","openapi":"pt-br/openapi-25.json POST /v3/bank/account-check/","href":"/pt-br/standalone-apis/bank-account-check"}]}]},{"tab":"Verificação de usuários","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/user-verifications.svg","pages":[{"title":"Verificação de usuários","href":"/pt-br/core-technology/liveness/overview"}]},{"tab":"Verificação de empresas","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/business-verifications.svg","pages":[{"title":"Verificação de empresas","href":"/pt-br/business-verification/overview"}]},{"tab":"Monitoramento de transações","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"Monitoramento de transações","href":"/pt-br/transaction-monitoring/overview"}]},{"tab":"Registro de alterações","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/calendar.svg","pages":[{"title":"Registro de alterações","href":"/pt-br/changelog"}]}],"global":{"anchors":[{"anchor":"Referência da API","icon":"code","href":"/pt-br/api-reference/overview"},{"anchor":"Business Console","icon":"gauge","href":"https://business.didit.me"},{"anchor":"Especificação OpenAPI","icon":"file-code","href":"https://docs.didit.me/pt-br/openapi-25.json"},{"anchor":"Prompt de integração","icon":"wand-magic-sparkles","href":"/pt-br/integration/integration-prompt"},{"anchor":"Servidor MCP","icon":"plug","href":"/pt-br/integration/mcp/overview"},{"anchor":"Agent Skills","icon":"robot","href":"https://github.com/didit-protocol/skills"}]}},{"language":"ja","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"サポート"},{"icon":"signal","href":"https://status.didit.me","label":"ステータス"}],"primary":{"type":"button","label":"サインイン","href":"https://business.didit.me"}},"pages":[{"title":"ja","href":"/ja/management-api/workflows/create"}]}]},"basePath":"","title":"API para criar workflow: monte seu fluxo de KYC - Didit Docs","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","Page-m07pfKpT.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","clsx-xpJZXxdP.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BTZUMDnx.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DqdKa2R4.js"]}