Configure a autenticação Flutter com a Didit: início de sessão alojado, validação de URL de retorno, sessões seguras e ligações de verificação.
A Autenticação é nova: didit_auth depende da versão. As coordenadas de distribuição, as versões e as assinaturas invocáveis não estão confirmadas aqui. Não instale um pacote presumido nem use o SDK de verificação de identidade como SDK de Autenticação.
Confirme que a Autenticação está ativada para a sua aplicação Didit e copie a respetiva origem de início de sessão (https://<slug>.auth.didit.me, ou <slug>.sandbox.auth.didit.me para o sandbox) a partir da consola.
Registe um URL de retorno exato, suportado pela sua aplicação e pelo ambiente de execução. Valide a propriedade dos app links; não presuma que esquemas de URL personalizados arbitrários são aceites.
Mantenha separadas a configuração de sandbox e a de produção, incluindo o tratamento dos retornos e as credenciais armazenadas.
Escolha o seu mapeamento estável da pessoa antes de ligar a verificação ou a monitorização.
Configure e teste os links de retorno separadamente no iOS e no Android. O wrapper de Autenticação é separado do didit_sdk, que trata da verificação.
Abra o navegador de autenticação nativo do sistema com o URL {origin}/sign-in. Forneça um state aleatório novo, um desafio PKCE S256 e o seu redirect_uri registado. Mantenha o verificador na sua aplicação apenas para essa tentativa. O guia rápido de JavaScript mostra o protocolo subjacente; use criptografia e tratamento de URL da própria plataforma no código nativo, e não os globais do navegador.No retorno, verifique o state, o tempo de vida da transação e o destino do URL de retorno antes de trocar o código de utilização única em token/. Use o verificador original e o URL de retorno exato. Cancelar ou fechar o navegador não é um início de sessão bem-sucedido.Guarde os tokens de atualização no armazenamento nativo protegido pela plataforma; nunca num ficheiro de preferências em texto simples, na analítica ou nos registos de falhas. Valide a sessão atual com GET session/, usando o token Bearer do utilizador final. Serialize a renovação, substitua os dois tokens em conjunto e limpe o estado específico do utilizador depois de terminar a sessão. Consulte tokens e JWKS para o contrato dos pedidos e o comportamento de reutilização do token de atualização.
Os módulos nativos de Autenticação estão previstos para fornecer início de sessão, acesso à sessão atual, obtenção de tokens, terminar sessão e autenticação reforçada, com sinais automáticos do dispositivo. As chaves de acesso nativas e o armazenamento protegido de tokens fazem parte dessa versão. As APIs do wrapper seguirão os contratos publicados de cada plataforma; não copie argumentos de construtores nem assinaturas de métodos adivinhadas a partir de um exemplo de conceção.Até que o módulo seja lançado, mantenha o respetivo adaptador desativado ou use uma implementação revista do protocolo alojado para a sua aplicação ativada. Não anuncie um guia rápido de Autenticação nativo a funcionar apenas com base na instalação do pacote.
O seu back-end deriva o vendor_data a partir da pessoa autenticada. Cria sessões de verificação ou emite tokens de monitorização com escopo para essa pessoa. Devolva à sua aplicação apenas a credencial de sessão ou o token com escopo; a chave de API fica no servidor.Use o SDK de verificação para Flutter quando precisar de Verificação de identidade. Siga a submissão de transações do SDK para o suporte de monitorização na sua plataforma. Trate o início de sessão, a verificação e as decisões sobre transações separadamente.
Teste o regresso a uma aplicação encerrada, as transições para segundo plano e para primeiro plano, o cancelamento no navegador, um URL de retorno incompatível, a reutilização de código, a expiração de tokens, a renovação concorrente, MFA, terminar sessão e iniciar sessão como outro utilizador. Teste o registo e o início de sessão com chaves de acesso em dispositivos suportados, assim que essa versão estiver disponível. Uma verificação apenas em dispositivo continua por confirmar até ser executada na plataforma de destino.
Última modificação em 7 de novembro de 2026
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Didit Docs","description":"The best way to integrate identity and fraud checks into your app. One API, four product lines (KYC · KYB · Transaction Monitoring · Wallet Screening), 220+ countries, 14,000+ documents, sub-2s inference, $10 free credit/month.","colors":{"primary":"#2567FF","light":"#90B1FF","dark":"#1B4FE0"},"logo":{"light":"https://mintcdn.com/didit-0f962782/dCzNNoYCusBNdK3I/logo/didit.svg?fit=max\u0026auto=format\u0026n=dCzNNoYCusBNdK3I\u0026q=85\u0026s=9f162fb8295fa1fd9300a24b293ce0b7","dark":"https://mintcdn.com/didit-0f962782/TefoKXCbZA_GIK5a/logo/didit-logo-wordmark-white.svg?fit=max\u0026auto=format\u0026n=TefoKXCbZA_GIK5a\u0026q=85\u0026s=c8c541689c814ca6a2c873cf6185a3a7","href":"https://docs.didit.me"},"favicon":"https://mintcdn.com/didit-0f962782/t6r0B-WdGMU5mSS-/favicon.ico?fit=max\u0026auto=format\u0026n=t6r0B-WdGMU5mSS-\u0026q=85\u0026s=b291917b960ebe959ae3b1aa233eafa8","api":{"examples":{"prefill":true},"mdx":{"auth":{"method":"key","name":"x-api-key"},"server":"https://verification.didit.me"}},"background":{"color":{"light":"#FFFFFF","dark":"#1A1A1A"}},"navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Support"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Sign in","href":"https://business.didit.me"}},"footer":{"socials":{"x":"https://x.com/didit","github":"https://github.com/didit-protocol","linkedin":"https://linkedin.com/company/91001155","website":"https://didit.me"}},"search":{"prompt":"Search Didit docs..."},"seo":{"metatags":{"twitter:site":"@didit","theme-color":"#2567FF","apple-mobile-web-app-title":"Didit Docs"},"organization":{"id":"https://didit.me/#organization","name":"Didit","legalName":"Didit Protocol","url":"https://didit.me","logo":"https://didit.me/logos/primary-horizontal-light.png","sameAs":["https://www.linkedin.com/company/91001155","https://www.youtube.com/@getdidit","https://github.com/didit-protocol","https://x.com/didit"]},"indexing":"navigable"},"fonts":{"heading":{"family":"Inter","weight":500},"body":{"family":"Inter","weight":400}},"errors":{"404":{"redirect":false,"title":"Page not found","description":"This page moved or never existed. [Back to docs](/)"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"thumbnails":{"appearance":"light","background":"https://mintcdn.com/didit-0f962782/Xkecx-xLq1K2abHK/images/og-thumbnail-backplate.png?fit=max\u0026auto=format\u0026n=Xkecx-xLq1K2abHK\u0026q=85\u0026s=c699fa252554b2ac8d4c631e209a1473","fonts":{"family":"Inter"}},"metadata":{"timestamp":true},"styling":{"latex":true},"navigation":{"languages":[{"language":"en","href":""},{"language":"es","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Soporte"},{"icon":"signal","href":"https://status.didit.me","label":"Estado"}],"primary":{"type":"button","label":"Iniciar sesión","href":"https://business.didit.me"}},"href":"es"},{"language":"pt-BR","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"Suporte"},{"icon":"signal","href":"https://status.didit.me","label":"Status"}],"primary":{"type":"button","label":"Entrar","href":"https://business.didit.me"}},"href":"pt-br"},{"language":"ja","navbar":{"links":[{"icon":"comment-dots","href":"https://help.didit.me","label":"サポート"},{"icon":"signal","href":"https://status.didit.me","label":"ステータス"}],"primary":{"type":"button","label":"サインイン","href":"https://business.didit.me"}},"href":"ja"},{"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/authentication/quickstarts/flutter","slug":"/pt/authentication/quickstarts/flutter","pageMetadata":{"title":"Autenticação Flutter: início rápido","description":"Configure a autenticação Flutter com a Didit: início de sessão alojado, validação de URL de retorno, sessões seguras e ligações de verificação.","href":"/pt/authentication/quickstarts/flutter"},"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: \"Configure a autenticação Flutter com a Didit: início de sessão alojado, validação de URL de retorno, sessões seguras e ligações de verificação.\"\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];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,..._provideComponents(),...props.components},{Heading,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Warning,{children:_jsxs(_components.p,{children:[`A Autenticação é nova: `,_jsx(_components.strong,{children:`didit_auth`}),` depende da versão. As coordenadas de distribuição, as versões e as assinaturas invocáveis não estão confirmadas aqui. Não instale um pacote presumido nem use o SDK de verificação de identidade como SDK de Autenticação.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`preparar-a-aplicação`,children:`Preparar a aplicação`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Confirme que a Autenticação está ativada para a sua aplicação Didit e copie a respetiva origem de início de sessão (`,_jsx(_components.code,{children:`https://\u003cslug>.auth.didit.me`}),`, ou `,_jsx(_components.code,{children:`\u003cslug>.sandbox.auth.didit.me`}),` para o sandbox) a partir da consola.`]}),`\n`,_jsx(_components.li,{children:`Registe um URL de retorno exato, suportado pela sua aplicação e pelo ambiente de execução. Valide a propriedade dos app links; não presuma que esquemas de URL personalizados arbitrários são aceites.`}),`\n`,_jsx(_components.li,{children:`Mantenha separadas a configuração de sandbox e a de produção, incluindo o tratamento dos retornos e as credenciais armazenadas.`}),`\n`,_jsx(_components.li,{children:`Escolha o seu mapeamento estável da pessoa antes de ligar a verificação ou a monitorização.`}),`\n`]}),`\n`,_jsx(_components.p,{children:`Configure e teste os links de retorno separadamente no iOS e no Android. O wrapper de Autenticação é separado do didit_sdk, que trata da verificação.`}),`\n`,_jsx(Heading,{level:`2`,id:`implementar-o-fluxo-alojado`,children:`Implementar o fluxo alojado`}),`\n`,_jsxs(_components.p,{children:[`Abra o navegador de autenticação nativo do sistema com o URL `,_jsx(_components.code,{children:`{origin}/sign-in`}),`. Forneça um `,_jsx(_components.code,{children:`state`}),` aleatório novo, um desafio PKCE S256 e o seu `,_jsx(_components.code,{children:`redirect_uri`}),` registado. Mantenha o verificador na sua aplicação apenas para essa tentativa. O `,_jsx(_components.a,{href:`/pt/authentication/quickstarts/javascript`,children:`guia rápido de JavaScript`}),` mostra o protocolo subjacente; use criptografia e tratamento de URL da própria plataforma no código nativo, e não os globais do navegador.`]}),`\n`,_jsxs(_components.p,{children:[`No retorno, verifique o state, o tempo de vida da transação e o destino do URL de retorno antes de trocar o código de utilização única em `,_jsx(_components.code,{children:`token/`}),`. Use o verificador original e o URL de retorno exato. Cancelar ou fechar o navegador não é um início de sessão bem-sucedido.`]}),`\n`,_jsxs(_components.p,{children:[`Guarde os tokens de atualização no armazenamento nativo protegido pela plataforma; nunca num ficheiro de preferências em texto simples, na analítica ou nos registos de falhas. Valide a sessão atual com `,_jsx(_components.code,{children:`GET session/`}),`, usando o token Bearer do utilizador final. Serialize a renovação, substitua os dois tokens em conjunto e limpe o estado específico do utilizador depois de terminar a sessão. Consulte `,_jsx(_components.a,{href:`/pt/authentication/tokens-and-jwks`,children:`tokens e JWKS`}),` para o contrato dos pedidos e o comportamento de reutilização do token de atualização.`]}),`\n`,_jsx(Heading,{level:`2`,id:`pré-visualização-da-versão-do-sdk-nativo`,children:`Pré-visualização da versão do SDK nativo`}),`\n`,_jsx(_components.p,{children:`Os módulos nativos de Autenticação estão previstos para fornecer início de sessão, acesso à sessão atual, obtenção de tokens, terminar sessão e autenticação reforçada, com sinais automáticos do dispositivo. As chaves de acesso nativas e o armazenamento protegido de tokens fazem parte dessa versão. As APIs do wrapper seguirão os contratos publicados de cada plataforma; não copie argumentos de construtores nem assinaturas de métodos adivinhadas a partir de um exemplo de conceção.`}),`\n`,_jsx(_components.p,{children:`Até que o módulo seja lançado, mantenha o respetivo adaptador desativado ou use uma implementação revista do protocolo alojado para a sua aplicação ativada. Não anuncie um guia rápido de Autenticação nativo a funcionar apenas com base na instalação do pacote.`}),`\n`,_jsx(Heading,{level:`2`,id:`ligar-a-verificação-e-a-monitorização`,children:`Ligar a verificação e a monitorização`}),`\n`,_jsxs(_components.p,{children:[`O seu back-end deriva o `,_jsx(_components.code,{children:`vendor_data`}),` a partir da pessoa autenticada. Cria sessões de verificação ou emite tokens de monitorização com escopo para essa pessoa. Devolva à sua aplicação apenas a credencial de sessão ou o token com escopo; a chave de API fica no servidor.`]}),`\n`,_jsxs(_components.p,{children:[`Use o `,_jsx(_components.a,{href:`/pt/integration/native-sdks/flutter-sdk`,children:`SDK de verificação para Flutter`}),` quando precisar de Verificação de identidade. Siga a `,_jsx(_components.a,{href:`/pt/transaction-monitoring/sdk-transaction-submission`,children:`submissão de transações do SDK`}),` para o suporte de monitorização na sua plataforma. Trate o início de sessão, a verificação e as decisões sobre transações separadamente.`]}),`\n`,_jsx(Heading,{level:`2`,id:`verificar-a-integração`,children:`Verificar a integração`}),`\n`,_jsx(_components.p,{children:`Teste o regresso a uma aplicação encerrada, as transições para segundo plano e para primeiro plano, o cancelamento no navegador, um URL de retorno incompatível, a reutilização de código, a expiração de tokens, a renovação concorrente, MFA, terminar sessão e iniciar sessão como outro utilizador. Teste o registo e o início de sessão com chaves de acesso em dispositivos suportados, assim que essa versão estiver disponível. Uma verificação apenas em dispositivo continua por confirmar até ser executada na plataforma de destino.`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{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":"Autenticação Flutter: início rápido","description":"Configure a autenticação Flutter com a Didit: início de sessão alojado, validação de URL de retorno, sessões seguras e ligações de verificação.","href":"/pt/authentication/quickstarts/flutter"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Preparar a aplicação","slug":"preparar-a-aplicação","depth":2,"children":[]},{"title":"Implementar o fluxo alojado","slug":"implementar-o-fluxo-alojado","depth":2,"children":[]},{"title":"Pré-visualização da versão do SDK nativo","slug":"pré-visualização-da-versão-do-sdk-nativo","depth":2,"children":[]},{"title":"Ligar a verificação e a monitorização","slug":"ligar-a-verificação-e-a-monitorização","depth":2,"children":[]},{"title":"Verificar a integração","slug":"verificar-a-integraçã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"],"subdomain":"didit-0f962782","siteName":"Didit Docs","title":"Autenticação Flutter: início rápido - Didit Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/authentication/quickstarts/flutter","matchLevel":1},"es":{"href":"/es/authentication/quickstarts/flutter","matchLevel":1},"pt-BR":{"href":"/pt-br/authentication/quickstarts/flutter","matchLevel":1},"ja":{"href":"/ja/authentication/quickstarts/flutter","matchLevel":1},"de":{"href":"/de/authentication/quickstarts/flutter","matchLevel":1},"fr":{"href":"/fr/authentication/quickstarts/flutter","matchLevel":1},"it":{"href":"/it/authentication/quickstarts/flutter","matchLevel":1},"pt":{"href":"/pt/authentication/quickstarts/flutter","matchLevel":0},"ca":{"href":"/ca/authentication/quickstarts/flutter","matchLevel":1},"id":{"href":"/id/authentication/quickstarts/flutter","matchLevel":1},"ru":{"href":"/ru/authentication/quickstarts/flutter","matchLevel":1},"ko":{"href":"/ko/authentication/quickstarts/flutter","matchLevel":1},"zh":{"href":"/zh/authentication/quickstarts/flutter","matchLevel":1},"ar":{"href":"/ar/authentication/quickstarts/flutter","matchLevel":1},"hi":{"href":"/hi/authentication/quickstarts/flutter","matchLevel":1}}},"lastModified":"2026-11-07T17:38:31.044Z","gitLastModified":"2026-11-07T17:24:04.000Z","originalFileLocation":"pt/authentication/quickstarts/flutter.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=\"Configure a autenticação Flutter com a Didit: início de sessão alojado, validação de URL de retorno, sessões seguras e ligações de verificação.\">\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=\"Autenticação Flutter: início rápido - Didit Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Configure a autenticação Flutter com a Didit: início de sessão alojado, validação de URL de retorno, sessões seguras e ligações de verificação.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Didit Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.didit.me/pt/authentication/quickstarts/flutter\">\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=Guias+r%C3%A1pidos\u0026amp;title=Autentica%C3%A7%C3%A3o+Flutter%3A+in%C3%ADcio+r%C3%A1pido\u0026amp;description=Configure+a+autentica%C3%A7%C3%A3o+Flutter+com+a+Didit%3A+in%C3%ADcio+de+sess%C3%A3o+alojado%2C+valida%C3%A7%C3%A3o+de+URL+de+retorno%2C+sess%C3%B5es+seguras+e+liga%C3%A7%C3%B5es+de+verifica%C3%A7%C3%A3o.\u0026amp;theme=f6d5c5eb819d99f700ee852a\u0026amp;signature=96a4367d477b47667c0a188b8c581978f199620ec40c2fc2de057c80c1067464\">\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=\"Autenticação Flutter: início rápido - Didit Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Configure a autenticação Flutter com a Didit: início de sessão alojado, validação de URL de retorno, sessões seguras e ligações de verificação.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://didit-0f962782.mintlify.site/_mintlify/api/og/v2?division=Guias+r%C3%A1pidos\u0026amp;title=Autentica%C3%A7%C3%A3o+Flutter%3A+in%C3%ADcio+r%C3%A1pido\u0026amp;description=Configure+a+autentica%C3%A7%C3%A3o+Flutter+com+a+Didit%3A+in%C3%ADcio+de+sess%C3%A3o+alojado%2C+valida%C3%A7%C3%A3o+de+URL+de+retorno%2C+sess%C3%B5es+seguras+e+liga%C3%A7%C3%B5es+de+verifica%C3%A7%C3%A3o.\u0026amp;theme=f6d5c5eb819d99f700ee852a\u0026amp;signature=96a4367d477b47667c0a188b8c581978f199620ec40c2fc2de057c80c1067464\">\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/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/pt/authentication/quickstarts/flutter.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt\" href=\"https://docs.didit.me/pt/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.didit.me/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.didit.me/es/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.didit.me/pt-br/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.didit.me/ja/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.didit.me/de/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.didit.me/fr/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"it\" href=\"https://docs.didit.me/it/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ca\" href=\"https://docs.didit.me/ca/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"id\" href=\"https://docs.didit.me/id/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://docs.didit.me/ru/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.didit.me/ko/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://docs.didit.me/zh/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ar\" href=\"https://docs.didit.me/ar/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"hi\" href=\"https://docs.didit.me/hi/authentication/quickstarts/flutter\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.didit.me/authentication/quickstarts/flutter\">\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/authentication/quickstarts/flutter#webpage\",\"url\":\"https://docs.didit.me/pt/authentication/quickstarts/flutter\",\"name\":\"Autenticação Flutter: início rápido\",\"description\":\"Configure a autenticação Flutter com a Didit: início de sessão alojado, validação de URL de retorno, sessões seguras e ligações de verificação.\",\"dateModified\":\"2026-11-07T17:24:04.000Z\",\"isPartOf\":{\"@id\":\"https://docs.didit.me#website\"},\"breadcrumb\":{\"@id\":\"https://docs.didit.me/pt/authentication/quickstarts/flutter#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.didit.me/pt/authentication/quickstarts/flutter#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Autenticação\",\"item\":\"https://docs.didit.me/pt/authentication/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Guias rápidos\",\"item\":\"https://docs.didit.me/pt/authentication/quickstarts/javascript\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Autenticação Flutter: início rápido\",\"item\":\"https://docs.didit.me/pt/authentication/quickstarts/flutter\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.didit.me/pt/authentication/quickstarts/flutter#article\",\"headline\":\"Autenticação Flutter: início rápido\",\"name\":\"Autenticação Flutter: início rápido\",\"description\":\"Configure a autenticação Flutter com a Didit: início de sessão alojado, validação de URL de retorno, sessões seguras e ligações de verificação.\",\"url\":\"https://docs.didit.me/pt/authentication/quickstarts/flutter\",\"mainEntityOfPage\":{\"@id\":\"https://docs.didit.me/pt/authentication/quickstarts/flutter#webpage\"},\"dateModified\":\"2026-11-07T17:24:04.000Z\",\"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":"/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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","groups":[{"group":"Guias","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/book.svg","pages":[{"title":"SDKs e Integrações: Web, Mobile e Zapier","sidebarTitle":"SDKs e Integrações","href":"/pt/integration/sdks"},{"title":"Fluxo completo da API: integração KYC ponta a ponta","sidebarTitle":"Fluxo completo da API","href":"/pt/integration/api-full-flow"},{"title":"Webhooks em Portugal: eventos KYC e KYB em tempo real","sidebarTitle":"Webhooks","href":"/pt/integration/webhooks"},{"title":"Webhooks de alertas: da equipa para o seu endpoint","sidebarTitle":"Webhooks de alertas","href":"/pt/integration/alert-webhooks"},{"title":"Estados de verificação: ciclo de vida da sessão e códigos","sidebarTitle":"Estados de verificação","href":"/pt/integration/verification-statuses"},{"title":"Erros da API Didit: códigos, respostas e correções","sidebarTitle":"Erros da API","href":"/pt/integration/api-errors"},{"title":"Limite de pedidos da API: Limites, Cabeçalhos e Erro 429","sidebarTitle":"Limite de pedidos","href":"/pt/integration/rate-limiting"},{"title":"Dados de teste da sandbox: cenários, valores e documentos","sidebarTitle":"Sandbox e dados de teste","href":"/pt/integration/sandbox-testing"},{"title":"Registo programático: API de KYC para agentes de IA","sidebarTitle":"Registo programático","href":"/pt/integration/programmatic-registration"},{"title":"Prompt de integração dos três produtos","sidebarTitle":"Prompt de integração","href":"/pt/integration/integration-prompt"}]},{"group":"Autenticação","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/code.svg","pages":[{"title":"Autenticação de utilizadores: início de sessão, passkeys","sidebarTitle":"Autenticação","href":"/pt/authentication/overview"},{"group":"Guias rápidos","pages":[{"title":"Início rápido em JavaScript","href":"/pt/authentication/quickstarts/javascript"},{"title":"Início rápido React para autenticação","href":"/pt/authentication/quickstarts/react"},{"title":"Início rápido Next.js","href":"/pt/authentication/quickstarts/nextjs"},{"title":"Autenticação iOS: início rápido","href":"/pt/authentication/quickstarts/ios"},{"title":"Início rápido Android: Autenticação Didit","href":"/pt/authentication/quickstarts/android"},{"title":"Início rápido React Native para autenticação","description":"Prepare a autenticação React Native com a Didit: início de sessão alojado, validação de retorno, sessões seguras e ligações à verificação e monitorização.","href":"/pt/authentication/quickstarts/react-native"},{"title":"Autenticação Flutter: início rápido","href":"/pt/authentication/quickstarts/flutter"}]},{"title":"Início de sessão: chaves, códigos, redes sociais, SSO","sidebarTitle":"Métodos de início de sessão","description":"Configure no Didit o início de sessão por palavra-passe, código, ligação mágica, chave de acesso, redes sociais ou SSO, com MFA e recuperação de palavra-passe.","href":"/pt/authentication/sign-in-methods"},{"title":"Tokens e JWKS: verificar JWT de autenticação Didit","sidebarTitle":"Tokens e JWKS","href":"/pt/authentication/tokens-and-jwks"},{"title":"Eventos de autenticação e webhooks","sidebarTitle":"Eventos e webhooks","href":"/pt/authentication/events-and-webhooks"},{"title":"Migrar utilizadores: importar palavras-passe e MFA","sidebarTitle":"Migrar os seus utilizadores","href":"/pt/authentication/migration"},{"title":"Proteção contra bots no login: stuffing e força bruta","sidebarTitle":"Proteção contra bots","href":"/pt/authentication/bot-protection"},{"group":"Referência da API","pages":[{"title":"Obter configuração OpenID | API de Autenticação Didit","sidebarTitle":"Obter configuração OpenID","openapi":"pt/openapi-authentication.json GET /.well-known/openid-configuration","href":"/pt/authentication/api-reference/get-openid-configuration"},{"title":"Obter chaves de assinatura (JWKS) | API de Autenticação","sidebarTitle":"Chaves de assinatura (JWKS)","openapi":"pt/openapi-authentication.json GET /.well-known/jwks.json","href":"/pt/authentication/api-reference/get-jwks"},{"title":"Endpoint de token: troca de código e atualização | Didit","sidebarTitle":"Trocar ou atualizar tokens","openapi":"pt/openapi-authentication.json POST /token/","href":"/pt/authentication/api-reference/token"},{"title":"Obter sessão | API de Autenticação Didit","sidebarTitle":"Obter a sessão","openapi":"pt/openapi-authentication.json GET /session/","href":"/pt/authentication/api-reference/get-session"},{"title":"Revogar sessão (terminar sessão) | API Didit","sidebarTitle":"Revogar a sessão","openapi":"pt/openapi-authentication.json DELETE /session/","href":"/pt/authentication/api-reference/revoke-session"},{"title":"Criar step-up de autenticação | API de Autenticação Didit","sidebarTitle":"Criar um step-up","openapi":"pt/openapi-authentication.json POST /step-up/","href":"/pt/authentication/api-reference/create-step-up"},{"title":"Obter estado do step-up | API de Autenticação Didit","sidebarTitle":"Obter um step-up","openapi":"pt/openapi-authentication.json GET /step-up/{step_up_id}/","href":"/pt/authentication/api-reference/retrieve-step-up"},{"title":"Criar token de monitorização | API de Autenticação Didit","sidebarTitle":"Criar token de monitorização","openapi":"pt/openapi-authentication.json POST /monitoring-token/","href":"/pt/authentication/api-reference/create-monitoring-token"}]}]},{"group":"Model Context Protocol (MCP)","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/code.svg","pages":[{"title":"Didit MCP: Verificação de identidade para agentes de IA","sidebarTitle":"Visão geral","href":"/pt/integration/mcp/overview"},{"title":"Ligar o Claude ao servidor MCP da Didit","sidebarTitle":"Ligar o Claude","href":"/pt/integration/mcp/claude"},{"title":"Instalar o MCP Didit: Claude, Cursor, VS Code, Windsurf","sidebarTitle":"Instalação","href":"/pt/integration/mcp/installation"},{"title":"Autenticação MCP da Didit: iniciar sessão com OAuth","sidebarTitle":"Autenticação","href":"/pt/integration/mcp/authentication"},{"title":"Ferramentas MCP da Didit: 169 ferramentas de identidade","sidebarTitle":"Ferramentas","href":"/pt/integration/mcp/tools"},{"title":"Exemplos do MCP Didit: Prompts e Conversas com Agentes","sidebarTitle":"Exemplos","href":"/pt/integration/mcp/examples"},{"title":"MCP da Didit: avançado, resolução e alojamento próprio","sidebarTitle":"Avançado","href":"/pt/integration/mcp/advanced"}]},{"group":"SDKs web","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/browser.svg","pages":[{"title":"SDKs de verificação de identidade para web: JS e iframe","sidebarTitle":"SDKs Web","href":"/pt/integration/web-sdks/overview"},{"title":"SDK JavaScript de Verificação de Identidade: KYC Web","sidebarTitle":"SDK JavaScript","href":"/pt/integration/web-sdks/javascript-sdk"},{"title":"Verificação KYC por redirecionamento web: página alojada","sidebarTitle":"Redirecionamento web","href":"/pt/integration/web-sdks/web-redirect"},{"title":"Verificação de identidade por iframe: KYC incorporado","sidebarTitle":"InContext (iframe)","href":"/pt/integration/web-sdks/incontext-iframe"},{"title":"KYC em WebView: verificação de identidade móvel","sidebarTitle":"Integração WebView","href":"/pt/integration/web-sdks/webview-in-ios-android"}]},{"group":"SDKs nativos","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/mobile.svg","pages":[{"title":"SDK KYC nativos para iOS, Android, React Native e Flutter","sidebarTitle":"SDKs nativos","href":"/pt/integration/native-sdks/overview"},{"title":"SDK iOS Swift para Verificação de Identidade: KYC Móvel","sidebarTitle":"SDK iOS","href":"/pt/integration/native-sdks/ios-sdk"},{"title":"SDK Android de verificação de identidade (KYC) em Kotlin","sidebarTitle":"SDK Android","href":"/pt/integration/native-sdks/android-sdk"},{"title":"SDK KYC para React Native: Verificação Móvel","sidebarTitle":"SDK React Native","href":"/pt/integration/native-sdks/react-native-sdk"},{"title":"SDK KYC Flutter: verificação móvel em Dart","sidebarTitle":"SDK Flutter","href":"/pt/integration/native-sdks/flutter-sdk"}]},{"group":"SDKs de servidor","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/code.svg","pages":[{"title":"SDKs backend: Python, Node.js, Go, Java, PHP, Ruby, .NET","sidebarTitle":"Visão geral","href":"/pt/integration/server-sdks/overview"},{"title":"SDK Python para KYC, AML e transações","sidebarTitle":"Python","href":"/pt/integration/server-sdks/python"},{"title":"SDK Node.js e TypeScript para KYC e AML","sidebarTitle":"Node.js","href":"/pt/integration/server-sdks/node"},{"title":"SDK Go da Didit para KYC, AML e transações","sidebarTitle":"Go","href":"/pt/integration/server-sdks/go"},{"title":"SDK Java e Kotlin da Didit para KYC, AML e transações","sidebarTitle":"Java","href":"/pt/integration/server-sdks/java"},{"title":"SDK PHP da Didit para KYC, AML e transações","sidebarTitle":"PHP","href":"/pt/integration/server-sdks/php"},{"title":"SDK Ruby para KYC, AML e Transações","sidebarTitle":"Ruby","href":"/pt/integration/server-sdks/ruby"},{"title":"SDK C# e .NET para KYC, AML e Transações","sidebarTitle":".NET","href":"/pt/integration/server-sdks/dotnet"}]},{"group":"Integrações","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/puzzle.svg","pages":[{"title":"Motores KYC sem código: Automação de identidade no Zapier","sidebarTitle":"Integrações sem código","href":"/pt/integration/engines/overview"},{"title":"Verificação de identidade com Zapier: automatização","sidebarTitle":"Zapier","href":"/pt/integration/engines/zapier"},{"title":"Verificação de identidade com Okta e Auth0","href":"/pt/integration/engines/okta-auth0-idv"},{"title":"Plugin KYC WordPress: Verificação de idade no WooCommerce","sidebarTitle":"WordPress + WooCommerce","href":"/pt/integration/web-sdks/wordpress-woocommerce"},{"title":"App KYC para Shopify - Verificação de identidade e idade","sidebarTitle":"Shopify","href":"/pt/integration/web-sdks/shopify"},{"title":"Verificação de identidade Salesforce: KYC e KYB","sidebarTitle":"Salesforce","href":"/pt/integration/web-sdks/salesforce"}]}]},{"tab":"Referência da API","icon":"https://mintlify.s3.us-west-1.amazonaws.com/didit-0f962782/icons/code.svg","pages":[{"title":"Referência da API","href":"/pt/api-reference/overview"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]},{"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/authentication/quickstarts/flutter"}]}]},"basePath":"","title":"Autenticação Flutter: início rápido - Didit Docs","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":[],"chunks":[]}