List public login authentication methods.
curl --request GET \ --url https://auth.example.com/api/auth/authentication-methodsReturns the enabled login methods and Login UI configuration for the current tenant, including passkey, email code, TOTP, directory password, human verification, SAML, and external provider options when configured. methods.guest contains enabled (boolean) and deletionAfterDays (integer or null). Guest login is advertised only when the tenant and the requested client both explicitly permit it; without client_id it is disabled. deletionAfterDays describes retention for newly created guests, not the actual deletion date of an existing account. If guest settings are unavailable, guest login is omitted from available choices while other authentication methods retain their existing fallback behavior.
Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ”Optional OAuth client id used to resolve client-level Login UI theme overrides.
Responses
Section titled “ Responses ”Successful JSON response.
object
object
object
object
object
object
Human verification (CAPTCHA) for the tenant. required / requiredFor say what the tenant’s settings ask for; available / reason say whether the provider can verify a token. A flow in requiredFor while available is false cannot be completed (the servers refuse it), so a client must say so instead of showing no widget.
object
The widget is shown for at least one flow.
The widget is shown on the login screen.
At least one flow’s settings ask for human verification.
Per flow, whether the settings ask for human verification.
object
The provider can verify a token (its plugin is enabled and its configuration is one the runner accepts: both keys within their length limits, a well-formed hostname, a supported widget mode). A provider that was never enabled is not available.
Why the flows cannot be completed; null when the provider is available. settings_unreadable means the tenant’s settings cannot be read, so the servers refuse every attempt; every flow is then reported as required.
object
object
Fallback locale. The value is always included in supportedLocales.
Effective primary locales displayed before regional groups when at least 11 locales are enabled. An empty array means no primary locales are displayed.
Display English names alongside native names in the language selector.
object
Legacy common tagline override used when no locale-specific value exists.
Locale-specific Login UI text overrides keyed by supported locale code.
object
object
Primary heading override for the login page.
Primary heading override for the registration page.
Primary heading override for the account page.
object
Example
{ "methods": { "passkey": { "enabled": true, "loginEnabled": true, "signupEnabled": true, "capabilities": [ "conditional", "discoverable" ] }, "emailCode": { "enabled": true, "steps": [ "email", "code" ] }, "totp": { "enabled": false, "loginEnabled": false, "signupEnabled": false, "reauthEnabled": false, "accountLinkEnabled": false }, "external": { "enabled": false, "providers": [] } }, "ui": { "theme": "light", "supportedLocales": [ "en", "ja" ], "defaultLocale": "en", "primaryLocales": [ "en", "ja" ], "showEnglishLanguageNames": false, "branding": { "brandName": "Authrim" } }, "meta": { "cacheTTL": 60, "revision": "2026-06-19T00:00:00.000Z" }}Error response.
object
Example generated
{ "error": "example", "message": "example", "error_description": "example"}Error response.
object
Example generated
{ "error": "example", "message": "example", "error_description": "example"}Error response.
object
Example generated
{ "error": "example", "message": "example", "error_description": "example"}