Skip to main content

Frontend Configuration

The Frontend Configuration provides essential settings and parameters that control the behavior of your Tango application. This configuration should be fetched before initializing key features like authentication, registration, and transaction flows.

Overview

The frontendConfiguration query returns system-wide settings that determine:

  • Authentication methods and requirements
  • Multi-factor authentication (MFA) providers
  • Verification requirements
  • Feature flags and capabilities

Query

Use publicQueries.frontendConfiguration to retrieve the configuration. This query is publicly accessible and does not require authentication.

query frontendConfiguration {
public {
id
frontendConfiguration {
id
inputDateFormat
dateFormatLong
dateFormatShort
inbounds {
paymentMethodRequired
code
displayName
maxAmount
__typename
}
authMethod
endUserTwoFactorProvider
protectedActions
__typename
}
__typename
}
}
warning

The inbounds field in public.frontendConfiguration will be empty if the request is made without an Authorization header. After a successful login, it is recommended to refetch frontendConfiguration to ensure all authenticated data is properly loaded.

Key Configuration Properties

Authentication Settings

PropertyTypeDescription
authMethodStringDetermines the username type for authentication: "EMAIL" or "PHONE"
endUserTwoFactorProviderStringMFA provider type (see MFA Providers)

MFA Providers

The endUserTwoFactorProvider field determines which multi-factor authentication method is enabled:

ProviderDescriptionImplementation
nullMFA disabledNo additional authentication required
SMSSMS-based OTPBackend sends code, user enters it
EMAILEmail-based OTPBackend sends code, user enters it
AUTHENTICATORTOTP authenticator appUser scans QR code and enters time-based code
BIOMETRICBiometric authenticationFrontend-only implementation
ANYLOCALAUTHLocal device authenticationFrontend-only implementation (PIN, pattern, etc.)
Frontend vs Backend MFA

BIOMETRIC and ANYLOCALAUTH are handled entirely on the frontend. The backend does not send verification codes for these providers.

Integration with Other Flows

Login Flow

The frontend configuration is essential for the Login & Authentication flow:

  1. Fetch frontendConfiguration before showing login UI
  2. Use authMethod to validate username format (email vs phone)
  3. Use endUserTwoFactorProvider to determine MFA flow
  4. Proceed with appropriate authentication steps

Registration Flow

For user registration, the configuration determines:

  • Username format validation (email or phone)
  • MFA setup requirements