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
}
}
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
| Property | Type | Description |
|---|---|---|
authMethod | String | Determines the username type for authentication: "EMAIL" or "PHONE" |
endUserTwoFactorProvider | String | MFA provider type (see MFA Providers) |
MFA Providers
The endUserTwoFactorProvider field determines which multi-factor authentication method is enabled:
| Provider | Description | Implementation |
|---|---|---|
null | MFA disabled | No additional authentication required |
SMS | SMS-based OTP | Backend sends code, user enters it |
EMAIL | Email-based OTP | Backend sends code, user enters it |
AUTHENTICATOR | TOTP authenticator app | User scans QR code and enters time-based code |
BIOMETRIC | Biometric authentication | Frontend-only implementation |
ANYLOCALAUTH | Local device authentication | Frontend-only implementation (PIN, pattern, etc.) |
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:
- Fetch
frontendConfigurationbefore showing login UI - Use
authMethodto validate username format (email vs phone) - Use
endUserTwoFactorProviderto determine MFA flow - Proceed with appropriate authentication steps
Registration Flow
For user registration, the configuration determines:
- Username format validation (email or phone)
- MFA setup requirements
Related Documentation
- Login & Authentication - How to use configuration in login flows
- Registration - Registration requirements based on configuration
- API Objects - Full GraphQL schema documentation