> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lerian.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Verificar Desafio de MFA

> Use este endpoint para concluir a etapa de verificação MFA durante o login. Após receber um `mfaToken` do endpoint de token de acesso, envie o código de verificação juntamente com o token para obter suas credenciais de acesso.

Você deve fornecer um `passcode` (do seu aplicativo autenticador, e-mail ou SMS) ou um `recoveryCode` — não ambos.




## OpenAPI

````yaml pt/openapi/v3-current/AM-auth.yaml post /v1/login/mfa/verify
openapi: 3.1.0
info:
  title: Plugin de Autenticação
  description: ''
  version: 2.6.7
servers:
  - url: https://auth.sandbox.lerian.net
security: []
tags:
  - name: API de Autenticação
  - name: API de MFA
  - name: API de Informações do Usuário
  - name: API de Autorização
paths:
  /v1/login/mfa/verify:
    post:
      tags:
        - API de MFA
      summary: Verificar Desafio de MFA
      description: >
        Use este endpoint para concluir a etapa de verificação MFA durante o
        login. Após receber um `mfaToken` do endpoint de token de acesso, envie
        o código de verificação juntamente com o token para obter suas
        credenciais de acesso.


        Você deve fornecer um `passcode` (do seu aplicativo autenticador, e-mail
        ou SMS) ou um `recoveryCode` — não ambos.
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/MFAVerifyInput'
            examples:
              TOTPVerification:
                summary: Verificação por App TOTP
                description: >-
                  Verificar usando um código de 6 dígitos de um aplicativo
                  autenticador
                value:
                  mfaToken: eyJhbGciOiJIUzI1NiJ9...
                  passcode: '123456'
                  mfaType: app
                  rememberDevice: false
              RecoveryCodeVerification:
                summary: Verificação por Código de Recuperação
                description: >-
                  Verificar usando um código de recuperação quando o método
                  principal estiver indisponível
                value:
                  mfaToken: eyJhbGciOiJIUzI1NiJ9...
                  recoveryCode: ABCD-1234-EFGH
                  mfaType: app
                  rememberDevice: false
      responses:
        '200':
          description: >-
            Verificação MFA bem-sucedida. Retorna as credenciais de acesso para
            a sessão autenticada.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OAuth2Token'
              example:
                accessToken: >-
                  eyJhbGciOiJSUzI1NiIsImtpZCI6ImNlcnQtYnVpbHQtaW4iLCJ0eXAiOiJKV1QifQ...
                idToken: >-
                  eyJhbGciOiJSUzI1NiIsImtpZCI6ImNlcnQtYnVpbHQtaW4iLCJ0eXAiOiJKV1QifQ...
                tokenType: Bearer
                expiresIn: 3600
                refreshToken: eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9...
                scope: openid profile email
          headers: {}
        '400':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                Error0001:
                  $ref: '#/components/examples/Error0001'
                Error0009:
                  $ref: '#/components/examples/Error0009'
                Error0016:
                  $ref: '#/components/examples/Error0016'
          headers: {}
        '401':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                Error0017:
                  $ref: '#/components/examples/Error0017'
                Error0020:
                  $ref: '#/components/examples/Error0020'
          headers: {}
        '429':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                Error0018:
                  $ref: '#/components/examples/Error0018'
          headers: {}
        '500':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorMessage'
              examples:
                Error0005:
                  $ref: '#/components/examples/Error0005'
          headers: {}
      security: []
components:
  schemas:
    MFAVerifyInput:
      description: >-
        Informações usadas para verificar um desafio de MFA durante o login.
        Forneça um passcode ou um código de recuperação — não ambos.
      type: object
      required:
        - mfaToken
        - mfaType
      oneOf:
        - required:
            - passcode
        - required:
            - recoveryCode
      properties:
        mfaToken:
          type: string
          description: O token MFA temporário recebido do endpoint de token de acesso.
        passcode:
          type: string
          description: >-
            O código de verificação de 6 dígitos do seu aplicativo autenticador,
            e-mail ou SMS.
          minLength: 6
          maxLength: 6
        recoveryCode:
          type: string
          description: >-
            Um código de recuperação a ser usado quando o método principal de
            MFA estiver indisponível.
        mfaType:
          type: string
          enum:
            - app
            - email
            - sms
          description: O método de MFA sendo verificado.
        rememberDevice:
          type: boolean
          description: >-
            Quando definido como `true`, o dispositivo é lembrado para logins
            futuros.
          default: false
    OAuth2Token:
      description: >-
        Informações usadas para gerenciar dados de autenticação OAuth2. Armazena
        credenciais de acesso de forma segura, garantindo autorização e controle
        contínuos sobre recursos protegidos.
      type: object
      required:
        - accessToken
        - tokenType
        - expiresIn
        - refreshToken
      properties:
        accessToken:
          type: string
          description: Um token temporário que concede ao usuário acesso seguro às APIs.
        expiresIn:
          type: integer
          description: O tempo (em segundos) até o token expirar.
        idToken:
          type: string
          description: >-
            Os detalhes de identidade sobre o usuário autenticado nos padrões
            OpenID Connect. Pode ser usado para verificar a autenticação do
            usuário.
        refreshToken:
          type: string
          description: >-
            Um token de longa duração que permite aos usuários obter um novo
            `access_token` sem a necessidade de fazer login novamente.
        scope:
          type: string
          description: O nível de acesso concedido aos tokens emitidos.
        tokenType:
          type: string
          description: O tipo de token emitido.
    ErrorMessage:
      description: A mensagem de erro da resposta.
      type: object
      properties:
        code:
          type: string
          description: Um identificador único e estável para o erro.
        title:
          type: string
          description: Um breve resumo do problema.
        message:
          type: string
          description: Orientação detalhada para resolver o erro.
  examples:
    Error0001:
      summary: Missing Fields in Request
      value:
        code: AUT-0001
        title: Missing Fields in Request
        message: >-
          Your request is missing one or more required fields. Please refer to
          the documentation to ensure all necessary fields are included in your
          request.
    Error0009:
      summary: Bad Request
      value:
        code: AUT-0009
        title: Bad Request
        message: >-
          The server could not understand the request due to malformed syntax.
          Please check the listed fields and try again.
    Error0016:
      summary: Invalid MFA Code
      value:
        code: AUT-0016
        title: Invalid MFA Code
        message: The provided MFA code is invalid. Please check the code and try again.
    Error0017:
      summary: MFA Token Expired
      value:
        code: AUT-0017
        title: MFA Token Expired
        message: >-
          The MFA token has expired. Please restart the login process to receive
          a new token.
    Error0020:
      summary: Invalid MFA Token
      value:
        code: AUT-0020
        title: Invalid MFA Token
        message: >-
          The provided MFA token is invalid or malformed. Please use the token
          received from the access token endpoint.
    Error0018:
      summary: MFA Max Attempts Reached
      value:
        code: AUT-0018
        title: MFA Max Attempts Reached
        message: >-
          The maximum number of MFA verification attempts has been reached.
          Please restart the login process.
    Error0005:
      summary: Internal Server Error
      value:
        code: AUT-0005
        title: Internal Server Error
        message: >-
          The server encountered an unexpected error. Please try again later or
          contact support.

````