Quando o fluxo tem um passo de Assinatura eletrónica que recebe os documentos da sessão (signature_documents_source definido como session ou both), envie-os em sign.documents. Cada documento é o ficheiro em base64, para que a Didit nunca tenha de o obter a partir de um URL.
Apresentado ao signatário. 1 a 255 caracteres. Predefinido como file_name.
file_name
Obrigatório. Termina em .pdf ou .docx. 1 a 255 caracteres.
content_base64
Obrigatório. Um PDF pode ter até 20 MB e 100 páginas, sem palavra-passe, scripts nem ficheiros anexados. Um ficheiro Word pode ter até 20 MB e é convertido em PDF durante o pedido, em no máximo 25 segundos; o PDF tem depois os mesmos limites. Até 5 ficheiros Word por sessão.
fields
Opcional. Até 200 campos a colocar no documento, na estrutura de campo sem id. Cada campo precisa de um key e de um type, e de uma posição (page, x, y, width e height) ou de uma anchor. role predefine-se para o signatário do passo, e required e label predefinem-se a partir do tipo. A Didit define position a partir do local onde o campo se encontra. As páginas e as posições referem-se ao PDF, ou ao PDF convertido no caso de um ficheiro Word.
Sem fields, o signatário lê o documento e concorda com ele.
Em vez de uma posição, um campo pode ter uma anchor: um trecho de texto no documento que marca onde o campo fica. As âncoras são indicadas para documentos que gera para cada sessão, por exemplo a partir de um modelo Word. Nos documentos do fluxo, coloque os campos na consola.
Propriedade de anchor
Regras
text
1 a 64 caracteres, pesquisados no texto do documento. No caso de um ficheiro Word, no PDF convertido.
occurrence
first (predefinido) coloca um campo na primeira correspondência. all coloca um campo por correspondência, e as chaves a seguir à primeira recebem _2, _3 e assim por diante.
offset_x, offset_y
Frações da página. O canto superior esquerdo do campo é o canto superior esquerdo do texto da âncora somado a estes deslocamentos.
width, height
O tamanho do campo, como frações da página.
Quando o texto não existe no documento, a chamada devolve 400 com field_anchor_not_found e a chave do campo. A Didit não remove o texto da âncora do PDF, por isso escreva-o na mesma cor do fundo da página.
sign.field_values define o valor de cada campo cujo prefill é api.<key>, tanto nos documentos do fluxo como nos documentos da sessão. É um objeto indexado por esses nomes <key>. Os valores são cadeias de 1 a 500 caracteres para os campos text e data, e booleanos para um checkbox.
Uma sessão aceita até 20 documentos e 50 MB no total. A chamada devolve 400 com um erro de sign quando:
O fluxo não tem passo de Assinatura eletrónica.
Enviou sign.documents e o passo só aceita documentos do fluxo.
O passo aceita apenas documentos da sessão e não enviou nenhum, ou não tem documentos do fluxo e não enviou nenhum.
Um documento é demasiado grande, não é base64 válido ou não é um ficheiro suportado.
Um ficheiro Word é recusado com signature_document_not_supported, ou não pode ser convertido e devolve signature_document_conversion_failed, cada um com o reason indicado em Ficheiros suportados.
Um campo é inválido, a sua âncora não é encontrada (field_anchor_not_found), ou um valor de campo é recusado.
Voltar a chamar a operação de criação para o mesmo workflow_id e vendor_data devolve a sessão pendente. Se essa chamada enviar sign, os seus documentos, campos e valores de campos têm de ser idênticos aos da primeira (mesma ordem, títulos, nomes de ficheiros, conteúdo, campos e valores). Qualquer diferença devolve 400 com {"sign": "signature_document_changed"}: use um vendor_data diferente ou aguarde até que a sessão pendente termine.
Numa aplicação em modo sandbox, envie sandbox_scenario para pré-carregar um resultado determinístico (aprovação, uma recusa específica ou um cenário Em análise), sem contactar fornecedores reais nem tocar no seu saldo:
sandbox_scenario é rejeitado com 400 em aplicações de produção. Se ainda não conhecer o resultado no momento da criação, configure (ou volte a configurar) o cenário mais tarde através de POST /v3/session/{session_id}/sandbox/arm/, desde que a sessão ainda esteja no estado Not Started: o seletor de cenários pré-fluxo do fluxo alojado usa este mesmo endpoint. Consulte Sandbox e dados de teste para o catálogo completo de cenários, o registo de valores mágicos e o formato do pedido e da resposta do endpoint de configuração.
Consentimento biométrico em Illinois, no Texas e no Colorado
O fluxo alojado e o SDK nativo 4.10.0 ou posterior podem mostrar um passo de consentimento biométrico explícito antes da primeira captura facial, consoante o modo de consentimento da aplicação e o local onde a pessoa se encontra. Dois campos opcionais alimentam essa decisão:
user_state: onde a pessoa reside, quando o souber (US-IL, IL ou Illinois). No modo Automático, um estado abrangido faz com que o fluxo peça o consentimento.
biometric_consent: um objeto com given_at e text_version, para consentimento que já recolheu. O fluxo não volta a pedir.
Os SDK nativos anteriores à versão 4.10.0 não conseguem mostrar este passo: as respetivas sessões funcionam como antes e a decisão indica que o consentimento não foi recolhido. Consulte Consentimento biométrico.
Importante: a divulgação e o consentimento continuam a ser feitos no seu produto
Create Session gera um URL de verificação e um token de sessão. Por si só, não prova que mostrou ao utilizador as informações fornecidas ao utilizador ou que obteve o consentimento exigido pelo seu caso de utilização específico.Se iniciar uma sessão Didit a partir da sua própria aplicação, website, wrapper de SDK ou fluxo com marca branca, deve tratar da componente jurídica na sua própria experiência de utilização antes de o utilizador iniciar a captura.
Lista de verificação recomendada antes da verificação
Informe o utilizador de que a sua empresa está a pedir a verificação e de que a Didit é o fornecedor de verificação / subcontratante que suporta o fluxo.
Ligue ao seu aviso de privacidade e a quaisquer termos jurídicos do responsável pelo tratamento que se apliquem ao percurso.
Se o seu fluxo incluir captura de documento, captura de selfie, prova de vida ou dados biométricos, recolha consentimento explícito e afirmativo sempre que a lei aplicável ou a sua posição jurídica o exija.
Se utilizar uma interface personalizada, um domínio próprio ou um percurso apenas por API, apresente estas informações no seu próprio produto antes de enviar o utilizador para o fluxo da Didit.
Guarde o seu próprio registo do texto do aviso ou do consentimento, da data e hora e dos metadados relacionados, se a sua equipa jurídica exigir um rasto de auditoria.
As exigências legais variam consoante a jurisdição. A personalização com marca branca não elimina o papel da Didit no fluxo de verificação. Reveja a sua implementação com um advogado antes do lançamento se operar em jurisdições com regras específicas para dados biométricos.
A chave de API da sua aplicação, a partir de Programadores -> Chaves de API na Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter o âmbito definido: nenhum, leitura ou escrita por recurso, limitada a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a uma data de validade. 401 significa que a chave está incorreta, revogada ou expirada; 403 significa que nenhuma chave foi enviada, que a chave não tem acesso a este recurso ou ação, ou que o pedido veio de um endereço fora da sua lista de IP; 404 numa rota de sessão significa que a sessão está fora dos fluxos ou estados da chave. Uma chave sem acesso a multimédia recebe URLs de imagens, vídeos e PDFs como nulos, e uma chave sem permissão de escrita em sessões recebe ligações de sessão e tokens como nulos. Consulte https://docs.didit.me/console/api-keys.
Identificador estável do fluxo que define quais os passos de verificação que a sessão irá executar. Os fluxos são criados e geridos na página Fluxos da Consola. O workflow_id também seleciona implicitamente se a sessão é KYC ou KYB.
Um identificador exclusivo para o utilizador a ser verificado, como um UUID, e-mail ou ID de utilizador interno. Este campo é utilizado para: (1) Agrupamento de utilizadores — as sessões com o mesmo vendor_data são associadas ao mesmo perfil de utilizador no separador Utilizadores. (2) Deteção de duplicados entre sessões — ao verificar rostos, documentos, números de telefone, e-mails, endereços IP ou impressões digitais de dispositivos duplicados, as sessões com o mesmo vendor_data são tratadas como o mesmo utilizador e excluídas das correspondências. Sem vendor_data, cada sessão é tratada como um utilizador único e todos os potenciais duplicados são apresentados. Recomendamos vivamente fornecer sempre um vendor_data para reduzir o ruído na deteção de duplicados.
Domínio de deteção de duplicados opcional dentro da sua organização. As verificações de rostos duplicados comparam esta sessão apenas com outras sessões que tenham o mesmo segmento, para que bases de contas separadas (contas pessoais e empresariais, ou uma por subcliente B2B) não sinalizem uma pessoa que detenha legitimamente uma conta em cada uma. Omita este campo para utilizar o domínio predefinido único, que é o que todas as sessões utilizam atualmente. A correspondência com a lista de bloqueio e a lista de permissões ignora este campo.
URL para redirecionar o utilizador após a conclusão da verificação. A Didit anexa automaticamente verificationSessionId e status (Approved, Declined, In Review) como parâmetros de consulta. Esquemas de URL personalizados (por exemplo, myapp://) são suportados para callbacks móveis. Se omitido, é utilizado o callback_url predefinido do fluxo. Quando a aplicação tem domínios permitidos (allowed_domains em PATCH /v3/webhook/), um callback http ou https deve pertencer a uma dessas origens (mesmo esquema, anfitrião e porta), caso contrário o pedido falha com 400 em callback: callback must be on one of the application's allowed domains: https://app.example.com. Esquemas de URL personalizados são sempre aceites.
Determina que dispositivo deve processar o redirecionamento para o URL de retorno fornecido. Utilize initiator para redirecionar apenas o dispositivo que iniciou o fluxo, completer para o dispositivo que o conclui, ou both para permitir que qualquer um dos dispositivos acione o callback. Se alguma vez notar que o callback não está a ser acionado de forma fiável, recomendamos definir este valor como both.
JSON arbitrário guardado com a sessão e devolvido na resposta e nos webhooks. Qualquer valor JSON é aceite (objeto, string, número, array), mas recomenda-se um objeto JSON de pares chave/valor. Não visível para o utilizador final. Utilize-o para passar os seus próprios IDs de correlação, variantes A/B ou contexto de negócio.
Etiquetas adicionadas à sessão quando esta é criada, por nome. Até 10, cada uma com até 50 carateres. Os nomes não diferenciam maiúsculas de minúsculas e são guardados em maiúsculas. Um nome que ainda não exista na aplicação é criado como uma nova etiqueta. As etiquetas são apresentadas na sessão na consola, onde pode filtrar por elas.
Código de idioma (ISO 639-1) para a interface do processo de verificação. Controla o idioma apresentado ao utilizador final durante a verificação. Se não for fornecido, o idioma do navegador será detetado e utilizado automaticamente. Consulte todos os idiomas suportados aqui.
Informações de contacto do utilizador que podem ser utilizadas para notificações, pré-preenchimento de formulários de verificação e verificação de telefone. Isto inclui o endereço de e-mail, o idioma preferido para comunicações e o número de telefone.
Dados esperados do utilizador utilizados para validação cruzada com os dados extraídos do documento de identificação do utilizador, Comprovativo de morada e outros passos de verificação. As discrepâncias são apresentadas como avisos na decisão; alguns campos (por exemplo, id_country, expected_document_types) também alteram o fluxo apresentado ao utilizador. Para fluxos de Verificação de empresas (KYB), apenas os campos da empresa (company_name, registry_country, registration_number) são utilizados — pré-preenchem a pesquisa no registo de empresas para o utilizador — e todos os campos a nível de pessoa são ignorados.
Imagem de retrato do rosto do utilizador final codificada em base64 (máx. 2MB; JPEG, PNG, WebP ou TIFF). Usada como imagem de referência para comparar com a captura de prova de vida quando o fluxo é um fluxo de Biometric Authentication com a Correspondência facial ativada, ou qualquer fluxo em grafo onde a Correspondência facial seja executada antes da Verificação de identidade (OCR). Opcional quando o utilizador em vendor_data já possui uma imagem de rosto guardada: a Didit reutiliza-a automaticamente, resolvida pela seguinte ordem de prioridade: rosto de prova de vida aprovado, fotografia do chip de ePassport, retrato do documento de identificação, rosto de perfil registado manualmente (apenas rostos de sessões aprovadas ou rostos registados por si são reutilizados). Quando fornecida, portrait_image tem sempre precedência sobre o rosto guardado. Se for omitida e não existir nenhum rosto guardado (ou vendor_data não for enviado), a criação da sessão falha com 400. Ignorado para outros tipos de fluxo.
Slug de cenário exclusivo da sandbox. Só é aceite quando a chave de API pertence a uma aplicação em modo sandbox; é rejeitado em aplicações de produção. Quando definido, o fluxo de criação expande os valores mágicos incluídos no cenário para os campos de entrada da sessão (contact_details, expected_details) para que os fornecedores simulados reproduzam o resultado do cenário através do pipeline real do fluxo. Consulte o catálogo de cenários em GET /v1/sandbox/scenarios/ ou Sandbox e dados de teste. Também pode armar (ou rearmar) um cenário após a criação através de POST /v3/session/{sessionId}/sandbox/arm/, desde que a sessão ainda esteja em Not Started. Para pesquisas que não sejam de documentos, utilize lookup_partial_match, lookup_no_match ou lookup_provider_error para testar o orçamento de tentativas configurado e o fallback. Para carteiras de identidade, utilize wallet_cancelled, wallet_timeout ou wallet_provider_error; approve simula uma carteira verificada. Todas as carteiras do catálogo podem ser testadas na sandbox, incluindo esquemas indisponíveis em aplicações de produção. As tentativas simuladas não são cobradas.
Entrada de Assinatura eletrónica para esta sessão. documents são os documentos a assinar, para um fluxo cujo passo de Assinatura eletrónica obtém documentos da sessão (signature_documents_source como session ou both): até 20 documentos e 50 MB no total. field_values preenche os campos cujo prefill seja api.<key>, tanto em documentos do fluxo como da sessão. Criar novamente uma sessão para o mesmo workflow_id e vendor_data devolve a sessão pendente; se essa chamada enviar sign, os seus documentos, campos e valores têm de ser idênticos aos primeiros, e qualquer diferença devolve 400 com {"sign": "signature_document_changed"}. Consulte Documentos de assinatura eletrónica.
Onde a pessoa reside, quando for do seu conhecimento: um código de subdivisão ISO 3166-2 (US-IL, ES-M) ou um código ou nome de estado dos EUA (IL, Illinois). Um estado cuja legislação exija consentimento biométrico explícito (Illinois, Texas, Colorado) faz com que o fluxo de verificação o solicite antes de capturar um rosto, com o acionador declared_state. Um valor não reconhecido devolve 400. Consulte Consentimento biométrico.
Consentimento biométrico explícito que já recolheu da pessoa. Cumpre o requisito, pelo que o fluxo de verificação não volta a pedir, e a decisão regista-o como status: "given" com o acionador customer_collected. Uma resposta que a pessoa já tenha dado no fluxo nunca é substituída. Consulte Consentimento biométrico.
Show child attributes
Resposta
Sessão criada (ou devolvida, se já existir uma sessão não finalizada com o mesmo vendor_data na versão publicada mais recente do fluxo). A resposta é a sessão serializada, incluindo o url de verificação alojada para o qual redirecionar o utilizador.
Token de 12 carateres seguro para URL que autoriza o utilizador final a aceder ao fluxo de verificação alojado em url. Válido até a sessão expirar. Trate-o como um segredo — qualquer pessoa que o possua pode abrir o fluxo de verificação para esta sessão.
URL de verificação alojado para o qual redirecionar o utilizador final. O URL incorpora o session_token e, se configurado, utiliza o seu domínio de marca branca. Quando o pedido inclui language, o URL contém um segmento de caminho de idioma — https://verify.didit.me/{language}/session/{session_token} (ex.: /es/session/...); sem language, o segmento é omitido.
Identificador transmitido no pedido para associar a sessão a um utilizador ou empresa no seu próprio sistema. Devolvido tal como foi enviado. Nulo quando não fornecido.
Payload JSON arbitrário que guardou com a sessão no momento da criação. Devolvido tal como enviado — qualquer valor JSON que enviou (objeto, string, número, array) é devolvido inalterado, embora se recomende um objeto JSON. Não visível para o utilizador final. Sempre presente nas respostas; null quando não fornecido no momento da criação.
Estado atual da sessão. Sessões recém-criadas devolvem Not Started. Se já existia uma sessão não terminada para os mesmos vendor_data na versão mais recente publicada do fluxo, o estado devolvido reflete essa sessão existente.
URL de redirecionamento final para onde o utilizador é enviado após concluir o fluxo. O Didit anexa ?verificationSessionId={session_id}&status={status} a este URL. Recai para o URL de retorno configurado no fluxo quando não for fornecido no pedido; null quando nenhum estiver definido. Quando a aplicação tem domínios permitidos e este URL for um URL web fora deles (por exemplo, uma predefinição do fluxo definida antes da alteração da lista), o fluxo alojado não redireciona o utilizador para ele.
Identificador estável do fluxo em que esta sessão é executada. É sempre o identificador de grupo estável do fluxo — mesmo que tenha referenciado o UUID de uma versão específica do fluxo no pedido (pesquisa compatível com versões anteriores), a resposta contém o workflow_id estável. Utilize-o para correlacionar a sessão com o fluxo configurado na Consola.
Número da versão publicada do fluxo à qual a sessão ficou associada no momento da criação. O Didit resolve o workflow_id para a versão publicada mais recente do fluxo quando a sessão é criada, e a sessão continua a executar essa versão mesmo que o fluxo seja republicado mais tarde.
{"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"},{"language":"de","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":"Anmelden","href":"https://business.didit.me"}},"href":"de"},{"language":"fr","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Assistance"},{"icon":"signal","href":"https://status.didit.me","label":"Statut"}],"primary":{"type":"button","label":"Se connecter","href":"https://business.didit.me"}},"href":"fr"},{"language":"it","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Supporto"},{"icon":"signal","href":"https://status.didit.me","label":"Stato"}],"primary":{"type":"button","label":"Accedi","href":"https://business.didit.me"}},"href":"it"},{"language":"pt","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suporte"},{"icon":"signal","href":"https://status.didit.me","label":"Estado"}],"primary":{"type":"button","label":"Iniciar sessão","href":"https://business.didit.me"}},"href":"pt"},{"language":"ca","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suport"},{"icon":"signal","href":"https://status.didit.me","label":"Estat"}],"primary":{"type":"button","label":"Inicia la sessió","href":"https://business.didit.me"}},"href":"ca"},{"language":"id","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Dukungan"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Masuk","href":"https://business.didit.me"}},"href":"id"},{"language":"ru","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":"ru"},{"language":"ko","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":"ko"},{"language":"zh","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":"zh"},{"language":"ar","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":"ar"},{"language":"hi","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":"hi"}]}},"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":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aef60ae8e01a92054befade","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"ar","tag":"مرجع API","count":432},{"language":"ca","tag":"Referència de l'API","count":432},{"language":"de","tag":"API-Referenz","count":432},{"language":"es","tag":"Referencia de la API","count":432},{"language":"fr","tag":"Référence API","count":432},{"language":"hi","tag":"API संदर्भ","count":432},{"language":"id","tag":"Referensi API","count":432},{"language":"it","tag":"Riferimento API","count":432},{"language":"ja","tag":"APIリファレンス","count":432},{"language":"ko","tag":"API 레퍼런스","count":432},{"language":"pt-BR","tag":"Referência da API","count":432},{"language":"pt","tag":"Referência da API","count":432},{"language":"ru","tag":"Справочник API","count":432},{"language":"zh","tag":"API 参考","count":432},{"language":"en","tag":"API Reference","count":424},{"language":"en","tag":"Database Validation","count":129},{"language":"ar","tag":"التحقق من قواعد البيانات","count":129},{"language":"ca","tag":"Validació en bases de dades","count":129},{"language":"de","tag":"Datenbankvalidierung","count":129},{"language":"es","tag":"Validación de base de datos","count":129},{"language":"fr","tag":"Validation en base de données","count":129},{"language":"hi","tag":"डेटाबेस सत्यापन","count":129},{"language":"id","tag":"Validasi Database","count":129},{"language":"it","tag":"Validazione su database","count":129},{"language":"ja","tag":"データベース検証","count":129},{"language":"ko","tag":"데이터베이스 검증","count":129},{"language":"pt-BR","tag":"Validação de banco de dados","count":129},{"language":"pt","tag":"Validação de base de dados","count":129},{"language":"ru","tag":"Проверка по базам данных","count":129},{"language":"zh","tag":"数据库核验","count":129},{"language":"ca","tag":"Primers passos","count":93},{"language":"de","tag":"Erste Schritte","count":93},{"language":"es","tag":"Primeros pasos","count":93},{"language":"ja","tag":"はじめに","count":93},{"language":"ko","tag":"시작하기","count":93},{"language":"pt-BR","tag":"Primeiros passos","count":93},{"language":"ru","tag":"Начало работы","count":93},{"language":"en","tag":"Get Started","count":87},{"language":"ar","tag":"ابدأ الآن","count":87},{"language":"fr","tag":"Commencer","count":87},{"language":"hi","tag":"शुरू करें","count":87},{"language":"id","tag":"Mulai","count":87},{"language":"it","tag":"Inizia","count":87},{"language":"pt","tag":"Começar","count":87},{"language":"zh","tag":"快速开始","count":87},{"language":"ko","tag":"인증","count":85},{"language":"en","tag":"User Verification","count":74},{"language":"ar","tag":"التحقق من المستخدمين","count":74},{"language":"ca","tag":"Verificació d'usuaris","count":74},{"language":"de","tag":"Benutzerverifizierung","count":74},{"language":"es","tag":"Verificación de usuarios","count":74},{"language":"fr","tag":"Vérification des utilisateurs","count":74},{"language":"hi","tag":"उपयोगकर्ता सत्यापन","count":74},{"language":"id","tag":"Verifikasi Pengguna","count":74},{"language":"it","tag":"Verifica degli utenti","count":74},{"language":"ja","tag":"ユーザー認証","count":74},{"language":"ko","tag":"사용자 인증","count":74},{"language":"pt-BR","tag":"Verificação de usuários","count":74},{"language":"pt","tag":"Verificação de utilizadores","count":74},{"language":"ru","tag":"Проверка пользователей","count":74},{"language":"zh","tag":"用户验证","count":74},{"language":"en","tag":"Integrate / SDKs","count":62},{"language":"ar","tag":"التكامل / SDKs","count":62},{"language":"ca","tag":"Integració / SDK","count":62},{"language":"de","tag":"Integrieren / SDKs","count":62},{"language":"es","tag":"Integración / SDKs","count":62},{"language":"fr","tag":"Intégrer / SDK","count":62},{"language":"hi","tag":"इंटीग्रेट करें / SDK","count":62},{"language":"id","tag":"Integrasi / SDK","count":62},{"language":"it","tag":"Integrazione / SDK","count":62},{"language":"ja","tag":"連携 / SDK","count":62},{"language":"ko","tag":"연동 / SDK","count":62},{"language":"pt-BR","tag":"Integração / SDKs","count":62},{"language":"pt","tag":"Integrar / SDKs","count":62},{"language":"ru","tag":"Интеграция / SDK","count":62},{"language":"zh","tag":"集成 / SDK","count":62},{"language":"en","tag":"Travel Rule","count":55},{"language":"ar","tag":"Travel Rule","count":55},{"language":"ca","tag":"Travel Rule","count":55},{"language":"de","tag":"Travel Rule","count":55},{"language":"es","tag":"Travel Rule","count":55},{"language":"fr","tag":"Travel Rule","count":55},{"language":"hi","tag":"Travel Rule","count":55},{"language":"id","tag":"Travel Rule","count":55},{"language":"it","tag":"Travel Rule","count":55},{"language":"ja","tag":"トラベルルール","count":55},{"language":"ko","tag":"Travel Rule","count":55},{"language":"pt-BR","tag":"Travel Rule","count":55},{"language":"pt","tag":"Travel Rule","count":55},{"language":"ru","tag":"Travel Rule","count":55},{"language":"zh","tag":"Travel Rule","count":55},{"language":"en","tag":"Verification","count":48},{"language":"ar","tag":"التحقق","count":48},{"language":"ca","tag":"Verificació","count":48},{"language":"de","tag":"Verifizierung","count":48},{"language":"es","tag":"Verificación","count":48},{"language":"fr","tag":"Vérification","count":48},{"language":"hi","tag":"सत्यापन","count":48},{"language":"id","tag":"Verifikasi","count":48},{"language":"it","tag":"Verifica","count":48},{"language":"ja","tag":"検証","count":48},{"language":"pt-BR","tag":"Verificação","count":48},{"language":"pt","tag":"Verificação","count":48},{"language":"ru","tag":"Верификация","count":48},{"language":"zh","tag":"验证","count":48},{"language":"en","tag":"Authentication","count":37},{"language":"ar","tag":"المصادقة","count":37},{"language":"ca","tag":"Autenticació","count":37},{"language":"de","tag":"Authentifizierung","count":37},{"language":"es","tag":"Autenticación","count":37},{"language":"fr","tag":"Authentification","count":37},{"language":"hi","tag":"प्रमाणीकरण","count":37},{"language":"id","tag":"Autentikasi","count":37},{"language":"it","tag":"Autenticazione","count":37},{"language":"ja","tag":"認証","count":37},{"language":"pt-BR","tag":"Autenticação","count":37},{"language":"pt","tag":"Autenticação","count":37},{"language":"ru","tag":"Аутентификация","count":37},{"language":"zh","tag":"身份认证","count":37},{"language":"en","tag":"Digital ID wallets","count":35},{"language":"en","tag":"User and Business Verifications","count":35},{"language":"ar","tag":"محافظ الهوية الرقمية","count":35},{"language":"ar","tag":"التحقق من المستخدمين والشركات","count":35},{"language":"ca","tag":"Carteres d'identitat digital","count":35},{"language":"ca","tag":"Verificacions d'usuaris i empreses","count":35},{"language":"de","tag":"Digitale ID-Wallets","count":35},{"language":"de","tag":"Benutzer- und Unternehmensverifizierungen","count":35},{"language":"es","tag":"Wallets de identidad digital","count":35},{"language":"es","tag":"Verificaciones de usuarios y empresas","count":35},{"language":"fr","tag":"Portefeuilles d'identité numérique","count":35},{"language":"fr","tag":"Vérifications des utilisateurs et des entreprises","count":35},{"language":"hi","tag":"डिजिटल ID वॉलेट","count":35},{"language":"hi","tag":"उपयोगकर्ता और व्यवसाय सत्यापन","count":35},{"language":"id","tag":"Dompet ID Digital","count":35},{"language":"id","tag":"Verifikasi Pengguna dan Bisnis","count":35},{"language":"it","tag":"Wallet di identità digitale","count":35},{"language":"it","tag":"Verifiche di utenti e aziende","count":35},{"language":"ja","tag":"デジタルIDウォレット","count":35},{"language":"ja","tag":"ユーザーと企業の認証","count":35},{"language":"ko","tag":"디지털 신분증 지갑","count":35},{"language":"ko","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},{"language":"pt","tag":"Carteiras de identidade digital","count":35},{"language":"pt","tag":"Verificações de utilizadores e empresas","count":35},{"language":"ru","tag":"Цифровые ID-кошельки","count":35},{"language":"ru","tag":"Верификация пользователей и компаний","count":35},{"language":"zh","tag":"数字身份钱包","count":35},{"language":"zh","tag":"用户与企业验证","count":35},{"language":"ko","tag":"거래 모니터링","count":28}]},"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":"rbac-expansion","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":"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":"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":"editor-metadata","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},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","href":"/_mintlify/custom/didit-0f962782/714dd91730ddd114/style.css"}],"page":{"pagePath":"pt/sessions-api/create-session","slug":"/pt/sessions-api/create-session","pageMetadata":{"title":"API de criação de sessão: iniciar verificação KYC ou KYB","sidebarTitle":"Criar sessão","description":"POST /v3/session/ inicia a verificação. Endpoint KYC e KYB unificado da Didit, pago por utilização, inferência abaixo de 2s, $10 grátis/mês.","keywords":["API criar sessão","API de sessão de verificação","API de sessão KYC","API de sessão KYB","API de verificação de identidade","POST /v3/session","KYC pago por chamada","$0.33 KYC completo","verificação de identidade sem contrato","API Didit"],"openapi":"pt/openapi-25.json POST /v3/session/","href":"/pt/sessions-api/create-session"},"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: \"POST /v3/session/ inicia a verificação. Endpoint KYC e KYB unificado da Didit, pago por utilização, inferência abaixo de 2s, $10 grátis/mês.\"\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_qsruim={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:`貼り付け先`},\"de\":{copy:`Kopieren`,copied:`Kopiert`,copyTitle:`Prompt in die Zwischenablage kopieren`,copiedTitle:`Kopiert!`,pasteInto:`Einfügen in`},\"fr\":{copy:`Copier`,copied:`Copié`,copyTitle:`Copier le prompt dans le presse-papiers`,copiedTitle:`Copié !`,pasteInto:`Coller dans`},\"it\":{copy:`Copia`,copied:`Copiato`,copyTitle:`Copia il prompt negli appunti`,copiedTitle:`Copiato!`,pasteInto:`Incolla in`},\"pt-PT\":{copy:`Copiar`,copied:`Copiado`,copyTitle:`Copiar o prompt para a área de transferência`,copiedTitle:`Copiado!`,pasteInto:`Colar em`},\"ca\":{copy:`Copia`,copied:`Copiat`,copyTitle:`Copia el prompt al porta-retalls`,copiedTitle:`Copiat!`,pasteInto:`Enganxa a`},\"id\":{copy:`Salin`,copied:`Disalin`,copyTitle:`Salin prompt ke papan klip`,copiedTitle:`Disalin!`,pasteInto:`Tempel ke`},\"ru\":{copy:`Копировать`,copied:`Скопировано`,copyTitle:`Скопировать промпт в буфер обмена`,copiedTitle:`Скопировано!`,pasteInto:`Вставьте в`},\"ko\":{copy:`복사`,copied:`복사됨`,copyTitle:`프롬프트를 클립보드에 복사`,copiedTitle:`복사됨!`,pasteInto:`붙여넣을 곳`},\"zh\":{copy:`复制`,copied:`已复制`,copyTitle:`将提示词复制到剪贴板`,copiedTitle:`已复制!`,pasteInto:`粘贴到`},\"ar\":{copy:`نسخ`,copied:`تم النسخ`,copyTitle:`نسخ الموجّه إلى الحافظة`,copiedTitle:`تم النسخ!`,pasteInto:`الصق في`},\"hi\":{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_qsruim[lang]||__snippet_AGENT_PROMPT_LABELS_qsruim.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`,code:`code`,em:`em`,li:`li`,ol:`ol`,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,Tab,Table,Tabs,Warning,_MdxComponentBoundary}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);if(!Warning)_missingMdxReference(`Warning`,true);if(!_MdxComponentBoundary)_missingMdxReference(`_MdxComponentBoundary`,true);return _jsxs(_Fragment,{children:[_jsx(_MdxComponentBoundary,{name:`AgentPromptAccordion`,children:_jsx(AgentPromptAccordion,{lang:`pt-PT`,title:`Prompt para criar sessão`,prompt:`Create a verification session via Didit's REST API.\n\nEndpoint:\nPOST https://verification.didit.me/v3/session/\n\nAuthentication:\nUse the x-api-key header with your Didit API key. The workflow's type (KYC or KYB) determines which kind of session is created — there is no separate endpoint for KYB.\n\nRequest body:\n- workflow_id (string, UUID, required) — Stable workflow UUID from /v3/workflows/. KYC workflows create User Verification sessions; KYB workflows create Business Verification sessions.\n- vendor_data (string, optional) — Your stable identifier for the entity (user or business). Strongly recommended: it binds the session to a User or Business entity and is used for duplicate detection across sessions.\n- callback (string, URL, optional): Where the hosted flow redirects the user when finished. Didit appends ?verificationSessionId={session_id}\u0026status={status}. Falls back to the workflow default. When the application has allowed domains (allowed_domains on PATCH /v3/webhook/), an http or https callback must be on one of those origins (same scheme, host and port), otherwise creation fails with 400 on callback: \"callback must be on one of the application's allowed domains: https://app.example.com\". Custom URL schemes (app deep links such as myapp://) are always accepted. A workflow-default callback outside the allowed domains is not used for the redirect.\n- callback_method (string, optional, default \"initiator\") — One of \"initiator\", \"completer\", \"both\". Use \"both\" if the callback sometimes fails to fire.\n- metadata (object, optional) — Arbitrary JSON echoed back in responses and webhooks. Not shown to the user.\n- tags (array of strings, optional): Tags added to the session when it is created, by name, for example [\"VIP\", \"ONBOARDING Q4\"]. Up to 10, each up to 50 characters. Names are case-insensitive and stored in upper case; a name that does not exist yet in the application is created as a new tag. The tags show on the session in the console, where you can filter by them, and come back in the create response.\n- language (string, optional) — ISO 639-1 code for the verification UI (en, es, fr, de, pt, etc.). Defaults to browser detection.\n- contact_details (object, optional) — { email, send_notification_emails, email_lang, phone }. Pre-fills phone/email steps and (optionally) sends notification emails.\n- expected_details (object, optional) — Expected first_name, last_name, date_of_birth, nationality (ISO-3), id_country (ISO-3), expected_document_types (e.g. [\"P\",\"ID\",\"DL\",\"RP\",\"SSC\"]). Mismatches surface as decision warnings. For Business Verification (KYB) workflows, pass the business fields instead — company_name, registry_country, registration_number — to pre-fill the company registry search; registry_country is ISO 3166-1 alpha-2 and can include the state for state-level registries (e.g. \"US-CA\"), same format as the KYB Registry Search country_code. Person-level fields are ignored on KYB sessions.\n- portrait_image (string, base64, conditional) — Reference face for Biometric Authentication workflows (and graph workflows where Face Match runs before ID Verification). Max 2MB; JPEG, PNG, WebP, or TIFF. Optional when the vendor_data user already has a stored face: Didit reuses it automatically (approved liveness face, then ePassport chip photo, then ID document portrait, then a manually enrolled profile face). If omitted and no stored face exists, creation fails with 400. Ignored for other workflow types.\n- multi_account_segment (string, optional, max 64 chars) — Duplicate-detection realm inside your own organization. Duplicate face checks only compare this session against other sessions carrying the same segment, so an organization that runs separate account bases (personal vs business, or one per sub-client) does not see a person who legitimately holds one account in each reported as a duplicate. Omit it to use the single default realm — which is what every session uses today, so existing integrations are unaffected. Blocklist and allowlist matching ignore this field: a blocklisted face stays blocklisted in every segment.\n- sandbox_scenario (string, optional, sandbox applications only): Scenario slug from the sandbox catalog (GET /v1/sandbox/scenarios/). Expands the scenario's bundled magic values onto contact_details/expected_details so the session reproduces that outcome. Rejected with 400 on live applications. You can also arm or re-arm a scenario after create, as long as the session is still Not Started, via POST /v3/session/{session_id}/sandbox/arm/. See /integration/sandbox-testing.\n- user_state (string, optional, max 16 chars): Where the person lives, when you know it: an ISO 3166-2 code (US-IL) or a US state code or name (IL, Illinois). In Auto consent mode, Illinois, Texas or Colorado makes the flow ask for explicit biometric consent before the first face capture. 400 on an unrecognized value.\n- biometric_consent (object, optional): Consent you already collected: { given_at (ISO 8601, not in the future), text_version (max 64 chars) }. The flow does not ask again; the decision records it as given with trigger customer_collected.\n- sign (object, optional): { documents: [ { title, file_name, content_base64, fields } ], field_values: { \u003ckey>: value } }. documents is for a workflow whose E-signature step takes documents from the session (signature_documents_source \"session\" or \"both\"). file_name ends in .pdf or .docx; content_base64 is the file in base64. Up to 20 documents and 50 MB in total; a PDF up to 20 MB and 100 pages, without a password, scripts or attachments; a Word file (.docx) up to 20 MB, converted to PDF while the request runs, at most 5 per session. fields is optional (up to 200 per document): signature, initials, full_name, date_signed, text, checkbox, email or data fields, each with a key unique in its document (^[a-z][a-z0-9_]{0,63}$), placed by page, x, y, width and height, or by anchor text ({ text, occurrence, offset_x, offset_y, width, height }). role defaults to the step's signer. field_values fills the fields whose prefill is \"api.\u003ckey>\", on workflow and session documents alike: strings of 1 to 500 characters, booleans for checkboxes. 400 when the workflow has no E-signature step, takes workflow documents only and you sent documents, or needs session documents you didn't send; field_anchor_not_found, field_value_unknown, field_value_missing or field_value_invalid for fields and values. See /core-technology/electronic-signature/overview.\n\nIdempotency:\nWithin one application, only one non-finished session can exist per (workflow_id, vendor_data). Calling create again with the same pair returns the existing session (and updates its callback + metadata, and adds any tags you send) instead of creating a duplicate. If you send sign again, its documents, fields and field values must be identical (same order, titles, file names, content, fields and values), or the call returns 400 { \"sign\": \"signature_document_changed\" }.\n\ncurl example:\ncurl -X POST https://verification.didit.me/v3/session/ \\\\\n-H \"x-api-key: \u003cAPI_KEY>\" \\\\\n-H \"Content-Type: application/json\" \\\\\n-d '{\n\"workflow_id\": \"\u003cWORKFLOW_ID>\",\n\"vendor_data\": \"user-42\",\n\"callback\": \"https://yourapp.com/callback\",\n\"metadata\": { \"plan\": \"premium\" }\n}'\n\nResponse (201 Created) — keys you must handle:\n- session_id (UUID) — use this on every subsequent /v3/session/{session_id}/... call.\n- session_kind (\"user\" | \"business\") — discriminator, dispatch on this.\n- session_number (int) — human-friendly per-application sequence.\n- session_token (string) — short-lived, embedded in the hosted URL. Treat as secret.\n- url (string) — hosted verification URL. Redirect the end user here. (Field name is \"url\", NOT \"verification_url\".)\n- status (string) — newly created sessions return \"Not Started\".\n- workflow_id, workflow_version, vendor_data, metadata, callback — echoed back.\n\nSee /reference/data-models for the full schema.\n\nFailure modes:\n- 400 — { \"workflow_id\": [\"Invalid workflow_id.\"] } when the UUID is unknown.\n- 400 — { \"vendor_data\": [\"This user or business has been blocked and cannot create new verification sessions.\"] } when blocklisted.\n- 400 — { \"detail\": \"You don't have enough credits to perform this request. Please top up at https://business.didit.me\" } when out of credits.\n- 400 — { \"portrait_image\": \"No stored face image was found for this user. Send a portrait_image, or complete an approved verification with face liveness or an ID document for this vendor_data first.\" } on a Face Match workflow when portrait_image is omitted and the vendor_data user has no stored face.\n- 401 — invalid or missing API key.\n- 403 — { \"detail\": \"You do not have permission to perform this action.\" } when the key lacks write:sessions.\n- 429 — rate limited (600 successful calls/minute per token/IP). Honour Retry-After.\n\nDisclosure \u0026 consent:\nThis endpoint generates a URL — it does not record that you obtained user consent. Show your privacy notice and any biometric-specific consent in your own UX before redirecting to the hosted flow.\nFor people covered by Illinois, Texas or Colorado law, the hosted flow and native SDK 4.10.0 or later can ask for explicit biometric consent before the selfie; native SDKs below 4.10.0 cannot show that step. See /getting-started/biometric-consent.\n\nNext step:\nAfter the user finishes (status changes to Approved / Declined / In Review), call GET https://verification.didit.me/v3/session/{session_id}/decision/ for the full decision — see /sessions-api/retrieve-session.\n\nFor end-to-end Didit integration, paste in the full prompt at /integration/integration-prompt.`})}),`\n`,_jsx(Heading,{level:`2`,id:`suporte-a-kyc-e-kyb`,children:`Suporte a KYC e KYB`}),`\n`,_jsxs(_components.p,{children:[`Um único endpoint cria sessões de Verificação de utilizadores e de Verificação de empresas. O `,_jsx(_components.strong,{children:`tipo do fluxo`}),` determina qual delas é criada:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Passe o `,_jsx(_components.code,{children:`workflow_id`}),` de um `,_jsx(_components.strong,{children:`fluxo de KYC`}),` → é criada uma sessão de Verificação de utilizadores (KYC). Resposta `,_jsx(_components.code,{children:`session_kind: \"user\"`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Passe o `,_jsx(_components.code,{children:`workflow_id`}),` de um fluxo de KYB → é criada uma sessão de Verificação de empresas (KYB). Resposta `,_jsx(_components.code,{children:`session_kind: \"business\"`}),`.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Configure os fluxos na consola em `,_jsx(_components.em,{children:`Workflows → Create workflow`}),`. Um fluxo é de KYC ou de KYB no momento da criação; depois não é possível mudar de tipo.`]}),`\n`,_jsx(Heading,{level:`2`,id:`exemplos`,children:`Exemplos`}),`\n`,_jsxs(Tabs,{children:[_jsxs(Tab,{title:`Verificação de utilizadores (KYC)`,id:`verifica%C3%A7%C3%A3o-de-utilizadores-kyc`,children:[_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`shellscript`,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:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`8`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://verification.didit.me/v3/session/`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-api-key: YOUR_API_KEY\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"workflow_id\": \"YOUR_KYC_WORKFLOW_ID\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"vendor_data\": \"user-42\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"callback\": \"https://yourapp.com/callback\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Resposta (201 Created):`})}),_jsx(CodeBlock,{filename:``,numberOfLines:`10`,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:`10`,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:` \"session_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"4c5c7f3a-1f82-4f3b-8d8e-1a8d2d2f9b7a\"`}),_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_kind\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"user\"`}),_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_number\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1024`}),_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_token\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},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:` \"url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://verify.didit.me/session/...\"`}),_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:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Not Started\"`}),_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_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"YOUR_KYC_WORKFLOW_ID\"`}),_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:` \"vendor_data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"user-42\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]}),_jsxs(Tab,{title:`Verificação de empresas (KYB)`,id:`verifica%C3%A7%C3%A3o-de-empresas-kyb`,children:[_jsx(CodeBlock,{filename:``,numberOfLines:`8`,language:`shellscript`,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:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`8`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`curl`}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -X`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` POST`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://verification.didit.me/v3/session/`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"x-api-key: YOUR_API_KEY\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -H`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"Content-Type: application/json\"`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#D7BA7D`},children:` \\\\`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:` -d`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` '{`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"workflow_id\": \"YOUR_KYB_WORKFLOW_ID\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"vendor_data\": \"biz-acme-001\",`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` \"callback\": \"https://yourapp.com/callback\"`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` }'`})}),`\n`]})})}),_jsx(_components.p,{children:_jsx(_components.strong,{children:`Resposta (201 Created):`})}),_jsx(CodeBlock,{filename:``,numberOfLines:`10`,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:`10`,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:` \"session_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"bs-01HJX1...\"`}),_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_kind\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"business\"`}),_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_number\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`89`}),_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_token\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},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:` \"url\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"https://verify.didit.me/session/...\"`}),_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:` \"status\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Not Started\"`}),_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_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"YOUR_KYB_WORKFLOW_ID\"`}),_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:` \"vendor_data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"biz-acme-001\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`documentos-de-assinatura-eletrónica`,children:`Documentos de assinatura eletrónica`}),`\n`,_jsxs(_components.p,{children:[`Quando o fluxo tem um passo de `,_jsx(_components.a,{href:`/pt/core-technology/electronic-signature/overview`,children:`Assinatura eletrónica`}),` que recebe os documentos da sessão (`,_jsx(_components.code,{children:`signature_documents_source`}),` definido como `,_jsx(_components.code,{children:`session`}),` ou `,_jsx(_components.code,{children:`both`}),`), envie-os em `,_jsx(_components.code,{children:`sign.documents`}),`. Cada documento é o ficheiro em base64, para que a Didit nunca tenha de o obter a partir de um URL.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`20`,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:`20`,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_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"YOUR_WORKFLOW_ID\"`}),_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:` \"vendor_data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"user-42\"`}),_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:` \"sign\"`}),_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\"`}),_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:` \"title\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Loan agreement\"`}),_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:` \"file_name\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"loan-agreement.pdf\"`}),_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:` \"content_base64\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"JVBERi0xLjcKJc...\"`}),_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:`\"borrower_signature\"`}),_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:`\"signature\"`}),_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:`\"Borrower signature\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"page\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`3`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"x\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"y\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.78`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"width\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.32`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"height\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.06`}),_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:`\"date_signed\"`}),_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:`\"date_signed\"`}),_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:`\"Date\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"page\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`3`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"x\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.6`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"y\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.8`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"width\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.2`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"height\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.03`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"date_format\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"DD/MM/YYYY\"`}),_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:`\"loan_amount\"`}),_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:`\"data\"`}),_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:`\"Loan amount\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"page\"`}),_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:`\"x\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.34`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"y\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.31`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"width\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.3`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"height\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.03`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"prefill\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"api.loan_amount\"`}),_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:`\"initials\"`}),_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:`\"initials\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"anchor\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"text\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"[[initials]]\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"occurrence\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"all\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"offset_x\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"offset_y\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`-0.005`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"width\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.12`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"height\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0.04`}),_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:` \"field_values\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"loan_amount\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"12,000 EUR\"`}),_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(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Campo`}),_jsx(_components.th,{children:`Regras`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`title`})}),_jsxs(_components.td,{children:[`Apresentado ao signatário. 1 a 255 caracteres. Predefinido como `,_jsx(_components.code,{children:`file_name`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`file_name`})}),_jsxs(_components.td,{children:[`Obrigatório. Termina em `,_jsx(_components.code,{children:`.pdf`}),` ou `,_jsx(_components.code,{children:`.docx`}),`. 1 a 255 caracteres.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`content_base64`})}),_jsx(_components.td,{children:`Obrigatório. Um PDF pode ter até 20 MB e 100 páginas, sem palavra-passe, scripts nem ficheiros anexados. Um ficheiro Word pode ter até 20 MB e é convertido em PDF durante o pedido, em no máximo 25 segundos; o PDF tem depois os mesmos limites. Até 5 ficheiros Word por sessão.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`fields`})}),_jsxs(_components.td,{children:[`Opcional. Até 200 `,_jsx(_components.a,{href:`/pt/core-technology/electronic-signature/overview#campos-no-documento`,children:`campos`}),` a colocar no documento, na estrutura de campo sem `,_jsx(_components.code,{children:`id`}),`. Cada campo precisa de um `,_jsx(_components.code,{children:`key`}),` e de um `,_jsx(_components.code,{children:`type`}),`, e de uma posição (`,_jsx(_components.code,{children:`page`}),`, `,_jsx(_components.code,{children:`x`}),`, `,_jsx(_components.code,{children:`y`}),`, `,_jsx(_components.code,{children:`width`}),` e `,_jsx(_components.code,{children:`height`}),`) ou de uma `,_jsx(_components.a,{href:`#colocar-campos-por-texto-de-%C3%A2ncora`,children:_jsx(_components.code,{children:`anchor`})}),`. `,_jsx(_components.code,{children:`role`}),` predefine-se para o signatário do passo, e `,_jsx(_components.code,{children:`required`}),` e `,_jsx(_components.code,{children:`label`}),` predefinem-se a partir do tipo. A Didit define `,_jsx(_components.code,{children:`position`}),` a partir do local onde o campo se encontra. As páginas e as posições referem-se ao PDF, ou ao PDF convertido no caso de um ficheiro Word.`]})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Sem `,_jsx(_components.code,{children:`fields`}),`, o signatário lê o documento e concorda com ele.`]}),`\n`,_jsx(Heading,{level:`3`,id:`colocar-campos-por-texto-de-âncora`,children:`Colocar campos por texto de âncora`}),`\n`,_jsxs(_components.p,{children:[`Em vez de uma posição, um campo pode ter uma `,_jsx(_components.code,{children:`anchor`}),`: um trecho de texto no documento que marca onde o campo fica. As âncoras são indicadas para documentos que gera para cada sessão, por exemplo a partir de um modelo Word. Nos documentos do fluxo, coloque os campos na consola.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsxs(_components.th,{children:[`Propriedade de `,_jsx(_components.code,{children:`anchor`})]}),_jsx(_components.th,{children:`Regras`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`text`})}),_jsx(_components.td,{children:`1 a 64 caracteres, pesquisados no texto do documento. No caso de um ficheiro Word, no PDF convertido.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`occurrence`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`first`}),` (predefinido) coloca um campo na primeira correspondência. `,_jsx(_components.code,{children:`all`}),` coloca um campo por correspondência, e as chaves a seguir à primeira recebem `,_jsx(_components.code,{children:`_2`}),`, `,_jsx(_components.code,{children:`_3`}),` e assim por diante.`]})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`offset_x`}),`, `,_jsx(_components.code,{children:`offset_y`})]}),_jsx(_components.td,{children:`Frações da página. O canto superior esquerdo do campo é o canto superior esquerdo do texto da âncora somado a estes deslocamentos.`})]}),_jsxs(_components.tr,{children:[_jsxs(_components.td,{children:[_jsx(_components.code,{children:`width`}),`, `,_jsx(_components.code,{children:`height`})]}),_jsx(_components.td,{children:`O tamanho do campo, como frações da página.`})]})]})]}),`\n`,_jsxs(_components.p,{children:[`Quando o texto não existe no documento, a chamada devolve `,_jsx(_components.code,{children:`400`}),` com `,_jsx(_components.code,{children:`field_anchor_not_found`}),` e a chave do campo. A Didit não remove o texto da âncora do PDF, por isso escreva-o na mesma cor do fundo da página.`]}),`\n`,_jsx(Heading,{level:`3`,id:`valores-dos-campos`,children:`Valores dos campos`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`sign.field_values`}),` define o valor de cada campo cujo `,_jsx(_components.code,{children:`prefill`}),` é `,_jsx(_components.code,{children:`api.\u003ckey>`}),`, tanto nos documentos do fluxo como nos documentos da sessão. É um objeto indexado por esses nomes `,_jsx(_components.code,{children:`\u003ckey>`}),`. Os valores são cadeias de 1 a 500 caracteres para os campos `,_jsx(_components.code,{children:`text`}),` e `,_jsx(_components.code,{children:`data`}),`, e booleanos para um `,_jsx(_components.code,{children:`checkbox`}),`.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`7`,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:`7`,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_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"YOUR_WORKFLOW_ID\"`}),_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:` \"vendor_data\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"user-42\"`}),_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:` \"sign\"`}),_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_values\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"credit_limit\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"3,000 EUR\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"monthly_fee\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"4.90 EUR\"`}),_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(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsxs(_components.th,{children:[`Erro (`,_jsx(_components.code,{children:`400`}),`)`]}),_jsx(_components.th,{children:`Quando ocorre`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`field_value_unknown`})}),_jsx(_components.td,{children:`Uma chave que nenhum campo usa.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`field_value_missing`})}),_jsxs(_components.td,{children:[`Um campo obrigatório cujo `,_jsx(_components.code,{children:`api.\u003ckey>`}),` não tem valor.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`field_value_invalid`})}),_jsxs(_components.td,{children:[`Um valor que não cumpre a `,_jsx(_components.a,{href:`/pt/core-technology/electronic-signature/overview#valida%C3%A7%C3%A3o`,children:`validação`}),` do seu campo.`]})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`erros-e-chamadas-repetidas`,children:`Erros e chamadas repetidas`}),`\n`,_jsxs(_components.p,{children:[`Uma sessão aceita até 20 documentos e 50 MB no total. A chamada devolve `,_jsx(_components.code,{children:`400`}),` com um erro de `,_jsx(_components.code,{children:`sign`}),` quando:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`O fluxo não tem passo de Assinatura eletrónica.`}),`\n`,_jsxs(_components.li,{children:[`Enviou `,_jsx(_components.code,{children:`sign.documents`}),` e o passo só aceita documentos do fluxo.`]}),`\n`,_jsx(_components.li,{children:`O passo aceita apenas documentos da sessão e não enviou nenhum, ou não tem documentos do fluxo e não enviou nenhum.`}),`\n`,_jsx(_components.li,{children:`Um documento é demasiado grande, não é base64 válido ou não é um ficheiro suportado.`}),`\n`,_jsxs(_components.li,{children:[`Um ficheiro Word é recusado com `,_jsx(_components.code,{children:`signature_document_not_supported`}),`, ou não pode ser convertido e devolve `,_jsx(_components.code,{children:`signature_document_conversion_failed`}),`, cada um com o `,_jsx(_components.code,{children:`reason`}),` indicado em `,_jsx(_components.a,{href:`/pt/core-technology/electronic-signature/overview#ficheiros-suportados`,children:`Ficheiros suportados`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Um campo é inválido, a sua âncora não é encontrada (`,_jsx(_components.code,{children:`field_anchor_not_found`}),`), ou um `,_jsx(_components.a,{href:`#valores-dos-campos`,children:`valor de campo`}),` é recusado.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Voltar a chamar a operação de criação para o mesmo `,_jsx(_components.code,{children:`workflow_id`}),` e `,_jsx(_components.code,{children:`vendor_data`}),` devolve a sessão pendente. Se essa chamada enviar `,_jsx(_components.code,{children:`sign`}),`, os seus documentos, campos e valores de campos têm de ser idênticos aos da primeira (mesma ordem, títulos, nomes de ficheiros, conteúdo, campos e valores). Qualquer diferença devolve `,_jsx(_components.code,{children:`400`}),` com `,_jsx(_components.code,{children:`{\"sign\": \"signature_document_changed\"}`}),`: use um `,_jsx(_components.code,{children:`vendor_data`}),` diferente ou aguarde até que a sessão pendente termine.`]}),`\n`,_jsx(Heading,{level:`2`,id:`testes-com-cenários-de-sandbox`,children:`Testes com cenários de sandbox`}),`\n`,_jsxs(_components.p,{children:[`Numa aplicação em modo sandbox, envie `,_jsx(_components.code,{children:`sandbox_scenario`}),` para pré-carregar um resultado determinístico (aprovação, uma recusa específica ou um cenário Em análise), sem contactar fornecedores reais nem tocar no seu saldo:`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`4`,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:`4`,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_id\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"YOUR_SANDBOX_WORKFLOW_ID\"`}),_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:` \"sandbox_scenario\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"decline_document_expired\"`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`sandbox_scenario`}),` é rejeitado com `,_jsx(_components.code,{children:`400`}),` em aplicações de produção. Se ainda não conhecer o resultado no momento da criação, configure (ou volte a configurar) o cenário mais tarde através de `,_jsx(_components.code,{children:`POST /v3/session/{session_id}/sandbox/arm/`}),`, desde que a sessão ainda esteja no estado `,_jsx(_components.code,{children:`Not Started`}),`: o seletor de cenários pré-fluxo do fluxo alojado usa este mesmo endpoint. Consulte `,_jsx(_components.a,{href:`/pt/integration/sandbox-testing`,children:`Sandbox e dados de teste`}),` para o catálogo completo de cenários, o registo de valores mágicos e o formato do pedido e da resposta do endpoint de configuração.`]}),`\n`,_jsxs(Heading,{level:`2`,id:`o-vendor_data-associa-a-sessão-a-uma-entidade`,children:[`O `,_jsx(_components.code,{children:`vendor_data`}),` associa a sessão a uma entidade`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Para fluxos de KYC: associa-se a uma `,_jsx(_components.a,{href:`/pt/entities/users/overview`,children:`entidade de utilizador`}),`. Se o utilizador não existir, é criado automaticamente.`]}),`\n`,_jsxs(_components.li,{children:[`Para fluxos de KYB: associa-se a uma `,_jsx(_components.a,{href:`/pt/entities/businesses/overview`,children:`entidade empresarial`}),`. Criada automaticamente se for nova.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Saiba mais em `,_jsx(_components.a,{href:`/pt/entities/vendor-data-linking`,children:`associação de dados do fornecedor`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`consentimento-biométrico-em-illinois-no-texas-e-no-colorado`,children:`Consentimento biométrico em Illinois, no Texas e no Colorado`}),`\n`,_jsx(_components.p,{children:`O fluxo alojado e o SDK nativo 4.10.0 ou posterior podem mostrar um passo de consentimento biométrico explícito antes da primeira captura facial, consoante o modo de consentimento da aplicação e o local onde a pessoa se encontra. Dois campos opcionais alimentam essa decisão:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`user_state`}),`: onde a pessoa reside, quando o souber (`,_jsx(_components.code,{children:`US-IL`}),`, `,_jsx(_components.code,{children:`IL`}),` ou `,_jsx(_components.code,{children:`Illinois`}),`). No modo Automático, um estado abrangido faz com que o fluxo peça o consentimento.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`biometric_consent`}),`: um objeto com `,_jsx(_components.code,{children:`given_at`}),` e `,_jsx(_components.code,{children:`text_version`}),`, para consentimento que já recolheu. O fluxo não volta a pedir.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Os SDK nativos anteriores à versão 4.10.0 não conseguem mostrar este passo: as respetivas sessões funcionam como antes e a decisão indica que o consentimento não foi recolhido. Consulte `,_jsx(_components.a,{href:`/pt/getting-started/biometric-consent`,children:`Consentimento biométrico`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`importante-a-divulgação-e-o-consentimento-continuam-a-ser-feitos-no-seu-produto`,children:`Importante: a divulgação e o consentimento continuam a ser feitos no seu produto`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.code,{children:`Create Session`}),` gera um URL de verificação e um token de sessão. Por si só, `,_jsx(_components.strong,{children:`não`}),` prova que mostrou ao utilizador as informações fornecidas ao utilizador ou que obteve o consentimento exigido pelo seu caso de utilização específico.`]}),`\n`,_jsx(_components.p,{children:`Se iniciar uma sessão Didit a partir da sua própria aplicação, website, wrapper de SDK ou fluxo com marca branca, deve tratar da componente jurídica na sua própria experiência de utilização antes de o utilizador iniciar a captura.`}),`\n`,_jsx(Heading,{level:`2`,id:`lista-de-verificação-recomendada-antes-da-verificação`,children:`Lista de verificação recomendada antes da verificação`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Informe o utilizador de que `,_jsx(_components.strong,{children:`a sua empresa`}),` está a pedir a verificação e de que a `,_jsx(_components.strong,{children:`Didit`}),` é o fornecedor de verificação / subcontratante que suporta o fluxo.`]}),`\n`,_jsxs(_components.li,{children:[`Ligue ao `,_jsx(_components.strong,{children:`seu aviso de privacidade`}),` e a quaisquer termos jurídicos do responsável pelo tratamento que se apliquem ao percurso.`]}),`\n`,_jsxs(_components.li,{children:[`Ligue ao `,_jsx(_components.a,{href:`https://didit.me/terms/verification-privacy-notice`,children:`Aviso de Privacidade de Verificação`}),` da Didit e aos `,_jsx(_components.a,{href:`https://didit.me/terms/identity-verification`,children:`Termos do Utilizador Final para Verificação de Identidade`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Se o seu fluxo incluir captura de documento, captura de selfie, prova de vida ou dados biométricos, recolha `,_jsx(_components.strong,{children:`consentimento explícito e afirmativo`}),` sempre que a lei aplicável ou a sua posição jurídica o exija.`]}),`\n`,_jsx(_components.li,{children:`Se utilizar uma interface personalizada, um domínio próprio ou um percurso apenas por API, apresente estas informações no seu próprio produto antes de enviar o utilizador para o fluxo da Didit.`}),`\n`,_jsx(_components.li,{children:`Guarde o seu próprio registo do texto do aviso ou do consentimento, da data e hora e dos metadados relacionados, se a sua equipa jurídica exigir um rasto de auditoria.`}),`\n`]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`As exigências legais variam consoante a jurisdição. A personalização com marca branca não elimina o papel da Didit no fluxo de verificação. Reveja a sua implementação com um advogado antes do lançamento se operar em jurisdições com regras específicas para dados biométricos.`})})]})}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_qsruim,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 de criação de sessão: iniciar verificação KYC ou KYB","sidebarTitle":"Criar sessão","description":"POST /v3/session/ inicia a verificação. Endpoint KYC e KYB unificado da Didit, pago por utilização, inferência abaixo de 2s, $10 grátis/mês.","keywords":["API criar sessão","API de sessão de verificação","API de sessão KYC","API de sessão KYB","API de verificação de identidade","POST /v3/session","KYC pago por chamada","$0.33 KYC completo","verificação de identidade sem contrato","API Didit"],"openapi":"pt/openapi-25.json POST /v3/session/","href":"/pt/sessions-api/create-session"}}},"mdxSourceWithNoJs":null,"noJsSplices":[[171,4204,"undefined;const AgentPromptAccordion=()=>null;function _crea"]]},"mdxExtracts":{"tableOfContents":[{"title":"Suporte a KYC e KYB","slug":"suporte-a-kyc-e-kyb","depth":2,"children":[]},{"title":"Exemplos","slug":"exemplos","depth":2,"children":[]},{"title":"Documentos de assinatura eletrónica","slug":"documentos-de-assinatura-eletrónica","depth":2,"children":[{"title":"Colocar campos por texto de âncora","slug":"colocar-campos-por-texto-de-âncora","depth":3,"children":[]},{"title":"Valores dos campos","slug":"valores-dos-campos","depth":3,"children":[]},{"title":"Erros e chamadas repetidas","slug":"erros-e-chamadas-repetidas","depth":3,"children":[]}]},{"title":"Testes com cenários de sandbox","slug":"testes-com-cenários-de-sandbox","depth":2,"children":[]},{"title":"O vendor_data associa a sessão a uma entidade","slug":"o-vendor_data-associa-a-sessão-a-uma-entidade","depth":2,"children":[]},{"title":"Consentimento biométrico em Illinois, no Texas e no Colorado","slug":"consentimento-biométrico-em-illinois-no-texas-e-no-colorado","depth":2,"children":[]},{"title":"Importante: a divulgação e o consentimento continuam a ser feitos no seu produto","slug":"importante-a-divulgação-e-o-consentimento-continuam-a-ser-feitos-no-seu-produto","depth":2,"children":[]},{"title":"Lista de verificação recomendada antes da verificação","slug":"lista-de-verificação-recomendada-antes-da-verificação","depth":2,"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 uma sessão de verificação","description":"POST /v3/session/ inicia a verificação. Endpoint KYC e KYB unificado da Didit, pago por utilização, inferência abaixo de 2s, $10 grátis/mês.","operationId":"post_v3_session_create","x-didit-sdk":{"resource":"sessions","method":"create","auth":"api_key","server":true},"tags":["Sessions"],"responses":{"201":"34bd4a23-06fd-45d3-bd51-cce79f0949a8","400":"e1ff06da-bb1d-4c35-8819-bfde163409b0","403":"56227800-5bb3-42a9-b57c-46f8e5756ebf","429":"94dd4fb0-4e06-4aa5-b861-be30a03d42cf"},"security":["5220ec55-1614-43d8-b780-3b3e135b1c95"],"x-codeSamples":[{"lang":"curl","label":"cURL","source":"curl -X POST 'https://verification.didit.me/v3/session/' \\\n -H 'x-api-key: YOUR_API_KEY' \\\n -H 'Content-Type: application/json' \\\n -d '{\n \"workflow_id\": \"11111111-2222-3333-4444-555555555555\",\n \"vendor_data\": \"user-123\",\n \"callback\": \"https://example.com/verification/callback\",\n \"callback_method\": \"both\",\n \"metadata\": {\"user_type\": \"premium\", \"account_id\": \"ABC123\"},\n \"language\": \"en\",\n \"contact_details\": {\n \"email\": \"john.doe@example.com\",\n \"send_notification_emails\": true,\n \"email_lang\": \"en\",\n \"phone\": \"+14155552671\"\n },\n \"expected_details\": {\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"date_of_birth\": \"1990-05-15\",\n \"id_country\": \"USA\",\n \"expected_document_types\": [\"P\", \"ID\"]\n }\n }'"},{"lang":"python","label":"Python","source":"from didit import Didit\n\n# Reads DIDIT_API_KEY.\nclient = Didit()\n\nresult = client.sessions.create(\n workflow_id=\"11111111-2222-3333-4444-555555555555\",\n vendor_data=\"user-123\",\n callback=\"https://example.com/verification/callback\",\n callback_method=\"both\",\n metadata={\"user_type\": \"premium\", \"account_id\": \"ABC123\"},\n language=\"en\",\n contact_details={\n \"email\": \"john.doe@example.com\",\n \"send_notification_emails\": True,\n \"email_lang\": \"en\",\n \"phone\": \"+14155552671\",\n },\n expected_details={\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"date_of_birth\": \"1990-05-15\",\n \"nationality\": \"USA\",\n \"id_country\": \"USA\",\n \"expected_document_types\": [\"P\", \"ID\"],\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.sessions.create({\n workflow_id: \"11111111-2222-3333-4444-555555555555\",\n vendor_data: \"user-123\",\n callback: \"https://example.com/verification/callback\",\n callback_method: \"both\",\n metadata: { user_type: \"premium\", account_id: \"ABC123\" },\n language: \"en\",\n contact_details: {\n email: \"john.doe@example.com\",\n send_notification_emails: true,\n email_lang: \"en\",\n phone: \"+14155552671\",\n },\n expected_details: {\n first_name: \"John\",\n last_name: \"Doe\",\n date_of_birth: \"1990-05-15\",\n nationality: \"USA\",\n id_country: \"USA\",\n expected_document_types: [\"P\", \"ID\"],\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.Sessions.Create(ctx, didit.SessionsCreateParams{\n\tWorkflowID: \"11111111-2222-3333-4444-555555555555\",\n\tVendorData: didit.String(\"user-123\"),\n\tCallback: didit.String(\"https://example.com/verification/callback\"),\n\tCallbackMethod: didit.Some(didit.SessionsCreateParamsCallbackMethod(\"both\")),\n\tMetadata: didit.Some[any](map[string]any{\"user_type\": \"premium\", \"account_id\": \"ABC123\"}),\n\tLanguage: didit.Some(didit.SessionsCreateParamsLanguage(\"en\")),\n\tContactDetails: didit.Some(didit.SessionsCreateParamsContactDetails{\n\t\tEmail: didit.String(\"john.doe@example.com\"),\n\t\tSendNotificationEmails: didit.Bool(true),\n\t\tEmailLang: didit.Some(didit.SessionsCreateParamsContactDetailsEmailLang(\"en\")),\n\t\tPhone: didit.String(\"+14155552671\"),\n\t}),\n\tExpectedDetails: didit.Some(didit.SessionsCreateParamsExpectedDetails{\n\t\tFirstName: didit.String(\"John\"),\n\t\tLastName: didit.String(\"Doe\"),\n\t\tDateOfBirth: didit.String(\"1990-05-15\"),\n\t\tNationality: didit.String(\"USA\"),\n\t\tIDCountry: didit.String(\"USA\"),\n\t\tExpectedDocumentTypes: didit.Some([]didit.SessionsCreateParamsExpectedDetailsExpectedDocumentTypes{\"P\", \"ID\"}),\n\t}),\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"},{"lang":"java","label":"Java","source":"import java.time.LocalDate;\nimport java.util.List;\nimport java.util.Map;\nimport me.didit.Didit;\nimport me.didit.types.SessionsCreateParams;\n\n// Reads DIDIT_API_KEY.\nDidit client = new Didit();\n\nvar result = client.sessions().create(SessionsCreateParams.builder()\n .workflowId(\"11111111-2222-3333-4444-555555555555\")\n .vendorData(\"user-123\")\n .callback(\"https://example.com/verification/callback\")\n .callbackMethod(SessionsCreateParams.CallbackMethod.of(\"both\"))\n .metadata(Map.of(\"user_type\", \"premium\", \"account_id\", \"ABC123\"))\n .language(SessionsCreateParams.Language.of(\"en\"))\n .contactDetails(SessionsCreateParams.ContactDetails.builder()\n .email(\"john.doe@example.com\")\n .sendNotificationEmails(true)\n .emailLang(SessionsCreateParams.ContactDetails.EmailLang.of(\"en\"))\n .phone(\"+14155552671\")\n .build())\n .expectedDetails(SessionsCreateParams.ExpectedDetails.builder()\n .firstName(\"John\")\n .lastName(\"Doe\")\n .dateOfBirth(LocalDate.parse(\"1990-05-15\"))\n .nationality(\"USA\")\n .idCountry(\"USA\")\n .expectedDocumentTypes(List.of(SessionsCreateParams.ExpectedDetails.ExpectedDocumentTypes.of(\"P\"), SessionsCreateParams.ExpectedDetails.ExpectedDocumentTypes.of(\"ID\")))\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->sessions->create([\n 'workflow_id' => '11111111-2222-3333-4444-555555555555',\n 'vendor_data' => 'user-123',\n 'callback' => 'https://example.com/verification/callback',\n 'callback_method' => 'both',\n 'metadata' => ['user_type' => 'premium', 'account_id' => 'ABC123'],\n 'language' => 'en',\n 'contact_details' => [\n 'email' => 'john.doe@example.com',\n 'send_notification_emails' => true,\n 'email_lang' => 'en',\n 'phone' => '+14155552671',\n ],\n 'expected_details' => [\n 'first_name' => 'John',\n 'last_name' => 'Doe',\n 'date_of_birth' => '1990-05-15',\n 'nationality' => 'USA',\n 'id_country' => 'USA',\n 'expected_document_types' => ['P', 'ID'],\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.sessions.create(\n workflow_id: \"11111111-2222-3333-4444-555555555555\",\n vendor_data: \"user-123\",\n callback: \"https://example.com/verification/callback\",\n callback_method: \"both\",\n metadata: { user_type: \"premium\", account_id: \"ABC123\" },\n language: \"en\",\n contact_details: {\n email: \"john.doe@example.com\",\n send_notification_emails: true,\n email_lang: \"en\",\n phone: \"+14155552671\",\n },\n expected_details: {\n first_name: \"John\",\n last_name: \"Doe\",\n date_of_birth: \"1990-05-15\",\n nationality: \"USA\",\n id_country: \"USA\",\n expected_document_types: [\"P\", \"ID\"],\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.Sessions.CreateAsync(new SessionsCreateParams\n{\n WorkflowId = \"11111111-2222-3333-4444-555555555555\",\n VendorData = \"user-123\",\n Callback = \"https://example.com/verification/callback\",\n CallbackMethod = new SessionsCreateParamsCallbackMethod(\"both\"),\n Metadata = new Dictionary\u003cstring, object> { [\"user_type\"] = \"premium\", [\"account_id\"] = \"ABC123\" },\n Language = new SessionsCreateParamsLanguage(\"en\"),\n ContactDetails = new SessionsCreateParamsContactDetails\n {\n Email = \"john.doe@example.com\",\n SendNotificationEmails = true,\n EmailLang = new SessionsCreateParamsContactDetailsEmailLang(\"en\"),\n Phone = \"+14155552671\",\n },\n ExpectedDetails = new SessionsCreateParamsExpectedDetails\n {\n FirstName = \"John\",\n LastName = \"Doe\",\n DateOfBirth = \"1990-05-15\",\n Nationality = \"USA\",\n IdCountry = \"USA\",\n ExpectedDocumentTypes = new SessionsCreateParamsExpectedDetailsExpectedDocumentTypes[] { \"P\", \"ID\" },\n },\n});\nConsole.WriteLine(JsonSerializer.Serialize(result));"}],"requestBody":"b00bf1d5-f051-465a-9dc7-5de59c0cd7f3","method":"post","type":"path","servers":["19a65af2-e04f-405b-9abb-11f36ce51544"],"path":"/v3/session/","baseUrlOptions":["https://verification.didit.me"],"title":"Criar uma sessão de verificação","codeSamples":[{"label":"cURL","lang":"curl","source":"curl -X POST 'https://verification.didit.me/v3/session/' \\\n -H 'x-api-key: YOUR_API_KEY' \\\n -H 'Content-Type: application/json' \\\n -d '{\n \"workflow_id\": \"11111111-2222-3333-4444-555555555555\",\n \"vendor_data\": \"user-123\",\n \"callback\": \"https://example.com/verification/callback\",\n \"callback_method\": \"both\",\n \"metadata\": {\"user_type\": \"premium\", \"account_id\": \"ABC123\"},\n \"language\": \"en\",\n \"contact_details\": {\n \"email\": \"john.doe@example.com\",\n \"send_notification_emails\": true,\n \"email_lang\": \"en\",\n \"phone\": \"+14155552671\"\n },\n \"expected_details\": {\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"date_of_birth\": \"1990-05-15\",\n \"id_country\": \"USA\",\n \"expected_document_types\": [\"P\", \"ID\"]\n }\n }'"},{"label":"Python","lang":"python","source":"from didit import Didit\n\n# Reads DIDIT_API_KEY.\nclient = Didit()\n\nresult = client.sessions.create(\n workflow_id=\"11111111-2222-3333-4444-555555555555\",\n vendor_data=\"user-123\",\n callback=\"https://example.com/verification/callback\",\n callback_method=\"both\",\n metadata={\"user_type\": \"premium\", \"account_id\": \"ABC123\"},\n language=\"en\",\n contact_details={\n \"email\": \"john.doe@example.com\",\n \"send_notification_emails\": True,\n \"email_lang\": \"en\",\n \"phone\": \"+14155552671\",\n },\n expected_details={\n \"first_name\": \"John\",\n \"last_name\": \"Doe\",\n \"date_of_birth\": \"1990-05-15\",\n \"nationality\": \"USA\",\n \"id_country\": \"USA\",\n \"expected_document_types\": [\"P\", \"ID\"],\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.sessions.create({\n workflow_id: \"11111111-2222-3333-4444-555555555555\",\n vendor_data: \"user-123\",\n callback: \"https://example.com/verification/callback\",\n callback_method: \"both\",\n metadata: { user_type: \"premium\", account_id: \"ABC123\" },\n language: \"en\",\n contact_details: {\n email: \"john.doe@example.com\",\n send_notification_emails: true,\n email_lang: \"en\",\n phone: \"+14155552671\",\n },\n expected_details: {\n first_name: \"John\",\n last_name: \"Doe\",\n date_of_birth: \"1990-05-15\",\n nationality: \"USA\",\n id_country: \"USA\",\n expected_document_types: [\"P\", \"ID\"],\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.Sessions.Create(ctx, didit.SessionsCreateParams{\n\tWorkflowID: \"11111111-2222-3333-4444-555555555555\",\n\tVendorData: didit.String(\"user-123\"),\n\tCallback: didit.String(\"https://example.com/verification/callback\"),\n\tCallbackMethod: didit.Some(didit.SessionsCreateParamsCallbackMethod(\"both\")),\n\tMetadata: didit.Some[any](map[string]any{\"user_type\": \"premium\", \"account_id\": \"ABC123\"}),\n\tLanguage: didit.Some(didit.SessionsCreateParamsLanguage(\"en\")),\n\tContactDetails: didit.Some(didit.SessionsCreateParamsContactDetails{\n\t\tEmail: didit.String(\"john.doe@example.com\"),\n\t\tSendNotificationEmails: didit.Bool(true),\n\t\tEmailLang: didit.Some(didit.SessionsCreateParamsContactDetailsEmailLang(\"en\")),\n\t\tPhone: didit.String(\"+14155552671\"),\n\t}),\n\tExpectedDetails: didit.Some(didit.SessionsCreateParamsExpectedDetails{\n\t\tFirstName: didit.String(\"John\"),\n\t\tLastName: didit.String(\"Doe\"),\n\t\tDateOfBirth: didit.String(\"1990-05-15\"),\n\t\tNationality: didit.String(\"USA\"),\n\t\tIDCountry: didit.String(\"USA\"),\n\t\tExpectedDocumentTypes: didit.Some([]didit.SessionsCreateParamsExpectedDetailsExpectedDocumentTypes{\"P\", \"ID\"}),\n\t}),\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"},{"label":"Java","lang":"java","source":"import java.time.LocalDate;\nimport java.util.List;\nimport java.util.Map;\nimport me.didit.Didit;\nimport me.didit.types.SessionsCreateParams;\n\n// Reads DIDIT_API_KEY.\nDidit client = new Didit();\n\nvar result = client.sessions().create(SessionsCreateParams.builder()\n .workflowId(\"11111111-2222-3333-4444-555555555555\")\n .vendorData(\"user-123\")\n .callback(\"https://example.com/verification/callback\")\n .callbackMethod(SessionsCreateParams.CallbackMethod.of(\"both\"))\n .metadata(Map.of(\"user_type\", \"premium\", \"account_id\", \"ABC123\"))\n .language(SessionsCreateParams.Language.of(\"en\"))\n .contactDetails(SessionsCreateParams.ContactDetails.builder()\n .email(\"john.doe@example.com\")\n .sendNotificationEmails(true)\n .emailLang(SessionsCreateParams.ContactDetails.EmailLang.of(\"en\"))\n .phone(\"+14155552671\")\n .build())\n .expectedDetails(SessionsCreateParams.ExpectedDetails.builder()\n .firstName(\"John\")\n .lastName(\"Doe\")\n .dateOfBirth(LocalDate.parse(\"1990-05-15\"))\n .nationality(\"USA\")\n .idCountry(\"USA\")\n .expectedDocumentTypes(List.of(SessionsCreateParams.ExpectedDetails.ExpectedDocumentTypes.of(\"P\"), SessionsCreateParams.ExpectedDetails.ExpectedDocumentTypes.of(\"ID\")))\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->sessions->create([\n 'workflow_id' => '11111111-2222-3333-4444-555555555555',\n 'vendor_data' => 'user-123',\n 'callback' => 'https://example.com/verification/callback',\n 'callback_method' => 'both',\n 'metadata' => ['user_type' => 'premium', 'account_id' => 'ABC123'],\n 'language' => 'en',\n 'contact_details' => [\n 'email' => 'john.doe@example.com',\n 'send_notification_emails' => true,\n 'email_lang' => 'en',\n 'phone' => '+14155552671',\n ],\n 'expected_details' => [\n 'first_name' => 'John',\n 'last_name' => 'Doe',\n 'date_of_birth' => '1990-05-15',\n 'nationality' => 'USA',\n 'id_country' => 'USA',\n 'expected_document_types' => ['P', 'ID'],\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.sessions.create(\n workflow_id: \"11111111-2222-3333-4444-555555555555\",\n vendor_data: \"user-123\",\n callback: \"https://example.com/verification/callback\",\n callback_method: \"both\",\n metadata: { user_type: \"premium\", account_id: \"ABC123\" },\n language: \"en\",\n contact_details: {\n email: \"john.doe@example.com\",\n send_notification_emails: true,\n email_lang: \"en\",\n phone: \"+14155552671\",\n },\n expected_details: {\n first_name: \"John\",\n last_name: \"Doe\",\n date_of_birth: \"1990-05-15\",\n nationality: \"USA\",\n id_country: \"USA\",\n expected_document_types: [\"P\", \"ID\"],\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.Sessions.CreateAsync(new SessionsCreateParams\n{\n WorkflowId = \"11111111-2222-3333-4444-555555555555\",\n VendorData = \"user-123\",\n Callback = \"https://example.com/verification/callback\",\n CallbackMethod = new SessionsCreateParamsCallbackMethod(\"both\"),\n Metadata = new Dictionary\u003cstring, object> { [\"user_type\"] = \"premium\", [\"account_id\"] = \"ABC123\" },\n Language = new SessionsCreateParamsLanguage(\"en\"),\n ContactDetails = new SessionsCreateParamsContactDetails\n {\n Email = \"john.doe@example.com\",\n SendNotificationEmails = true,\n EmailLang = new SessionsCreateParamsContactDetailsEmailLang(\"en\"),\n Phone = \"+14155552671\",\n },\n ExpectedDetails = new SessionsCreateParamsExpectedDetails\n {\n FirstName = \"John\",\n LastName = \"Doe\",\n DateOfBirth = \"1990-05-15\",\n Nationality = \"USA\",\n IdCountry = \"USA\",\n ExpectedDocumentTypes = new SessionsCreateParamsExpectedDetailsExpectedDocumentTypes[] { \"P\", \"ID\" },\n },\n});\nConsole.WriteLine(JsonSerializer.Serialize(result));"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated","prefillPlaygroundWithExample":true,"prefillPlaygroundExamples":[{"body.workflow_id":"11111111-2222-3333-4444-555555555555","body.vendor_data":"user-123","body.callback":"https://example.com/verification/callback","body.callback_method":"both","body.metadata":{"user_type":"premium","account_id":"ABC123"},"body.language":"en","body.contact_details.email":"john.doe@example.com","body.contact_details.send_notification_emails":true,"body.contact_details.email_lang":"en","body.contact_details.phone":"+14155552671","body.expected_details.first_name":"John","body.expected_details.last_name":"Doe","body.expected_details.date_of_birth":"1990-05-15","body.expected_details.nationality":"USA","body.expected_details.id_country":"USA","body.expected_details.expected_document_types.items.0":"P","body.expected_details.expected_document_types.items.1":"ID"},{"body.workflow_id":"33333333-4444-5555-6666-777777777777","body.vendor_data":"company-acme-001","body.callback":"https://example.com/kyb/callback","body.callback_method":"both","body.metadata":{"tier":"enterprise","company_id":"ACME-001"},"body.language":"en","body.contact_details.email":"legal-rep@acme.example.com","body.contact_details.send_notification_emails":true,"body.contact_details.email_lang":"en","body.expected_details.company_name":"Tesco PLC","body.expected_details.registry_country":"GB","body.expected_details.registration_number":"00445790"}]},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["workflow_id"],"properties":{"workflow_id":{"type":"string","format":"uuid","description":"Identificador estável do fluxo que define quais os passos de verificação que a sessão irá executar. Os fluxos são criados e geridos na página [Fluxos](/pt/console/workflows) da Consola. O `workflow_id` também seleciona implicitamente se a sessão é KYC ou KYB.","example":"11111111-2222-3333-4444-555555555555","x-readme-id":"0.0","isRequired":true,"uniqueKey":"workflow_id","typeLabel":"string\u003cuuid>"},"vendor_data":{"type":"string","description":"Um identificador exclusivo para o utilizador a ser verificado, como um UUID, e-mail ou ID de utilizador interno. Este campo é utilizado para: (1) **Agrupamento de utilizadores** — as sessões com o mesmo vendor_data são associadas ao mesmo perfil de utilizador no separador Utilizadores. (2) **Deteção de duplicados entre sessões** — ao verificar rostos, documentos, números de telefone, e-mails, endereços IP ou impressões digitais de dispositivos duplicados, as sessões com o mesmo vendor_data são tratadas como o mesmo utilizador e excluídas das correspondências. Sem vendor_data, cada sessão é tratada como um utilizador único e todos os potenciais duplicados são apresentados. Recomendamos vivamente fornecer sempre um vendor_data para reduzir o ruído na deteção de duplicados.","example":"user-123","x-readme-id":"0.1","uniqueKey":"vendor_data","typeLabel":"string"},"multi_account_segment":{"type":"string","maxLength":64,"description":"Domínio de deteção de duplicados opcional dentro da sua organização. As verificações de rostos duplicados comparam esta sessão apenas com outras sessões que tenham o mesmo segmento, para que bases de contas separadas (contas pessoais e empresariais, ou uma por subcliente B2B) não sinalizem uma pessoa que detenha legitimamente uma conta em cada uma. Omita este campo para utilizar o domínio predefinido único, que é o que todas as sessões utilizam atualmente. A correspondência com a lista de bloqueio e a lista de permissões ignora este campo.","example":"business-accounts","uniqueKey":"multi_account_segment","typeLabel":"string"},"callback":{"type":"string","description":"URL para redirecionar o utilizador após a conclusão da verificação. A Didit anexa automaticamente `verificationSessionId` e `status` (Approved, Declined, In Review) como parâmetros de consulta. Esquemas de URL personalizados (por exemplo, `myapp://`) são suportados para callbacks móveis. Se omitido, é utilizado o `callback_url` predefinido do fluxo. Quando a aplicação tem domínios permitidos (`allowed_domains` em `PATCH /v3/webhook/`), um callback `http` ou `https` deve pertencer a uma dessas origens (mesmo esquema, anfitrião e porta), caso contrário o pedido falha com 400 em `callback`: `callback must be on one of the application's allowed domains: https://app.example.com`. Esquemas de URL personalizados são sempre aceites.","example":"https://example.com/verification/callback","x-readme-id":"0.2","uniqueKey":"callback","typeLabel":"string"},"callback_method":{"type":"string","description":"Determina que dispositivo deve processar o redirecionamento para o URL de retorno fornecido. Utilize `initiator` para redirecionar apenas o dispositivo que iniciou o fluxo, `completer` para o dispositivo que o conclui, ou `both` para permitir que qualquer um dos dispositivos acione o callback. Se alguma vez notar que o callback não está a ser acionado de forma fiável, recomendamos definir este valor como `both`.","enum":["initiator","completer","both"],"default":"initiator","example":"both","x-readme-id":"0.3","uniqueKey":"callback_method","typeLabel":"enum\u003cstring>"},"metadata":{"description":"JSON arbitrário guardado com a sessão e devolvido na resposta e nos webhooks. Qualquer valor JSON é aceite (objeto, string, número, array), mas recomenda-se um objeto JSON de pares chave/valor. Não visível para o utilizador final. Utilize-o para passar os seus próprios IDs de correlação, variantes A/B ou contexto de negócio.","example":{"user_type":"premium","account_id":"ABC123"},"x-readme-id":"0.4","uniqueKey":"metadata","typeLabel":"any"},"tags":{"type":"array","items":{"type":"string","maxLength":50,"uniqueKey":"tags.items.[INDEX]","typeLabel":"string"},"maxItems":10,"description":"Etiquetas adicionadas à sessão quando esta é criada, por nome. Até 10, cada uma com até 50 carateres. Os nomes não diferenciam maiúsculas de minúsculas e são guardados em maiúsculas. Um nome que ainda não exista na aplicação é criado como uma nova etiqueta. As etiquetas são apresentadas na sessão na consola, onde pode filtrar por elas.","example":["VIP","ONBOARDING Q4"],"uniqueKey":"tags","typeLabel":"string[]"},"language":{"type":"string","description":"Código de idioma (ISO 639-1) para a interface do processo de verificação. Controla o idioma apresentado ao utilizador final durante a verificação. Se não for fornecido, o idioma do navegador será detetado e utilizado automaticamente. Consulte todos os idiomas suportados [aqui](/pt/integration/supported-languages).","enum":["en","ar","bg","bn","bs","ca","cnr","cs","da","de","el","es","et","fa","fi","fr","he","hi","hr","hu","hy","id","it","ja","ka","kk","ko","ky","lt","lv","mk","mn","ms","nl","no","pl","pt-BR","pt","ro","ru","sk","sl","so","sq","sr","sv","th","tr","uk","uz","vi","zh-CN","zh-TW","zh"],"example":"en","x-readme-id":"0.5","uniqueKey":"language","typeLabel":"enum\u003cstring>"},"contact_details":{"type":"object","description":"Informações de contacto do utilizador que podem ser utilizadas para notificações, pré-preenchimento de formulários de verificação e verificação de telefone. Isto inclui o endereço de e-mail, o idioma preferido para comunicações e o número de telefone.","example":{"email":"john.doe@example.com","send_notification_emails":true,"email_lang":"en","phone":"+14155552671"},"properties":{"email":{"type":"string","format":"email","description":"Endereço de e-mail do utilizador (ex.: \"john.doe@example.com\") que será utilizado durante o passo de [Verificação de e-mail](/pt/core-technology/email-verification/overview). Se não for fornecido, o utilizador terá de o indicar durante o fluxo de verificação.","example":"john.doe@example.com","x-readme-id":"1.0","uniqueKey":"contact_details.email","typeLabel":"string\u003cemail>"},"send_notification_emails":{"type":"boolean","default":false,"description":"Se for verdadeiro e um e-mail for fornecido, a Didit envia o e-mail inicial \"Verifique a sua identidade\" de forma assíncrona quando a sessão de Verificação de utilizadores (KYC) ou Verificação de empresas (KYB) for criada. A Didit também envia notificações sobre o estado da verificação de sessões que necessitam de revisão manual para o endereço de e-mail fornecido (por exemplo, de 'In Review' para 'Approved' ou 'Declined'). Isto ajuda os utilizadores a regressarem à sua aplicação assim que a verificação for concluída. Se tiver a marca branca ativada para a sessão, o e-mail enviado terá marca branca.","example":true,"x-readme-id":"1.1","uniqueKey":"contact_details.send_notification_emails","typeLabel":"boolean"},"email_lang":{"type":"string","description":"Código de idioma (ISO 639-1) para notificações por e-mail. Controla o idioma de todas as comunicações por e-mail (por exemplo, \"en\", \"es\", \"fr\"). Não existe um valor predefinido guardado — quando omitido, o e-mail de convite de verificação simplesmente reverte para inglês (`en`) no momento do envio. O enum abaixo é um instantâneo; a fonte de referência em tempo real para os valores aceites é o documento de [idiomas suportados](/pt/integration/supported-languages) — consulte-o sempre antes de depender de um código específico.","enum":["en","ar","bg","bn","bs","ca","cnr","cs","da","de","el","es","et","fa","fi","fr","he","hi","hr","hu","hy","id","it","ja","ka","kk","ko","ky","lt","lv","mk","mn","ms","nl","no","pl","pt-BR","pt","ro","ru","sk","sl","so","sq","sr","sv","th","tr","uk","uz","vi","zh-CN","zh-TW","zh"],"example":"en","x-readme-id":"1.2","uniqueKey":"contact_details.email_lang","typeLabel":"enum\u003cstring>"},"phone":{"type":"string","description":"Número de telefone no formato E.164 (por exemplo, \"+14155552671\") que será utilizado durante o passo de [Verificação de telefone](/pt/core-technology/phone-verification/overview). Se não for fornecido, o utilizador tem de o introduzir durante o fluxo de verificação. Ignorado para fluxos de Verificação de empresas (KYB). **Importante:** Este número de telefone só é aplicado se for um número de telefone E.164 válido. Se o número fornecido for inválido ou não puder ser analisado, será ignorado e o utilizador poderá introduzir qualquer número de telefone válido durante o passo de Verificação de telefone.","example":"+14155552671","x-readme-id":"1.3","uniqueKey":"contact_details.phone","typeLabel":"string"}},"x-readme-id":"0.4","uniqueKey":"contact_details","typeLabel":"object"},"expected_details":{"type":"object","description":"Dados esperados do utilizador utilizados para validação cruzada com os dados extraídos do documento de identificação do utilizador, Comprovativo de morada e outros passos de verificação. As discrepâncias são apresentadas como avisos na decisão; alguns campos (por exemplo, `id_country`, `expected_document_types`) também alteram o fluxo apresentado ao utilizador. Para fluxos de Verificação de empresas (KYB), apenas os campos da empresa (`company_name`, `registry_country`, `registration_number`) são utilizados — pré-preenchem a pesquisa no registo de empresas para o utilizador — e todos os campos a nível de pessoa são ignorados.","example":{"first_name":"John","last_name":"Doe","date_of_birth":"1990-05-15","nationality":"USA","id_country":"USA","expected_document_types":["P","ID"]},"properties":{"first_name":{"type":"string","description":"Primeiro nome do utilizador. Por exemplo, `John`. A correspondência utiliza comparação difusa (fuzzy) e pode ajustar o nível de exigência configurando o limiar da pontuação de correspondência de nomes na consola para os fluxos de Documento de identificação e Comprovativo de morada.","example":"John","x-readme-id":"1.0","uniqueKey":"expected_details.first_name","typeLabel":"string"},"last_name":{"type":"string","description":"Apelido do utilizador. Por exemplo, `Doe`. A correspondência utiliza comparação difusa (fuzzy) e pode ajustar o nível de exigência configurando o limiar da pontuação de correspondência de nomes na consola para os fluxos de Documento de identificação e Comprovativo de morada.","example":"Doe","x-readme-id":"1.1","uniqueKey":"expected_details.last_name","typeLabel":"string"},"date_of_birth":{"type":"string","format":"date","description":"Data de nascimento do utilizador no formato: YYYY-MM-DD. Por exemplo, `1990-05-15`.","example":"1990-05-15","x-readme-id":"1.2","uniqueKey":"expected_details.date_of_birth","typeLabel":"string\u003cdate>"},"gender":{"oneOf":[{"type":"string","enum":["M","F"],"default":null,"description":"Género do utilizador. Deve ser 'M', 'F' ou null.","example":"M","x-readme-id":"1.3","uniqueKey":"expected_details.gender.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["M","F"],"default":null,"description":"Género do utilizador. Deve ser 'M', 'F' ou null.","example":"M","x-readme-id":"1.3","uniqueKey":"expected_details.gender.oneOf.1","typeLabel":"null"}],"uniqueKey":"expected_details.gender","typeLabel":"enum\u003cstring> | null"},"nationality":{"type":"string","description":"Código de país ISO 3166-1 alfa-3 que representa o país de origem do requerente. Por exemplo, `USA`. Consulte a [lista completa de códigos de país suportados](https://docs.didit.me/pt/core-technology/id-verification/supported-documents-id-verification#documentos-suportados-por-país).","example":"USA","x-readme-id":"1.4","uniqueKey":"expected_details.nationality","typeLabel":"string"},"country":{"type":"string","description":"Código de país ISO 3166-1 alfa-3 utilizado como recurso para as verificações de discrepância de país tanto de Verificação de identidade como de Comprovativo de morada. Obrigatório quando `address` é fornecido e nem `id_country` nem `poa_country` estão definidos.","example":"USA","x-readme-id":"1.4.1","uniqueKey":"expected_details.country","typeLabel":"string"},"id_country":{"type":"string","description":"Código de país ISO 3166-1 alfa-3 que representa o país esperado do documento de identificação do requerente, que pode diferir da nacionalidade. Por exemplo, `GBR`. Tem prioridade sobre `country` para verificações de discrepância de país de verificação de identidade. Consulte a [lista completa de códigos de país suportados](https://docs.didit.me/pt/core-technology/id-verification/supported-documents-id-verification#documentos-suportados-por-país).","example":"GBR","x-readme-id":"1.5","uniqueKey":"expected_details.id_country","typeLabel":"string"},"poa_country":{"type":"string","description":"Código de país ISO 3166-1 alfa-3 que representa o país esperado do documento de Comprovativo de morada. Por exemplo, `USA`. Tem prioridade sobre `country` para verificações de discrepância de país de POA. Consulte a [lista completa de códigos de país suportados](https://docs.didit.me/pt/core-technology/id-verification/supported-documents-id-verification#documentos-suportados-por-país).","example":"USA","x-readme-id":"1.5.1","uniqueKey":"expected_details.poa_country","typeLabel":"string"},"address":{"type":"string","description":"A morada num formato legível por humanos, incluindo o máximo de informação possível. Por exemplo, `123 Main St, San Francisco, CA 94105, USA`. Quando fornecida, também deve passar `country` ou `poa_country`, caso contrário o pedido falha com `400`.","example":"123 Main St, San Francisco, CA 94105, USA","x-readme-id":"1.6","uniqueKey":"expected_details.address","typeLabel":"string"},"identification_number":{"type":"string","description":"O número de documento, número de identificação pessoal ou número de identificação fiscal do utilizador. Por exemplo, `123456789`.","example":"123456789","x-readme-id":"1.7","uniqueKey":"expected_details.identification_number","typeLabel":"string"},"ip_address":{"type":"string","description":"Endereço IP previsto para a sessão, no formato IPv4 ou IPv6. Se o endereço IP real diferir deste valor, será registado um aviso. Por exemplo, `192.168.1.100` ou `2001:db8::1`.","example":"192.168.1.100","x-readme-id":"1.8","uniqueKey":"expected_details.ip_address","typeLabel":"string"},"expected_document_types":{"type":"array","description":"Restringe os tipos de documento que o utilizador pode apresentar durante o passo de verificação de identidade (OCR). Quando definido, o ecrã de seleção de documentos apresenta apenas os tipos solicitados e o `documents_allowed` retornado é filtrado em conformidade. Os valores não diferenciam maiúsculas de minúsculas e são deduplicados; valores desconhecidos são rejeitados com `400`. Códigos permitidos: `P` (passaporte), `ID` (documento de identificação nacional), `DL` (carta de condução), `RP` (título de residência), `HIC` (cartão de saúde), `TC` (cartão fiscal), `SSC` (cartão de segurança social).","items":{"type":"string","enum":["P","ID","DL","RP","HIC","TC","SSC"],"uniqueKey":"expected_details.expected_document_types.items.[INDEX]","typeLabel":"enum\u003cstring>"},"example":["P","ID"],"x-readme-id":"1.9","uniqueKey":"expected_details.expected_document_types","typeLabel":"enum\u003cstring>[]"},"company_name":{"type":"string","maxLength":255,"description":"Nome legal esperado da empresa que está a ser verificada. Por exemplo, `Tesco PLC`. Pré-preenche o campo do nome da empresa na pesquisa no registo de empresas em fluxos de Verificação de empresas (KYB); quando `registration_number` também é fornecido, a pesquisa no registo combina ambos os identificadores. Ignorado para fluxos de KYC.","example":"Tesco PLC","x-readme-id":"1.10","uniqueKey":"expected_details.company_name","typeLabel":"string"},"registry_country":{"type":"string","maxLength":10,"description":"Código ISO 3166-1 alpha-2 do país em cujo registo de empresas a empresa está registada. Por exemplo, `GB`. Onde os registos de empresas operam a nível estadual ou provincial, anexe o código de subdivisão ISO 3166-2 como `XX-YY`: `US-CA` visa o registo da Califórnia. Mesmo formato que `country_code` na [KYB Registry Search API](https://docs.didit.me/pt/standalone-apis/kyb-registry-search). Pré-seleciona o país do registo nos fluxos de Verificação de empresas (KYB); ignorado em fluxos de KYC.","example":"US-CA","x-readme-id":"1.11","uniqueKey":"expected_details.registry_country","typeLabel":"string"},"registration_number":{"type":"string","maxLength":100,"description":"Número de registo esperado da empresa no registo de empresas. Por exemplo, `00445790`. Pré-preenche o campo do número de registo da pesquisa no registo de empresas em fluxos de Verificação de empresas (KYB); quando `company_name` também é fornecido, a pesquisa no registo de empresas combina ambos os identificadores. Ignorado para fluxos de KYC.","example":"00445790","x-readme-id":"1.12","uniqueKey":"expected_details.registration_number","typeLabel":"string"}},"x-readme-id":"0.5","uniqueKey":"expected_details","typeLabel":"object"},"portrait_image":{"type":"string","format":"byte","description":"Imagem de retrato do rosto do utilizador final codificada em base64 (máx. 2MB; JPEG, PNG, WebP ou TIFF). Usada como imagem de referência para comparar com a captura de prova de vida quando o fluxo é um fluxo de `Biometric Authentication` com a Correspondência facial ativada, ou qualquer fluxo em grafo onde a Correspondência facial seja executada antes da Verificação de identidade (OCR). Opcional quando o utilizador em `vendor_data` já possui uma imagem de rosto guardada: a Didit reutiliza-a automaticamente, resolvida pela seguinte ordem de prioridade: rosto de prova de vida aprovado, fotografia do chip de ePassport, retrato do documento de identificação, rosto de perfil registado manualmente (apenas rostos de sessões aprovadas ou rostos registados por si são reutilizados). Quando fornecida, `portrait_image` tem sempre precedência sobre o rosto guardado. Se for omitida e não existir nenhum rosto guardado (ou `vendor_data` não for enviado), a criação da sessão falha com `400`. Ignorado para outros tipos de fluxo.","example":"iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=","x-readme-id":"0.6","uniqueKey":"portrait_image","typeLabel":"string\u003cbyte>"},"sandbox_scenario":{"type":"string","description":"Slug de cenário exclusivo da sandbox. Só é aceite quando a chave de API pertence a uma aplicação em modo sandbox; é rejeitado em aplicações de produção. Quando definido, o fluxo de criação expande os valores mágicos incluídos no cenário para os campos de entrada da sessão (contact_details, expected_details) para que os fornecedores simulados reproduzam o resultado do cenário através do pipeline real do fluxo. Consulte o catálogo de cenários em GET /v1/sandbox/scenarios/ ou [Sandbox e dados de teste](/pt/integration/sandbox-testing). Também pode armar (ou rearmar) um cenário após a criação através de POST /v3/session/{sessionId}/sandbox/arm/, desde que a sessão ainda esteja em `Not Started`. Para pesquisas que não sejam de documentos, utilize `lookup_partial_match`, `lookup_no_match` ou `lookup_provider_error` para testar o orçamento de tentativas configurado e o fallback. Para carteiras de identidade, utilize `wallet_cancelled`, `wallet_timeout` ou `wallet_provider_error`; `approve` simula uma carteira verificada. Todas as carteiras do catálogo podem ser testadas na sandbox, incluindo esquemas indisponíveis em aplicações de produção. As tentativas simuladas não são cobradas.","example":"decline_document_expired","uniqueKey":"sandbox_scenario","typeLabel":"string"},"sign":{"type":"object","description":"Entrada de Assinatura eletrónica para esta sessão. `documents` são os documentos a assinar, para um fluxo cujo passo de Assinatura eletrónica obtém documentos da sessão (`signature_documents_source` como `session` ou `both`): até 20 documentos e 50 MB no total. `field_values` preenche os campos cujo `prefill` seja `api.\u003ckey>`, tanto em documentos do fluxo como da sessão. Criar novamente uma sessão para o mesmo `workflow_id` e `vendor_data` devolve a sessão pendente; se essa chamada enviar `sign`, os seus documentos, campos e valores têm de ser idênticos aos primeiros, e qualquer diferença devolve `400` com `{\"sign\": \"signature_document_changed\"}`. Consulte [Documentos de assinatura eletrónica](/pt/sessions-api/create-session#documentos-de-assinatura-eletrónica).","properties":{"documents":{"type":"array","minItems":1,"maxItems":20,"items":{"type":"object","required":["file_name","content_base64"],"properties":{"file_name":{"type":"string","minLength":1,"maxLength":255,"description":"Nome do ficheiro, a terminar em `.pdf` ou `.docx`.","isRequired":true,"uniqueKey":"sign.documents.items.[INDEX].file_name","typeLabel":"string"},"content_base64":{"type":"string","format":"byte","description":"O ficheiro, codificado em base64. Um PDF pode ter até 20 MB e 100 páginas, sem palavra-passe, scripts ou ficheiros anexados. Um ficheiro Word (`.docx`) pode ter até 20 MB e é convertido para PDF durante a execução do pedido, em no máximo 25 segundos; o PDF fica então com os mesmos limites. Até 5 ficheiros Word por sessão. Um ficheiro Word com macros, alterações registadas, ligações para conteúdo externo ou objetos incorporados é recusado com `signature_document_not_supported`, e um que não possa ser convertido devolve `signature_document_conversion_failed`, cada um com um `reason`.","isRequired":true,"uniqueKey":"sign.documents.items.[INDEX].content_base64","typeLabel":"string\u003cbyte>"},"title":{"type":"string","minLength":1,"maxLength":255,"description":"Título apresentado ao signatário. O valor predefinido é `file_name`.","uniqueKey":"sign.documents.items.[INDEX].title","typeLabel":"string"},"fields":{"type":"array","description":"Campos opcionais a colocar neste documento, até 200. As páginas e posições referem-se ao PDF, ou ao PDF convertido no caso de um ficheiro Word. Sem campos, o signatário lê o documento e aceita-o.","items":{"type":"object","description":"Um campo a colocar num documento de sessão: qual o signatário que o preenche, como e onde. Indique uma posição (`page`, `x`, `y`, `width` e `height`) ou um `anchor`. As posições são frações da página conforme é apresentada, a partir do seu canto superior esquerdo, arredondadas a 4 casas decimais, e o campo deve caber dentro da página. Um documento aceita até 200 campos e um signatário até 500, e cada função com campos num documento necessita de um campo `signature` ou `initials` no mesmo. Consulte [Campos no documento](/pt/core-technology/electronic-signature/overview#campos-no-documento).","required":["key","type"],"properties":{"key":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,63}$","description":"Dá nome ao campo nos resultados e em `sign.field_values`. Único dentro do documento.","isRequired":true,"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].key","typeLabel":"string"},"type":{"type":"string","enum":["signature","initials","full_name","date_signed","text","checkbox","email","data"],"description":"O que o campo contém. O signatário aplica a `signature` e as `initials` que adotou, introduz `text`, marca uma `checkbox` e introduz um `email` quando a sessão não tem um e-mail verificado. O Didit preenche `full_name` (o nome verificado), `date_signed` (a data de assinatura, no fuso horário do signatário), `data` (a partir de `prefill`) e um `email` verificado, apresentando-os apenas para leitura. Não existe um tipo de seletor de data: utilize `text`.","isRequired":true,"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].type","typeLabel":"enum\u003cstring>"},"role":{"type":"string","enum":["verified_person","legal_representative","key_people"],"description":"Quem preenche o campo, com os valores de `signature_signer`. Um passo preenche e carimba apenas os campos do seu próprio signatário. A predefinição é o signatário do passo.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].role","typeLabel":"enum\u003cstring>"},"page":{"type":"integer","minimum":1,"description":"Número da página, de 1 até ao número total de páginas do documento. Para um documento Word, uma página do PDF convertido.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].page","typeLabel":"integer"},"x":{"type":"number","minimum":0,"maximum":1,"description":"Margem esquerda, como fração da largura da página.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].x","typeLabel":"number"},"y":{"type":"number","minimum":0,"maximum":1,"description":"Limite superior, como uma fração da altura da página.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].y","typeLabel":"number"},"width":{"type":"number","minimum":0.02,"maximum":1,"description":"Largura, como uma fração da largura da página. Uma assinatura tem pelo menos `0.12` de largura.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].width","typeLabel":"number"},"height":{"type":"number","minimum":0.012,"maximum":1,"description":"Altura, como fração da altura da página. Uma assinatura tem pelo menos `0.035` de altura.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].height","typeLabel":"number"},"anchor":{"type":"object","description":"Posiciona um campo com base num excerto de texto no documento em vez de uma posição. O Didit não remove o texto do PDF, pelo que deve escrevê-lo com a mesma cor do fundo da página. Quando o texto não é encontrado, a chamada devolve `400` com `field_anchor_not_found`. Consulte [Posicionar campos por texto-âncora](/pt/sessions-api/create-session#colocar-campos-por-texto-de-âncora).","required":["text"],"properties":{"text":{"type":"string","minLength":1,"maxLength":64,"description":"Texto pesquisado no documento. No caso de um ficheiro Word, no PDF convertido.","isRequired":true,"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].anchor.text","typeLabel":"string"},"occurrence":{"type":"string","enum":["first","all"],"default":"first","description":"`all` coloca um campo por correspondência; as chaves a seguir à primeira recebem `_2`, `_3` e assim sucessivamente.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].anchor.occurrence","typeLabel":"enum\u003cstring>"},"offset_x":{"type":"number","description":"Adicionado à margem esquerda do texto, como fração da largura da página.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].anchor.offset_x","typeLabel":"number"},"offset_y":{"type":"number","description":"Adicionado à margem superior do texto, como fração da altura da página.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].anchor.offset_y","typeLabel":"number"},"width":{"type":"number","minimum":0.02,"maximum":1,"description":"Largura do campo, como uma fração da largura da página.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].anchor.width","typeLabel":"number"},"height":{"type":"number","minimum":0.012,"maximum":1,"description":"Altura do campo, como fração da altura da página.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].anchor.height","typeLabel":"number"}},"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].anchor","typeLabel":"object"},"required":{"type":"boolean","description":"`signature` and `initials` are required unless you set `false`. `full_name`, `date_signed` and `data` are always required. The signer can't finish a document until its required fields have a value, and a required checkbox must be ticked.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].required","typeLabel":"boolean"},"label":{"type":"string","minLength":1,"maxLength":80,"description":"Apresentado ao signatário e nos resultados. Predefinido com base no tipo.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].label","typeLabel":"string"},"placeholder":{"oneOf":[{"type":"string","maxLength":80,"description":"apenas `text` e `email`.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].placeholder.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":80,"description":"apenas `text` e `email`.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].placeholder.oneOf.1","typeLabel":"null"}],"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].placeholder","typeLabel":"string | null"},"validation":{"oneOf":[{"type":"object","description":"Regras para o valor de um campo `text`. A pré-visualização da consola, o fluxo de assinatura e a API aplicam as mesmas regras.","properties":{"kind":{"type":"string","enum":["any","letters","number","email","pattern"],"description":"`letters`: letras em qualquer sistema de escrita, espaços, hífenes e apóstrofos. `number`: dígitos com um separador decimal opcional. `pattern`: o valor tem de corresponder a `pattern`.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0.kind","typeLabel":"enum\u003cstring>"},"min_length":{"type":"integer","minimum":0,"maximum":500,"description":"De `0` até `max_length`.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0.min_length","typeLabel":"integer"},"max_length":{"type":"integer","minimum":1,"maximum":500,"default":120,"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0.max_length","typeLabel":"integer"},"pattern":{"oneOf":[{"type":"string","minLength":1,"maxLength":200,"description":"Obrigatório com `kind: \"pattern\"`. Uma expressão regular à qual o valor completo deve corresponder. Asserções de contexto e retroreferências não são suportadas.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0.pattern.oneOf.0","typeLabel":"string"},{"type":"null","minLength":1,"maxLength":200,"description":"Obrigatório com `kind: \"pattern\"`. Uma expressão regular à qual o valor completo deve corresponder. Asserções de contexto e retroreferências não são suportadas.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0.pattern.oneOf.1","typeLabel":"null"}],"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0.pattern","typeLabel":"string | null"},"message":{"oneOf":[{"type":"string","maxLength":120,"description":"Apresentado ao signatário em vez do erro predefinido.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0.message.oneOf.0","typeLabel":"string"},{"type":"null","maxLength":120,"description":"Apresentado ao signatário em vez do erro predefinido.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0.message.oneOf.1","typeLabel":"null"}],"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0.message","typeLabel":"string | null"}},"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.0","typeLabel":"object"},{"type":"null","description":"Regras para o valor de um campo `text`. A pré-visualização da consola, o fluxo de assinatura e a API aplicam as mesmas regras.","properties":{"kind":{"type":"string","enum":["any","letters","number","email","pattern"],"description":"`letters`: letras em qualquer sistema de escrita, espaços, hífenes e apóstrofos. `number`: dígitos com um separador decimal opcional. `pattern`: o valor tem de corresponder a `pattern`."},"min_length":{"type":"integer","minimum":0,"maximum":500,"description":"De `0` até `max_length`."},"max_length":{"type":"integer","minimum":1,"maximum":500,"default":120},"pattern":{"oneOf":[{"type":"string","minLength":1,"maxLength":200,"description":"Obrigatório com `kind: \"pattern\"`. Uma expressão regular à qual o valor completo deve corresponder. Asserções de contexto e retroreferências não são suportadas."},{"type":"null","minLength":1,"maxLength":200,"description":"Obrigatório com `kind: \"pattern\"`. Uma expressão regular à qual o valor completo deve corresponder. Asserções de contexto e retroreferências não são suportadas."}]},"message":{"oneOf":[{"type":"string","maxLength":120,"description":"Apresentado ao signatário em vez do erro predefinido."},{"type":"null","maxLength":120,"description":"Apresentado ao signatário em vez do erro predefinido."}]}},"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation.oneOf.1","typeLabel":"null"}],"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].validation","typeLabel":"object | null"},"prefill":{"oneOf":[{"type":"string","description":"De onde o valor provém: `identity.full_name`, `identity.first_name`, `identity.last_name`, `identity.date_of_birth` (`DD/MM/YYYY`), `identity.nationality`, `identity.document_number`, `identity.document_type`, `identity.issuing_country`, `identity.address`, `contact.email`, `contact.phone`, `company.name`, `company.registration_number`, `company.address`, `company.country` (KYB), `session.vendor_data`, `metadata.\u003ckey>` (uma chave dos `metadata` da sessão) ou `api.\u003ckey>` (uma chave de `sign.field_values`). Obrigatório para `data`. `full_name` utiliza sempre `identity.full_name` e `email` utiliza `contact.email`. Os valores dos campos `data`, `full_name` e `email` verificado são fixados quando o signatário inicia a assinatura.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].prefill.oneOf.0","typeLabel":"string"},{"type":"null","description":"De onde o valor provém: `identity.full_name`, `identity.first_name`, `identity.last_name`, `identity.date_of_birth` (`DD/MM/YYYY`), `identity.nationality`, `identity.document_number`, `identity.document_type`, `identity.issuing_country`, `identity.address`, `contact.email`, `contact.phone`, `company.name`, `company.registration_number`, `company.address`, `company.country` (KYB), `session.vendor_data`, `metadata.\u003ckey>` (uma chave dos `metadata` da sessão) ou `api.\u003ckey>` (uma chave de `sign.field_values`). Obrigatório para `data`. `full_name` utiliza sempre `identity.full_name` e `email` utiliza `contact.email`. Os valores dos campos `data`, `full_name` e `email` verificado são fixados quando o signatário inicia a assinatura.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].prefill.oneOf.1","typeLabel":"null"}],"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].prefill","typeLabel":"string | null"},"editable_when_prefilled":{"type":"boolean","default":false,"description":"apenas `text` e `email`: o signatário pode alterar um valor pré-preenchido.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].editable_when_prefilled","typeLabel":"boolean"},"checked_by_default":{"type":"boolean","default":false,"description":"Apenas `checkbox`: a caixa começa assinalada.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].checked_by_default","typeLabel":"boolean"},"date_format":{"type":"string","enum":["DD/MM/YYYY","MM/DD/YYYY","YYYY-MM-DD","D MMMM YYYY"],"default":"DD/MM/YYYY","description":"`date_signed` apenas.","uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX].date_format","typeLabel":"enum\u003cstring>"}},"uniqueKey":"sign.documents.items.[INDEX].fields.items.[INDEX]","typeLabel":"object"},"maxItems":200,"uniqueKey":"sign.documents.items.[INDEX].fields","typeLabel":"object[]"}},"uniqueKey":"sign.documents.items.[INDEX]","typeLabel":"object"},"uniqueKey":"sign.documents","typeLabel":"object[]"},"field_values":{"type":"object","description":"Valores indexados pela `\u003ckey>` de cada fonte de pré-preenchimento `api.\u003ckey>`: strings de 1 a 500 carateres para campos `text` e `data`, booleanos para um `checkbox`. `400` com `field_value_unknown` para uma chave que nenhum campo utiliza, `field_value_missing` para um campo obrigatório sem o respetivo valor e `field_value_invalid` para um valor que falhe a validação do respetivo campo.","additionalProperties":{"oneOf":[{"type":"string","maxLength":500,"minLength":1,"uniqueKey":"sign.field_values.additionalProperties.oneOf.0","typeLabel":"string"},{"type":"boolean","uniqueKey":"sign.field_values.additionalProperties.oneOf.1","typeLabel":"boolean"}],"uniqueKey":"sign.field_values.additionalProperties","typeLabel":"string | boolean"},"example":{"credit_limit":"3,000 EUR"},"uniqueKey":"sign.field_values","typeLabel":"object"}},"uniqueKey":"sign","typeLabel":"object"},"user_state":{"type":"string","maxLength":16,"description":"Onde a pessoa reside, quando for do seu conhecimento: um código de subdivisão ISO 3166-2 (`US-IL`, `ES-M`) ou um código ou nome de estado dos EUA (`IL`, `Illinois`). Um estado cuja legislação exija consentimento biométrico explícito (Illinois, Texas, Colorado) faz com que o fluxo de verificação o solicite antes de capturar um rosto, com o acionador `declared_state`. Um valor não reconhecido devolve `400`. Consulte [Consentimento biométrico](/pt/getting-started/biometric-consent).","example":"US-IL","uniqueKey":"user_state","typeLabel":"string"},"biometric_consent":{"type":"object","description":"Consentimento biométrico explícito que já recolheu da pessoa. Cumpre o requisito, pelo que o fluxo de verificação não volta a pedir, e a decisão regista-o como `status: \"given\"` com o acionador `customer_collected`. Uma resposta que a pessoa já tenha dado no fluxo nunca é substituída. Consulte [Consentimento biométrico](/pt/getting-started/biometric-consent).","required":["given_at","text_version"],"properties":{"given_at":{"type":"string","format":"date-time","description":"Quando a pessoa deu consentimento biométrico explícito (ISO 8601). Não pode ser no futuro.","isRequired":true,"uniqueKey":"biometric_consent.given_at","typeLabel":"string\u003cdate-time>"},"text_version":{"type":"string","maxLength":64,"description":"ID da versão do texto de consentimento que a pessoa aceitou, nos seus próprios registos.","isRequired":true,"uniqueKey":"biometric_consent.text_version","typeLabel":"string"}},"uniqueKey":"biometric_consent","typeLabel":"object"}},"example":{"workflow_id":"11111111-2222-3333-4444-555555555555","vendor_data":"user-123","callback":"https://example.com/verification/callback","callback_method":"both","metadata":{"user_type":"premium","account_id":"ABC123"},"language":"en","contact_details":{"email":"john.doe@example.com","send_notification_emails":true,"email_lang":"en","phone":"+14155552671"},"expected_details":{"first_name":"John","last_name":"Doe","date_of_birth":"1990-05-15","id_country":"USA","expected_document_types":["P","ID"]}},"uniqueKey":"","typeLabel":"object"},"examples":{"Create KYC session":{"title":"Create KYC session","description":"Chamada de criação realista que utiliza todos os campos habitualmente definidos: seleção de fluxo, associação a fornecedor, encaminhamento de retorno, metadados, idioma/região, pré-preenchimento de contacto e dados esperados do utilizador. Copie e cole diretamente no exemplo cURL acima.","value":{"workflow_id":"11111111-2222-3333-4444-555555555555","vendor_data":"user-123","callback":"https://example.com/verification/callback","callback_method":"both","metadata":{"user_type":"premium","account_id":"ABC123"},"language":"en","contact_details":{"email":"john.doe@example.com","send_notification_emails":true,"email_lang":"en","phone":"+14155552671"},"expected_details":{"first_name":"John","last_name":"Doe","date_of_birth":"1990-05-15","nationality":"USA","id_country":"USA","expected_document_types":["P","ID"]}}},"Create KYB session":{"title":"Create KYB session","description":"O mesmo formato da chamada KYC — o `workflow_id` é o que torna a sessão KYB. `vendor_data` referencia habitualmente a empresa no seu sistema e `contact_details.email` destina-se ao representante legal que concluirá o fluxo. `expected_details` aceita os campos da empresa (`company_name`, `registry_country`, `registration_number`), que pré-preenchem a pesquisa no registo de empresas; os campos ao nível da pessoa e `contact_details.phone` são ignorados em fluxos KYB.","value":{"workflow_id":"33333333-4444-5555-6666-777777777777","vendor_data":"company-acme-001","callback":"https://example.com/kyb/callback","callback_method":"both","metadata":{"tier":"enterprise","company_id":"ACME-001"},"expected_details":{"company_name":"Tesco PLC","registry_country":"GB","registration_number":"00445790"},"language":"en","contact_details":{"email":"legal-rep@acme.example.com","send_notification_emails":true,"email_lang":"en"}}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"34bd4a23-06fd-45d3-bd51-cce79f0949a8":{"description":"Sessão criada (ou devolvida, se já existir uma sessão não finalizada com o mesmo `vendor_data` na versão publicada mais recente do fluxo). A resposta é a sessão serializada, incluindo o `url` de verificação alojada para o qual redirecionar o utilizador.","content":{"application/json":{"schema":{"type":"object","required":["session_id","session_number","session_token","url","vendor_data","metadata","status","workflow_id","workflow_version","callback"],"properties":{"session_id":{"type":"string","format":"uuid","description":"Identificador único da sessão de verificação. Utilize este id ao chamar `GET /v3/session/{sessionId}/decision/`.","example":"11111111-2222-3333-4444-555555555555","isRequired":true,"uniqueKey":"session_id","typeLabel":"string\u003cuuid>"},"session_number":{"type":"integer","description":"Número sequencial e de fácil leitura atribuído à sessão dentro da sua aplicação. Útil para suporte e painéis.","example":43762,"isRequired":true,"uniqueKey":"session_number","typeLabel":"integer"},"session_token":{"type":"string","description":"Token de 12 carateres seguro para URL que autoriza o utilizador final a aceder ao fluxo de verificação alojado em `url`. Válido até a sessão expirar. Trate-o como um segredo — qualquer pessoa que o possua pode abrir o fluxo de verificação para esta sessão.","example":"3FaJ9wLqX2Mz","isRequired":true,"uniqueKey":"session_token","typeLabel":"string"},"url":{"type":"string","format":"uri","description":"URL de verificação alojado para o qual redirecionar o utilizador final. O URL incorpora o `session_token` e, se configurado, utiliza o seu domínio de marca branca. Quando o pedido inclui `language`, o URL contém um segmento de caminho de idioma — `https://verify.didit.me/{language}/session/{session_token}` (ex.: `/es/session/...`); sem `language`, o segmento é omitido.","example":"https://verify.didit.me/session/3FaJ9wLqX2Mz","isRequired":true,"uniqueKey":"url","typeLabel":"string\u003curi>"},"vendor_data":{"oneOf":[{"type":"string","description":"Identificador transmitido no pedido para associar a sessão a um utilizador ou empresa no seu próprio sistema. Devolvido tal como foi enviado. Nulo quando não fornecido.","example":"user-123","isRequired":true,"uniqueKey":"vendor_data.oneOf.0","typeLabel":"string"},{"type":"null","description":"Identificador transmitido no pedido para associar a sessão a um utilizador ou empresa no seu próprio sistema. Devolvido tal como foi enviado. Nulo quando não fornecido.","example":"user-123","isRequired":true,"uniqueKey":"vendor_data.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"vendor_data","typeLabel":"string | null"},"metadata":{"description":"Payload JSON arbitrário que guardou com a sessão no momento da criação. Devolvido tal como enviado — qualquer valor JSON que enviou (objeto, string, número, array) é devolvido inalterado, embora se recomende um objeto JSON. Não visível para o utilizador final. Sempre presente nas respostas; `null` quando não fornecido no momento da criação.","example":{"user_type":"premium","account_id":"ABC123"},"isRequired":true,"uniqueKey":"metadata","typeLabel":"any"},"status":{"type":"string","enum":["Not Started","In Progress","Approved","Declined","In Review","Expired","Abandoned","Kyc Expired","Resubmitted","Awaiting User"],"description":"Estado atual da sessão. Sessões recém-criadas devolvem `Not Started`. Se já existia uma sessão não terminada para os mesmos `vendor_data` na versão mais recente publicada do fluxo, o estado devolvido reflete essa sessão existente.","example":"Not Started","isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"callback":{"oneOf":[{"type":"string","format":"uri","description":"URL de redirecionamento final para onde o utilizador é enviado após concluir o fluxo. O Didit anexa `?verificationSessionId={session_id}\u0026status={status}` a este URL. Recai para o URL de retorno configurado no fluxo quando não for fornecido no pedido; `null` quando nenhum estiver definido. Quando a aplicação tem domínios permitidos e este URL for um URL web fora deles (por exemplo, uma predefinição do fluxo definida antes da alteração da lista), o fluxo alojado não redireciona o utilizador para ele.","example":"https://example.com/verification/callback","isRequired":true,"uniqueKey":"callback.oneOf.0","typeLabel":"string\u003curi>"},{"type":"null","format":"uri","description":"URL de redirecionamento final para onde o utilizador é enviado após concluir o fluxo. O Didit anexa `?verificationSessionId={session_id}\u0026status={status}` a este URL. Recai para o URL de retorno configurado no fluxo quando não for fornecido no pedido; `null` quando nenhum estiver definido. Quando a aplicação tem domínios permitidos e este URL for um URL web fora deles (por exemplo, uma predefinição do fluxo definida antes da alteração da lista), o fluxo alojado não redireciona o utilizador para ele.","example":"https://example.com/verification/callback","isRequired":true,"uniqueKey":"callback.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"callback","typeLabel":"string\u003curi> | null"},"workflow_id":{"type":"string","format":"uuid","description":"Identificador estável do fluxo em que esta sessão é executada. É sempre o identificador de grupo estável do fluxo — mesmo que tenha referenciado o UUID de uma versão específica do fluxo no pedido (pesquisa compatível com versões anteriores), a resposta contém o `workflow_id` estável. Utilize-o para correlacionar a sessão com o fluxo configurado na Consola.","example":"11111111-2222-3333-4444-555555555555","isRequired":true,"uniqueKey":"workflow_id","typeLabel":"string\u003cuuid>"},"workflow_version":{"type":"integer","description":"Número da versão publicada do fluxo à qual a sessão ficou associada no momento da criação. O Didit resolve o `workflow_id` para a versão publicada mais recente do fluxo quando a sessão é criada, e a sessão continua a executar essa versão mesmo que o fluxo seja republicado mais tarde.","example":3,"isRequired":true,"uniqueKey":"workflow_version","typeLabel":"integer"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"tags.items.[INDEX]","typeLabel":"string"},"description":"As etiquetas na sessão, por nome.","example":["VIP","ONBOARDING Q4"],"uniqueKey":"tags","typeLabel":"string[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"KYC session":{"title":"KYC session","value":{"session_id":"11111111-2222-3333-4444-555555555555","session_number":43762,"session_token":"3FaJ9wLqX2Mz","url":"https://verify.didit.me/en/session/3FaJ9wLqX2Mz","vendor_data":"user-123","metadata":{"user_type":"premium","account_id":"ABC123"},"status":"Not Started","workflow_id":"11111111-2222-3333-4444-555555555555","workflow_version":3,"callback":"https://example.com/verification/callback"}},"KYB session":{"title":"KYB session","value":{"session_id":"22222222-3333-4444-5555-666666666666","session_number":43763,"session_token":"Yk7pQ2vN8aBc","url":"https://verify.didit.me/en/session/Yk7pQ2vN8aBc","vendor_data":"company-acme-001","metadata":{"tier":"enterprise"},"status":"Not Started","workflow_id":"33333333-4444-5555-6666-777777777777","workflow_version":1,"callback":"https://example.com/kyb/callback"}}},"exampleType":"examples"}},"exampleType":"examples"},"e1ff06da-bb1d-4c35-8819-bfde163409b0":{"description":"Pedido incorreto — a validação do payload falhou (`workflow_id` em falta ou desconhecido, `language` inválido, `vendor_data` na lista de bloqueio, `portrait_image` malformada, `address` sem `country`/`poa_country`, `sandbox_scenario` inválido, documentos `sign`, campos ou valores recusados pelo passo de Assinatura eletrónica do fluxo, tais como `signature_document_not_supported`, `signature_document_conversion_failed`, `field_anchor_not_found` ou `field_value_missing`, etc.) ou a sua organização não tem créditos suficientes para iniciar a sessão.\n\nO corpo é um objeto cuja chave é o nome do campo com erro (ou `detail` para erros que não são de campos). Os valores são um **array de strings** para falhas de validação de entrada (por exemplo, campo obrigatório em falta, idioma inválido, imagem de retrato demasiado grande) e uma **string simples** para falhas detetadas durante a criação da sessão (`workflow_id` desconhecido, `vendor_data` na lista de bloqueio, nenhuma face de referência disponível para um fluxo de Correspondência facial). Processe ambos os formatos.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true,"properties":{"detail":{"type":"string","description":"Mensagem de erro legível para erros não associados a campos (por exemplo, créditos insuficientes). Em vez disso, as falhas ao nível dos campos utilizam o nome do campo como chave, com um valor de string ou de array de strings.","example":"You don't have enough credits to perform this request. Please top up at https://business.didit.me","uniqueKey":"detail","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Missing workflow_id":{"title":"Missing workflow_id","value":{"workflow_id":["This field is required."]}},"Invalid workflow_id":{"title":"Invalid workflow_id","value":{"workflow_id":"Invalid workflow_id."}},"Insufficient credits":{"title":"Insufficient credits","value":{"detail":"You don't have enough credits to perform this request. Please top up at https://business.didit.me"}},"Blocklisted vendor_data":{"title":"Blocklisted vendor_data","value":{"vendor_data":"This user or business has been blocked and cannot create new verification sessions."}},"Portrait image too large":{"title":"Portrait image too large","value":{"portrait_image":["Image size exceeds 2MB."]}},"No stored face for vendor_data":{"title":"No stored face for vendor_data","value":{"portrait_image":"No stored face image was found for this user. Send a portrait_image, or complete an approved verification with face liveness or an ID document for this vendor_data first."}},"Portrait image required without vendor_data":{"title":"Portrait image required without vendor_data","value":{"portrait_image":"A portrait image is required to perform face match for this workflow. Send a portrait_image, or provide the vendor_data of a user with a previously stored face image to reuse it."}}},"exampleType":"examples"}},"exampleType":"examples"},"56227800-5bb3-42a9-b57c-46f8e5756ebf":{"description":"Falha de autenticação ou autorização. Uma chave incorreta, revogada ou expirada devolve `401`. O endpoint devolve `403` quando o cabeçalho `x-api-key` está em falta ou a chave de API é válida mas o cliente não tem permissão para criar sessões nesta aplicação (por exemplo, a chave de API pertence a uma organização diferente). Estas falhas partilham o corpo `{\"detail\": \"You do not have permission to perform this action.\"}`. Verifique se o cabeçalho `x-api-key` está presente e pertence à aplicação pretendida, obtenha novamente a chave de API da aplicação através da [API de autenticação](/pt/auth-api/get-credentials) se necessário e tente novamente.\n\n**Aplicação eliminada:** durante alguns minutos após a eliminação de uma aplicação, um pedido efetuado com uma das suas chaves de API pode responder `{\"detail\": \"This application was deleted.\", \"code\": \"application_deleted\"}`. Não tente novamente: a aplicação e as suas chaves de API já não existem. Decorridos esses minutos, a chave é recusada como qualquer outra chave inválida.","content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"string","example":"You do not have permission to perform this action.","isRequired":true,"uniqueKey":"detail","typeLabel":"string"},"code":{"type":"string","description":"Motivo legível por máquina, presente apenas em algumas falhas. `application_deleted`: a chave de API pertence a uma aplicação que foi eliminada.","example":"application_deleted","uniqueKey":"code","typeLabel":"string"}},"required":["detail"],"uniqueKey":"","typeLabel":"object"},"examples":{"Missing or invalid API key":{"title":"Missing or invalid API key","value":{"detail":"You do not have permission to perform this action."}},"No permission":{"title":"No permission","value":{"detail":"You do not have permission to perform this action."}},"Application deleted":{"title":"Application deleted","value":{"detail":"This application was deleted.","code":"application_deleted"}}},"exampleType":"examples"}},"exampleType":"examples"},"94dd4fb0-4e06-4aa5-b861-be30a03d42cf":{"description":"Limite de pedidos excedido — mais de 600 pedidos de criação de sessão numa janela de 60 segundos a partir da mesma chave de API / IP. Inspecione o `Retry-After` e aguarde antes de tentar novamente.\n\n**Nota:** O código-fonte também define um `FREE_SESSION_RATE_LIMIT` de 10 chamadas/minuto a par de `PAID_SESSION_RATE_LIMIT=600` (`sessions/serializers/session.py`), mas esse teto do plano gratuito **não é aplicado a este endpoint V3** — o middleware de limite de pedidos aplica o `SESSION_CREATE_RATE_LIMIT` de 600/min independentemente do plano. 600/min é o único limite que pode atingir aqui.","headers":{"Retry-After":{"description":"Segundos que o autor da chamada deve aguardar antes de tentar novamente o pedido.","schema":{"type":"integer","minimum":1,"example":42}},"X-RateLimit-Limit":{"description":"Número máximo de pedidos permitidos na janela atual de 60 segundos para o limite que foi ultrapassado (600 para session-create). Ausente na variante de quota de sandbox.","schema":{"type":"integer","example":600}},"X-RateLimit-Remaining":{"description":"Número de pedidos ainda permitidos na janela atual para o limite ultrapassado. Ausente na variante de quota da sandbox.","schema":{"type":"integer","minimum":0,"example":0}},"X-RateLimit-Reset":{"description":"Segundos da época UTC em que a janela atual de limite de pedidos é reiniciada. Ausente na variante de quota de sandbox.","schema":{"type":"integer","minimum":0,"example":1747497600}}},"content":{"application/json":{"schema":{"type":"object","properties":{"detail":{"type":"string","description":"Explicação legível da violação do limite de pedidos. Utilize esta mensagem para distinguir qual dos três limites foi atingido.","example":"Session creation rate limit exceeded. You can make up to 600 requests per minute.","uniqueKey":"detail","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Session-create limit":{"title":"Session-create limit","value":{"detail":"Session creation rate limit exceeded. You can make up to 600 requests per minute."}},"Sandbox session quota":{"title":"Sandbox session quota","value":{"detail":"Sandbox session quota exceeded (500 sessions per 24h). Wait for the window to reset. Expected available in 3600 seconds."}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"5220ec55-1614-43d8-b780-3b3e135b1c95":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","description":"A chave de API da sua aplicação, a partir de Programadores -> Chaves de API na Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter o âmbito definido: nenhum, leitura ou escrita por recurso, limitada a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a uma data de validade. 401 significa que a chave está incorreta, revogada ou expirada; 403 significa que nenhuma chave foi enviada, que a chave não tem acesso a este recurso ou ação, ou que o pedido veio de um endereço fora da sua lista de IP; 404 numa rota de sessão significa que a sessão está fora dos fluxos ou estados da chave. Uma chave sem acesso a multimédia recebe URLs de imagens, vídeos e PDFs como nulos, e uma chave sem permissão de escrita em sessões recebe ligações de sessão e tokens como nulos. Consulte https://docs.didit.me/console/api-keys.","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"19a65af2-e04f-405b-9abb-11f36ce51544":{"url":"https://verification.didit.me"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"A chave de API da sua aplicação, a partir de Programadores -> Chaves de API na Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter o âmbito definido: nenhum, leitura ou escrita por recurso, limitada a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a uma data de validade. 401 significa que a chave está incorreta, revogada ou expirada; 403 significa que nenhuma chave foi enviada, que a chave não tem acesso a este recurso ou ação, ou que o pedido veio de um endereço fora da sua lista de IP; 404 numa rota de sessão significa que a sessão está fora dos fluxos ou estados da chave. Uma chave sem acesso a multimédia recebe URLs de imagens, vídeos e PDFs como nulos, e uma chave sem permissão de escrita em sessões recebe ligações de sessão e tokens como nulos. Consulte https://docs.didit.me/console/api-keys.","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"x-api-key","type":"string","description":"A chave de API da sua aplicação, a partir de Programadores -> Chaves de API na Business Console. A chave principal tem acesso total. Uma chave nomeada pode ter o âmbito definido: nenhum, leitura ou escrita por recurso, limitada a alguns fluxos ou a sessões aprovadas, a uma lista de endereços IP e a uma data de validade. 401 significa que a chave está incorreta, revogada ou expirada; 403 significa que nenhuma chave foi enviada, que a chave não tem acesso a este recurso ou ação, ou que o pedido veio de um endereço fora da sua lista de IP; 404 numa rota de sessão significa que a sessão está fora dos fluxos ou estados da chave. Uma chave sem acesso a multimédia recebe URLs de imagens, vídeos e PDFs como nulos, e uma chave sem permissão de escrita em sessões recebe ligações de sessão e tokens como nulos. Consulte https://docs.didit.me/console/api-keys.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"x-api-key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"pt/openapi-25.json"},"subdomain":"didit-0f962782","siteName":"Didit Docs","title":"API de criação de sessão: iniciar verificação KYC ou KYB - Didit Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/sessions-api/create-session","matchLevel":1},"es":{"href":"/es/sessions-api/create-session","matchLevel":1},"pt-BR":{"href":"/pt-br/sessions-api/create-session","matchLevel":1},"ja":{"href":"/ja/sessions-api/create-session","matchLevel":1},"de":{"href":"/de/sessions-api/create-session","matchLevel":1},"fr":{"href":"/fr/sessions-api/create-session","matchLevel":1},"it":{"href":"/it/sessions-api/create-session","matchLevel":1},"pt":{"href":"/pt/sessions-api/create-session","matchLevel":0},"ca":{"href":"/ca/sessions-api/create-session","matchLevel":1},"id":{"href":"/id/sessions-api/create-session","matchLevel":1},"ru":{"href":"/ru/sessions-api/create-session","matchLevel":1},"ko":{"href":"/ko/sessions-api/create-session","matchLevel":1},"zh":{"href":"/zh/sessions-api/create-session","matchLevel":1},"ar":{"href":"/ar/sessions-api/create-session","matchLevel":1},"hi":{"href":"/hi/sessions-api/create-session","matchLevel":1}}},"lastModified":"2026-11-07T17:38:29.816Z","gitLastModified":"2026-11-07T17:24:04.000Z","originalFileLocation":"pt/sessions-api/create-session.mdx","locale":"pt"},"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=\"POST /v3/session/ inicia a verificação. Endpoint KYC e KYB unificado da Didit, pago por utilização, inferência abaixo de 2s, $10 grátis/mês.\">\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 de criação de sessão: iniciar verificação KYC ou KYB - Didit Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"POST /v3/session/ inicia a verificação. Endpoint KYC e KYB unificado da Didit, pago por utilização, inferência abaixo de 2s, $10 grátis/mês.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Didit Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.didit.me/pt/sessions-api/create-session\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://didit-0f962782.mintlify.site/_mintlify/api/og/v2?division=Verifica%C3%A7%C3%B5es+de+utilizadores+e+empresas\u0026amp;title=API+de+cria%C3%A7%C3%A3o+de+sess%C3%A3o%3A+iniciar+verifica%C3%A7%C3%A3o+KYC+ou+KYB\u0026amp;description=POST+%2Fv3%2Fsession%2F+inicia+a+verifica%C3%A7%C3%A3o.+Endpoint+KYC+e+KYB+unificado+da+Didit%2C+pago+por+utiliza%C3%A7%C3%A3o%2C+infer%C3%AAncia+abaixo+de+2s%2C+%2410+gr%C3%A1tis%2Fm%C3%AAs.\u0026amp;theme=f6d5c5eb819d99f700ee852a\u0026amp;signature=f92f053ed08f9c525a4cf6034dd74e9ce508cfa1450f85ad201dad07884b3a02\">\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 de criação de sessão: iniciar verificação KYC ou KYB - Didit Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"POST /v3/session/ inicia a verificação. Endpoint KYC e KYB unificado da Didit, pago por utilização, inferência abaixo de 2s, $10 grátis/mês.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://didit-0f962782.mintlify.site/_mintlify/api/og/v2?division=Verifica%C3%A7%C3%B5es+de+utilizadores+e+empresas\u0026amp;title=API+de+cria%C3%A7%C3%A3o+de+sess%C3%A3o%3A+iniciar+verifica%C3%A7%C3%A3o+KYC+ou+KYB\u0026amp;description=POST+%2Fv3%2Fsession%2F+inicia+a+verifica%C3%A7%C3%A3o.+Endpoint+KYC+e+KYB+unificado+da+Didit%2C+pago+por+utiliza%C3%A7%C3%A3o%2C+infer%C3%AAncia+abaixo+de+2s%2C+%2410+gr%C3%A1tis%2Fm%C3%AAs.\u0026amp;theme=f6d5c5eb819d99f700ee852a\u0026amp;signature=f92f053ed08f9c525a4cf6034dd74e9ce508cfa1450f85ad201dad07884b3a02\">\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/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/pt/sessions-api/create-session.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt\" href=\"https://docs.didit.me/pt/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.didit.me/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.didit.me/es/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.didit.me/pt-br/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.didit.me/ja/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.didit.me/de/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.didit.me/fr/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"it\" href=\"https://docs.didit.me/it/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ca\" href=\"https://docs.didit.me/ca/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"id\" href=\"https://docs.didit.me/id/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://docs.didit.me/ru/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.didit.me/ko/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.didit.me/zh/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ar\" href=\"https://docs.didit.me/ar/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"hi\" href=\"https://docs.didit.me/hi/sessions-api/create-session\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.didit.me/sessions-api/create-session\">\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/sessions-api/create-session#webpage\",\"url\":\"https://docs.didit.me/pt/sessions-api/create-session\",\"name\":\"API de criação de sessão: iniciar verificação KYC ou KYB\",\"description\":\"POST /v3/session/ inicia a verificação. Endpoint KYC e KYB unificado da Didit, pago por utilização, inferência abaixo de 2s, $10 grátis/mês.\",\"dateModified\":\"2026-11-07T17:24:04.000Z\",\"isPartOf\":{\"@id\":\"https://docs.didit.me#website\"},\"breadcrumb\":{\"@id\":\"https://docs.didit.me/pt/sessions-api/create-session#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.didit.me/pt/sessions-api/create-session#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Verificações de utilizadores e empresas\",\"item\":\"https://docs.didit.me/pt/sessions-api/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API de criação de sessão: iniciar verificação KYC ou KYB\",\"item\":\"https://docs.didit.me/pt/sessions-api/create-session\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.didit.me/pt/sessions-api/create-session#apireference\",\"headline\":\"API de criação de sessão: iniciar verificação KYC ou KYB\",\"name\":\"API de criação de sessão: iniciar verificação KYC ou KYB\",\"description\":\"POST /v3/session/ inicia a verificação. Endpoint KYC e KYB unificado da Didit, pago por utilização, inferência abaixo de 2s, $10 grátis/mês.\",\"url\":\"https://docs.didit.me/pt/sessions-api/create-session\",\"mainEntityOfPage\":{\"@id\":\"https://docs.didit.me/pt/sessions-api/create-session#webpage\"},\"dateModified\":\"2026-11-07T17:24:04.000Z\",\"keywords\":\"API criar sessão, API de sessão de verificação, API de sessão KYC, API de sessão KYB, API de verificação de identidade, POST /v3/session, KYC pago por chamada, $0.33 KYC completo, verificação de identidade sem contrato, API Didit\",\"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":"/sessions-api/create-session"}]},{"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/sessions-api/create-session"}]},{"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"}},"pages":[{"title":"pt-BR","href":"/pt-br/sessions-api/create-session"}]},{"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/sessions-api/create-session"}]},{"language":"de","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":"Anmelden","href":"https://business.didit.me"}},"pages":[{"title":"de","href":"/de/sessions-api/create-session"}]},{"language":"fr","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Assistance"},{"icon":"signal","href":"https://status.didit.me","label":"Statut"}],"primary":{"type":"button","label":"Se connecter","href":"https://business.didit.me"}},"pages":[{"title":"fr","href":"/fr/sessions-api/create-session"}]},{"language":"it","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Supporto"},{"icon":"signal","href":"https://status.didit.me","label":"Stato"}],"primary":{"type":"button","label":"Accedi","href":"https://business.didit.me"}},"pages":[{"title":"it","href":"/it/sessions-api/create-session"}]},{"language":"pt","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suporte"},{"icon":"signal","href":"https://status.didit.me","label":"Estado"}],"primary":{"type":"button","label":"Iniciar sessão","href":"https://business.didit.me"}},"tabs":[{"tab":"Começar","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/rocket.svg","pages":[{"title":"Começar","href":"/pt"}]},{"tab":"Integrar / SDKs","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/code.svg","pages":[{"title":"Integrar / SDKs","href":"/pt/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: verificação de identidade REST","sidebarTitle":"Referência da API","href":"/pt/api-reference/overview"},{"title":"API de healthcheck: sonda de disponibilidade pública","sidebarTitle":"Healthcheck","openapi":"pt/openapi-healthcheck.json GET /system/healthcheck","href":"/pt/api-reference/healthcheck"},{"title":"Estado do serviço Didit: API de estado público","sidebarTitle":"Estado do serviço","openapi":"pt/openapi-25.json GET /v3/status/","href":"/pt/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/openapi-25.json GET /v3/organization/bank-verification-pricing/","href":"/pt/api-reference/bank-verification-pricing"}]},{"group":"Verificações de utilizadores 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","description":"API de Sessões do Didit para KYC e KYB. Preços por utilização, inferência sub-2s, 220+ países, 14,000+ documentos, $10 gratuitos/mês.","href":"/pt/sessions-api/overview"},{"title":"API de criação de sessão: iniciar verificação KYC ou KYB","sidebarTitle":"Criar sessão","openapi":"pt/openapi-25.json POST /v3/session/","href":"/pt/sessions-api/create-session"},{"title":"Importar dados de outro fornecedor","description":"Escolha no Didit a importação certa para sessões, utilizadores, faces, listas de bloqueio, empresas, transações históricas e estados de fluxo.","openapi":"pt/openapi-25.json POST /v3/session/imports/","href":"/pt/sessions-api/import-verifications"},{"title":"API de Obtenção de Sessão: Dados de Decisão KYC e KYB","sidebarTitle":"Obter sessão","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/decision/","href":"/pt/sessions-api/retrieve-session"},{"title":"Listar sessões API: filtrar sessões KYC e KYB","sidebarTitle":"Listar sessões","openapi":"pt/openapi-25.json GET /v3/sessions/","href":"/pt/sessions-api/list-sessions"},{"title":"Atualizar Estado da Sessão API: Aprovar e Recusar","sidebarTitle":"Atualizar Estado da Sessão","openapi":"pt/openapi-25.json PATCH /v3/session/{sessionId}/update-status/","href":"/pt/sessions-api/update-status"},{"title":"Pré-visualizar e-mail de reenvio","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/resubmission-preview/","href":"/pt/sessions-api/preview-resubmission"},{"title":"Pré-visualizar e-mail de decisão: API de verificação","sidebarTitle":"Pré-visualizar e-mail de decisão","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/decision-email-preview/","href":"/pt/sessions-api/preview-decision-email"},{"title":"API Atualizar Estado de Funcionalidade: Aprovar/Recusar","sidebarTitle":"Atualizar Estado de Funcionalidade","openapi":"pt/openapi-25.json PATCH /v3/session/{sessionId}/features/{nodeId}/update-status/","href":"/pt/sessions-api/update-feature-status"},{"title":"Substituições de funcionalidades: histórico de passos","sidebarTitle":"Listar substituições de funcionalidades","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/features/overrides/","href":"/pt/sessions-api/list-feature-overrides"},{"title":"Cancelar Substituição de Funcionalidade na API","sidebarTitle":"Cancelar Substituição","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/features/overrides/{overrideId}/cancel/","href":"/pt/sessions-api/cancel-feature-override"},{"title":"API para atualizar o estado de hits AML","sidebarTitle":"Atualizar Estado de Hits AML","openapi":"pt/openapi-25.json PATCH /v3/session/{sessionId}/update-aml-hit-status/","href":"/pt/sessions-api/update-aml-hit-status"},{"title":"API de atualização de dados de sessão: corrigir KYC e KYB","sidebarTitle":"Atualizar dados de sessão","href":"/pt/sessions-api/update-data"},{"title":"API de atualização do estado da triagem AML","sidebarTitle":"Atualizar estado AML","openapi":"pt/openapi-25.json PATCH /v3/session/{sessionId}/update-aml-status/","href":"/pt/sessions-api/update-aml-status"},{"title":"Atualizar dados de IA de documentos na API","sidebarTitle":"Atualizar dados de IA de documentos","openapi":"pt/openapi-25.json PATCH /v3/document-ai/{sessionId}/documents/{documentUuid}/","href":"/pt/sessions-api/update-document-ai-data"},{"title":"Regenerar sessão KYC de pessoas-chave: API de verificação","sidebarTitle":"Regenerar sessão KYC de pessoas-chave","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/kyb/parties/{partyUuid}/regenerate/","href":"/pt/sessions-api/regenerate-kyb-party"},{"title":"Carregar documentos KYB através da API","sidebarTitle":"Carregar documentos KYB","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/kyb/documents/","href":"/pt/sessions-api/kyb-upload-documents"},{"title":"Listar partes extraídas KYB API","sidebarTitle":"Listar partes extraídas KYB","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/kyb/extracted-parties/","href":"/pt/sessions-api/kyb-extracted-parties"},{"title":"Listar rascunhos de pessoas-chave KYB na API","sidebarTitle":"Listar rascunhos KYB","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/kyb/parties/drafts/","href":"/pt/sessions-api/kyb-list-party-drafts"},{"title":"API para criar rascunho de pessoa KYB","sidebarTitle":"Criar rascunho KYB","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/kyb/parties/drafts/","href":"/pt/sessions-api/kyb-create-party-draft"},{"title":"Editar rascunho de pessoa-chave KYB API","sidebarTitle":"Editar rascunho KYB","openapi":"pt/openapi-25.json PATCH /v3/session/{sessionId}/kyb/parties/drafts/{draftId}/","href":"/pt/sessions-api/kyb-update-party-draft"},{"title":"Eliminar rascunho de pessoa-chave KYB API","sidebarTitle":"Eliminar rascunho KYB","openapi":"pt/openapi-25.json DELETE /v3/session/{sessionId}/kyb/parties/drafts/{draftId}/","href":"/pt/sessions-api/kyb-delete-party-draft"},{"title":"Submeter pessoas-chave KYB API","sidebarTitle":"Submeter pessoas-chave KYB","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/kyb/parties/submit/","href":"/pt/sessions-api/kyb-submit-parties"},{"title":"Adicionar imagens a uma sessão, API Didit","sidebarTitle":"Adicionar imagens à sessão","openapi":"pt/openapi-25.json PATCH /v3/session/{sessionId}/add-images/","href":"/pt/sessions-api/add-images"},{"title":"API para eliminar sessão: direito ao apagamento RGPD","sidebarTitle":"Eliminar sessão","openapi":"pt/openapi-25.json DELETE /v3/session/{sessionId}/delete/","href":"/pt/sessions-api/delete-session"},{"title":"API para gerar PDF: relatórios de conformidade KYC e KYB","sidebarTitle":"Gerar PDF","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/generate-pdf/","href":"/pt/sessions-api/generate-pdf"},{"title":"API para exportar todos os ficheiros de sessão num ZIP","sidebarTitle":"Exportar ficheiros","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/files-export/","href":"/pt/sessions-api/export-files"},{"title":"API de exportação de ficheiros da sessão: estado e link","sidebarTitle":"Obter exportação de ficheiros","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/files-export/{exportId}/","href":"/pt/sessions-api/get-files-export"},{"group":"Assinaturas eletrónicas","pages":[{"title":"API para descarregar documento assinado: PDF assinado","sidebarTitle":"Descarregar um documento assinado","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/signatures/{nodeId}/documents/{documentId}/file/","href":"/pt/sessions-api/electronic-signature/download-signed-document"},{"title":"Prova de assinatura eletrónica: PDF de auditoria","sidebarTitle":"Descarregar a prova de assinatura","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/signatures/{nodeId}/evidence/","href":"/pt/sessions-api/electronic-signature/download-evidence"},{"title":"API de imagem de assinatura: PNG da assinatura adotada","sidebarTitle":"Descarregar imagem da assinatura","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/signatures/{nodeId}/fields/{fieldId}/image/","href":"/pt/sessions-api/electronic-signature/download-field-image"},{"title":"API de validação de assinaturas: reverificar PDFs","sidebarTitle":"Validar assinaturas","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/signatures/{nodeId}/validate/","href":"/pt/sessions-api/electronic-signature/validate-signatures"}]},{"title":"API Share Session: KYC reutilizável entre parceiros","sidebarTitle":"Visão geral","href":"/pt/sessions-api/share-session/overview"},{"title":"API de Partilha de Sessão: Gerar Token de Partilha","sidebarTitle":"Partilha de Sessão","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/share/","href":"/pt/sessions-api/share-session/share"},{"title":"Importar sessão partilhada API: KYC reutilizável e KYB","sidebarTitle":"Importar sessão partilhada","openapi":"pt/openapi-25.json POST /v3/session/import-shared/","href":"/pt/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 de bloqueio e de permissão","sidebarTitle":"Visão geral","href":"/pt/management-api/lists/overview"},{"title":"Listar listas API: listas de bloqueio e de permissões","sidebarTitle":"Listar listas","openapi":"pt/openapi-25.json GET /v3/lists/","href":"/pt/management-api/lists/list"},{"title":"Criar lista via API: lista de permissões e personalizada","sidebarTitle":"Criar lista","openapi":"pt/openapi-25.json POST /v3/lists/","href":"/pt/management-api/lists/create"},{"title":"Obter lista API: consultar lista de conformidade","sidebarTitle":"Obter lista","openapi":"pt/openapi-25.json GET /v3/lists/{list_uuid}/","href":"/pt/management-api/lists/get"},{"title":"Atualizar lista via API: editar lista de conformidade","sidebarTitle":"Atualizar lista","openapi":"pt/openapi-25.json PATCH /v3/lists/{list_uuid}/","href":"/pt/management-api/lists/update"},{"title":"API para eliminar listas: remover lista de conformidade","sidebarTitle":"Eliminar lista","openapi":"pt/openapi-25.json DELETE /v3/lists/{list_uuid}/","href":"/pt/management-api/lists/delete"},{"title":"API de entradas de listas de bloqueio e permissões","sidebarTitle":"Entradas de listas","openapi":"pt/openapi-25.json GET /v3/lists/{list_uuid}/entries/","href":"/pt/management-api/lists/list-entries"},{"title":"Criar Entrada em Lista de Bloqueio e Permissões: API","sidebarTitle":"Criar Entrada na Lista","openapi":"pt/openapi-25.json POST /v3/lists/{list_uuid}/entries/","href":"/pt/management-api/lists/create-entry"},{"title":"Eliminar entrada de lista API: desbloquear item","sidebarTitle":"Eliminar entrada de lista","openapi":"pt/openapi-25.json DELETE /v3/lists/{list_uuid}/entries/{entry_uuid}/","href":"/pt/management-api/lists/delete-entry"},{"title":"Carregar rosto: listas biométricas da API","sidebarTitle":"Carregar rosto","openapi":"pt/openapi-25.json POST /v3/lists/{list_uuid}/entries/face-upload/","href":"/pt/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":"Listar itens da lista de bloqueio via API","sidebarTitle":"Listar itens bloqueados","openapi":"pt/openapi-25.json GET /v3/blocklist/","href":"/pt/management-api/blocklist/list"},{"title":"Adicionar à lista de bloqueio API: itens de sessão","sidebarTitle":"Adicionar à lista de bloqueio","openapi":"pt/openapi-25.json POST /v3/blocklist/add/","href":"/pt/management-api/blocklist/add"},{"title":"Remover da lista de bloqueio: API de desbloqueio","sidebarTitle":"Remover da lista de bloqueio","openapi":"pt/openapi-25.json POST /v3/blocklist/remove/","href":"/pt/management-api/blocklist/remove"}]},{"group":"Fluxos","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/workflows.svg","pages":[{"title":"API para listar fluxos: fluxos de verificação","sidebarTitle":"Listar fluxos","openapi":"pt/openapi-25.json GET /v3/workflows/","href":"/pt/management-api/workflows/list"},{"title":"API para criar fluxo: construir fluxo KYC","sidebarTitle":"Criar fluxo","openapi":"pt/openapi-25.json POST /v3/workflows/","href":"/pt/management-api/workflows/create"},{"title":"Configurações de funcionalidades de fluxo: API","sidebarTitle":"Configurações de fluxo","href":"/pt/management-api/workflows/feature-configs"},{"title":"Obter fluxo API: consultar fluxo KYC","sidebarTitle":"Obter fluxo","openapi":"pt/openapi-25.json GET /v3/workflows/{settings_uuid}/","href":"/pt/management-api/workflows/get"},{"title":"API de Atualização de Fluxos: Editar Fluxo KYC","sidebarTitle":"Atualizar Fluxo","openapi":"pt/openapi-25.json PATCH /v3/workflows/{settings_uuid}/","href":"/pt/management-api/workflows/update"},{"title":"Eliminar fluxo na API: remover fluxo KYC","sidebarTitle":"Eliminar fluxo","openapi":"pt/openapi-25.json DELETE /v3/workflows/{settings_uuid}/","href":"/pt/management-api/workflows/delete"}]},{"group":"Questionários","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/task-square.svg","pages":[{"title":"Listar questionários: API de formulários KYC","sidebarTitle":"Listar questionários","openapi":"pt/openapi-25.json GET /v3/questionnaires/","href":"/pt/management-api/questionnaires/list"},{"title":"API para criar questionário: formulário KYC personalizado","sidebarTitle":"Criar questionário","openapi":"pt/openapi-25.json POST /v3/questionnaires/","href":"/pt/management-api/questionnaires/create"},{"title":"Obter questionário API: consultar formulário KYC","sidebarTitle":"Obter questionário","openapi":"pt/openapi-25.json GET /v3/questionnaires/{questionnaire_uuid}/","href":"/pt/management-api/questionnaires/get"},{"title":"Atualizar questionário API: editar formulário KYC","sidebarTitle":"Atualizar questionário","openapi":"pt/openapi-25.json PATCH /v3/questionnaires/{questionnaire_uuid}/","href":"/pt/management-api/questionnaires/update"},{"title":"Eliminar questionário API: remover formulário KYC","sidebarTitle":"Eliminar questionário","openapi":"pt/openapi-25.json DELETE /v3/questionnaires/{questionnaire_uuid}/","href":"/pt/management-api/questionnaires/delete"}]},{"group":"Utilizadores","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/users.svg","pages":[{"title":"API para listar utilizadores: entidades do fornecedor","sidebarTitle":"Listar utilizadores","openapi":"pt/openapi-25.json GET /v3/users/","href":"/pt/management-api/users/list"},{"title":"Criar utilizador API: entidade User do fornecedor","sidebarTitle":"Criar utilizador","openapi":"pt/openapi-25.json POST /v3/users/create/","href":"/pt/management-api/users/create"},{"title":"Carregar rosto de utilizador: API e perfil do fornecedor","sidebarTitle":"Carregar rosto do utilizador","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/vendor-users/by-id/{didit_internal_id}/faces/upload/","href":"/pt/management-api/users/upload-face"},{"title":"Obter utilizador API: entidade utilizador do fornecedor","sidebarTitle":"Obter utilizador","openapi":"pt/openapi-25.json GET /v3/users/{vendor_data}/","href":"/pt/management-api/users/get"},{"title":"API de PDF do histórico do utilizador: todas as sessões","sidebarTitle":"PDF do histórico do utilizador","openapi":"pt/openapi-25.json GET /v3/users/{vendor_data}/generate-pdf/","href":"/pt/management-api/users/generate-pdf"},{"title":"API de atualização de utilizador: entidade do fornecedor","sidebarTitle":"Atualizar utilizador","openapi":"pt/openapi-25.json PATCH /v3/users/{vendor_data}/","href":"/pt/management-api/users/update"},{"title":"Atualizar estado do utilizador: bloquear ou sinalizar","sidebarTitle":"Atualizar estado do utilizador","openapi":"pt/openapi-25.json PATCH /v3/users/{vendor_data}/update-status/","href":"/pt/management-api/users/update-status"},{"title":"API de eliminação em lote de utilizadores (RGPD)","sidebarTitle":"Eliminar utilizadores em lote","openapi":"pt/openapi-25.json POST /v3/users/delete/","href":"/pt/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/management-api/biometric-templates/overview"},{"title":"API para listar templates biométricos","sidebarTitle":"Listar templates","openapi":"pt/openapi-25.json GET /v3/biometric-templates/","href":"/pt/management-api/biometric-templates/list"},{"title":"Contar templates biométricos na API","sidebarTitle":"Contar templates","openapi":"pt/openapi-25.json GET /v3/biometric-templates/count/","href":"/pt/management-api/biometric-templates/count"},{"title":"Obter template biométrico: API","sidebarTitle":"Obter template","openapi":"pt/openapi-25.json GET /v3/biometric-templates/{template_uuid}/","href":"/pt/management-api/biometric-templates/get"},{"title":"Purgar template biométrico: API","sidebarTitle":"Purgar template","openapi":"pt/openapi-25.json DELETE /v3/biometric-templates/{template_uuid}/","href":"/pt/management-api/biometric-templates/purge"},{"title":"Eliminação em massa de templates biométricos via API","sidebarTitle":"Eliminação em massa","openapi":"pt/openapi-25.json POST /v3/biometric-templates/delete/","href":"/pt/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 de fornecedores","sidebarTitle":"Listar empresas","openapi":"pt/openapi-25.json GET /v3/businesses/","href":"/pt/management-api/businesses/list"},{"title":"API para Criar Empresa: Entidade KYB de Fornecedor","sidebarTitle":"Criar Empresa","openapi":"pt/openapi-25.json POST /v3/businesses/create/","href":"/pt/management-api/businesses/create"},{"title":"API Get Business: Entidade KYB do fornecedor","sidebarTitle":"Obter empresa","openapi":"pt/openapi-25.json GET /v3/businesses/{vendor_data}/","href":"/pt/management-api/businesses/get"},{"title":"API de PDF de sessão de verificação de empresas","sidebarTitle":"Gerar PDF da sessão de empresa","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/businesses/{business_session_id}/pdf/","href":"/pt/management-api/businesses/generate-session-pdf"},{"title":"Atualizar empresa API: entidade KYB de fornecedor","sidebarTitle":"Atualizar empresa","openapi":"pt/openapi-25.json PATCH /v3/businesses/{vendor_data}/","href":"/pt/management-api/businesses/update"},{"title":"API Atualizar Estado de Empresa: Bloquear ou Sinalizar","sidebarTitle":"Atualizar Estado da Empresa","openapi":"pt/openapi-25.json PATCH /v3/businesses/{vendor_data}/update-status/","href":"/pt/management-api/businesses/update-status"},{"title":"API de eliminação em lote de empresas: apagamento KYB","sidebarTitle":"Eliminar empresas em lote","openapi":"pt/openapi-25.json POST /v3/businesses/delete/","href":"/pt/management-api/businesses/delete"}]},{"group":"Monitorização AML contínua","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/aml-screening.svg","pages":[{"title":"Ativar ou desativar monitorização AML de utilizadores","sidebarTitle":"Ativar para utilizadores","openapi":"pt/openapi-25.json POST /v3/users/aml-monitoring/","href":"/pt/management-api/aml-monitoring/toggle-users"},{"title":"Ativar/desativar monitorização AML de empresas via API","sidebarTitle":"Ativar para empresas","openapi":"pt/openapi-25.json POST /v3/businesses/aml-monitoring/","href":"/pt/management-api/aml-monitoring/toggle-businesses"},{"title":"Obter tarefa de monitorização AML (API)","sidebarTitle":"Obter tarefa de monitorização AML","openapi":"pt/openapi-25.json GET /v3/aml-monitoring/jobs/{job_id}/","href":"/pt/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":"Listar casos API","sidebarTitle":"Listar casos","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/","href":"/pt/management-api/cases/list"},{"title":"Criar caso: API de Gestão de casos","sidebarTitle":"Criar caso","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/","href":"/pt/management-api/cases/create"},{"title":"Obter caso via API","sidebarTitle":"Obter caso","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/","href":"/pt/management-api/cases/get"},{"title":"Atualizar caso API","sidebarTitle":"Atualizar caso","openapi":"pt/openapi-25.json PATCH /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/","href":"/pt/management-api/cases/update"},{"title":"API para eliminar caso","sidebarTitle":"Eliminar caso","openapi":"pt/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/","href":"/pt/management-api/cases/delete"},{"title":"API para resolver casos","sidebarTitle":"Resolver caso","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/resolve/","href":"/pt/management-api/cases/resolve"},{"title":"Pedido de Informação em Caso API","sidebarTitle":"Pedir Informação (Aguarda Utilizador)","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/request-info/","href":"/pt/management-api/cases/request-info"},{"title":"API de transferência de casos","sidebarTitle":"Transferir caso","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/transfer/","href":"/pt/management-api/cases/transfer"},{"title":"API de impressão de caso em PDF","sidebarTitle":"Imprimir caso","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/print/","href":"/pt/management-api/cases/print"},{"title":"API de análise de casos","sidebarTitle":"Análise de casos","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/statistics/","href":"/pt/management-api/cases/statistics"},{"title":"Atualização em massa do estado de casos (API)","sidebarTitle":"Atualizar estado em massa","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/bulk/status/","href":"/pt/management-api/cases/bulk-status"},{"title":"Listar Notas de Caso API","sidebarTitle":"Listar Notas de Caso","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/notes/","href":"/pt/management-api/cases/list-notes"},{"title":"Criar nota de caso na API","sidebarTitle":"Criar nota de caso","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/notes/","href":"/pt/management-api/cases/create-note"}]},{"group":"Modelos de casos","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/sliders.svg","pages":[{"title":"Listar Modelos de Caso API","sidebarTitle":"Listar Modelos de Caso","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/","href":"/pt/management-api/case-blueprints/list"},{"title":"API para criar modelo de caso","sidebarTitle":"Criar modelo de caso","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/","href":"/pt/management-api/case-blueprints/create"},{"title":"Instalar Predefinições de Blueprint API","sidebarTitle":"Instalar predefinições de blueprint","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/blueprints/presets/install/","href":"/pt/management-api/case-blueprints/install-presets"}]},{"group":"Redes","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/link.svg","pages":[{"title":"Listar redes de fraude API","sidebarTitle":"Listar redes","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/","href":"/pt/management-api/networks/list"},{"title":"Obter Rede de Fraude API","sidebarTitle":"Obter Rede","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/","href":"/pt/management-api/networks/get"},{"title":"Adicionar Etiqueta a Rede de Fraude API","sidebarTitle":"Adicionar Etiqueta à Rede","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/add/","href":"/pt/management-api/networks/add-tag"},{"title":"Remover uma Etiqueta de uma Rede de Fraude através da API","sidebarTitle":"Remover Etiqueta de Rede","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/tags/remove/","href":"/pt/management-api/networks/remove-tag"},{"title":"API do Grafo de Redes de Fraude","sidebarTitle":"Obter Grafo de Rede","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/graph/","href":"/pt/management-api/networks/graph"},{"title":"Listar membros de redes de fraude API","sidebarTitle":"Listar membros da rede","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/members/","href":"/pt/management-api/networks/members"},{"title":"Listar sinais de rede de fraude (API)","sidebarTitle":"Listar sinais de rede","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/signals/","href":"/pt/management-api/networks/signals"},{"title":"API de Cronologia da Rede de Fraude","sidebarTitle":"Obter cronologia da rede","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/timeline/","href":"/pt/management-api/networks/timeline"},{"title":"API de Mapa de Rede de Fraude","sidebarTitle":"Obter Mapa de Rede","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/map/","href":"/pt/management-api/networks/map"},{"title":"API de Consulta de Membros da Rede","sidebarTitle":"Consulta de Membros","href":"/pt/management-api/networks/membership-lookup"}]},{"group":"Modelos de relatórios","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/task-square.svg","pages":[{"title":"Listar modelos de relatório API","sidebarTitle":"Listar modelos de relatório","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/report-templates/","href":"/pt/management-api/report-templates/list"},{"title":"Criar modelo de relatório API","sidebarTitle":"Criar modelo de relatório","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/report-templates/","href":"/pt/management-api/report-templates/create"}]},{"group":"Relatórios regulamentares","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/search-file.svg","pages":[{"title":"API para criar relatório FIU a partir de caso","sidebarTitle":"Criar relatório a partir do caso","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/cases/{case_uuid}/regulatory-reports/","href":"/pt/management-api/regulatory-reports/create-for-case"},{"title":"Listar relatórios FIU na API","sidebarTitle":"Listar relatórios","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/","href":"/pt/management-api/regulatory-reports/list"},{"title":"Validar relatório FIU na API","sidebarTitle":"Validar relatório","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/validate/","href":"/pt/management-api/regulatory-reports/validate"},{"title":"Finalizar relatório FIU API","sidebarTitle":"Finalizar relatório","openapi":"pt/openapi-25.json POST /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/finalize/","href":"/pt/management-api/regulatory-reports/finalize"},{"title":"Eliminar relatório UIF via API","sidebarTitle":"Eliminar relatório","openapi":"pt/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/","href":"/pt/management-api/regulatory-reports/delete"},{"title":"API de URL de download de relatório FIU","sidebarTitle":"Obter URL de download","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/regulatory-reports/{report_uuid}/download-url/","href":"/pt/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 de listagem de transações: monitorização KYT","sidebarTitle":"Listar transações","openapi":"pt/openapi-25.json GET /v3/transactions/","href":"/pt/management-api/transactions/list"},{"title":"Criar Transação API: Submissão KYT","sidebarTitle":"Criar transação","openapi":"pt/openapi-25.json POST /v3/transactions/","href":"/pt/management-api/transactions/create"},{"title":"Eliminar transações em lote (API)","sidebarTitle":"Eliminar transações em lote","openapi":"pt/openapi-25.json DELETE /v3/organization/{organization_id}/application/{application_id}/transactions/delete/","href":"/pt/management-api/transactions/delete"},{"title":"Obter transação API: detalhe KYT","sidebarTitle":"Obter transação","openapi":"pt/openapi-25.json GET /v3/transactions/{transaction_id}/","href":"/pt/management-api/transactions/get"},{"title":"Listar notas de transação (API)","sidebarTitle":"Listar notas de transação","openapi":"pt/openapi-25.json GET /v3/transactions/{transaction_id}/notes/","href":"/pt/management-api/transactions/list-notes"},{"title":"API para criar nota de transação","sidebarTitle":"Criar nota de transação","openapi":"pt/openapi-25.json POST /v3/transactions/{transaction_id}/notes/","href":"/pt/management-api/transactions/create-note"},{"title":"Listar transações relacionadas API","sidebarTitle":"Listar transações relacionadas","openapi":"pt/openapi-25.json GET /v3/transactions/{transaction_id}/related/","href":"/pt/management-api/transactions/list-related"},{"title":"API de Relatório PDF de Transações","sidebarTitle":"Gerar Relatório PDF de Transação","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/transactions/{transaction_uuid}/pdf/","href":"/pt/management-api/transactions/generate-pdf"},{"title":"API de Triagem de Carteiras: AML Cripto sob Pedido","sidebarTitle":"Triagem de Carteiras","openapi":"pt/openapi-25.json POST /v3/wallet-screening/","href":"/pt/management-api/transactions/screen-wallet"},{"title":"API de Relatório PDF de Triagem de Carteiras","sidebarTitle":"Gerar PDF de triagem de carteira","openapi":"pt/openapi-25.json POST /v3/wallet-screening/pdf/","href":"/pt/management-api/transactions/screen-wallet-pdf"},{"title":"Emitir token de transação SDK: API de KYT no cliente","sidebarTitle":"Emitir token de transação SDK","openapi":"pt/openapi-25.json POST /v3/transactions/sdk-token/","href":"/pt/management-api/transactions/sdk-token"},{"title":"Submeter Transação via SDK: KYT do Lado do Cliente","sidebarTitle":"Submeter Transação (Token SDK)","openapi":"pt/openapi-25.json POST /v1/transactions/","href":"/pt/management-api/transactions/submit-sdk"},{"title":"Obter transação com SDK: KYT no lado do cliente","sidebarTitle":"Obter transação (token SDK)","openapi":"pt/openapi-25.json GET /v1/transactions/{transaction_id}/","href":"/pt/management-api/transactions/get-sdk"},{"title":"Listar regras de monitorização de transações API","sidebarTitle":"Listar regras","openapi":"pt/openapi-25.json GET /v3/transactions/rules/","href":"/pt/management-api/transactions/rules-list"},{"title":"Criar Regra de Monitorização de Transações API - KYT","sidebarTitle":"Criar Regra","openapi":"pt/openapi-25.json POST /v3/transactions/rules/","href":"/pt/management-api/transactions/rules-create"},{"title":"Monitorização de transações: obter regra via API","sidebarTitle":"Obter regra","openapi":"pt/openapi-25.json GET /v3/transactions/rules/{rule_uuid}/","href":"/pt/management-api/transactions/rules-get"},{"title":"Atualizar regra de Monitorização de transações via API","sidebarTitle":"Atualizar regra","openapi":"pt/openapi-25.json PATCH /v3/transactions/rules/{rule_uuid}/","href":"/pt/management-api/transactions/rules-update"},{"title":"Eliminar regra de Monitorização de transações via API","sidebarTitle":"Eliminar regra","openapi":"pt/openapi-25.json DELETE /v3/transactions/rules/{rule_uuid}/","href":"/pt/management-api/transactions/rules-delete"},{"title":"Backtest de regras de Monitorização de transações API","sidebarTitle":"Backtest de regras","openapi":"pt/openapi-25.json POST /v3/transactions/rules/backtest/","href":"/pt/management-api/transactions/rules-backtest"},{"title":"Monitorização de Transações: API com 150+ Predefinições","sidebarTitle":"Listar biblioteca de regras","openapi":"pt/openapi-25.json GET /v3/transactions/rules/library/","href":"/pt/management-api/transactions/rules-library"},{"title":"Instalar regras de monitorização de transações via API","sidebarTitle":"Instalar regras da biblioteca","openapi":"pt/openapi-25.json POST /v3/transactions/rules/install/","href":"/pt/management-api/transactions/rules-install"},{"title":"Desinstalar regras de monitorização de transações API","sidebarTitle":"Desinstalar regras da biblioteca","openapi":"pt/openapi-25.json DELETE /v3/transactions/rules/install/","href":"/pt/management-api/transactions/rules-uninstall"}]},{"group":"Eventos de monitorização","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"Listar Eventos de Monitorização API","sidebarTitle":"Listar Eventos de Monitorização","openapi":"pt/openapi-25.json GET /v3/events/","href":"/pt/management-api/monitoring-events/list"},{"title":"API para Criar Evento de Monitorização","sidebarTitle":"Criar Evento de Monitorização","openapi":"pt/openapi-25.json POST /v3/events/","href":"/pt/management-api/monitoring-events/create"},{"title":"API de Eventos de Monitorização em Lote","sidebarTitle":"Criar Eventos de Monitorização em Lote","openapi":"pt/openapi-25.json POST /v3/events/batch/","href":"/pt/management-api/monitoring-events/create-batch"},{"title":"Gerar token SDK de monitorização da API","sidebarTitle":"Gerar token SDK de monitorização","openapi":"pt/openapi-25.json POST /v3/events/sdk-token/","href":"/pt/management-api/monitoring-events/sdk-token"},{"title":"Obter Evento de Monitorização API","sidebarTitle":"Obter Evento","openapi":"pt/openapi-25.json GET /v3/events/{event_uuid}/","href":"/pt/management-api/monitoring-events/get"},{"title":"API de cronologia de eventos do titular","sidebarTitle":"Obter cronologia de eventos do titular","openapi":"pt/openapi-25.json GET /v3/events/subjects/{vendor_data}/","href":"/pt/management-api/monitoring-events/subject-timeline"},{"title":"Métricas de enriquecimento de eventos (API)","sidebarTitle":"Obter métricas de enriquecimento","openapi":"pt/openapi-25.json GET /v3/events/enrichment-metrics/","href":"/pt/management-api/monitoring-events/enrichment-metrics"},{"title":"Eliminar evento de monitorização - API","sidebarTitle":"Eliminar evento","openapi":"pt/openapi-25.json DELETE /v3/events/{event_uuid}/delete/","href":"/pt/management-api/monitoring-events/delete"}]},{"group":"Travel Rule","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"Obter definições da Travel Rule: perfil VASP da API","sidebarTitle":"Obter definições da Travel Rule","openapi":"pt/openapi-25.json GET /v3/travel-rule/settings/","href":"/pt/management-api/travel-rule/get-settings"},{"title":"API Travel Rule: Atualizar, Ativar e Configurar","sidebarTitle":"Atualizar Definições da Travel Rule","openapi":"pt/openapi-25.json PUT /v3/travel-rule/settings/","href":"/pt/management-api/travel-rule/update-settings"},{"title":"API de redes Travel Rule: obter estado","sidebarTitle":"Obter redes Travel Rule","openapi":"pt/openapi-25.json GET /v3/travel-rule/networks/","href":"/pt/management-api/travel-rule/get-networks"},{"title":"Questionário da rede Travel Rule: obter via API","sidebarTitle":"Obter questionário da rede","openapi":"pt/openapi-25.json GET /v3/travel-rule/networks/questionnaire/","href":"/pt/management-api/travel-rule/get-network-questionnaire"},{"title":"Guardar questionário da Travel Rule da rede: API","sidebarTitle":"Guardar respostas do questionário da rede","openapi":"pt/openapi-25.json PUT /v3/travel-rule/networks/questionnaire/","href":"/pt/management-api/travel-rule/update-network-questionnaire"},{"title":"Submeter questionário de rede Travel Rule na API","sidebarTitle":"Submeter questionário da rede","openapi":"pt/openapi-25.json POST /v3/travel-rule/networks/questionnaire/submit/","href":"/pt/management-api/travel-rule/submit-network-questionnaire"},{"title":"Pedir acesso à rede Travel Rule na API de Gestão","sidebarTitle":"Pedir rede Travel Rule","openapi":"pt/openapi-25.json POST /v3/travel-rule/networks/{network}/request/","href":"/pt/management-api/travel-rule/request-network"},{"title":"Confirmar e-mail de conformidade da Travel Rule API","sidebarTitle":"Enviar confirmação do e-mail de conformidade","openapi":"pt/openapi-25.json POST /v3/travel-rule/settings/compliance-email/confirmation/","href":"/pt/management-api/travel-rule/send-compliance-email-confirmation"},{"title":"Listar transferências Travel Rule na API","sidebarTitle":"Listar transferências Travel Rule","openapi":"pt/openapi-25.json GET /v3/travel-rule/transfers/","href":"/pt/management-api/travel-rule/list-transfers"},{"title":"Listar Depósitos Travel Rule Não Correspondidos API","sidebarTitle":"Listar Depósitos Não Correspondidos","openapi":"pt/openapi-25.json GET /v3/travel-rule/unmatched/","href":"/pt/management-api/travel-rule/list-unmatched-deposits"},{"title":"Corresponder Depósito Travel Rule: Associar Mensagem","sidebarTitle":"Corresponder Depósito Não Associado","openapi":"pt/openapi-25.json POST /v3/travel-rule/unmatched/{transaction_uuid}/match/","href":"/pt/management-api/travel-rule/match-unmatched-deposit"},{"title":"API Travel Rule: concluir, reenviar, atualizar","sidebarTitle":"Concluir, cancelar, reenviar ou atualizar uma transferência","openapi":"pt/openapi-25.json PATCH /v3/transactions/{transaction_id}/travel-rule/","href":"/pt/management-api/travel-rule/update-transfer"},{"title":"API de confirmação de propriedade da carteira Travel Rule","sidebarTitle":"Confirmar ou recusar carteira","openapi":"pt/openapi-25.json POST /v3/transactions/{transaction_id}/travel-rule/ownership/","href":"/pt/management-api/travel-rule/confirm-ownership"},{"title":"Listar mensagens da Travel Rule API","sidebarTitle":"Listar mensagens da Travel Rule","openapi":"pt/openapi-25.json GET /v3/transactions/{transaction_id}/travel-rule/messages/","href":"/pt/management-api/travel-rule/list-messages"},{"title":"API para enviar mensagem Travel Rule","sidebarTitle":"Enviar mensagem Travel Rule","openapi":"pt/openapi-25.json POST /v3/transactions/{transaction_id}/travel-rule/messages/","href":"/pt/management-api/travel-rule/create-message"},{"title":"Registar transferência recebida Sunrise: API Travel Rule","sidebarTitle":"Registar transferência recebida (Sunrise)","openapi":"pt/openapi-25.json POST /v3/travel-rule/inbound/","href":"/pt/management-api/travel-rule/register-inbound"},{"title":"Acionar transferência de entrada de VASP de teste: API","sidebarTitle":"Acionar transferência de entrada de teste","openapi":"pt/openapi-25.json POST /v3/travel-rule/test-vasp/inbound/","href":"/pt/management-api/travel-rule/trigger-test-vasp-inbound"},{"title":"API de pesquisa no diretório de VASP: rotas Travel Rule","sidebarTitle":"Pesquisar o diretório de VASP","openapi":"pt/openapi-25.json GET /v3/travel-rule/vasps/","href":"/pt/management-api/travel-rule/search-vasps"},{"title":"Obter entrada do diretório de VASP: API da Travel Rule","sidebarTitle":"Obter entrada de VASP","openapi":"pt/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/","href":"/pt/management-api/travel-rule/get-vasp"},{"title":"Decisão sobre VASP contraparte na API Travel Rule","sidebarTitle":"Decisão sobre um VASP","openapi":"pt/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/decision/","href":"/pt/management-api/travel-rule/get-vasp-decision"},{"title":"Definir decisão sobre VASP contraparte: API Travel Rule","sidebarTitle":"Definir decisão sobre um VASP","openapi":"pt/openapi-25.json PUT /v3/travel-rule/vasps/{vasp_id}/decision/","href":"/pt/management-api/travel-rule/set-vasp-decision"},{"title":"Limpar decisão de uma VASP contraparte: API Travel Rule","sidebarTitle":"Limpar a sua decisão sobre uma VASP","openapi":"pt/openapi-25.json DELETE /v3/travel-rule/vasps/{vasp_id}/decision/","href":"/pt/management-api/travel-rule/clear-vasp-decision"},{"title":"Obter triagem de VASP contraparte: Travel Rule","sidebarTitle":"Triagem de entidade do VASP","openapi":"pt/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/screening/","href":"/pt/management-api/travel-rule/get-vasp-screening"},{"title":"Triagem de VASP contraparte: verificação de sanções","sidebarTitle":"Triagem de VASP contraparte","openapi":"pt/openapi-25.json POST /v3/travel-rule/vasps/{vasp_id}/screening/","href":"/pt/management-api/travel-rule/screen-vasp"},{"title":"Listar Questionários de Diligência Devida VASP API","sidebarTitle":"Listar questionários de diligência devida","openapi":"pt/openapi-25.json GET /v3/travel-rule/vasps/{vasp_id}/questionnaires/","href":"/pt/management-api/travel-rule/list-vasp-questionnaires"},{"title":"Enviar Questionário de Diligência Devida a uma VASP — API","sidebarTitle":"Enviar Questionário de Diligência a uma VASP","openapi":"pt/openapi-25.json POST /v3/travel-rule/vasps/{vasp_id}/questionnaires/","href":"/pt/management-api/travel-rule/send-vasp-questionnaire"},{"title":"Listar contactos de contrapartes VASP - Canal de e-mail da Travel Rule","sidebarTitle":"Listar contactos de contrapartes","openapi":"pt/openapi-25.json GET /v3/travel-rule/counterparty-contacts/","href":"/pt/management-api/travel-rule/list-counterparty-contacts"},{"title":"API para adicionar contacto de contraparte - Travel Rule","sidebarTitle":"Adicionar contacto de contraparte","openapi":"pt/openapi-25.json POST /v3/travel-rule/counterparty-contacts/","href":"/pt/management-api/travel-rule/create-counterparty-contact"},{"title":"Eliminar contacto de contraparte VASP - API Travel Rule","sidebarTitle":"Eliminar contacto de contraparte","openapi":"pt/openapi-25.json DELETE /v3/travel-rule/counterparty-contacts/{contact_uuid}/","href":"/pt/management-api/travel-rule/delete-counterparty-contact"},{"title":"Listar endereços API: Livro de endereços Travel Rule","sidebarTitle":"Listar endereços","openapi":"pt/openapi-25.json GET /v3/travel-rule/wallet-addresses/","href":"/pt/management-api/travel-rule/list-wallet-addresses"},{"title":"API para registar endereço de carteira: Travel Rule","sidebarTitle":"Registar endereço de carteira","openapi":"pt/openapi-25.json POST /v3/travel-rule/wallet-addresses/","href":"/pt/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/openapi-25.json POST /v3/travel-rule/wallet-addresses/import/","href":"/pt/management-api/travel-rule/import-wallet-addresses"},{"title":"API para atualizar endereço de carteira: Travel Rule","sidebarTitle":"Atualizar endereço de carteira","openapi":"pt/openapi-25.json PATCH /v3/travel-rule/wallet-addresses/{entry_uuid}/","href":"/pt/management-api/travel-rule/update-wallet-address"},{"title":"Eliminar endereço de carteira: API do livro Travel Rule","sidebarTitle":"Eliminar endereço de carteira","openapi":"pt/openapi-25.json DELETE /v3/travel-rule/wallet-addresses/{entry_uuid}/","href":"/pt/management-api/travel-rule/delete-wallet-address"},{"title":"Comprovativos de carteira para revisão: API Travel Rule","sidebarTitle":"Comprovativos por revisar","openapi":"pt/openapi-25.json GET /v3/travel-rule/wallet-proofs/","href":"/pt/management-api/travel-rule/list-wallet-proofs"},{"title":"API para Aprovar ou Rejeitar Comprovativo de Carteira","sidebarTitle":"Decidir Comprovativo de Carteira","openapi":"pt/openapi-25.json POST /v3/travel-rule/wallet-proofs/{proof_uuid}/decision/","href":"/pt/management-api/travel-rule/decide-wallet-proof"},{"title":"Criar widget de prova de controlo de carteira: API","sidebarTitle":"Criar sessão do widget de carteira","openapi":"pt/openapi-25.json POST /v3/travel-rule/widget-session/","href":"/pt/management-api/travel-rule/create-widget-session"},{"title":"Obter contexto do widget de propriedade de carteira API","sidebarTitle":"Obter contexto do widget","openapi":"pt/openapi-25.json GET /v3/travel-rule/widget/{token}/","href":"/pt/management-api/travel-rule/get-widget-context"},{"title":"Iniciar prova de propriedade de carteira - Travel Rule","sidebarTitle":"Iniciar prova no widget","openapi":"pt/openapi-25.json POST /v3/travel-rule/widget/{token}/proofs/","href":"/pt/management-api/travel-rule/create-widget-proof"},{"title":"Submeter prova de propriedade de carteira - Travel Rule","sidebarTitle":"Submeter prova do widget","openapi":"pt/openapi-25.json POST /v3/travel-rule/widget/{token}/proofs/{proof_id}/verify/","href":"/pt/management-api/travel-rule/verify-widget-proof"},{"title":"API de seleção de VASP do widget: contraparte Travel Rule","sidebarTitle":"Escolher a VASP contraparte no widget da carteira","openapi":"pt/openapi-25.json POST /v3/travel-rule/widget/{token}/vasps/","href":"/pt/management-api/travel-rule/select-widget-vasp"},{"title":"API do seletor VASP do widget: pesquisa Travel Rule","sidebarTitle":"Pesquisar VASPs no widget de carteira","openapi":"pt/openapi-25.json GET /v3/travel-rule/widget/{token}/vasps/","href":"/pt/management-api/travel-rule/search-widget-vasps"},{"title":"Obter Informações de Recolha por E-mail: API Travel Rule","sidebarTitle":"Obter Informações de Recolha por E-mail","openapi":"pt/openapi-25.json GET /v3/travel-rule/pickup/{token}/","href":"/pt/management-api/travel-rule/get-pickup"},{"title":"Responder à recolha por e-mail (API): Travel Rule","sidebarTitle":"Responder à recolha por e-mail","openapi":"pt/openapi-25.json POST /v3/travel-rule/pickup/{token}/respond/","href":"/pt/management-api/travel-rule/respond-pickup"},{"title":"Listar mensagens de recolha: API Travel Rule por e-mail","sidebarTitle":"Listar mensagens de recolha","openapi":"pt/openapi-25.json GET /v3/travel-rule/pickup/{token}/messages/","href":"/pt/management-api/travel-rule/list-pickup-messages"},{"title":"Responder no Portal Pickup – API Travel Rule via e-mail","sidebarTitle":"Responder no Portal Pickup","openapi":"pt/openapi-25.json POST /v3/travel-rule/pickup/{token}/messages/","href":"/pt/management-api/travel-rule/create-pickup-message"},{"title":"Convite de adesão Travel Rule gratuito - API","sidebarTitle":"Obter convite de adesão","openapi":"pt/openapi-25.json GET /v3/travel-rule/join/{token}/","href":"/pt/management-api/travel-rule/get-join-invitation"},{"title":"Registar uma conta Travel Rule gratuita na API","sidebarTitle":"Registar conta Travel Rule gratuita","openapi":"pt/openapi-25.json POST /v3/travel-rule/join/{token}/","href":"/pt/management-api/travel-rule/register-join"},{"title":"Verificar uma conta gratuita de Travel Rule na API","sidebarTitle":"Verificar conta gratuita Travel Rule","openapi":"pt/openapi-25.json POST /v3/travel-rule/join/{token}/verify/","href":"/pt/management-api/travel-rule/verify-join"},{"title":"API para obter workspace gratuito - Travel Rule","sidebarTitle":"Obter workspace gratuito","openapi":"pt/openapi-25.json GET /v3/travel-rule/workspace/","href":"/pt/management-api/travel-rule/get-workspace"},{"title":"Reivindicar entrada de diretório - API Travel Rule","sidebarTitle":"Reivindicar entrada de diretório","openapi":"pt/openapi-25.json POST /v3/travel-rule/workspace/claim/","href":"/pt/management-api/travel-rule/claim-workspace"},{"title":"Enviar código de domínio - Travel Rule, adesão gratuita","sidebarTitle":"Enviar código de domínio","openapi":"pt/openapi-25.json POST /v3/travel-rule/workspace/domain/code/","href":"/pt/management-api/travel-rule/send-workspace-domain-code"},{"title":"Confirmar domínio API Travel Rule, adesão gratuita","sidebarTitle":"Confirmar código de domínio","openapi":"pt/openapi-25.json POST /v3/travel-rule/workspace/domain/confirm/","href":"/pt/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/openapi-25.json POST /v3/travel-rule/workspace/domain/dns/","href":"/pt/management-api/travel-rule/verify-workspace-domain-dns"},{"title":"Ativar faturação de saída da Travel Rule - Adesão gratuita","sidebarTitle":"Ativar faturação de saída","openapi":"pt/openapi-25.json POST /v3/travel-rule/workspace/billing/","href":"/pt/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":"Eliminação em lote de sessões: API Didit","sidebarTitle":"Eliminar sessões em lote","openapi":"pt/openapi-25.json POST /v3/sessions/delete/","href":"/pt/management-api/sessions/batch-delete"},{"title":"Consultar tarefa de eliminação de sessões API","sidebarTitle":"Tarefa de eliminação de sessões","openapi":"pt/openapi-25.json GET /v3/sessions/delete/{job_id}/","href":"/pt/management-api/sessions/get-deletion-job"},{"title":"Listar revisões de sessões API: registo de auditoria KYC","sidebarTitle":"Listar revisões de sessões","openapi":"pt/openapi-25.json GET /v3/sessions/{session_id}/reviews/","href":"/pt/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/openapi-25.json POST /v3/sessions/{session_id}/reviews/","href":"/pt/management-api/sessions/create-review"},{"title":"Listar eventos de sessão da API","sidebarTitle":"Listar eventos de sessão","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/events/","href":"/pt/management-api/sessions/list-events"},{"title":"Listar entregas de webhook de sessão API","sidebarTitle":"Listar entregas de webhook de sessão","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/webhooks/","href":"/pt/management-api/sessions/list-webhooks"},{"title":"Obter entrega de webhook da sessão: API Didit","sidebarTitle":"Obter entrega de webhook","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/webhook/{webhook_uuid}","href":"/pt/management-api/sessions/get-webhook"},{"title":"Reenviar webhook de sessão: API Didit","sidebarTitle":"Reenviar webhook de sessão","openapi":"pt/openapi-25.json POST /v3/session/{sessionId}/webhook/{webhook_uuid}/resend","href":"/pt/management-api/sessions/resend-webhook"},{"title":"Histórico de Triagem AML: API de Listagem","sidebarTitle":"Histórico de Triagem AML","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/aml-screening-history/","href":"/pt/management-api/sessions/aml-screening-history"},{"title":"Exportar histórico de triagem AML em CSV através da API","sidebarTitle":"Exportar histórico de triagem AML","openapi":"pt/openapi-25.json GET /v3/session/{sessionId}/aml-screening-history/export/","href":"/pt/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":"Obter API de Personalização de Marca","sidebarTitle":"Obter Branding","openapi":"pt/openapi-25.json GET /v3/customization/","href":"/pt/management-api/customization/get"},{"title":"Atualizar marca branca via API de personalização","sidebarTitle":"Atualizar marca","openapi":"pt/openapi-25.json PATCH /v3/customization/","href":"/pt/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: API de Gestão","sidebarTitle":"Listar destinos de webhook","openapi":"pt/openapi-25.json GET /v3/webhook/destinations/","href":"/pt/management-api/webhook/list-destinations"},{"title":"Criar destino do webhook API","sidebarTitle":"Criar destino do webhook","openapi":"pt/openapi-25.json POST /v3/webhook/destinations/","href":"/pt/management-api/webhook/create-destination"},{"title":"Obter destino de webhook: API de gestão da Didit","sidebarTitle":"Obter destino de webhook","openapi":"pt/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/","href":"/pt/management-api/webhook/get-destination"},{"title":"Atualizar destino de webhook API","sidebarTitle":"Atualizar destino de webhook","openapi":"pt/openapi-25.json PATCH /v3/webhook/destinations/{destination_uuid}/","href":"/pt/management-api/webhook/update-destination"},{"title":"Eliminar destino de webhook API","sidebarTitle":"Eliminar destino de webhook","openapi":"pt/openapi-25.json DELETE /v3/webhook/destinations/{destination_uuid}/","href":"/pt/management-api/webhook/delete-destination"},{"title":"Obter configuração de webhook (API)","sidebarTitle":"Configuração de webhook","openapi":"pt/openapi-25.json GET /v3/webhook/","href":"/pt/management-api/webhook/get-config"},{"title":"Atualizar configuração de webhook API","sidebarTitle":"Atualizar configuração de webhook","openapi":"pt/openapi-25.json PATCH /v3/webhook/","href":"/pt/management-api/webhook/update-config"},{"title":"API de análise de destinos de webhook","sidebarTitle":"Análise de destino de webhook","openapi":"pt/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/analytics/","href":"/pt/management-api/webhook/destination-analytics"},{"title":"Listar entregas de webhook: API de Gestão da Didit","sidebarTitle":"Listar entregas de webhook","openapi":"pt/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/deliveries/","href":"/pt/management-api/webhook/list-deliveries"},{"title":"API para obter entrega de webhook","sidebarTitle":"Entrega do destino do webhook","openapi":"pt/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/deliveries/{delivery_uuid}/","href":"/pt/management-api/webhook/get-delivery"},{"title":"Reenviar entrega de webhook: API de gestão Didit","sidebarTitle":"Reenviar entrega do destino de webhook","openapi":"pt/openapi-25.json POST /v3/webhook/destinations/{destination_uuid}/deliveries/{delivery_uuid}/resend/","href":"/pt/management-api/webhook/resend-delivery"}]},{"group":"Faturação","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/billing.svg","pages":[{"title":"Consultar saldo de créditos API: faturação KYC","sidebarTitle":"Consultar saldo de créditos","openapi":"pt/openapi-25.json GET /v3/billing/balance/","href":"/pt/management-api/billing/balance"},{"title":"API de carregamento de saldo","sidebarTitle":"Carregar saldo","openapi":"pt/openapi-25.json POST /v3/billing/top-up/","href":"/pt/management-api/billing/top-up"}]},{"group":"Análise de dados","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/overview.svg","pages":[{"title":"API de análise da aplicação","sidebarTitle":"Obter análise da aplicação","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/analytics/","href":"/pt/management-api/analytics/get"},{"title":"Verificações de hoje por hora: API","sidebarTitle":"Verificações de hoje por hora","openapi":"pt/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/analytics/today/","href":"/pt/management-api/analytics/today-by-hour"}]},{"group":"Visão geral da API de gestão","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/info.svg","pages":[{"title":"API de Gestão v3: Fluxos e Faturação","sidebarTitle":"API de Gestão","href":"/pt/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":"Registo programático na Auth API","sidebarTitle":"Registar conta","openapi":"pt/openapi-auth.json POST /programmatic/register/","href":"/pt/auth-api/register"},{"title":"API de Verificação de E-mail: Obter Credenciais Didit","sidebarTitle":"Verificar e-mail","openapi":"pt/openapi-auth.json POST /programmatic/verify-email/","href":"/pt/auth-api/verify-email"},{"title":"API de Login Programático: Tokens de Autenticação","sidebarTitle":"Login","openapi":"pt/openapi-auth.json POST /programmatic/login/","href":"/pt/auth-api/login"},{"title":"Obter credenciais da API: client_id e api_key","sidebarTitle":"Obter credenciais","openapi":"pt/openapi-auth.json GET /organizations/me/{org_id}/applications/{app_id}/","href":"/pt/auth-api/get-credentials"},{"title":"API Criar Aplicação: Aplicações Programáticas","sidebarTitle":"Criar Aplicação","openapi":"pt/openapi-auth.json POST /organizations/me/{org_id}/applications/","href":"/pt/auth-api/create-application"},{"title":"Atualizar aplicação API: gerir aplicações de clientes","sidebarTitle":"Atualizar aplicação","openapi":"pt/openapi-auth.json PATCH /organizations/me/{org_id}/applications/{app_id}/","href":"/pt/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 identidade: OCR e autenticidade","sidebarTitle":"API de verificação de identidade","openapi":"pt/openapi-25.json POST /v3/id-verification/","href":"/pt/standalone-apis/id-verification"},{"title":"API de Comprovativo de Morada: Verificação POA e OCR","sidebarTitle":"API de Comprovativo de Morada","openapi":"pt/openapi-25.json POST /v3/poa/","href":"/pt/standalone-apis/proof-of-address"},{"title":"Validação de morada API: verificar e normalizar moradas","sidebarTitle":"Validação de morada","openapi":"pt/openapi-25.json POST /v3/address-validation/","href":"/pt/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":"APIs de verificação com carteira de identidade digital","sidebarTitle":"APIs de carteira de ID digital","href":"/pt/standalone-apis/digital-id-wallets"},{"title":"Catálogo de APIs de carteiras de identidade digital","sidebarTitle":"Listar carteiras de ID digital","openapi":"pt/openapi-25.json GET /v3/id-verification/wallets/","href":"/pt/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/openapi-25.json POST /v3/id-verification/wallets/bankid-se/","href":"/pt/api-reference/digital-id-wallets/bankid-se"},{"title":"API de verificação Finnish Trust Network","sidebarTitle":"Finnish Trust Network","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/ftn/","href":"/pt/api-reference/digital-id-wallets/ftn"},{"title":"Verificação de identidade com Google Wallet: API","sidebarTitle":"Google Wallet ID","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/google-wallet/","href":"/pt/api-reference/digital-id-wallets/google-wallet"},{"title":"API de Verificação MitID Pessoal","sidebarTitle":"MitID pessoal","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/mitid/","href":"/pt/api-reference/digital-id-wallets/mitid"},{"title":"API de Verificação Mobile-ID","sidebarTitle":"Mobile-ID","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/mobile-id/","href":"/pt/api-reference/digital-id-wallets/mobile-id"},{"title":"API de verificação Smart-ID","sidebarTitle":"Smart-ID","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/smart-id/","href":"/pt/api-reference/digital-id-wallets/smart-id"},{"title":"API de identificação completa iDIN","sidebarTitle":"iDIN identificação completa","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/idin/","href":"/pt/api-reference/digital-id-wallets/idin"},{"title":"API Auðkenni de verificação de identidade","sidebarTitle":"Auðkenni","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/audkenni/","href":"/pt/api-reference/digital-id-wallets/audkenni"},{"title":"API de verificação de identidade Bank iD","sidebarTitle":"Bank iD","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/bankid-cz/","href":"/pt/api-reference/digital-id-wallets/bankid-cz"},{"title":"API de Verificação BankID Noruega","sidebarTitle":"BankID Noruega","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/bankid-no/","href":"/pt/api-reference/digital-id-wallets/bankid-no"},{"title":"API de verificação de identidade Buypass ID","sidebarTitle":"Buypass ID","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/buypass/","href":"/pt/api-reference/digital-id-wallets/buypass"},{"title":"API de verificação ConnectID","sidebarTitle":"ConnectID","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/connectid/","href":"/pt/api-reference/digital-id-wallets/connectid"},{"title":"API de verificação Diia","sidebarTitle":"Diia","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/diia/","href":"/pt/api-reference/digital-id-wallets/diia"},{"title":"API de Verificação da Carteira EUDI","sidebarTitle":"Carteira EUDI","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/eudi/","href":"/pt/api-reference/digital-id-wallets/eudi"},{"title":"API de verificação com cartão de identidade estoniano","sidebarTitle":"Cartão de identidade estoniano","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/idcard-ee/","href":"/pt/api-reference/digital-id-wallets/idcard-ee"},{"title":"API de verificação FranceConnect","sidebarTitle":"FranceConnect","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/franceconnect/","href":"/pt/api-reference/digital-id-wallets/franceconnect"},{"title":"API de verificação Freja eID","sidebarTitle":"Freja eID","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/frejaid/","href":"/pt/api-reference/digital-id-wallets/frejaid"},{"title":"API de Verificação GOV.UK Wallet","sidebarTitle":"GOV.UK Wallet","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/govuk-wallet/","href":"/pt/api-reference/digital-id-wallets/govuk-wallet"},{"title":"API de verificação MojeID","sidebarTitle":"MojeID","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/mojeid/","href":"/pt/api-reference/digital-id-wallets/mojeid"},{"title":"API de Verificação de Identidade OneID","sidebarTitle":"OneID","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/oneid/","href":"/pt/api-reference/digital-id-wallets/oneid"},{"title":"API de verificação Personalausweis Profile 2","sidebarTitle":"Personalausweis Profile 2","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/personalausweis/","href":"/pt/api-reference/digital-id-wallets/personalausweis"},{"title":"API de Verificação UAE PASS","sidebarTitle":"UAE PASS","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/uae-pass/","href":"/pt/api-reference/digital-id-wallets/uae-pass"},{"title":"API de Verificação Vipps Plus","sidebarTitle":"Vipps Plus","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/vipps/","href":"/pt/api-reference/digital-id-wallets/vipps"},{"title":"API de verificação eParaksts mobile","sidebarTitle":"eParaksts mobile","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/eparaksts-mobile/","href":"/pt/api-reference/digital-id-wallets/eparaksts-mobile"},{"title":"API de verificação gov.br","sidebarTitle":"gov.br","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/govbr/","href":"/pt/api-reference/digital-id-wallets/govbr"},{"title":"API de Verificação itsme","sidebarTitle":"itsme","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/itsme/","href":"/pt/api-reference/digital-id-wallets/itsme"}]},{"title":"Obter resultado de verificação na carteira de ID digital","sidebarTitle":"Obter verificação na carteira","openapi":"pt/openapi-25.json GET /v3/id-verification/wallets/verifications/{request_id}/","href":"/pt/standalone-apis/digital-id-wallet-result"},{"title":"Enviar resposta de carteira de credenciais digitais","sidebarTitle":"Enviar resposta da carteira","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/verifications/{request_id}/response/","href":"/pt/standalone-apis/digital-id-wallet-response"},{"title":"Consultar autenticação Smart-ID e Mobile-ID","sidebarTitle":"Consultar verificação de carteira","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/verifications/{request_id}/poll/","href":"/pt/standalone-apis/digital-id-wallet-poll"},{"title":"Cancelar verificação da carteira de identidade digital","sidebarTitle":"Cancelar verificação da carteira","openapi":"pt/openapi-25.json POST /v3/id-verification/wallets/verifications/{request_id}/cancel/","href":"/pt/standalone-apis/digital-id-wallet-cancel"}]},{"group":"IA de documentos","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/document-ai.svg","pages":[{"title":"API Document AI: extração personalizada de documentos","sidebarTitle":"API Document AI","openapi":"pt/openapi-25.json POST /v3/document-ai/","href":"/pt/standalone-apis/document-ai"}]},{"group":"API de validação de base de dados","pages":[{"title":"API de Validação de Base de Dados: ID Nacional","sidebarTitle":"API de Validação de Base de Dados","openapi":"pt/openapi-25.json POST /v3/database-validation/","href":"/pt/standalone-apis/database-validation"}]},{"group":"Validação de base de dados","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/driver-2.svg","pages":[{"group":"🇦🇷 Argentina","pages":[{"title":"Verificação de dados DNI na Argentina: API Data Match","sidebarTitle":"Argentina - Verificação de dados DNI (RENAPER, sem selfie)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/argentina/renaper-data"},{"title":"Verificação de DNI Argentina (RENAPER) API","sidebarTitle":"Argentina - DNI (RENAPER)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/argentina/renaper"},{"title":"Verificação de cidadãos argentinos (AFIP) API","sidebarTitle":"Cidadãos argentinos (AFIP)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/argentina/citizens"},{"title":"Verificação no bureau de crédito da Argentina: ID Match","sidebarTitle":"Bureau de Crédito Argentina","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/argentina/credit-bureau"}]},{"group":"🇦🇺 Austrália","pages":[{"title":"Verificação de certidão de nascimento na Austrália - DVS","sidebarTitle":"Austrália - DVS - Certidão de nascimento","api":"POST /v3/database-validation/","href":"/pt/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/api-reference/database-validation/australia/centrelink-card"},{"title":"Austrália - DVS - API de verificação ImmiCard","sidebarTitle":"Austrália - DVS - ImmiCard","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/immicard"},{"title":"DVS Austrália: API de verificação de documentos de viagem","sidebarTitle":"Austrália - DVS - Documento de viagem","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/travel-document"},{"title":"Certificado de Mudança de Nome na Austrália - API DVS","sidebarTitle":"Austrália - Certificado de mudança de nome","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/change-of-name-certificate"},{"title":"Certificado de Cidadania Austrália - API DVS","sidebarTitle":"Austrália - Certificado de Cidadania","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/citizenship-certificate"},{"title":"Austrália - API DVS de certidão de casamento","sidebarTitle":"Austrália - DVS de certidão de casamento","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/marriage-certificate"},{"title":"Credit Bureau Austrália: API de verificação ID Match","sidebarTitle":"Credit Bureau Austrália","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/credit-bureau"},{"title":"API de Verificação de Óbito Austrália (BDM): Tempo Real","sidebarTitle":"Óbito na Austrália (BDM)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/death-check"},{"title":"Verificação no Registo Eleitoral Australiano: ID Match","sidebarTitle":"Registo Eleitoral Austrália","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/electoral-roll"},{"title":"API de Verificação de Superannuation e Folha na Austrália","sidebarTitle":"Austrália: Superanuação e Folha de Pagamento","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/superannuation-payroll"},{"title":"Verificação VEVO da Austrália: consulta em tempo real","sidebarTitle":"Austrália VEVO","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/vevo"},{"title":"Verificação de carta de condução da Austrália - API DVS","sidebarTitle":"DVS - Carta de condução australiana","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/driver-licence"},{"title":"Validação de base de dados DVS: Medicare Card Austrália","sidebarTitle":"DVS - Medicare Card Austrália","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/medicare-card"},{"title":"Verificação de passaporte australiano (DVS): API","sidebarTitle":"DVS - Passaporte da Austrália","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/passport"},{"title":"Verificação de visto na Austrália: API DVS","sidebarTitle":"DVS - Visto Austrália","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/australia/visa"}]},{"title":"Verificação Credit Bureau Áustria: API de Correspondência","sidebarTitle":"Credit Bureau Áustria","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/austria/credit-bureau"},{"title":"Bolívia - API de verificação de CI em tempo real","sidebarTitle":"Bolívia - Verificação de CI","api":"POST /v3/database-validation/","href":"/pt/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/api-reference/database-validation/brazil/unico-idcloud"},{"title":"CNH QR code + correspondência facial (Datavalid) Brasil","sidebarTitle":"Brasil - CNH QR code + correspondência facial (Datavalid)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/brazil/cnh-facial-qrcode"},{"title":"CPF Brasil: correspondência facial (Datavalid) API","sidebarTitle":"Brasil - CPF + correspondência facial (Datavalid)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/brazil/cpf-facial"},{"title":"Brasil - API de consulta do estado do CPF em tempo real","sidebarTitle":"Brasil - Estado do CPF","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/brazil/cpf"},{"title":"Brasil - Sócios e Administradores de Empresas (QSA) API","sidebarTitle":"Brasil - Sócios e Administradores (QSA)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/brazil/company-directors"},{"title":"Brasil - Consulta ao Registo de Empresas (CNPJ) API","sidebarTitle":"Brasil - Registo de Empresas (CNPJ)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/brazil/company-registry"},{"title":"Verificação de Óbito (CPF) no Brasil: API em Tempo Real","sidebarTitle":"Brasil - Verificação de óbito (CPF)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/brazil/death-check"},{"title":"Antecedentes criminais federais (Brasil): API","sidebarTitle":"Brasil - Antecedentes PF","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/brazil/antecedentes-criminais-pf"},{"title":"Verificação residencial Brasil: API de correspondência","sidebarTitle":"Brasil Residencial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/brazil/residential"},{"title":"Verificação de registo fiscal CPF/CNPJ no Brasil","sidebarTitle":"Registo fiscal Brasil (CPF/CNPJ)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/brazil/tax-registration"}]},{"title":"Verificação de ID nacional do Camboja: validação de dados","sidebarTitle":"ID nacional do Camboja","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/cambodia/national-id"},{"group":"🇨🇦 Canadá","pages":[{"title":"Credit Bureau do Canadá (FINTRAC): API de Verificação","sidebarTitle":"Credit Bureau Canadá (FINTRAC)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/canada/credit-bureau-fintrac"},{"title":"API Canada Credit Bureau 2 (sem FINTRAC): ID Match","sidebarTitle":"Canadá Credit Bureau 2 (sem FINTRAC)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/canada/credit-bureau-2-non-fintrac"},{"title":"Validação de base de dados no Canadá: API Residencial","sidebarTitle":"Canadá Residencial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/canada/residential"}]},{"title":"Chile - Verificação de RUT: API em tempo real","sidebarTitle":"Chile - Verificação de RUT","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/chile/rut"},{"group":"🇨🇳 China","pages":[{"title":"Verificação de cartão bancário chinês: consulta API","sidebarTitle":"Cartão bancário China","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/china/bank-card"},{"title":"API de verificação do ID nacional da China: consulta","sidebarTitle":"ID nacional da China","api":"POST /v3/database-validation/","href":"/pt/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/api-reference/database-validation/china/passport-verification"},{"title":"API de verificação de telefone na China","sidebarTitle":"Telefone China","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/china/phone"}]},{"group":"🇨🇴 Colômbia","pages":[{"title":"Verificação de cédula na Colômbia: API de identidade","sidebarTitle":"Colômbia - Verificação de cédula","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/colombia/cedula"},{"title":"Migración Colombia: API de estado de estrangeiro","sidebarTitle":"Colômbia - Migración Colombia","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/colombia/migracion"}]},{"title":"API de verificação de cédula da Costa Rica (Data Match)","sidebarTitle":"Costa Rica - Verificação de cédula","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/costa-rica/cedula"},{"group":"🇩🇰 Dinamarca","pages":[{"title":"Validação de base de dados Dinamarca Consumidor 2 API","sidebarTitle":"Dinamarca Consumidor 2","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/denmark/consumer-2"},{"title":"Validação de ID nacional da Dinamarca: API Data Match","sidebarTitle":"ID nacional da Dinamarca","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/denmark/national-id"}]},{"title":"Cédula da República Dominicana - API de validação","sidebarTitle":"República Dominicana - Cédula","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/dominican-republic/cedula"},{"title":"Verificação de cédula Equador: API em tempo real","sidebarTitle":"Equador - Verificação de cédula","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/ecuador/cedula"},{"title":"El Salvador - Verificação DUI API: Consulta de identidade","sidebarTitle":"El Salvador - Verificação DUI","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/el-salvador/dui"},{"group":"🇫🇮 Finlândia","pages":[{"title":"API Finlândia Consumer 2: Correspondência de identidade","sidebarTitle":"Finlândia Consumer 2","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/finland/consumer-2"},{"title":"Verificação de ID nacional da Finlândia: validação","sidebarTitle":"ID nacional Finlândia","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/finland/national-id"}]},{"group":"🇫🇷 França","pages":[{"title":"API de Verificação de Telefone em França em Tempo Real","sidebarTitle":"Telefone em França","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/france/phone"},{"title":"API de Verificação Residencial França: Correspondência","sidebarTitle":"França Residencial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/france/residential"},{"title":"Validação de base de dados em França: API Utility","sidebarTitle":"França Utility","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/france/utility"}]},{"group":"🇩🇪 Alemanha","pages":[{"title":"Verificação de agência de crédito alemã: API Data Match","sidebarTitle":"Alemanha Credit Bureau","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/germany/credit-bureau"},{"title":"Verificação de telefone na Alemanha (Phone 2): API","sidebarTitle":"Alemanha Phone 2","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/germany/phone-2"}]},{"group":"🌐 Global","pages":[{"title":"Verificação Global na Intelligence Service | API Didit","sidebarTitle":"Global - Core Intelligence Service","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/global/intelligence-service"},{"title":"Verificação de enriquecimento de identidade global (API)","sidebarTitle":"Global - Enriquecimento de identidade","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/global/identity-enrichment"},{"title":"Troca de SIM Global: API de verificação Telco Match","sidebarTitle":"Global - Troca de SIM","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/global/swap"}]},{"group":"🇬🇹 Guatemala","pages":[{"title":"API DPI Guatemala: correspondência facial (RENAP)","sidebarTitle":"Guatemala - DPI e correspondência facial (RENAP)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/guatemala/dpi-facial"},{"title":"Verificação de DPI da Guatemala: API em Tempo Real","sidebarTitle":"Guatemala - Verificação de DPI","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/guatemala/dpi"}]},{"title":"Verificação de DNI Honduras: consulta em tempo real","sidebarTitle":"Honduras - Verificação de DNI","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/honduras/dni"},{"group":"🇮🇳 Índia","pages":[{"title":"API Aadhaar (UIDAI) da Índia: Correspondência de dados","sidebarTitle":"Aadhaar da Índia (UIDAI)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/india/aadhaar"},{"title":"API de Verificação de Carta de Condução da Índia (RTO)","sidebarTitle":"Carta de condução da Índia (RTO)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/india/drivers-licence"},{"title":"Validação EPIC Índia (Registo de Eleitor) (ECI) API","sidebarTitle":"Índia EPIC (Registo de Eleitor) (ECI)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/india/epic-voter-s-registration"},{"title":"API PAN da Índia (Número de Conta Permanente) (ITD)","sidebarTitle":"PAN da Índia (ITD)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/india/pan-permanent-account-number"}]},{"title":"Verificação de cartão de identidade na Indonésia API","sidebarTitle":"Cartão de Identidade de Residente (Indonésia)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/indonesia/residential-identity-card"},{"group":"🇮🇹 Itália","pages":[{"title":"Central de Crédito Itália: Correspondência de Cabeçalho","sidebarTitle":"Central de Crédito Itália","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/italy/credit-bureau"},{"title":"Itália Residencial: API de Validação de Base de Dados","sidebarTitle":"Itália Residencial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/italy/residential"}]},{"title":"API de Verificação de Identidade Nacional do Quénia","sidebarTitle":"Documento Nacional do Quénia","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/kenya/national-id"},{"title":"Validação de ID Nacional da Malásia: API de Base de Dados","sidebarTitle":"ID Nacional da Malásia","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/malaysia/national-id"},{"group":"🇲🇽 México","pages":[{"title":"México - API de verificação CURP em tempo real","sidebarTitle":"México - Verificação CURP","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/mexico/curp"},{"title":"API de verificação de validade do INE (México)","sidebarTitle":"México - Validade do INE","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/mexico/ine-vigencia"}]},{"title":"Verificação residencial nos Países Baixos: API ID Match","sidebarTitle":"Países Baixos Residencial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/netherlands/residential"},{"group":"🇳🇿 Nova Zelândia","pages":[{"title":"API de verificação de nascimentos na Nova Zelândia (DIA)","sidebarTitle":"DIA - Nascimentos NZ","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/new-zealand/births"},{"title":"Verificação de cidadania da Nova Zelândia - API DIA","sidebarTitle":"DIA - Cidadania NZ","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/new-zealand/citizenship"},{"title":"Verificação de passaporte da Nova Zelândia - API DIA","sidebarTitle":"Passaporte da Nova Zelândia (DIA)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/new-zealand/passport"},{"title":"Verificação de óbito Nova Zelândia (BDM) API","sidebarTitle":"Verificação de óbito NZ (BDM)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/new-zealand/death-check"},{"title":"Carta de Condução da Nova Zelândia (NZTA) Verificação","sidebarTitle":"Carta de Condução (NZTA)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/new-zealand/drivers-licence"}]},{"group":"🇳🇬 Nigéria","pages":[{"title":"API de Número de Verificação Bancária (BVN) da Nigéria","sidebarTitle":"Número de Verificação Bancária (BVN)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/nigeria/bank-verification-number"},{"title":"Verificação de carta de condução da Nigéria (FRSC) API","sidebarTitle":"Carta de condução da Nigéria (FRSC)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/nigeria/drivers-license"},{"title":"Passaporte da Nigéria (NIS) API: Correspondência de ID","sidebarTitle":"Passaporte da Nigéria (NIS)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/nigeria/passport"},{"title":"Verificação de identidade nacional da Nigéria (NIMC) API","sidebarTitle":"Nigéria NIMC","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/nigeria/national-id"},{"title":"Verificação de ID Nacional da Nigéria + Selfie (NIMC) API","sidebarTitle":"ID Nacional Nigéria + Selfie (NIMC)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/nigeria/national-id-facial"}]},{"title":"API de Verificação de Morada na Noruega: Identidade","sidebarTitle":"Noruega Residencial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/norway/residential"},{"group":"🇵🇦 Panamá","pages":[{"title":"Panamá - API Cédula com correspondência facial biométrica","sidebarTitle":"Panamá - Cédula com correspondência facial (SIB Plus, nível elevado)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/panama/sib-plus"},{"title":"Validação de base de dados Panamá: Cédula (SIB) API","sidebarTitle":"Panamá - Cédula (SIB)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/panama/sib"}]},{"title":"API de verificação de CI do Paraguai","sidebarTitle":"Paraguai - Verificação de CI","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/paraguay/cedula"},{"group":"🇵🇪 Peru","pages":[{"title":"Peru - Verificação de DNI por API em tempo real","sidebarTitle":"Peru - Verificação de DNI","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/peru/dni"},{"title":"Verificação de registo fiscal SUNAT (Peru) API","sidebarTitle":"Registo fiscal SUNAT (Peru)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/peru/tax-registration"}]},{"title":"API de Verificação Residencial nas Filipinas: ID Match","sidebarTitle":"Filipinas Residencial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/philippines/residential"},{"group":"🇸🇬 Singapura","pages":[{"title":"API Credit Bureau de Singapura: ID Match","sidebarTitle":"Credit Bureau Singapura","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/singapore/credit-bureau"},{"title":"Verificação Utility Singapura: Consulta de Identidade","sidebarTitle":"Utility Singapura","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/singapore/utility"}]},{"group":"🇿🇦 África do Sul","pages":[{"title":"Validação de titular de conta bancária na África do Sul - API de verificação","sidebarTitle":"África do Sul - Titular de conta bancária","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/bank-account-holder"},{"title":"Consulta de administradores de empresas na África do Sul","sidebarTitle":"África do Sul - Administradores de empresas","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/company-directors"},{"title":"Registo de Empresas da África do Sul - API de Consulta","sidebarTitle":"África do Sul - Registo de Empresas","api":"POST /v3/database-validation/","href":"/pt/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/api-reference/database-validation/south-africa/contactability"},{"title":"Triagem criminal facial na África do Sul - API","sidebarTitle":"África do Sul - Triagem criminal facial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/criminal-face-screening"},{"title":"API DHA Fingerprint Match na África do Sul: ID Match","sidebarTitle":"África do Sul - DHA Fingerprint Match","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/dha-fingerprint-match"},{"title":"Validação de base de dados DHA: foto, África do Sul","sidebarTitle":"África do Sul - Foto DHA","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/dha-photo"},{"title":"Carta de condução da África do Sul - API de verificação","sidebarTitle":"África do Sul - Carta de condução","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/drivers-license"},{"title":"API de triagem para prevenção de fraude na África do Sul","sidebarTitle":"África do Sul - Prevenção de fraude","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/fraud-prevention"},{"title":"África do Sul - Consulta de Cargos de Administrador","sidebarTitle":"África do Sul - Cargos de Administrador","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/person-directorships"},{"title":"Validação de base de dados: refugiados, África do Sul","sidebarTitle":"África do Sul - Ficheiros de refugiados","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/refugee"},{"title":"Verificação de propriedade de veículos - África do Sul","sidebarTitle":"África do Sul - Propriedade de veículos","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/vehicle-ownership"},{"title":"Verificação de BI sul-africano (DHA) API","sidebarTitle":"BI sul-africano (DHA)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/south-africa/national-id"}]},{"title":"Verificação DNI/NIE Espanha: API em tempo real","sidebarTitle":"Espanha - DNI/NIE","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/spain/dni"},{"group":"🇸🇪 Suécia","pages":[{"title":"API de verificação de ID nacional sueco: correspondência","sidebarTitle":"ID Nacional da Suécia","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/sweden/national-id"},{"title":"Verificação de Telefone na Suécia: API em Tempo Real","sidebarTitle":"Suécia Telefone","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/sweden/phone"}]},{"title":"Credit Bureau Suíça: API de Validação de Base de Dados","sidebarTitle":"Credit Bureau Suíça","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/switzerland/credit-bureau"},{"title":"Verificação de ID nacional da Tailândia: API Data Match","sidebarTitle":"ID nacional da Tailândia","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/thailand/national-id"},{"group":"🇬🇧 Reino Unido","pages":[{"title":"Agência de crédito do Reino Unido: API de verificação","sidebarTitle":"Agência de crédito (Reino Unido)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/united-kingdom/credit-bureau"},{"title":"Verificação de serviços financeiros no Reino Unido - API","sidebarTitle":"Serviços financeiros (Reino Unido)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/united-kingdom/financial-services"},{"title":"API verificação telefone Reino Unido 2: Correspondência","sidebarTitle":"Reino Unido Telefone 2","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/united-kingdom/phone-2"},{"title":"API de Verificação Residencial do Reino Unido","sidebarTitle":"Reino Unido Residencial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/united-kingdom/residential"}]},{"group":"🇺🇸 Estados Unidos","pages":[{"title":"API de Verificação do Credit Bureau dos Estados Unidos","sidebarTitle":"Estados Unidos - Credit Bureau","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/united-states/credit-bureau"},{"title":"Verificação de óbitos nos EUA (SSDMF): validação de dados","sidebarTitle":"Estados Unidos - Verificação de óbitos (SSDMF)","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/united-states/death-check"},{"title":"API de verificação de serviços financeiros nos EUA","sidebarTitle":"Estados Unidos - Serviços financeiros","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/united-states/financial-services"},{"title":"Verificação de Telefone 2 nos EUA: API de Correspondência","sidebarTitle":"Estados Unidos - Telefone 2","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/united-states/phone-2"},{"title":"API de verificação residencial nos EUA","sidebarTitle":"Estados Unidos - Residencial","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/united-states/residential"}]},{"title":"API de verificação de CI do Uruguai","sidebarTitle":"Uruguai - Verificação de CI","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/uruguay/cedula"},{"title":"Venezuela - API de verificação de cédula: Identity Match","sidebarTitle":"Venezuela - Verificação de cédula","api":"POST /v3/database-validation/","href":"/pt/api-reference/database-validation/venezuela/cedula"},{"title":"Verificação NRC da Zâmbia (registo fiscal) API","sidebarTitle":"NRC da Zâmbia (registo fiscal)","api":"POST /v3/database-validation/","href":"/pt/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: Deteção de Deepfakes","sidebarTitle":"Prova de vida passiva","openapi":"pt/openapi-25.json POST /v3/passive-liveness/","href":"/pt/standalone-apis/passive-liveness"},{"title":"Correspondência facial 1:1: API Face Match","sidebarTitle":"Correspondência facial","openapi":"pt/openapi-25.json POST /v3/face-match/","href":"/pt/standalone-apis/face-match"},{"title":"Pesquisa facial API: deduplicação 1:N e redes de fraude","sidebarTitle":"Pesquisa facial","openapi":"pt/openapi-25.json POST /v3/face-search/","href":"/pt/standalone-apis/face-search"},{"title":"Estimativa de idade API: verificação de idade por selfie","sidebarTitle":"Estimativa de idade API","openapi":"pt/openapi-25.json POST /v3/age-estimation/","href":"/pt/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 Listas de Vigilância","sidebarTitle":"API de Triagem AML","openapi":"pt/openapi-25.json POST /v3/aml/","href":"/pt/standalone-apis/aml-screening"},{"title":"Atualidade dos dados AML: API","sidebarTitle":"Obter atualidade dos dados AML","openapi":"pt/openapi-25.json GET /v3/aml/dataset-freshness/","href":"/pt/standalone-apis/aml-dataset-freshness"},{"title":"API de Verificação de Fraude","openapi":"pt/openapi-25.json POST /v3/fraud/checks/","href":"/pt/standalone-apis/fraud-check"},{"title":"Planear uma verificação de fraude","openapi":"pt/openapi-25.json POST /v3/fraud/checks/plan/","href":"/pt/standalone-apis/fraud-check-plan"},{"title":"Obter verificação de fraude","openapi":"pt/openapi-25.json GET /v3/fraud/checks/{check_id}/","href":"/pt/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: Geo, VPN e Datacenter","sidebarTitle":"API de Risco de IP","openapi":"pt/openapi-25.json POST /v3/ip/risk/","href":"/pt/standalone-apis/ip-risk"}]},{"group":"Registo KYB","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/businesses.svg","pages":[{"title":"API de Registo KYB: Pesquisa e Seleção de Empresas","sidebarTitle":"Registo KYB","href":"/pt/standalone-apis/kyb-registry"},{"title":"API de Pesquisa KYB no Registo de Empresas","sidebarTitle":"Pesquisa no Registo KYB","openapi":"pt/openapi-25.json POST /v3/kyb/search/","href":"/pt/standalone-apis/kyb-registry-search"},{"title":"API Select do registo KYB: obter perfil da empresa","sidebarTitle":"Select do registo KYB","openapi":"pt/openapi-25.json POST /v3/kyb/select/","href":"/pt/standalone-apis/kyb-registry-select"},{"title":"API de acionistas do registo KYB","sidebarTitle":"Acionistas KYB","openapi":"pt/openapi-25.json POST /v3/kyb/shareholders/","href":"/pt/standalone-apis/kyb-registry-shareholders"},{"title":"API UBO KYB Registry: Beneficiários Efetivos Finais","sidebarTitle":"UBOs do registo KYB","openapi":"pt/openapi-25.json POST /v3/kyb/ubo/","href":"/pt/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":"Verificação de e-mail","href":"/pt/standalone-apis/email-verification"},{"title":"API para enviar OTP por e-mail: código de verificação","sidebarTitle":"Enviar código por e-mail","openapi":"pt/openapi-25.json POST /v3/email/send/","href":"/pt/standalone-apis/email-send"},{"title":"API de validação de código OTP por e-mail","sidebarTitle":"Verificar código de e-mail","openapi":"pt/openapi-25.json POST /v3/email/check/","href":"/pt/standalone-apis/email-check"},{"title":"API de risco de e-mail: entregabilidade e sinais de fuga","sidebarTitle":"API de risco de e-mail","openapi":"pt/openapi-25.json POST /v3/email/risk/","href":"/pt/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":"Verificação de Telefone por SMS: API e Sinais de Risco","sidebarTitle":"Verificação de telefone","href":"/pt/standalone-apis/phone-verification"},{"title":"API de envio de código OTP por SMS para telefone","sidebarTitle":"Enviar código por telefone","openapi":"pt/openapi-25.json POST /v3/phone/send/","href":"/pt/standalone-apis/phone-send"},{"title":"API de verificação de telefone: validar código SMS","sidebarTitle":"Verificar código de telefone","openapi":"pt/openapi-25.json POST /v3/phone/check/","href":"/pt/standalone-apis/phone-check"},{"title":"API de risco de telefone: operadora e sinais de fraude","sidebarTitle":"API de risco de telefone","openapi":"pt/openapi-25.json POST /v3/phone/risk/","href":"/pt/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":"API de Verificação de Conta Bancária para Pagamentos","sidebarTitle":"API de Verificação de Conta","openapi":"pt/openapi-25.json POST /v3/bank/account-check/","href":"/pt/standalone-apis/bank-account-check"}]}]},{"tab":"Verificação de utilizadores","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/user-verifications.svg","pages":[{"title":"Verificação de utilizadores","href":"/pt/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/business-verification/overview"}]},{"tab":"Monitorização de transações","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/transactions.svg","pages":[{"title":"Monitorização de transações","href":"/pt/transaction-monitoring/overview"}]},{"tab":"Registo de alterações","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/calendar.svg","pages":[{"title":"Registo de alterações","href":"/pt/changelog"}]}],"global":{"anchors":[{"anchor":"Referência da API","icon":"code","href":"/pt/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/openapi-25.json"},{"anchor":"Prompt de integração","icon":"wand-magic-sparkles","href":"/pt/integration/integration-prompt"},{"anchor":"Servidor MCP","icon":"plug","href":"/pt/integration/mcp/overview"},{"anchor":"Competências de agentes","icon":"robot","href":"https://github.com/didit-protocol/skills"}]}},{"language":"ca","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suport"},{"icon":"signal","href":"https://status.didit.me","label":"Estat"}],"primary":{"type":"button","label":"Inicia la sessió","href":"https://business.didit.me"}},"pages":[{"title":"ca","href":"/ca/sessions-api/create-session"}]},{"language":"id","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Dukungan"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Masuk","href":"https://business.didit.me"}},"pages":[{"title":"id","href":"/id/sessions-api/create-session"}]},{"language":"ru","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":"ru","href":"/ru/sessions-api/create-session"}]},{"language":"ko","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":"ko","href":"/ko/sessions-api/create-session"}]},{"language":"zh","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":"zh","href":"/zh/sessions-api/create-session"}]},{"language":"ar","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":"ar","href":"/ar/sessions-api/create-session"}]},{"language":"hi","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":"hi","href":"/hi/sessions-api/create-session"}]}]},"basePath":"","title":"API de criação de sessão: iniciar verificação KYC ou KYB - Didit Docs","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CBsVopKK.js","utils-DZAk68jJ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D32AYZrP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D_A5_cny.js","snippetPresets-xNRfS9th.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BIB25-tq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CydJ4w4j.js","shallow-CYPBeQSG.js","getApiPlaygroundDisplay-A5xJVBOu.js","CodeSnippet-BVRTgi3m.js","CodeSnippets-DjD6BSlt.js","Page-Dr40SSJq.js","getPastedJson-D4V4JyrR.js","icon-uhcnG22T.js","MethodPill-CM-ZQdGH.js","DuplicateIcon-B_WnOiNf.js","createIcon-CJsb8utt.js","DynamicMarkdown-D-2HDKEp.js","SectionHeading-KP5xmMgQ.js","axios-vUo_bRtp.js","Markdown-D_k0dg6k.js","clsx-DK3K4Z1S.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DE3EVdvd.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-fN9H9n9g.js"]}