---
title: "Get default sign-in experience settings"
method: GET
path: "/api/sign-in-exp"
tags: ["Sign-in experience"]
---

# Get default sign-in experience settings

`GET /api/sign-in-exp`

Get the default sign-in experience settings.

## Response `200`

Default sign-in experience settings.

- object
  - `tenantId` string, required
  - `id` string, required
  - `color` object, required — The primary branding color for the sign-in page (both light/dark mode).
    - `primaryColor` string, regex, required
    - `isDarkModeEnabled` boolean, required
    - `darkPrimaryColor` string, regex, required
  - `branding` object, required
    - `logoUrl` string, url
    - `darkLogoUrl` string, url
    - `favicon` string, url
    - `darkFavicon` string, url
  - `hideLogtoBranding` boolean, required — Cloud only. Whether to hide the Logto branding on hosted sign-in pages.
  - `languageInfo` object, required — The language detection policy for the sign-in page.
    - `autoDetect` boolean, required
    - `fallbackLanguage` 'af-ZA' | 'am-ET' | 'ar' | 'ar-AR' | 'as-IN' | 'az-AZ' | 'be-BY' | 'bg-BG' | 'bn-IN' | 'br-FR' | 'bs-BA' | 'ca-ES' | 'cb-IQ' | 'co-FR' | 'cs' | 'cs-CZ' | 'cx-PH' | 'cy-GB' | 'da-DK' | 'de' | 'de-DE' | 'el-GR' | 'en' | 'en-GB' | 'en-US' | 'eo-EO' | 'es' | 'es-ES' | 'es-419' | 'et-EE' | 'eu-ES' | 'fa-IR' | 'ff-NG' | 'fi' | 'fi-FI' | 'fo-FO' | 'fr' | 'fr-CA' | 'fr-FR' | 'fy-NL' | 'ga-IE' | 'gl-ES' | 'gn-PY' | 'gu-IN' | 'ha-NG' | 'he-IL' | 'hi-IN' | 'hr-HR' | 'ht-HT' | 'hu-HU' | 'hy-AM' | 'id-ID' | 'ik-US' | 'is-IS' | 'it' | 'it-IT' | 'iu-CA' | 'ja' | 'ja-JP' | 'ja-KS' | 'jv-ID' | 'ka-GE' | 'kk-KZ' | 'km-KH' | 'kn-IN' | 'ko' | 'ko-KR' | 'ku-TR' | 'ky-KG' | 'lo-LA' | 'lt-LT' | 'lv-LV' | 'mg-MG' | 'mk-MK' | 'ml-IN' | 'mn-MN' | 'mr-IN' | 'ms-MY' | 'mt-MT' | 'my-MM' | 'nb-NO' | 'ne-NP' | 'nl' | 'nl-BE' | 'nl-NL' | 'nn-NO' | 'or-IN' | 'pa-IN' | 'pl-PL' | 'ps-AF' | 'pt' | 'pt-BR' | 'pt-PT' | 'ro-RO' | 'ru' | 'ru-RU' | 'rw-RW' | 'sc-IT' | 'si-LK' | 'sk-SK' | 'sl-SI' | 'sn-ZW' | 'sq-AL' | 'sr-RS' | 'sv' | 'sv-SE' | 'sw-KE' | 'sy-SY' | 'sz-PL' | 'ta-IN' | 'te-IN' | 'tg-TJ' | 'th' | 'th-TH' | 'tl-PH' | 'tr' | 'tr-TR' | 'tt-RU' | 'tz-MA' | 'uk-UA' | 'ur-PK' | 'uz-UZ' | 'vi-VN' | 'zh' | 'zh-CN' | 'zh-HK' | 'zh-MO' | 'zh-TW' | 'zz-TR', required
  - `termsOfUseUrl` string, nullable, required
  - `privacyPolicyUrl` string, nullable, required
  - `agreeToTermsPolicy` 'Automatic' | 'ManualRegistrationOnly' | 'Manual', required
  - `signIn` object, required — Sign-in method settings.
    - `methods` object[], required
      - `identifier` 'username' | 'email' | 'phone', required
      - `password` boolean, required
      - `verificationCode` boolean, required
      - `isPasswordPrimary` boolean, required
  - `signUp` object, required — Sign-up method settings.
    - `identifiers` string[], required — Allowed identifiers when signing-up.
    - `password` boolean, required — Whether the user is required to set a password when signing-up.
    - `verify` boolean, required — Whether the user is required to verify their email/phone when signing-up.
    - `secondaryIdentifiers` object[] — Additional identifiers required during sign-up. Once specified, users will be prompted to provide these identifiers when creating an account.
      - `identifier` union, required
        - 'username' | 'email' | 'phone'
        - 'emailOrPhone'
      - `verify` boolean
  - `socialSignIn` object, required
    - `automaticAccountLinking` boolean
    - `skipRequiredIdentifiers` boolean
  - `socialSignInConnectorTargets` string[], required — Enabled social sign-in connectors, will displayed on the sign-in page.
  - `signInMode` 'SignIn' | 'Register' | 'SignInAndRegister', required
  - `customCss` string, nullable, required
  - `customContent` object, required — Custom content to display on experience flow pages. the page pathname will be the config key, the content will be the config value.
  - `customUiAssets` object, nullable, required
    - `id` string, required
    - `createdAt` number, required
  - `customUiCsp` object, required — Cloud only. Additional Content Security Policy source expressions for Custom UI assets. These values are applied to the hosted sign-in page only when Custom UI assets are configured.
    - `scriptSrc` string[] — Additional source expressions appended to the `script-src` directive for scripts loaded by Custom UI assets. HTTPS sources are supported. HTTP localhost sources are allowed only outside production.
    - `connectSrc` string[] — Additional source expressions appended to the `connect-src` directive for network requests made by Custom UI assets. HTTPS and WSS sources are supported. HTTP localhost sources are allowed only outside production.
  - `passwordPolicy` object, required — Password policies to adjust the password strength requirements.
    - `length` object
      - `min` number, required
      - `max` number, required
    - `characterTypes` object
      - `min` number, required
    - `rejects` object
      - `pwned` boolean, required
      - `repetitionAndSequence` boolean, required
      - `userInfo` boolean, required
      - `words` string[], required
  - `mfa` object, required — MFA settings
    - `factors` string[], required
    - `policy` 'UserControlled' | 'Mandatory' | 'PromptOnlyAtSignIn' | 'PromptAtSignInAndSignUp' | 'NoPrompt' | 'PromptAtSignInAndSignUpMandatory' | 'PromptOnlyAtSignInMandatory', required
    - `organizationRequiredMfaPolicy` 'NoPrompt' | 'Mandatory'
  - `adaptiveMfa` object, required — Adaptive MFA settings.
    - `enabled` boolean
  - `singleSignOnEnabled` boolean, required
  - `supportEmail` string, nullable, required — The support email address to display on the error pages.
  - `supportWebsiteUrl` string, nullable, required — The support website URL to display on the error pages.
  - `unknownSessionRedirectUrl` string, nullable, required — The fallback URL to redirect users when the sign-in session does not exist or unknown. Client should initiates a new authentication flow after the redirection.
  - `captchaPolicy` object, required
    - `enabled` boolean
  - `sentinelPolicy` object, required — Custom sentinel policy settings. Use this field to customize the user lockout policy. The default value is 100 failed attempts within one hour. The user will be locked out for 60 minutes after exceeding the limit.
    - `maxAttempts` number
    - `lockoutDuration` number
  - `emailBlocklistPolicy` object, required — Define email restriction policies for registering or linking email addresses.
    - `blockDisposableAddresses` boolean — Cloud only. Whether to block disposable email addresses. Once enabled, Logto will check the email domain against a list of known disposable email domains. If the domain is found in the list, the email address will be blocked.
    - `blockSubaddressing` boolean — Whether to block sub-addresses. (E.g., example+shopping@test.com)
    - `customAllowlist` string[] — Custom allowlist of email addresses, domains, or wildcard email address patterns. Examples: `bar@example.com`, `@example.com`, `foo*@example.com`, `@*.example.com`.
    - `customBlocklist` string[] — Custom blocklist of email addresses, domains, or wildcard email address patterns. Examples: `bar@example.com`, `@example.com`, `foo*@example.com`, `@*.example.com`.
  - `verificationCodePolicy` object, required
    - `expirationDuration` number
    - `maxRetryAttempts` number
  - `forgotPasswordMethods` string[], nullable, required
  - `passkeySignIn` object, required
    - `enabled` boolean
    - `showPasskeyButton` boolean
    - `allowAutofill` boolean
  - `signUpProfileFields` object[], nullable, required
    - `name` string, required
  - `passwordExpiration` union, required — Password expiration policy used to force users to reset their password during sign-in. When enabled is false, the period field is ignored.
    - object
      - `enabled` boolean — Whether password expiration is enabled.
      - `validPeriodDays` unknown
    - object
      - `enabled` boolean, required — Whether password expiration is enabled.
      - `validPeriodDays` number, required — Number of days a password remains valid before it expires.
      - `enabledAt` number
  - `usernamePolicy` object, required — Validator function

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Default sign-in experience settings not found.

---

[API](https://skmtc.net/logto/apis/logto-api-references.md) · [All operations](https://skmtc.net/logto/apis/logto-api-references/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/logto/logto-api-references/revisions/0287c6a59eba/schema)
