Deprecated: December 10, 2025End of life: June 10, 2026After the end-of-life date, we will require the use of modern ciphers when connecting to Auth0 service endpoints and web applications. We will remove support for TLS 1.2 cipher suites that no longer provide sufficient security to protect network communications. More specifically, the change to supported cipher suites applies to:
Public and private cloud tenants’ default domains; for example, [tenant_name].eu.auth0.com.
Public and private cloud tenants’ custom domains.
Service-related web applications, such as the Dashboard (manage.auth0.com) or the Marketplace (marketplace.auth0.com).
The list of discontinued cipher suites is available below. The list contains the unique hex code that identifies each cipher alongside its IANA name; for the corresponding OpenSSL names, follow the links to ciphersuite.info.TLS 1.2 ciphers scheduled for removal:
New Management API Scopes Required for Connection Options
Deprecated: October 24, 2024End of life: July 8, 2025Requests to the following Management API endpoints will require the read:connections_options scope to view the options field:
Deprecated: October 31, 2025End of life: May 1, 2026Login flows initiated in the context of client applications associated with business users (organization_usage=require) and configured to prompt for the organization at the start of the login flow (organization_require_behavior=pre_login_prompt) will consider an existing authenticated session.Previously, the service prompted the user for the organization name, and the user was subsequently required to complete a login. For example, a user with a password-based account needed to re-enter their credentials even if an authenticated session was valid for the selected organization.
Unconfirmed Login with Non-Verifiable Callback URI Redirects
Deprecated: October 28, 2025End of life: April 28, 2026Auth0 recommends the transition to HTTPS-based callbacks using Android App Links and Apple Universal Links whenever possible for all native applications using the Authorization Code Flow to enhance security and mitigate risks of application impersonation and phishing attacks.Additionally, Auth0 is implementing a new login confirmation prompt for authentication requests that use custom URI schemes or loopback URIs as callbacks. This prompt will appear in situations where a response was previously returned without requiring user interaction.Review Migrate to Non-Verifiable Callback URI End-User Confirmation to learn more details.
Extended Attributes in Azure Active Directory (v1) Identity API Connections
Deprecated: June 18, 2025End of life: September 1, 2025Due to the Azure AD Graph deprecation and scheduled retirement, Auth0 will no longer support enabling extended attributes-related options in Microsoft Azure AD (strategy=waad) connections configured to use the Azure Active Directory (v1) Identity API.If you received an email notification, one or more of your tenants may have a Microsoft Azure AD connection targeting the Azure Active Directory (v1) identity API and configured to obtain extended attributes, which could be impacted.You must review applicable tenants. For connections dependent on the deprecated functionality, you must either:
Update connections to target Microsoft Identity Platform (v2) so that Microsoft Graph endpoints are used instead of the deprecated Azure AD Graph when retrieving extended attributes information.
Turn off all the extended attributes options.
Although the second option above would allow you to maintain connections targeting the Azure Active Directory (v1) identity API if the extended information is unnecessary, the general recommendation is to target Microsoft Identity Platform (v2). To learn more, read Connect Your App to Microsoft Azure Active Directory.
Deprecated: June 18, 2025End of life: September 16, 2025The Real-time Webtask Logs extension is deprecated and has a planned end-of-life (EOL) after September 16, 2025. As a replacement, the Actions Real-time Logs feature is directly available within the Auth0 Dashboard. The extension will cease to be available for new installations, but tenants with the extension already installed will maintain access until the planned EOL.
Multiple Actions for Custom Phone and Email Provider Triggers
Deprecated: June 16, 2025End of life: December 16, 2025Auth0 is introducing a maximum limit of one Action for Actions associated with the following triggers:
custom-phone-provider
custom-email-provider
This limitation applies to the Management API Create an Action endpoint (POST - /api/v2/actions/actions). Once the newly introduced limit becomes effective for a given tenant, attempts to create multiple actions for these triggers will fail.
Deprecated: June 9, 2025End of life: December 9, 2025An updated version of the email-based unblock flow for Brute-force Protection supports customization and localization through Universal Login and improves the experience in situations where email security scanners process the unblock email.
Field fromSandbox in Authentication API Error Responses
Deprecated: June 11, 2025End of life: December 11, 2025Authentication API error responses will no longer include the fromSandbox field for flows that require custom database script invocation. For example, in an end-user signup flow for a custom database connection, an API error response will no longer return this field.
Allow Omitting Password on SMTP Email Provider Host-Related Changes
Deprecated: May 13, 2025End of life: November 13, 2025When updating a SMTP email provider’s host, port, or username using a PATCH request to the /api/v2/emails/provider endpoint, you may need to specify a password for the credentials.smtp_pass field.A SMTP email provider’s credentials object supports the following fields:
Auth0 requires an explicit value for the credentials.smtp_pass field in the following cases:
When you’re updating a SMTP email provider’s credentials.smtp_host, credentials.smtp_port, or credentials.smtp_user fields with a value that is different from the existing value or updating just a subset of those three fields.
Auth0 does not require an explicit value for the credentials.smtp_pass field in the following cases:
When you’re updating an SMTP email provider and the request body includes the same values as the existing values for the credentials.smtp_host, credentials.smtp_port, and credentials.smtp_user fields.
Unrestricted Offset Pagination in Connections Management API
Deprecated: April 29, 2025End of life: October 27, 2025The offset-based pagination available for the Management API get all connections endpoint will no longer support retrieving a paginated result beyond the first 1000 connections.For example, the service will return an error response if page=30&per_page=50 or page=15&per_page=100 is used. In both situations, multiplying the number of records requested per page by the requested page index plus one (to account for the page index being zero-based) causes the request to exceed the initial 1000 connections.Per the above, with a page size of 50, the last page index that you can request without errors is 19 (page=19&per_page=50), and with the maximum page size of 100, you can request up to page index number 9 (page=9&per_page=100).Conditions that surpass the limit trigger the error even if the tenant associated with the request has fewer than 1000 connections.
Protected Properties in Non-Custom Social Connections
Deprecated: July 30, 2024End of life: January 31, 2025Management API endpoints for connections (GET, POST, and PATCH) will no longer allow retrieving or setting values for the following protected properties in the context of the options object for non-custom social connections:
authorizationURL
tokenURL
userInfoUrl
baseUrl
userAuthorizationURL
grant_type
authorizationURL
tokenURL
userInfoUrl
baseUrl
userAuthorizationURL
grant_type
Non-custom social connections refer to any social connection whose implementation logic is controlled entirely within the Auth0 service itself. This category excludes any connections explicitly created as custom social connectors or those available as Marketplace integrations that rely on custom social connection functionality.
Unwarranted Session Removal After Management API User Updates
Deprecated: February 11, 2025End of life: August 19, 2025The Update a user endpoint (PATCH /api/v2/users/{id}) will no longer invalidate user sessions for database connection users when:
The email or email_verified attributes are set to an unchanged value.
The email_verified attribute is set to a true value.
Deprecated: October 29, 2024End of life: April 29, 2025The Auth0 service will mandate using Server Name Indication (SNI) for all HTTPS requests. SNI is an extension to the TLS protocol that allows the client to indicate the hostname to which it intends to connect at the start of the handshake process.Since their creation, the vast majority of our private cloud environments and some of our public cloud environments have enforced the SNI requirement. For example, the CA-1, JP-1, and UK-1 public cloud environments always required SNI.With this change, the SNI requirement will apply to the remaining environments. For more detailed information on environment-specific timelines, read the End-of-Life Rollout for Mandatory Use of SNI for HTTPS Requests article.
Deprecated: September 4, 2024End of life: October 4, 2024Starting October 4, 2024, Auth0 will no longer automatically redirect API requests using unencrypted HTTP to secure HTTPS and will respond with an error. To avoid any disruption in service, update any HTTP URLs you use or publish to use HTTPS instead.
Management API Transition: Updating Roles Assignment to Require Create Scope
Deprecated: March 7, 2024End of life: September 10, 2024Management API scopes for the User-Roles endpoint (POST /api/v2/users/{id}/roles) will require the create:role_members scope. This better represents the scope’s intended permissions.Previously, roles could be assigned to users with read:roles scope.
Update Applications that use Cross-Origin Authentication
Deprecated: April 25, 2024End of life: October 10, 2024New applications created in Auth0 will have cross-origin authentication disabled by default. Calls to some Management API endpoints (Get Clients, Get Client by ID) will need to be modified to use cross_origin_authentication.
Remove Subscription Tickets access for Tenant Admins
Deprecated: June 5, 2024End of life: August 5, 2024Access to view Subscription Tickets within the Auth0 Support Center is changing on August 5, 2024. To retain access to view and manage all support tickets created by all users across a tenant, the new Elevated Support Access role is required.
Password Reset and Email Verification Links in Tenant Logs Deprecation
Deprecated: December 7, 2023End of life: February 5, 2024Password reset and email verification links will no longer be logged to tenant logs. These links can be retrieved from the password reset or email verification request response.
Reducing Maximum Expiration Time for Login Transactions
Deprecated: September 5, 2023 (Public Cloud), November 21, 2023 (Private Cloud)End of life: February 21, 2024With this change, we will enforce a maximum lifetime of 1 hour for redirection-based login flows. Login flows that take longer than 1 hour to complete will expire in both Universal and Classic Login. After expiration, subsequent actions from the end user’s browser (e.g. input email/password, redirect back to Actions/Rules, etc.) will result in either:
A redirect to the associated application’s default login route to reinitiate the flow as a new login transaction, or
An error page if the default login route is not configured.
Deprecated: July 12, 2023End of life: January 17, 2024We are improving scope evaluation during exchange to ensure that unregistered scopes cannot be requested. Custom scope values not registered against the aud or audience value (for an API registered in your tenant) are considered unregistered scopes.With this change, the API scope evaluation will include any custom scopes requested during user authentication or injected through extensibility, such as Rules. This evaluation will validate that all scopes are registered, returning an error if any are not registered.
auth0-cordova, angular-auth0, and express-oauth2-bearer Repo Deprecations
Deprecated: April 27, 2023End of life: June 30, 2023 (express-oauth2-bearer), October 27, 2023 (angular-auth0 and auth0-cordova)We have deprecated the following repos:
These libraries will no longer be supported. Please remove these libraries from any active projects before these dates.If you have any questions or concerns, please reach out to us on GitHub.
Target migration: Sept 11, 2023As part of our mission to support every future version of LTS Node.js through Actions, and to be in line with the Node JS developer community, we are releasing Node 18 while Node 16 is still in Active LTS. We urge all customers to transition today to Node 18 and make the most of its LTS. Remember, while Node 16 LTS remains available until September, their use may involve certain risks following the conclusion of LTS and we recommend you to update to Node 18.Node.js 18 is now generally available (GA) across our entire suite of extensibility offerings. This includes Actions, Rules, Hooks, Database Scripts, and Custom Social Connections. We strongly encourage everyone to update to Node 18 by Sept 11, 2023, to adhere to best code security practices.
Deprecated: December 21, 2022End of life: June 21, 2023After June 21, 2023, Auth0 will no longer support running .NET and C# from Node.js in Extensibility features. Auth0 previously supported a subset of the C# language to write extensibility code for Rules, Hooks, and Custom Database Scripts via a Node.js module called edge.js.Deprecating support for running .NET and C# from Node.js in Extensibility is critical to maintaining a performant and secure platform for running untrusted code. This change will allow us to continue improving our next-generation Extensibility offerings.
To learn more, read Migrate from edge.js extensibility features.
Deprecated: December 21, 2022End of life: June 21, 2023Auth0 will no longer support the auth0-claims-provider add-on for Sharepoint 2010/2013 after July 31, 2023.After June 21, 2023, Auth0 will no longer support connecting to Oracle Databases from Node.js in Extensibility features. Auth0 previously supported connecting to Oracle Databases from extensibility code for Rules, Hooks, and Custom Database Scripts via a Node.js module called oracledb.Deprecating support for connecting to Oracle Databases from Node.js in Extensibility is critical to maintaining a performant and secure platform for running untrusted code. This change will allow us to continue improving our next-generation Extensibility offerings.To learn more, read Migrate from oracledb extensibility features.
Deprecated: January 31, 2023End of life: July 31, 2023Auth0 will no longer support the auth0-claims-provider add-on for Sharepoint 2010/2013 after July 31, 2023. Without this add-on, you won’t be able to use the “Sharepoint People Picker” with Auth0 connections to assign permissions to Sharepoint 2010/2013 users.You must remove any integrations with the auth0-claims-provider add-on before July 31, 2023. After that date, any remaining integrations with the auth0-claims-provider add-on will cease to function properly and may impact users of your applications.
Deprecated: November 9, 2022End of life: May 9, 2023To improve performance, the Get Role Users Management API endpoint will only return greater than 1,000 total results if the checkpoint pagination method is used. This pagination method is optimized to support large quantities of results. The offset pagination method will be capped at 1,000 results.For implementation details for the two pagination methods, read the Management API documentation for the Get Role Users endpoint.
Deprecated: July 28, 2022 (Public Cloud), August 31, 2022 (Private Cloud)End of life: January 30, 2023 (Public Cloud), April 18, 2023 (Private Cloud)Beginning January 30, 2023 in Public Cloud and April 18, 2023 in Private Cloud, Auth0 will allow the addition of non-namespaced custom claims to tokens using Auth0 Actions and in responses from the Authentication API /userinfo endpoint. Previously, Auth0 allowed namespaced claims on access and via extensibility code (Rules / Hooks / Actions). The migration to custom claims allows private, non-namespaced custom claims and OIDC user profile claims to be added to ; ID tokens currently support user profile claims and will additionally support private, non-namespaced custom claims. These claims will also be added to the Auth0 /userinfo response. To begin the migration, read the Custom Claims Migration Guide.If your tenant is running extensibility code (Rules / Hooks / Actions) that tries to set non-namespaced custom claims that are being ignored until this deprecation, then those claims will begin to appear on the tokens and the /userinfo response. We recommend you review your configuration and Auth0 logs.With the addition of non-namespaced, private claims, Auth0 is enforcing the following restrictions that could potentially affect your tenant:
Auth0 will restrict the custom claims payload to a maximum of 100KB.
Auth0 will restrict the customization/modification of standard claims or claims used internally by Auth0.
In the future, Auth0 may restrict the use of other claims not included in the above list. In those cases, customers will be notified with a reasonable time to migrate.
Auth0 will restrict the creation of private, non-namespaced custom claims on access tokens with an Auth0 , excluding the /userinfo endpoint.
Only specified OIDC user profile claims can be added to access tokens.
Auth0 will restrict creating a custom claim starting with a $ character.
Deprecated: June 13, 2022End of life: January 31, 2023We’re making improvements to the underlying infrastructure that supports Auth0 Private Cloud by introducing a modern Kubernetes-based technology stack, as well as database upgrades. We are currently working with all Auth0 Private Cloud customers to schedule the upgrade of their private cloud deployment to the new infrastructure stack during the course of this year, and will be discontinuing the older stack by January 31, 2023.In addition, 2205 (May 2022 release) is the last official release for the legacy Private Cloud platform. Any bugs or security vulnerabilities will be assessed and addressed in patch releases as necessary. Prior to upgrading to the new infrastructure stack, environments will need to be updated to the minimum compatible version to support the upgrade efforts.Please reach out to your Technical Account Manager with any questions.
Deprecated: May 4, 2022 (Public Cloud), June 9, 2022 (Private Cloud release 2205)End of life: May 2, 2023 (Public Cloud), January 6, 2023 (Private Cloud)Beginning May 4, 2022, in Public Cloud and June 9th, 2022, in Private Cloud, the following Auth0 Log Extensions will be deprecated:
Auth0 Authentication API Webhooks
Auth0 Management API Webhooks
Logs to Cloudwatch
Logs to Logentries
Logs to Loggly
Logs to Logstash
Logs to Papertrail
Logs to Splunk
Logs to Sumo Logic
Deprecated: November 2, 2022 (Public Cloud), December 21, 2022 (Private Cloud)End of life: May 2, 2023 (Public Cloud), May 31, 2023 (Private Cloud)Beginning November 2, 2022 in Public Cloud and December 21, 2022 in Private Cloud, the following Auth0 Log Extensions will be deprecated:
Logs to Segment
Logs to Mixpanel
Logs to AppInsights
Logs to Azure Blob Storage
All the Log extensions listed above are now deprecated. You can set up equivalent functionality using log event streams or integrations on the Auth0 Marketplace. On November 2, 2022 in Public Cloud and December 21, 2022 in Private Cloud, Auth0 will no longer support the installed log extensions from the list above. For more information, read Migrate from Log Extensions.
Deprecated: December 9, 2021 and December, 2021 (Private Cloud Release 2112.2)End of life: June 9, 2022 and September 9, 2022 (Private Cloud)As of June 9, 2022 in Public Cloud and September 9, 2022 in Private Cloud, Auth0 will increase the security of API calls by adding a validation step for tenant hostnames to the Authentication API’s identification process. When a call is made, the Authentication API will validate the entity identifier (eg: client_id) of the requesting tenant as well as the tenant name in the URL domain. The tenant owning the identifier must be from the same tenant in the URL domain or the request will be rejected.If your application or API calls any of the listed endpoints, you must configure your API calls to make sure the identifier of the requesting tenant and hostname are the same:
End of life: April 30, 2022On 30 Apr 2022, Node.js v12 went out of long-term support (LTS), which means that the Node.js development team no longer back-ports critical security fixes to this version. This could potentially expose your extensibility code to security vulnerabilities. Therefore, Auth0 is migrating from Node 12 to Node 16.Although the Node 16 update will not introduce any breaking changes in the Node.js standard library (Rules and Custom Database Action Scripts are affected; see the Breaking changes - Rules and Custom Database Action Scripts only section), we encourage customers on Node version 12 to stay current with Active Long-Term Support (LTS) Node versions for security and compliance purposes. Customers who are still on Node 8 are out of security compliance and must migrate to Node 16 to eliminate security risks. We removed the Node 8 runtime on 22 Feb 2022 for Public Cloud tenants and removed it in the April 2022 Private Cloud release. After these dates, tenants still set to Node 8 run the risk of a service interruption.
Opaque Access Token and Authorization Code Fixed Length
Deprecated: October 7, 2021 (Public Cloud), December 2021 (Private Cloud)End of life: April 12, 2022 (Public Cloud), June 30, 2022 (Private Cloud)Beginning April 12, 2022 in Public Cloud and with the December 2021 Private Cloud, access token and authorization codes will be issued with varied lengths to support OAuth specification RFC6749 to avoid clients making assumptions about authorization code and access token values. Currently, the access token and authorization code sizes are fixed. The current size of the authorization code is shorter than what some security practitioners recommend. Through this change, Auth0 provides a stronger code and token while also improving the performance of Auth0 systems.Customers with systems configured to rely on specific-sized authorization code and access token length must change from fixed-sized to variable-sized configurations before April 12, 2022 in Public Cloud or the June 30, 2022 Private Cloud release.
Deprecated: 15 April 2020End of life: 25 February 2022 (Public Cloud), April 2022 (Private Cloud release)Beginning 13 December 2019, Node.js v8 was no longer under long-term support (LTS). This means that critical security fixes were no longer back-ported to this version. Customers who are still on Node 8 are out of security compliance and must migrate to Node 12 to eliminate security risks. To learn more about how to migrate your tenant-level Node version from 8 to 12, read Migrate from Node.js 8 to Node.js 12.Because Node.js v12 is also going out of LTS in 2022, we also highly encourage all customers using Rules and Hooks to migrate to Actions using Node 16 as soon as possible, and before Node 12 support expires formally from the Node.js community on 30 April 2022. To learn more about required migration steps, read Migrate Rules and Hooks to Actions.
Deprecated: 05 May 2021 (Public Cloud)End of life: 03 November 2021 (Public Cloud)Auth0 legacy network edge will cease to function on Public Cloud. After 03 November 2021, Public Cloud tenants who have not completed a migration to the new Auth0 network edge will no longer receive traffic. All new are automatically created on the new network edge.
Deprecated: 21 July 2020 (Public Cloud)End of life: 26 January 2021 (Public Cloud), February 2022 (Private Cloud release)After 26 January 2021, requests to the following Management API v2 endpoints will return a maximum of 50 items for Public Cloud tenants. To retrieve more items, you must include page and per_page parameters. Beginning on 21 July 2020, Auth0 will display tenant logs and a migration toggle to help you prepare for this change.
GET /api/v2/clients
GET /api/v2/client-grants
GET /api/v2/grants
GET /api/v2/connections
GET /api/v2/device-crecentials (when the type query parameter is used)
GET /api/v2/resource-servers
GET /api/v2/rules
All Public Cloud tenants are affected that are created before 21 July 2020 and are actively calling affected endpoints without passing the per_page parameter for queries that can return more than 1 result. Tenants are not affected if they are created after 21 July 2020, are not using the affected endpoints, are using the affected endpoints and passing the per_page parameter, or are making queries that always return only 1 result. To learn more, read Migrate to Management API v2 Endpoint Paginated Queries.
Deprecated: 17 June 2021End of life: 20 December 2021To achieve consistency across all Auth0 deployments and focus on enhancing the Auth0 Custom Domain feature, we are discontinuing the Private Cloud Custom Domain capability on December 20, 2021. Consistency enables us to enhance the feature and fix reliability issues faster, improving operational efficiency and enabling customers to get value out of custom domains more quickly.
Deprecated: 25 May 2021End of life: 01 December 2021On 01 December 2021, the logout behavior will change to always redirect users to the URI passed to the Auth0 logout APIs instead of using the returnTo query parameter passed by to /login/callback during the execution of the logout. If Auth0 does not have a record of a preceding call to one of these APIs, logout will complete, but redirection will not occur and an error page will be displayed to end users. To learn more, read Logout Redirects Migration Guide.
Deprecated: 01 February 2021End of life: 30 September 2021 (Public Cloud), September 2021 (Private Cloud monthly release)Auth0 is changing the role-based access control to the Dashboard. The Application Administrator role as defined today is being deprecated. After 01 February 2021, administrators won’t be able to invite members with the deprecated Application Administrator role. Existing application-specific administrators will continue to be able to use the Dashboard with the existing permission set until the end of life date.A new set of Dashboard roles is available for improved and more secure collaboration among team members, including viewer and editor roles with limited access. A new Editor - Specific Apps role replaces the previous Application Administrator role for subscription plans where editor roles are supported.Your tenants will be affected by this deprecation if the following criteria are met:
Created before 01 February 2021
Have at least one tenant member with the Application Admin role
Haven’t opted-in to the Dashboard roles feature preview
Beginning on 01 February 2021, Auth0 will display a migration toggle to help you prepare for this change. To learn more, read Migrate to Manage Dashboard New Roles.
Deprecated: 19 January 2021End of life: 10 May 2021 (Public Cloud), June Private Cloud Release (v2106)As of 10 May 2021 for Public Cloud and the June Private Cloud Release (v2106), the Auth0 network edge will no longer accept TLS 1.0 or TLS 1.1 traffic. These legacy protocols are insecure, with well-known weaknesses and vulnerabilities within the industry. For maximum security, all Auth0 clients must upgrade to TLS 1.2 or later. The exact details and steps required will vary, depending on your application.
Deprecation: January 2018End of life: January 2021Auth0 has deprecated the use of the auth0-analytics.js library that adds Facebook and Google Analytics integration with Lock. It listens for events in Lock and passes them to the Auth0-tag-manager.js library. It may still function in some legacy cases. This library is no longer maintained. You may need to write custom code to use auth0-tag-manage.js to manage proxy requests to third-party analytics libraries such as Facebook, X, and Google.
Device credential metadata without user_id deprecation
Deprecated: 31 August 2020End of life: 17 December 2020Auth0 now requires that you provide the user_id when you use the GET /api/v2/device-credentials endpoint. If your request does not provide a user_id, it will return a 400 status code. Check the depnote in your tenant logs to see if you are affected by this deprecation.Auth0 has identified tenants affected by this deprecation and contacted the administrators for those tenants. If your tenant is currently making requests without a user_id, you should make the change as soon as possible.
Auth0 previously set the email_verified field to true in Azure AD and ADFS connections. If you used Azure AD/ADFS connections before this deprecation date, you have a tenant setting that overrides the connection setting for email verification and keeps the previous behavior.On 18 May 2021 in Public Cloud and the June Private Cloud Release (v2106), Auth0 begins using the connection-level property for all Azure AD/ADFS connections. You should make sure all your connections are configured properly before that date. To learn more, read Email Verification for Azure AD and ADFS.
Effective: February 2020Google Chrome v80 is changing the way it handles cookies. To that end, Auth0 will implement the following changes in the way it handles cookies:
Cookies without the samesite attribute set will be set to lax
Cookies with sameSite=none must be secured, otherwise they cannot be saved in the browser’s cookie jar
The goal of these changes is to improve security and help mitigate CSRF attacks. For details, see sameSite Cookie Attribute Changes.
Deprecated: 10 November 2018End of life: 30 June 2019 (Public Cloud), May 2021 (Private Cloud monthly release)For Public Cloud, User Search v2 was deprecated and you should have taken action before 30 June 2019. Notifications were sent to customers that need to complete this migration.For Private Cloud, User Search v1 and v2 endpoints will be no longer be available after the May Private Cloud monthly release and have been replaced with the new User Search v3 endpoint.
Passwordless Endpoint from Confidential Applications deprecation
Auth0 has deprecated the use of the /passwordless/start endpoint from confidential applications when Auth0 cannot authenticate that the call is made on behalf of the application. To learn more, read Migrate to Passwordless Endpoint from Confidential Applications.Clickjacking Protection for changesTo prevent clickjacking, in cases where you render your login page in an iframe, Auth0 has added an opt-in to add headers which we strongly recommend you enable. For details, see Clickjacking Protection for Universal Login Change.
Deprecation: 08 July 2017End of life: TBDAs of 08 July 2017 Auth0 has deprecated the/oauth/ro endpoint for both password and connections. You can now implement the same functionality using the /oauth/token endpoint. To learn more, read Resource Owner Password Flow Migration.
Management API v1 will reach its End of Life in the Public Cloud on 13 July 2020. Management API v1 will be included in the Private Cloud until the November 2020 monthly release, which is the first release that will not include Management API v1. You may be required to take action before that date to ensure no interruption to your service. Notifications have been and will continue to be sent to customers that need to complete this migration.
Deprecated: 05 March 2020End of life: 31 March 2020Facebook announced that on 31 March 2020 that they will turn off the Instagram legacy APIs, and they won’t provide an alternative to implement login with Instagram. For details, see Instagram Connection Deprecation.
Deprecated: 01 March 2020End of life: 01 March 2020Yahoo changed the way to retrieve the user profile and the information included in it. For details, see Yahoo API Changes.
Deprecation: 30 April 2019End of life: 30 July 2019On 30 April 2019, Facebook deprecated the use of the Social Context field for new applications. For details, see Facebook Social Context Field Deprecation.
Deprecation: 01 August 2018End of life: Graph API v3 released 08 January 2019As of 01 August 2018, Facebook has changed the Facebook Graph API permissions and fields that can be requested. Auth0 has updated Facebook Connections to reflect these changes and modified the connection interface for clarity. See Facebook Login Changelog: Recent Changes to Facebook Login for complete details and key dates. For details, see Facebook Graph API Changes.
We are continually improving the security of our service. As part of this effort, we have deprecated the Legacy Lock API, which consists of the /usernamepassword/login and /ssodata endpoints. These endpoints are used by Lock.js v8, v9, and v10 and Auth0.js, v6, v7, and v8, and can also be called directly from applications.As of August 6, 2018, Auth0 has permanently disabled the Legacy Lock API. This removal of service fully mitigates the CSRF vulnerability disclosed in April 2018. This also ends the soft removal grace period that was first announced on 16 July 2018, meaning the Legacy Lock API can no longer be re-enabled.If your Legacy Lock API migration has not yet been completed, your users may experience an outage, failed logins, or other adverse effects. You will need to complete your migration in order to restore normal functionality. Check deprecation errors to identify the source(s) of any errors in your tenant logs related to deprecations.
If you are currently implementing login in your application with Lock v8, v9, or v10, or Auth0.js v6, v7, or v8, you are affected by these changes. Additionally, you are affected if your application calls the /usernamepassword/login or /ssodata endpoints directly via the API.We recommend that applications using Universal Login update the library versions they use inside of the login page.However, those who are using Lock or Auth0.js embedded within their applications, or are calling the affected API endpoints directly, are required to update, and applications which still use deprecated endpoints will cease to function properly after the removal of service date.Libraries and SDKs not explicitly named here are not affected by this migration.
Professional (former Developer Pro): 20 August 2019
Enterprise: 04 November 2019
To provide our customers with the most reliable and scalable solution, Auth0 has deprecated Tenant Logs Search Engine v2 in favor of v3. Auth0 is proactively migrating customers unaffected by this change, while those who are potentially affected are being notified to opt in for v3 during the provided grace period. For details, see Migrate to Tenant Log Search v1 to V2.
As of 30 September 2017, Auth0 updated its cloud environments and traffic from Australia originates from new IP addresses. If you are allowlisting IP addresses, you will need to add the new addresses to your firewall rules.
If you are using a custom database connection, rule, and/or custom email provider that connects to your environment, and you have implemented firewall restrictions for IP address ranges, then you are affected by this change. You will need to make sure the following IP addresses are allowed to go through your firewall:13.55.232.24, 13.54.254.182, 13.210.52.131, 52.62.91.160, 52.63.36.78, 52.64.84.177, 52.64.111.197, 52.64.120.184, 54.66.205.24, 54.79.46.4, 54.153.131.0
As of 30 September 2017, Auth0 updated its cloud environments and traffic from Europe originates from new IP addresses. If you are allowlisting IP addresses, you will need to add the new addresses to your firewall rules.
If you are using a custom database connection, rule, and/or custom email provider that connects to your environment, and you have implemented firewall restrictions for IP address ranges, then you are affected by this change. You will need to make sure the following IP addresses are allowed to go through your firewall:34.253.4.94, 35.156.51.163, 35.157.221.52, 52.16.193.66, 52.16.224.164, 52.28.45.240, 52.28.56.226, 52.28.184.187, 52.28.212.16, 52.29.176.99, 52.50.106.250, 52.57.230.214, 52.211.56.181, 52.213.216.142, 52.213.38.246, 52.213.74.69
CDN provider migration in the Europe and Australia environments
As of 12 July 2017, Auth0 has improved the Auth0 CDN scaling and availability. We now use Amazon CloudFront. We have already made this change in the US environment, and are now ready to do so in Europe and Australia.
You are affected if you use Lock (hosted by our CDN) in Europe or Australia. This change shouldn’t cause any disruption or change in behavior in your applications, so you don’t have to do anything. This notification is for information only.
Password and refresh token exchange rules migration
On 31 May 2017, as part of Auth0’s efforts to improve security, we added the ability to execute rules during the Password Grant exchange (the password exchange) and the refresh token exchange.
You are using this feature if you are calling the /oauth/token endpoint of our Authentication API with grant_type = "password" , grant_type = "http://auth0.com/oauth/grant-type/password-realm", or grant_type = "refresh_token".You could be impacted if you are currently using these exchanges and have rules defined in Dashboard. In order to ensure a smooth transition, we have disabled the rules execution on these specific exchanges for your tenant. These rules will now execute for all new customers, as well as customers who have not yet used these exchanges.You can add logic to your rules to alter their behavior for these exchanges by checking the context.protocol property:
oauth2-password indicates the password (and password-realm) exchange
oauth2-refresh-token indicates the Refresh Token exchange
If you would like to enable the new behavior on this tenant for testing before the mandatory opt-in date, login to Dashboard and enable the Run Rules on Password and Refresh Token Exchanges toggle in Tenant Settings > Advanced.
On 01 March 2017, as part of Auth0’s efforts to improve security and standards compliance, we stopped supporting account linking as part of the authorization callback (that is, accepting an access token as part of the authorize call).
If you received an email notification about it, then you are impacted by this change. As you work to update your applications to use the Management API to link accounts, you can check if you are still impacted, by checking your tenant logs for warnings. These entries will be logged if you are sending an Access Token in your authorize calls.
As of 20 February 2017, Auth0 expanded into new US regions and traffic originating from these regions will have new IP addresses. If you allowlist IP addresses you will need to add the new addresses to your firewall rules.
If you are using a custom database connection, rule, and/or custom email provider that connects to your environment, and you have implemented firewall restrictions for IP address ranges, then you are affected by this change. You will need to add the following IP addresses to your firewall rules:138.91.154.99, 54.183.64.135, 54.67.77.38, 54.67.15.170,54.183.204.205, 54.173.21.107, 54.85.173.28, 35.167.74.121, 35.160.3.103,35.166.202.113, 52.14.40.253,52.14.38.78, 52.14.17.114, 52.71.209.77, 34.195.142.251, 52.200.94.42
Prior to 01 February 2017, Auth0’s password reset flow allowed a user to enter their email and a new password. This triggered a confirmation email that to be sent to the user asking them to confirm that they requested a password reset.
The issue is that the confirmation link could be inadvertently clicked by a user which would result in the user’s password being changed by an attacker.Lock version 9 and above uses the new password reset flow exclusively. Lock 8 and below does not handle the new password reset flow. We strongly recommend upgrading to Lock 9 or greater as soon as possible.
Even if you are not using Lock, the vulnerable reset flow can be accessed directly through the API. (See the /dbconnections/change_password endpoint for details.) Auth0 strongly encourages you to change any app using the current flow to move immediately to the new reset flow and enable this migration.
As of 06 December 2016, when a redirect is done from an Auth0 rule, Auth0 generates and sends a state parameter in HTTP and check for a valid state parameter when flow returns to the /continue endpoint. The site to which the redirect goes has to capture the value of the state parameter and return it by adding it as a parameter when returning to the /continue endpoint.
Prior to 13 September 2016, the previous endpoint for deleting all users was DELETE /api/v2/users. This is similar to the endpoint to delete one user: DELETE /api/v2/users. To prevent accidental requests to the delete all users endpoint, the url has been changed to DELETE /api/v2/allusers. This should ensure that only intentional calls to this endpoint get made.
You are affected by the change only if you currently make use of the delete all users endpoint. If so, the only change you need to make is to change the URL as explained above.
As of 29 August 2016, Auth0’s built-in email provider is longer be supported for use in a production environment. The emails sent using the Auth0 provider will no longer be customizable. They will be restricted to the template and you will not be able to change the from address or subject line.The built-in email service may still be used for test purposes but you must switch to an Auth0-supported third-party service (Amazon SES, Mailchimp, SendGrid or another SMTP-based provider before moving your apps to production. If you already use a custom email provider, no action is necessary.
Identity provider access tokens removed from user profile and ID token
As of 08 August 2016, the format of the user profile JSON object (ID token) that is returned by Auth0 Authentication APIs changed to remove the identity provider access token and included in the user profile identities array.To obtain a user’s identity provider access token, you will need to make an HTTP GET call to the /api/v2/users/{user-id} endpoint containing an API token generated with read:user_idp_tokens scope. You will still have access to the identity provider access token in the user argument in Auth0 rules.
You are affected by the change only if you are using the Identity Provider Access Token (identities[0].access_token in the user profile) outside of rules to call other services from the Identity Provider (such as Facebook Graph API, Google APIs, etc.). If your tenant was created after the change the update will be done automatically.
As of 01 June 2016, when calling the Tokeninfo endpoint, the URL of the API call (for example https://{yourDomain}/) must match the value of the iss attribute of the ID Token being validated. If these values do not match, the response will be HTTP 400 - Bad Request.
If you are calling the Tokeninfo endpoint directly, make sure that the value of the iss attribute of the ID Token being validated matches your Auth0 tenant namespace: https://{yourDomain}/. You can use jwt.io to decode the token to confirm the iss attribute value.
On 27 April 2016, Auth0’s built-in email provider started sending all emails from a predefined from address (no-reply@auth0user.net). Custom Email Providers are now free. To customize the “from” address, you can switch to an Auth0-supported third-party service (Amazon SES, Mailchimp, SendGrid) or another SMTP-based provider. If you already use a custom email provider, nothing will change.
Patch and Post endpoints no longer accept secret_encoded flag
The jwt_configuration.secret_encoded configuration is no longer accepted by the PATCH and POST applications endpoints.In order to further comply with the OIDC specification, Auth0 will no longer generate or accept base64 encoded application secrets for new applications.Existing applications with encoded secrets stored will remain intact and unchanged, but new applications will no longer use base64 encoding. The secret_encoded flag is no longer accepted or necessary, as a result.
You are affected by this change only if you interact with these endpoints directly.
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Auth0 Docs","description":"Auth0 documentation","colors":{"primary":"#9921FE","light":"#BC6DFF","dark":"#343434"},"logo":{"light":"https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/logo/light.svg","dark":"https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/logo/dark.svg","href":"https://auth0.com/docs/"},"favicon":"https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/logo/favicon.svg","api":{"params":{"post":["x-release-lifecycle"]},"playground":{"proxy":false},"url":"full"},"background":{"decoration":"gradient"},"seo":{"metatags":{"canonical":"https://auth0.com","og:image":"docs/images/share-image.png"}},"fonts":{"body":{"family":"Inter","source":"https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900\u0026display=swap","format":"woff2"}},"styling":{"eyebrows":"breadcrumbs","latex":true},"integrations":{"adobe":{"launchUrl":"https://assets.adobedtm.com/6bb3f7663515/7006851c9849/launch-af624fe9e34f.min.js"},"gtm":{"tagId":"GTM-W7FRLJ"},"heap":{"appId":"1279799279"},"onetrust":{"domainScript":"96e22fd8-d619-4cdd-a3c6-d51529d21faf","categoryId":"C0002","scriptSource":"https://cdn.cookielaw.org/scripttemplates/otSDKStub.js"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"navigation":{"languages":[{"language":"en","footer":{"socials":{"x-twitter":"https://x.com/auth0","github":"https://github.com/auth0","linkedin":"https://www.linkedin.com/company/auth0"},"links":[{"header":"Developers","items":[{"label":"Developer Hub","href":"https://developer.auth0.com"},{"label":"Code Samples \u0026 Guides","href":"https://developer.auth0.com/resources"},{"label":"Zero Index Newsletter","href":"https://auth0.com/blog/newsletter"},{"label":"Blog","href":"https://auth0.com/blog"},{"label":"Changelog","href":"https://auth0.com/changelog"}]},{"header":"Docs","items":[{"label":"Documentation","href":"https://auth0.com/docs"},{"label":"Quickstarts","href":"https://auth0.com/docs/quickstarts"},{"label":"APIs","href":"https://auth0.com/docs/api"},{"label":"SDK Libraries","href":"https://auth0.com/docs/libraries"},{"label":"Learn","href":"https://auth0.com/learn"},{"label":"Intro to IAM (CIAM)","href":"https://auth0.com/intro-to-iam"},{"label":"Reports","href":"https://auth0.com/resources/whitepapers"},{"label":"Webinars","href":"https://auth0.com/resources/webinars"}]},{"header":"Support Center","items":[{"label":"Community","href":"https://community.auth0.com"},{"label":"Help","href":"https://support.auth0.com"},{"label":"FAQs","href":"https://auth0.com/docs/troubleshoot"},{"label":"Auth0","href":"https://auth0.com"}]},{"header":"Company","items":[{"label":"Our Customers","href":"https://auth0.com/customers"},{"label":"Compliance","href":"https://auth0.com/security"},{"label":"Partners","href":"https://auth0.com/partners"},{"label":"Careers","href":"https://www.okta.com/company/careers"},{"label":"Okta + Auth0","href":"https://www.okta.com/okta-and-auth0"},{"label":"About us","href":"https://auth0.com/about"}]}]},"href":"docs/get-started"},{"language":"fr-ca","footer":{"socials":{"x-twitter":"https://x.com/auth0","github":"https://github.com/auth0","linkedin":"https://www.linkedin.com/company/auth0"},"links":[{"header":"Développeurs","items":[{"label":"Espace développeurs","href":"https://developer.auth0.com"},{"label":"Exemples de code et guides","href":"https://developer.auth0.com/resources"},{"label":"Infolettre Zero Index","href":"https://auth0.com/blog/newsletter"},{"label":"Blogue","href":"https://auth0.com/blog"},{"label":"Journal des modifications","href":"https://auth0.com/changelog"}]},{"header":"Documentation","items":[{"label":"Documentation","href":"https://auth0.com/docs"},{"label":"Guides de démarrage rapide","href":"https://auth0.com/docs/quickstarts"},{"label":"API","href":"https://auth0.com/docs/api"},{"label":"Bibliothèques SDK","href":"https://auth0.com/docs/libraries"},{"label":"Apprendre","href":"https://auth0.com/learn"},{"label":"Introduction à l’IAM (CIAM)","href":"https://auth0.com/intro-to-iam"},{"label":"Rapports","href":"https://auth0.com/resources/whitepapers"},{"label":"Webinaires","href":"https://auth0.com/resources/webinars"}]},{"header":"Centre d’assistance","items":[{"label":"Communauté","href":"https://community.auth0.com"},{"label":"Aide","href":"https://support.auth0.com"},{"label":"Foire aux questions","href":"https://auth0.com/docs/troubleshoot"},{"label":"Auth0","href":"https://auth0.com"}]},{"header":"Entreprise","items":[{"label":"Nos clients","href":"https://auth0.com/customers"},{"label":"Conformité","href":"https://auth0.com/security"},{"label":"Partenaires","href":"https://auth0.com/partners"},{"label":"Carrières","href":"https://www.okta.com/company/careers"},{"label":"Okta + Auth0","href":"https://www.okta.com/okta-and-auth0"},{"label":"À propos de nous","href":"https://auth0.com/about"}]}]},"href":"docs/fr-ca/get-started"},{"language":"ja-jp","footer":{"socials":{"x-twitter":"https://x.com/auth0","github":"https://github.com/auth0","linkedin":"https://www.linkedin.com/company/auth0"},"links":[{"header":"開発者向け","items":[{"label":"開発者ハブ","href":"https://developer.auth0.com"},{"label":"コードサンプルとガイド","href":"https://developer.auth0.com/resources"},{"label":"Zero Index Newsletter","href":"https://auth0.com/blog/newsletter"},{"label":"ブログ","href":"https://auth0.com/blog"},{"label":"変更履歴","href":"https://auth0.com/changelog"}]},{"header":"ドキュメント","items":[{"label":"ドキュメント","href":"https://auth0.com/docs"},{"label":"クイックスタート","href":"https://auth0.com/docs/quickstarts"},{"label":"API","href":"https://auth0.com/docs/api"},{"label":"SDKライブラリ","href":"https://auth0.com/docs/libraries"},{"label":"教育","href":"https://auth0.com/learn"},{"label":"IAM(CIAM)入門","href":"https://auth0.com/intro-to-iam"},{"label":"レポート","href":"https://auth0.com/resources/whitepapers"},{"label":"ウェビナー","href":"https://auth0.com/resources/webinars"}]},{"header":"サポートセンター","items":[{"label":"コミュニティ","href":"https://community.auth0.com"},{"label":"ヘルプ","href":"https://support.auth0.com"},{"label":"よくある質問","href":"https://auth0.com/docs/troubleshoot"},{"label":"Auth0","href":"https://auth0.com"}]},{"header":"会社情報","items":[{"label":"導入企業","href":"https://auth0.com/customers"},{"label":"コンプライアンス","href":"https://auth0.com/security"},{"label":"パートナー","href":"https://auth0.com/partners"},{"label":"採用情報","href":"https://www.okta.com/company/careers"},{"label":"Okta + Auth0","href":"https://www.okta.com/okta-and-auth0"},{"label":"私たちについて","href":"https://auth0.com/about"}]}]},"href":"docs/ja-jp/get-started"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"auth0","hasAudioNarration":false,"actualSubdomain":"auth0","customDomains":["auth0.com","auth0.auth0-mintlify.app"],"gitSource":{"type":"github","owner":"atko-cic","repo":"docs","deployBranch":"main","contentDirectory":"main","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true,"contextualFeedback":{"textInputOnly":true,"allowEmail":false},"agentFeedback":false},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6af626113e877a418253f0cc","clientVersion":"0.0.4124","searchFilterCounts":[{"language":"en","tag":"Dev Tools","count":846},{"language":"fr-ca","tag":"Outils de développement","count":846},{"language":"ja-jp","tag":"開発者ツール","count":846},{"language":"en","tag":"APIs","count":622},{"language":"fr-ca","tag":"API","count":622},{"language":"ja-jp","tag":"API","count":622},{"language":"en","tag":"Management API","count":490},{"language":"fr-ca","tag":"API Management","count":490},{"language":"ja-jp","tag":"Management API","count":490},{"language":"en","tag":"Get Started","count":289},{"language":"ja-jp","tag":"はじめに","count":289},{"language":"fr-ca","tag":"Pour commencer","count":279},{"language":"ja-jp","tag":"リファレンス","count":253},{"language":"en","tag":"Reference","count":252},{"language":"fr-ca","tag":"Référence","count":252},{"language":"en","tag":"Extend","count":216},{"language":"fr-ca","tag":"Étendre","count":216},{"language":"ja-jp","tag":"拡張","count":216},{"language":"en","tag":"SDKs","count":209},{"language":"fr-ca","tag":"SDK","count":209},{"language":"ja-jp","tag":"SDK","count":209},{"language":"en","tag":"Monitor","count":194},{"language":"fr-ca","tag":"Surveiller","count":194},{"language":"ja-jp","tag":"監視","count":194},{"language":"en","tag":"Authenticate","count":186},{"language":"fr-ca","tag":"Authentifier","count":186},{"language":"ja-jp","tag":"認証","count":186},{"language":"en","tag":"Tenant Log Event Types","count":171},{"language":"fr-ca","tag":"Types d’événements du journal du locataire","count":171},{"language":"ja-jp","tag":"テナントのログイベントの種類","count":171}],"searchSettings":{"showContentSnippets":true}},"assistantConfig":{"enableAskAiButton":true,"enableStarterQuestions":false,"enableAskAiSearchBar":false,"deflection":{"enabled":false,"type":"link"}},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"ui/css/recipe.css","content":"#content-area:has(.recipe-container){overflow:visible!important}.recipe-content .recipe-section:first-of-type{margin-top:1rem}.active-section{opacity:1!important}"},{"filePath":"ui/css/styles.css","content":"@font-face{font-family:\"Inter Fallback\";src:local(\"Arial\");size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}body{font-feature-settings:\"kern\", \"liga\", \"clig\", \"calt\", \"rvrn\";font-family:\"Inter\",\n \"Inter Fallback\",\n system-ui,\n -apple-system,\n sans-serif}.mdx-content{line-height:1.625}#page-title{font-size:var(--text-3xl);line-height:1.15}.mdx-content .link{font-weight:inherit;border:none;text-decoration:underline;text-underline-offset:2px;transition:opacity 0.15s ease-out;color:rgb(var(--primary));\u0026.quickstart_button{text-decoration:none}}.mdx-content .link:hover{color:rgb(var(--tw-prose-links))}.dark .mdx-content .link:hover{color:rgb(var(--primary))}.mdx-content table{border-radius:12px;border:0px;box-shadow:0 0 0 1px rgb(from var(--border-muted) r g b / 50%);overflow:hidden;thead {\n background-color: rgb(from var(--border-muted) r g b / 30%);\n }\n\n th, td {\n padding: 0.5rem;\n }\n\n /* Don't break mid-word in code formatting. */\n code {\n white-space: pre;\n }}img.icon.inline{margin:0}#navbar{padding-bottom:0.5rem;box-shadow:0 0 0 1px oklch(from var(--border) l c h / 0.1),\n 0 1px 1px -1px oklch(from var(--shadow) l c h / 0.06),\n 0 2px 2px -2px oklch(from var(--shadow) l c h / 0.06),\n 0 2px 4px -2px oklch(from var(--shadow) l c h / 0.06);> div:nth-child(2) {\n -webkit-backdrop-filter: blur(20px);\n backdrop-filter: blur(20px);\n transition:\n background-color 0.2s ease,\n backdrop-filter 0.2s ease;\n }\n\n /* This data attribute is set by the navbar controller */\n \u0026[data-is-opaque=\"true\"] > div:nth-child(2) {\n background-color: oklch(from var(--bg) l c h / 1);\n }}body:has([data-uc-component] [data-slot=\"dialog-content\"]) #navbar>div:first-child{border-bottom-color:transparent}body[data-scroll-locked]:has([data-uc-component] [data-slot=\"dialog-content\"]){margin-right:0!important}#adu-root{transition:opacity 0.2s ease,\n visibility 0s linear 0s}body:has([data-uc-component] [data-slot=\"dialog-content\"]) #adu-root{opacity:0;visibility:hidden;transition:opacity 0.2s ease,\n visibility 0s linear 0.2s}.nav-tabs{column-gap:0}.nav-tabs-item{padding:0.25rem 0.75rem;text-shadow:none;div.bottom-0 {\n display: none;\n }}.nav-tabs-item[data-active]{color:rgb(var(--primary))}.dark .nav-tabs-item[data-active]{color:rgb(var(--primary-light))}.nav-tabs-item:hover{color:rgb(var(--primary));background-color:rgb(var(--primary) / .1);transition:all 0.15s ease-out;border-radius:0.75rem}#sidebar-content{border-color:transparent}#sidebar-content{a,\n button {\n text-shadow: none;\n }}.card{transition:all 0.15s ease}.libraries_card{border:1px solid var(--border-muted);\u0026:hover{border-color:var(--border)}img {\n margin: 0;\n }\n\n .libraries_card_divider {\n border-top: 1px solid var(--border-muted);\n margin: 0 1rem;\n }}.api_card_wrapper .card{background-color:transparent;color:var(--foreground-card);[data-component-part=\"card-title\"],\n #card-link-arrow-icon {\n transition: all .15s ease-out;\n color: currentColor;\n }\n\n /* Accent on hover */\n \u0026:hover {\n color: var(--foreground-selected);\n }\n\n /* Use only bottom border */\n border: 0;border-radius:0;border-bottom:3px solid currentColor!important;margin-bottom:1rem;[data-component-part=\"card-content-container\"] {\n padding: 1.25rem 0 0.5rem;\n }\n\n /* Right-align the absolute positioning for the icon */\n #card-link-arrow-icon {\n right: 0;\n }}[data-component-part=\"field-meta-post\"]{background-color:lab(91.896% .077188 -6.94053);color:lab(36.091% 25.9241 -68.0384)}.dark [data-component-part=\"field-meta-post\"]{background-color:lab(16.0426% 6.71726 -27.2409);color:lab(72.6029% 4.08953 -41.9669)}body:has([data-uc-component] [data-slot=\"dialog-overlay\"]) [data-assistant-bar]{visibility:hidden}"},{"filePath":"ui/css/apiExplorer.css","content":"#header{.prose {\n p {\n font-size: 0.875rem;\n }\n }\n\n /* Code block styling — light mode */\n \u0026 pre {\n background-color: #f6f8fa !important;\n border: 1px solid #d0d7de;\n border-radius: 1rem;\n }\n\n \u0026 pre code {\n font-size: 0.75rem;\n background-color: transparent !important;\n }\n\n \u0026 code:not(pre > code) {\n font-size: 0.75rem;\n background-color: #f0f2f4;\n border: 1px solid #d0d7de;\n border-radius: 0.375rem;\n }\n\n /* docs/api/management/v2/clients/update-a-client\n docs/api/management/v2/clients/create-a-client\n docs/api/management/v2/logs/search-log-events */\n \u0026 li {\n font-size: 0.75rem;\n }\n\n \u0026 li::before {\n top: 0.75rem;\n }\n\n /* Code block styling — dark mode */\n /* :is(html.dark) \u0026 pre compiles to: html.dark #header pre */\n :is(html.dark, html[data-appearance=\"dark\"], html[data-theme=\"dark\"]) \u0026 pre {\n background-color: #13141a !important;\n border-color: #2d2f3e !important;\n }\n\n :is(html.dark, html[data-appearance=\"dark\"], html[data-theme=\"dark\"])\n \u0026\n pre\n code {\n background-color: transparent !important;\n }\n\n :is(html.dark, html[data-appearance=\"dark\"], html[data-theme=\"dark\"])\n \u0026\n code:not(pre > code) {\n background-color: #1e1f2b !important;\n border-color: #2d2f3e !important;\n }}.primitive-param-field{font-size:0.875rem;.prose,\n .prose :where(*) {\n font-size: 0.875rem;\n }}.array-param-field{font-size:0.875rem;.prose,\n .prose :where(*) {\n font-size: 0.875rem;\n }}.object-param-field{font-size:0.875rem;.prose,\n .prose :where(*) {\n font-size: 0.875rem;\n }}.api-section-heading-subtitle{font-size:0.875rem;.prose,\n .prose :where(*) {\n font-size: 0.875rem;\n }}svg[style*=\"/zsh.svg\"]{-webkit-mask-image:url(\"/docs/images/auth0-cli.svg\")!important;mask-image:url(\"/docs/images/auth0-cli.svg\")!important}"},{"filePath":"ui/auth0-docs-ui-1.10.0.css","content":"@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-ease:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--adu-font-sans:ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--adu-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--adu-color-blue-500:oklch(62.3% .214 259.815);--adu-color-white:#fff;--adu-spacing:.25rem;--adu-text-xs--line-height:calc(1/.75);--adu-text-sm--line-height:calc(1.25/.875);--adu-text-base--line-height: 1.5 ;--adu-text-lg--line-height:calc(1.75/1.125);--adu-text-xl--line-height:calc(1.75/1.25);--adu-text-2xl--line-height:calc(2/1.5);--adu-text-3xl--line-height: 1.2 ;--adu-tracking-widest:.1em;--adu-ease-in-out:cubic-bezier(.4,0,.2,1);--adu-animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1) infinite;--adu-default-transition-duration:.15s;--adu-default-transition-timing-function:cubic-bezier(.4,0,.2,1);--adu-default-font-family:var(--adu-font-sans);--adu-default-mono-font-family:var(--adu-font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--adu-default-font-family,ui-sans-serif,system-ui,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\");font-feature-settings:var(--adu-default-font-feature-settings,normal);font-variation-settings:var(--adu-default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--adu-default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace);font-feature-settings:var(--adu-default-mono-font-feature-settings,normal);font-variation-settings:var(--adu-default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--color-border);outline-color:var(--color-ring)}@supports (color:color-mix(in lab,red,red)){*{outline-color:color-mix(in srgb,var(--color-ring) 50%,transparent)}}body{background-color:var(--color-background);color:var(--color-foreground);text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-synthesis:style;font-feature-settings:\"kern\",\"liga\",\"clig\",\"calt\",\"rvrn\"}}@layer components;@layer utilities{.adu\\:\\@container\\/card-header{container:card-header/inline-size}.adu\\:pointer-events-none{pointer-events:none}.adu\\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.adu\\:absolute{position:absolute}.adu\\:fixed{position:fixed}.adu\\:relative{position:relative}.adu\\:static{position:static}.adu\\:top-0{top:calc(var(--adu-spacing)*0)}.adu\\:right-0{right:calc(var(--adu-spacing)*0)}.adu\\:left-0{left:calc(var(--adu-spacing)*0)}.adu\\:left-2{left:calc(var(--adu-spacing)*2)}.adu\\:left-73{left:calc(var(--adu-spacing)*73)}.adu\\:z-0{z-index:0}.adu\\:z-30{z-index:30}.adu\\:z-50{z-index:50}.adu\\:z-\\[39\\]{z-index:39}.adu\\:col-start-2{grid-column-start:2}.adu\\:row-span-2{grid-row:span 2/span 2}.adu\\:row-start-1{grid-row-start:1}.adu\\:-mx-1{margin-inline:calc(var(--adu-spacing)*-1)}.adu\\:my-1{margin-block:calc(var(--adu-spacing)*1)}.adu\\:mr-2{margin-right:calc(var(--adu-spacing)*2)}.adu\\:-ml-8{margin-left:calc(var(--adu-spacing)*-8)}.adu\\:ml-2{margin-left:calc(var(--adu-spacing)*2)}.adu\\:ml-auto{margin-left:auto}.adu\\:flex{display:flex}.adu\\:grid{display:grid}.adu\\:hidden{display:none}.adu\\:inline-block{display:inline-block}.adu\\:inline-flex{display:inline-flex}.adu\\:aspect-square{aspect-ratio:1}.adu\\:size-2{width:calc(var(--adu-spacing)*2);height:calc(var(--adu-spacing)*2)}.adu\\:size-3\\.5{width:calc(var(--adu-spacing)*3.5);height:calc(var(--adu-spacing)*3.5)}.adu\\:size-4{width:calc(var(--adu-spacing)*4);height:calc(var(--adu-spacing)*4)}.adu\\:size-8{width:calc(var(--adu-spacing)*8);height:calc(var(--adu-spacing)*8)}.adu\\:size-9{width:calc(var(--adu-spacing)*9);height:calc(var(--adu-spacing)*9)}.adu\\:size-full{width:100%;height:100%}.adu\\:h-4{height:calc(var(--adu-spacing)*4)}.adu\\:h-8{height:calc(var(--adu-spacing)*8)}.adu\\:h-9{height:calc(var(--adu-spacing)*9)}.adu\\:h-10{height:calc(var(--adu-spacing)*10)}.adu\\:h-14{height:calc(var(--adu-spacing)*14)}.adu\\:h-\\[18px\\]{height:18px}.adu\\:h-px{height:1px}.adu\\:max-h-\\(--radix-dropdown-menu-content-available-height\\){max-height:var(--radix-dropdown-menu-content-available-height)}.adu\\:max-h-72\\.5{max-height:calc(var(--adu-spacing)*72.5)}.adu\\:max-h-\\[calc\\(100\\%\\+2px\\)\\]{max-height:calc(100% + 2px)}.adu\\:w-4{width:calc(var(--adu-spacing)*4)}.adu\\:w-8{width:calc(var(--adu-spacing)*8)}.adu\\:w-9{width:calc(var(--adu-spacing)*9)}.adu\\:w-48{width:calc(var(--adu-spacing)*48)}.adu\\:w-73{width:calc(var(--adu-spacing)*73)}.adu\\:w-\\[24px\\]{width:24px}.adu\\:w-full{width:100%}.adu\\:min-w-\\[8rem\\]{min-width:8rem}.adu\\:flex-1{flex:1}.adu\\:shrink-0{flex-shrink:0}.adu\\:origin-\\(--radix-dropdown-menu-content-transform-origin\\){transform-origin:var(--radix-dropdown-menu-content-transform-origin)}.adu\\:animate-in{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s)) var(--tw-ease,ease) var(--tw-animation-delay,0s) var(--tw-animation-iteration-count,1) var(--tw-animation-direction,normal) var(--tw-animation-fill-mode,none)}.adu\\:animate-out{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s)) var(--tw-ease,ease) var(--tw-animation-delay,0s) var(--tw-animation-iteration-count,1) var(--tw-animation-direction,normal) var(--tw-animation-fill-mode,none)}.adu\\:animate-pulse{animation:var(--adu-animate-pulse)}.adu\\:cursor-default{cursor:default}.adu\\:auto-rows-min{grid-auto-rows:min-content}.adu\\:grid-rows-\\[auto_auto\\]{grid-template-rows:auto auto}.adu\\:flex-col{flex-direction:column}.adu\\:flex-wrap{flex-wrap:wrap}.adu\\:items-center{align-items:center}.adu\\:items-start{align-items:flex-start}.adu\\:justify-center{justify-content:center}.adu\\:gap-0{gap:calc(var(--adu-spacing)*0)}.adu\\:gap-1{gap:calc(var(--adu-spacing)*1)}.adu\\:gap-1\\.5{gap:calc(var(--adu-spacing)*1.5)}.adu\\:gap-2{gap:calc(var(--adu-spacing)*2)}.adu\\:gap-3{gap:calc(var(--adu-spacing)*3)}.adu\\:gap-4{gap:calc(var(--adu-spacing)*4)}.adu\\:gap-6{gap:calc(var(--adu-spacing)*6)}.adu\\:gap-8{gap:calc(var(--adu-spacing)*8)}.adu\\:self-start{align-self:flex-start}.adu\\:self-stretch{align-self:stretch}.adu\\:justify-self-end{justify-self:flex-end}.adu\\:overflow-auto{overflow:auto}.adu\\:overflow-hidden{overflow:hidden}.adu\\:overflow-x-hidden{overflow-x:hidden}.adu\\:overflow-y-auto{overflow-y:auto}.adu\\:rounded{border-radius:.25rem}.adu\\:rounded-full{border-radius:9999px}.adu\\:rounded-md{border-radius:.5rem}.adu\\:rounded-none{border-radius:0}.adu\\:rounded-sm{border-radius:.375rem}.adu\\:rounded-xl{border-radius:.875rem}.adu\\:border{border-style:var(--tw-border-style);border-width:1px}.adu\\:border\\!{border-style:var(--tw-border-style)!important;border-width:1px!important}.adu\\:border-border-input{border-color:var(--border-input)}.adu\\:border-border-muted{border-color:var(--border-muted)}.adu\\:bg-\\[\\#232220\\]{background-color:#232220}.adu\\:bg-blue-500{background-color:var(--adu-color-blue-500)}.adu\\:bg-border-input{background-color:var(--border-input)}.adu\\:bg-button-primary{background-color:var(--button-primary)}.adu\\:bg-card{background-color:var(--card)}.adu\\:bg-destructive{background-color:var(--destructive)}.adu\\:bg-input{background-color:var(--input)}.adu\\:bg-page{background-color:var(--page)}.adu\\:bg-popover{background-color:var(--popover)}.adu\\:bg-surface-muted{background-color:var(--surface-muted)}.adu\\:bg-surface-selected{background-color:var(--surface-selected)}.adu\\:fill-current{fill:currentColor}.adu\\:p-0{padding:calc(var(--adu-spacing)*0)}.adu\\:p-1{padding:calc(var(--adu-spacing)*1)}.adu\\:p-2\\.5{padding:calc(var(--adu-spacing)*2.5)}.adu\\:p-4{padding:calc(var(--adu-spacing)*4)}.adu\\:px-1{padding-inline:calc(var(--adu-spacing)*1)}.adu\\:px-2{padding-inline:calc(var(--adu-spacing)*2)}.adu\\:px-3{padding-inline:calc(var(--adu-spacing)*3)}.adu\\:px-4{padding-inline:calc(var(--adu-spacing)*4)}.adu\\:px-6{padding-inline:calc(var(--adu-spacing)*6)}.adu\\:py-1\\.5{padding-block:calc(var(--adu-spacing)*1.5)}.adu\\:py-2{padding-block:calc(var(--adu-spacing)*2)}.adu\\:py-3{padding-block:calc(var(--adu-spacing)*3)}.adu\\:py-6{padding-block:calc(var(--adu-spacing)*6)}.adu\\:pt-3{padding-top:calc(var(--adu-spacing)*3)}.adu\\:pr-2{padding-right:calc(var(--adu-spacing)*2)}.adu\\:pl-8{padding-left:calc(var(--adu-spacing)*8)}.adu\\:text-center{text-align:center}.adu\\:font-aeonik{font-family:Aeonik,sans-serif}.adu\\:font-inter{font-family:Inter,Inter Fallback,system-ui,-apple-system,sans-serif}.adu\\:font-roboto-mono{font-family:Roboto Mono,sans-serif}.adu\\:text-2xl{font-size:2rem;line-height:var(--tw-leading,var(--adu-text-2xl--line-height))}.adu\\:text-3xl{font-size:2.5rem;line-height:var(--tw-leading,var(--adu-text-3xl--line-height))}.adu\\:text-base{font-size:1rem;line-height:var(--tw-leading,var(--adu-text-base--line-height))}.adu\\:text-lg{font-size:1.25rem;line-height:var(--tw-leading,var(--adu-text-lg--line-height))}.adu\\:text-sm{font-size:.875rem;line-height:var(--tw-leading,var(--adu-text-sm--line-height))}.adu\\:text-sm\\!{font-size:.875rem!important;line-height:var(--tw-leading,var(--adu-text-sm--line-height))!important}.adu\\:text-xl{font-size:1.5rem;line-height:var(--tw-leading,var(--adu-text-xl--line-height))}.adu\\:text-xs{font-size:.75rem;line-height:var(--tw-leading,var(--adu-text-xs--line-height))}.adu\\:leading-1\\.5{--tw-leading:calc(var(--adu-spacing)*1.5);line-height:calc(var(--adu-spacing)*1.5)}.adu\\:leading-1\\.15{--tw-leading:1.15;line-height:1.15}.adu\\:leading-1\\.20{--tw-leading:1.2;line-height:1.2}.adu\\:leading-1\\.25{--tw-leading:1.25;line-height:1.25}.adu\\:leading-1\\.30{--tw-leading:1.3;line-height:1.3}.adu\\:leading-1\\.33{--tw-leading:1.33;line-height:1.33}.adu\\:leading-1\\.40{--tw-leading:1.4;line-height:1.4}.adu\\:leading-1\\.45{--tw-leading:1.45;line-height:1.45}.adu\\:leading-1\\.65{--tw-leading:1.65;line-height:1.65}.adu\\:leading-none{--tw-leading:1;line-height:1}.adu\\:font-medium{--tw-font-weight:500;font-weight:500}.adu\\:font-normal{--tw-font-weight:400;font-weight:400}.adu\\:font-semibold{--tw-font-weight:600;font-weight:600}.adu\\:tracking-n-2xl{--tw-tracking:-.02em;letter-spacing:-.02em}.adu\\:tracking-n-3xl{--tw-tracking:-.02125em;letter-spacing:-.02125em}.adu\\:tracking-n-5xl{--tw-tracking:-.044em;letter-spacing:-.044em}.adu\\:tracking-n-6xl{--tw-tracking:-.05em;letter-spacing:-.05em}.adu\\:tracking-n-lg{--tw-tracking:-.011em;letter-spacing:-.011em}.adu\\:tracking-n-md{--tw-tracking:-.00625em;letter-spacing:-.00625em}.adu\\:tracking-n-sm{--tw-tracking:-.006em;letter-spacing:-.006em}.adu\\:tracking-n-xl{--tw-tracking:-.01125em;letter-spacing:-.01125em}.adu\\:tracking-n-xs{--tw-tracking:-.00525em;letter-spacing:-.00525em}.adu\\:tracking-p-2xl{--tw-tracking:.0375em;letter-spacing:.0375em}.adu\\:tracking-p-lg{--tw-tracking:.011em;letter-spacing:.011em}.adu\\:tracking-p-md{--tw-tracking:.01em;letter-spacing:.01em}.adu\\:tracking-p-sm{--tw-tracking:.005em;letter-spacing:.005em}.adu\\:tracking-p-xs{--tw-tracking:.0025em;letter-spacing:.0025em}.adu\\:tracking-widest{--tw-tracking:var(--adu-tracking-widest);letter-spacing:var(--adu-tracking-widest)}.adu\\:whitespace-nowrap{white-space:nowrap}.adu\\:text-\\[\\#f4f4f4\\]{color:#f4f4f4}.adu\\:text-\\[\\#f4f4f4\\]\\!{color:#f4f4f4!important}.adu\\:text-foreground{color:var(--foreground)}.adu\\:text-foreground-bold{color:var(--foreground-bold)}.adu\\:text-foreground-icon{color:var(--foreground-icon)}.adu\\:text-foreground-inverse{color:var(--foreground-inverse)}.adu\\:text-foreground-inverse\\!{color:var(--foreground-inverse)!important}.adu\\:text-white{color:var(--adu-color-white)}.adu\\:uppercase{text-transform:uppercase}.adu\\:underline{text-decoration-line:underline}.adu\\:underline-offset-4{text-underline-offset:4px}.adu\\:underline-offset-auto{text-underline-offset:auto}.adu\\:shadow-lg{--tw-shadow:0px 12px 12px -6px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-3))),0px 6px 6px -1.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-2))),0px 4px 4px 0px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 2px 2px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 1px 1px -.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.adu\\:shadow-md{--tw-shadow:0px 6px 6px -3px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-2))),0px 4px 4px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 2px 2px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 1px 1px -.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.adu\\:shadow-sm{--tw-shadow:0px 4px 4px -2px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 2px 2px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 1px 1px -.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.adu\\:outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.adu\\:outline-hidden{outline-offset:2px;outline:2px solid #0000}}.adu\\:transition-\\[height\\]{transition-property:height;transition-timing-function:var(--tw-ease,var(--adu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--adu-default-transition-duration))}.adu\\:transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--adu-default-transition-timing-function));transition-duration:var(--tw-duration,var(--adu-default-transition-duration))}.adu\\:ease-in-out{--tw-ease:var(--adu-ease-in-out);transition-timing-function:var(--adu-ease-in-out)}.adu\\:fill-mode-both{--tw-animation-fill-mode:both;animation-fill-mode:both}.adu\\:outline-none{--tw-outline-style:none;outline-style:none}.adu\\:select-none{-webkit-user-select:none;user-select:none}.adu\\:fade-in{--tw-enter-opacity:0}.adu\\:fade-out{--tw-exit-opacity:0}.adu\\:slide-in-from-left{--tw-enter-translate-x:-100%}.adu\\:slide-in-from-right{--tw-enter-translate-x:100%}.adu\\:slide-out-to-left{--tw-exit-translate-x:-100%}.adu\\:slide-out-to-right{--tw-exit-translate-x:100%}@media (hover:hover){.adu\\:hover\\:bg-button-primary\\/90:hover{background-color:var(--button-primary)}@supports (color:color-mix(in lab,red,red)){.adu\\:hover\\:bg-button-primary\\/90:hover{background-color:color-mix(in oklab,var(--button-primary) 90%,transparent)}}.adu\\:hover\\:bg-destructive\\/90:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:hover\\:bg-destructive\\/90:hover{background-color:color-mix(in oklab,var(--destructive) 90%,transparent)}}.adu\\:hover\\:underline:hover{text-decoration-line:underline}}.adu\\:focus-visible\\:ring-\\[3px\\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.adu\\:focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:focus-visible\\:ring-destructive\\/20:focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.adu\\:focus-visible\\:outline-hidden:focus-visible{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.adu\\:focus-visible\\:outline-hidden:focus-visible{outline-offset:2px;outline:2px solid #0000}}.adu\\:disabled\\:pointer-events-none:disabled{pointer-events:none}.adu\\:disabled\\:opacity-50:disabled{opacity:.5}.adu\\:has-data-\\[slot\\=card-action\\]\\:grid-cols-\\[1fr_auto\\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.adu\\:has-\\[\\>svg\\]\\:px-2\\.5:has(>svg){padding-inline:calc(var(--adu-spacing)*2.5)}.adu\\:has-\\[\\>svg\\]\\:px-3:has(>svg){padding-inline:calc(var(--adu-spacing)*3)}.adu\\:has-\\[\\>svg\\]\\:px-4:has(>svg){padding-inline:calc(var(--adu-spacing)*4)}.adu\\:aria-invalid\\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.adu\\:aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:aria-invalid\\:ring-destructive\\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.adu\\:data-\\[disabled\\]\\:pointer-events-none[data-disabled]{pointer-events:none}.adu\\:data-\\[disabled\\]\\:opacity-50[data-disabled]{opacity:.5}.adu\\:data-\\[inset\\]\\:pl-8[data-inset]{padding-left:calc(var(--adu-spacing)*8)}.adu\\:data-\\[side\\=bottom\\]\\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(var(--adu-spacing)*2*-1)}.adu\\:data-\\[side\\=left\\]\\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(var(--adu-spacing)*2)}.adu\\:data-\\[side\\=right\\]\\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(var(--adu-spacing)*2*-1)}.adu\\:data-\\[side\\=top\\]\\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(var(--adu-spacing)*2)}.adu\\:data-\\[state\\=closed\\]\\:animate-out[data-state=closed]{animation:exit var(--tw-animation-duration,var(--tw-duration,.15s)) var(--tw-ease,ease) var(--tw-animation-delay,0s) var(--tw-animation-iteration-count,1) var(--tw-animation-direction,normal) var(--tw-animation-fill-mode,none)}.adu\\:data-\\[state\\=closed\\]\\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.adu\\:data-\\[state\\=closed\\]\\:zoom-out-95[data-state=closed]{--tw-exit-scale:.95}.adu\\:data-\\[state\\=open\\]\\:animate-in[data-state=open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s)) var(--tw-ease,ease) var(--tw-animation-delay,0s) var(--tw-animation-iteration-count,1) var(--tw-animation-direction,normal) var(--tw-animation-fill-mode,none)}.adu\\:data-\\[state\\=open\\]\\:fade-in-0[data-state=open]{--tw-enter-opacity:0}.adu\\:data-\\[state\\=open\\]\\:zoom-in-95[data-state=open]{--tw-enter-scale:.95}.adu\\:data-\\[variant\\=destructive\\]\\:text-destructive[data-variant=destructive]{color:var(--destructive)}.adu\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive) 10%,transparent)}}.adu\\:data-\\[variant\\=destructive\\]\\:focus\\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}@media (min-width:64rem){.adu\\:lg\\:block{display:block}.adu\\:lg\\:w-auto{width:auto}}.adu\\:dark\\:bg-destructive\\/60:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:bg-destructive\\/60:is(.dark *){background-color:color-mix(in oklab,var(--destructive) 60%,transparent)}}.adu\\:dark\\:bg-input\\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:bg-input\\/30:is(.dark *){background-color:color-mix(in oklab,var(--input) 30%,transparent)}}.adu\\:dark\\:shadow-xs:is(.dark *){--tw-shadow:0px 2px 2px -1px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1))),0px 1px 1px -.5px var(--tw-shadow-color,hsla(var(--color-shadow),var(--transparency-level-1)));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}@media (hover:hover){.adu\\:dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:hover\\:bg-input\\/50:is(.dark *):hover{background-color:color-mix(in oklab,var(--input) 50%,transparent)}}}.adu\\:dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:focus-visible\\:ring-destructive\\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab,var(--destructive) 40%,transparent)}}.adu\\:dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:aria-invalid\\:ring-destructive\\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab,var(--destructive) 40%,transparent)}}.adu\\:dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab,red,red)){.adu\\:dark\\:data-\\[variant\\=destructive\\]\\:focus\\:bg-destructive\\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab,var(--destructive) 20%,transparent)}}.adu\\:\\[\\\u0026_svg\\]\\:pointer-events-none svg{pointer-events:none}.adu\\:\\[\\\u0026_svg\\]\\:shrink-0 svg{flex-shrink:0}.adu\\:\\[\\\u0026_svg\\:not\\(\\[class\\*\\=\\'size-\\'\\]\\)\\]\\:size-4 svg:not([class*=size-]){width:calc(var(--adu-spacing)*4);height:calc(var(--adu-spacing)*4)}.adu\\:\\[\\.border-b\\]\\:pb-6.border-b{padding-bottom:calc(var(--adu-spacing)*6)}.adu\\:\\[\\.border-t\\]\\:pt-6.border-t{padding-top:calc(var(--adu-spacing)*6)}:is(.adu\\:data-\\[variant\\=destructive\\]\\:\\*\\:\\[svg\\]\\:\\!text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)!important}}@property --tw-animation-delay{syntax:\"*\";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:\"*\";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:\"*\";inherits:false}@property --tw-animation-fill-mode{syntax:\"*\";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:\"*\";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:\"*\";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:\"*\";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:\"*\";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:\"*\";inherits:false;initial-value:0}@font-face{font-family:Inter Fallback;src:local(Arial);size-adjust:107%;ascent-override:90%;descent-override:22%;line-gap-override:0%}:root{--page:#fff;--card:#fff;--input:#fff;--destructive:#f3e2de;--popover:#fff;--layer:#fffc;--success:#abdfb9;--info:#b2c5fb;--caution:#ffe573;--warning:#ffbf9f;--button-subtle:#00000008;--surface-muted:#c2c2c2;--surface-selected:#efefef;--button-primary:#191919;--foreground:#767676;--foreground-inverse:#f4f4f4;--foreground-bold:#232220;--foreground-card:#232220;--foreground-destructive:#ba351d;--foreground-popover:#232220;--foreground-selected:#6742d5;--foreground-success:#008140;--foreground-info:#344ac5;--foreground-caution:#907600;--foreground-warning:#c45915;--foreground-icon:#1f1f1f;--border-boldest:#1f1f1f;--border-input:#e6e6e6;--border:#afadaa;--border-muted:#cecdca;--border-success:#008140;--border-info:#344ac5;--border-caution:#907600;--border-warning:#c45915;--code-layer:#f4f4f4;--code-content:#fffc;--code-string-key:#595959;--code-string-value:#149750;--code-boolean:#e27133;--code-delimiter:#afafaf;--code-number:#374ec9;--code-object:#6742d5;--color-shadow:0,0%,0%;--color-shadow-destructive:5,85%,37%;--transparency-level-1:.04;--transparency-level-2:.06;--transparency-level-3:.08;--transparency-level-4:.1;--transparency-level-5:.12;--transparency-level-6:.16;--transparency-level-7:.2;--transparency-level-8:.24;--transparency-level-9:.4}.dark{--page:#191919;--card:#21201f;--input:#0000000d;--destructive:#43140b;--popover:#21201f;--layer:#29272580;--success:#225835;--info:#2f428b;--caution:#433600;--warning:#63361f;--button-subtle:#ffffffe6;--surface-muted:#4a4a4a;--surface-selected:#282828;--button-primary:#fff;--foreground:#7b7b7b;--foreground-inverse:#191919;--foreground-bold:#efede9;--foreground-card:#efede9;--foreground-destructive:#ff9179;--foreground-popover:#efede9;--foreground-selected:#b3a7ff;--foreground-success:#61d287;--foreground-info:#94b2ff;--foreground-caution:#f8d523;--foreground-warning:#ff9f6e;--foreground-icon:#eee;--border-boldest:#eee;--border-input:#282828;--border:#63615e;--border-muted:#3f3d3a;--border-success:#61d287;--border-info:#94b2ff;--border-caution:#f8d523;--border-warning:#ff9f6e;--code-layer:#21201f;--code-content:#1a1918;--code-string-key:#b4b4b4;--code-string-value:#61d287;--code-boolean:#ff9f6e;--code-delimiter:#7b7b7b;--code-number:#94b2ff;--code-object:#b3a7ff;--color-shadow:0,0%,100%;--color-shadow-destructive:5,85%,37%;--transparency-level-1:.04;--transparency-level-2:.06;--transparency-level-3:.08;--transparency-level-4:.1;--transparency-level-5:.12;--transparency-level-6:.16;--transparency-level-7:.2;--transparency-level-8:.24;--transparency-level-9:.4}.adu-dropdown-menu-content,.adu-dropdown-menu-content:before,.adu-dropdown-menu-content:after{border-width:1px;border-color:var(--border-input)}@property --tw-border-style{syntax:\"*\";inherits:false;initial-value:solid}@property --tw-leading{syntax:\"*\";inherits:false}@property --tw-font-weight{syntax:\"*\";inherits:false}@property --tw-tracking{syntax:\"*\";inherits:false}@property --tw-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:\"*\";inherits:false}@property --tw-shadow-alpha{syntax:\"\u003cpercentage>\";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:\"*\";inherits:false}@property --tw-inset-shadow-alpha{syntax:\"\u003cpercentage>\";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:\"*\";inherits:false}@property --tw-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:\"*\";inherits:false}@property --tw-inset-ring-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:\"*\";inherits:false}@property --tw-ring-offset-width{syntax:\"\u003clength>\";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:\"*\";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:\"*\";inherits:false;initial-value:0 0 #0000}@property --tw-ease{syntax:\"*\";inherits:false}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}"},{"filePath":"ui/css/ai.css","content":".connection-card-search,.connection-card-filters button{background:var(--card);border-color:var(--foreground);transition:all 0.2s ease}.connection-card-filters button.active{text-decoration:underline dotted;color:rgb(var(--primary));border-color:rgb(var(--primary))}.connection-card-search{\u0026:focus,\u0026:focus-visible,\u0026:focus-within{border-color:rgb(var(--primary))}input {\n \u0026:focus, \u0026:focus-visible, \u0026:focus-within {\n border: none;\n outline: none;\n }\n }}.connection-card-no-results{text-decoration:none!important;cursor:default!important}.download-button-container{display:inline-block;margin-bottom:1rem}.download-button{display:inline-flex;align-items:center;gap:0.5rem;padding:0.5rem 1.125rem 0.5rem 1rem;border-radius:0.75rem;font-size:0.95rem;font-weight:600;cursor:pointer;transition:all 0.2s ease;text-decoration:none;color:var(--foreground-inverse);background-color:var(--button-primary);box-shadow:0 0 0 1px oklch(from var(--button-primary) l c h / 0.12),\n 0 1px 1px -1px oklch(from var(--button-primary) l c h / 0.06),\n 0 2px 2px -2px oklch(from var(--button-primary) l c h / 0.06),\n 0 2px 4px -2px oklch(from var(--button-primary) l c h / 0.06),\n 0 4px 6px -4px oklch(from var(--button-primary) l c h / 0.06),\n 0 6px 8px -6px oklch(from var(--button-primary) l c h / 0.06),\n 0 -1px 2px 0 oklch(from var(--button-primary) l c h / 0.2) inset}.download-button:hover:not(:disabled){background-color:oklch(from var(--button-primary) l c h / 0.8);box-shadow:0 0 0 4px oklch(from var(--button-primary) l c h / 0.06),\n 0 1px 1px -1px oklch(from var(--button-primary) l c h / 0.06),\n 0 2px 2px -2px oklch(from var(--button-primary) l c h / 0.06),\n 0 2px 4px -2px oklch(from var(--button-primary) l c h / 0.06),\n 0 4px 6px -4px oklch(from var(--button-primary) l c h / 0.06),\n 0 6px 8px -6px oklch(from var(--button-primary) l c h / 0.06),\n 0 -1px 2px 0 oklch(from var(--button-primary) l c h / 0.2) inset}.download-button:disabled{opacity:0.6;cursor:not-allowed}.download-button.downloading{pointer-events:none}.download-spinner{animation:spin 1s linear infinite}@keyframes spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}"},{"filePath":"ui/universal-components/universal-components-1.0.27.css","href":"/_mintlify/custom/auth0/73de81e2acf73139/ui/universal-components/universal-components-1.0.27.css"}],"page":{"pagePath":"docs/troubleshoot/product-lifecycle/past-migrations","slug":"/docs/troubleshoot/product-lifecycle/past-migrations","pageMetadata":{"description":"List of Auth0 updates that have already been enabled for all customers.","sidebarTitle":"Overview","title":"Past Migrations","href":"/docs/troubleshoot/product-lifecycle/past-migrations"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"List of Auth0 updates that have already been enabled for all customers.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{Heading,Tooltip,Warning}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Tooltip)_missingMdxReference(`Tooltip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[`These are migrations that have already been enabled for all customers. If you have any questions, create a ticket in our `,_jsx(_components.a,{href:`https://support.auth0.com/center/s/`,children:`Support Center`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`weak-tls-1-2-cipher-suites`,children:`Weak TLS 1.2 Cipher Suites`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: December 10, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: June 10, 2026`]}),`\n`,_jsx(_components.p,{children:`After the end-of-life date, we will require the use of modern ciphers when connecting to Auth0 service endpoints and web applications. We will remove support for TLS 1.2 cipher suites that no longer provide sufficient security to protect network communications. More specifically, the change to supported cipher suites applies to:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Public and private cloud tenants’ default domains; for example, `,_jsx(_components.code,{children:`[tenant_name].eu.auth0.com.`})]}),`\n`,_jsx(_components.li,{children:`Public and private cloud tenants’ custom domains.`}),`\n`,_jsxs(_components.li,{children:[`Service-related web applications, such as the Dashboard (`,_jsx(_components.code,{children:`manage.auth0.com`}),`) or the Marketplace (`,_jsx(_components.code,{children:`marketplace.auth0.com`}),`).`]}),`\n`,_jsxs(_components.li,{children:[`The Auth0 Content Delivery Network (CDN). To learn more, read `,_jsx(_components.a,{href:`/docs/troubleshoot/customer-support/operational-policies/public-cloud-service-endpoints`,children:`Auth0 Public Cloud Service Endpoints`}),`.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`The list of discontinued cipher suites is available below. The list contains the unique hex code that identifies each cipher alongside its `,_jsx(_components.a,{href:`https://www.iana.org/assignments/tls-parameters/tls-parameters.xhtml#tls-parameters-4`,children:`IANA`}),` name; for the corresponding OpenSSL names, follow the links to `,_jsx(_components.code,{children:`ciphersuite.info`}),`.`]}),`\n`,_jsx(_components.p,{children:`TLS 1.2 ciphers scheduled for removal:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`0xC0, 0x09 - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA/`,children:`TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA`})]}),`\n`,_jsxs(_components.li,{children:[`0xC0, 0x0A - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA/`,children:`TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA`})]}),`\n`,_jsxs(_components.li,{children:[`0xC0, 0x23 - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256/`,children:`TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256`})]}),`\n`,_jsxs(_components.li,{children:[`0xC0, 0x24 - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384/`,children:`TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384`})]}),`\n`,_jsxs(_components.li,{children:[`0xC0, 0x13 - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA/`,children:`TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA`})]}),`\n`,_jsxs(_components.li,{children:[`0xC0, 0x14 - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA/`,children:`TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA`})]}),`\n`,_jsxs(_components.li,{children:[`0xC0, 0x27 - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256/`,children:`TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256`})]}),`\n`,_jsxs(_components.li,{children:[`0xC0, 0x28 - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384/`,children:`TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384`})]}),`\n`,_jsxs(_components.li,{children:[`0x00, 0x9C - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_RSA_WITH_AES_128_GCM_SHA256/`,children:`TLS_RSA_WITH_AES_128_GCM_SHA256`})]}),`\n`,_jsxs(_components.li,{children:[`0x00, 0x2F - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_RSA_WITH_AES_128_CBC_SHA/`,children:`TLS_RSA_WITH_AES_128_CBC_SHA`})]}),`\n`,_jsxs(_components.li,{children:[`0x00, 0x9D - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_RSA_WITH_AES_256_GCM_SHA384/`,children:`TLS_RSA_WITH_AES_256_GCM_SHA384`})]}),`\n`,_jsxs(_components.li,{children:[`0x00, 0x35 - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_RSA_WITH_AES_256_CBC_SHA/`,children:`TLS_RSA_WITH_AES_256_CBC_SHA`})]}),`\n`,_jsxs(_components.li,{children:[`0x00, 0x3C - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_RSA_WITH_AES_128_CBC_SHA256/`,children:`TLS_RSA_WITH_AES_128_CBC_SHA256`})]}),`\n`,_jsxs(_components.li,{children:[`0x00, 0x3D - `,_jsx(_components.a,{href:`https://ciphersuite.info/cs/TLS_RSA_WITH_AES_256_CBC_SHA256/`,children:`TLS_RSA_WITH_AES_256_CBC_SHA256`})]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`new-management-api-scopes-required-for-connection-options`,children:`New Management API Scopes Required for Connection Options`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: October 24, 2024`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: July 8, 2025`]}),`\n`,_jsxs(_components.p,{children:[`Requests to the following Management API endpoints will require the `,_jsx(_components.code,{children:`read:connections_options`}),` scope to view the `,_jsx(_components.code,{children:`options`}),` field:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/docs/api/management/v2/connections/get-connections`,children:`Connections > Get all connections`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/docs/api/management/v2/connections/get-connections-by-id`,children:`Connections > Get a connection`})}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Requests to the following Management API endpoints will require the `,_jsx(_components.code,{children:`update:connections_options`}),` to modify the `,_jsx(_components.code,{children:`options`}),` field:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.a,{href:`/docs/api/management/v2/connections/patch-connections-by-id`,children:`Connections > Update a connection`})}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`prompt-for-organization-name-without-sso`,children:`Prompt for Organization Name Without SSO`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: October 31, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: May 1, 2026`]}),`\n`,_jsxs(_components.p,{children:[`Login flows initiated in the context of client applications associated with business users (`,_jsx(_components.code,{children:`organization_usage=require`}),`) and configured to prompt for the organization at the start of the login flow (`,_jsx(_components.code,{children:`organization_require_behavior=pre_login_prompt`}),`) will consider an existing authenticated session.`]}),`\n`,_jsx(_components.p,{children:`Previously, the service prompted the user for the organization name, and the user was subsequently required to complete a login. For example, a user with a password-based account needed to re-enter their credentials even if an authenticated session was valid for the selected organization.`}),`\n`,_jsx(Heading,{level:`2`,id:`unconfirmed-login-with-non-verifiable-callback-uri-redirects`,children:`Unconfirmed Login with Non-Verifiable Callback URI Redirects`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: October 28, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: April 28, 2026`]}),`\n`,_jsxs(_components.p,{children:[`Auth0 recommends the transition to HTTPS-based callbacks using `,_jsx(_components.a,{href:`https://developer.android.com/training/app-links#android-app-link`,children:`Android App Links`}),` and `,_jsx(_components.a,{href:`https://developer.apple.com/documentation/xcode/allowing-apps-and-websites-to-link-to-your-content`,children:`Apple Universal Links`}),` whenever possible for all native applications using the `,_jsx(_components.a,{href:`/docs/get-started/authentication-and-authorization-flow/authorization-code-flow-with-pkce`,children:`Authorization Code Flow`}),` to enhance security and mitigate risks of application impersonation and phishing attacks.`]}),`\n`,_jsx(_components.p,{children:`Additionally, Auth0 is implementing a new login confirmation prompt for authentication requests that use custom URI schemes or loopback URIs as callbacks. This prompt will appear in situations where a response was previously returned without requiring user interaction.`}),`\n`,_jsxs(_components.p,{children:[`Review `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-non-verifiable-callback-uri-end-user-confirmation`,children:`Migrate to Non-Verifiable Callback URI End-User Confirmation`}),` to learn more details.`]}),`\n`,_jsx(Heading,{level:`2`,id:`extended-attributes-in-azure-active-directory-v1-identity-api-connections`,children:`Extended Attributes in Azure Active Directory (v1) Identity API Connections`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: June 18, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: September 1, 2025`]}),`\n`,_jsxs(_components.p,{children:[`Due to the `,_jsx(_components.a,{href:`https://learn.microsoft.com/en-us/graph/migrate-azure-ad-graph-overview`,children:`Azure AD Graph deprecation`}),` and scheduled `,_jsx(_components.a,{href:`https://techcommunity.microsoft.com/blog/microsoft-entra-blog/what%E2%80%99s-new-in-microsoft-entra-%E2%80%93-june-2025/4352579#community-4352579-toc-hId--1605859169`,children:`retirement`}),`, Auth0 will no longer support enabling extended attributes-related options in Microsoft Azure AD (`,_jsx(_components.code,{children:`strategy=waad`}),`) connections configured to use the Azure Active Directory (v1) Identity API.`]}),`\n`,_jsxs(_components.p,{children:[`If you received an email notification, one or more of your tenants may have a Microsoft Azure AD connection targeting the `,_jsx(_components.strong,{children:`Azure Active Directory (v1)`}),` identity API and configured to obtain extended attributes, which could be impacted.`]}),`\n`,_jsx(_components.p,{children:`You must review applicable tenants. For connections dependent on the deprecated functionality, you must either:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`\n`,_jsxs(_components.p,{children:[`Update connections to target `,_jsx(_components.strong,{children:`Microsoft Identity Platform (v2)`}),` so that Microsoft Graph endpoints are used instead of the deprecated Azure AD Graph when retrieving extended attributes information.`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`\n`,_jsx(_components.p,{children:`Turn off all the extended attributes options.`}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Although the second option above would allow you to maintain connections targeting the `,_jsx(_components.strong,{children:`Azure Active Directory (v1)`}),` identity API if the extended information is unnecessary, the general recommendation is to target `,_jsx(_components.strong,{children:`Microsoft Identity Platform (v2)`}),`. To learn more, read `,_jsx(_components.a,{href:`/docs/authenticate/identity-providers/enterprise-identity-providers/azure-active-directory/v2`,children:`Connect Your App to Microsoft Azure Active Directory`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`real-time-webtask-logs-extension`,children:`Real-Time Webtask Logs Extension`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: June 18, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: September 16, 2025`]}),`\n`,_jsx(_components.p,{children:`The Real-time Webtask Logs extension is deprecated and has a planned end-of-life (EOL) after September 16, 2025.\\xA0`}),`\n`,_jsxs(_components.p,{children:[`As a replacement, the `,_jsx(_components.a,{href:`/docs/customize/actions/actions-real-time-logs`,children:`Actions Real-time Logs`}),` feature is directly available within the Auth0 Dashboard. The extension will cease to be available for new installations, but tenants with the extension already installed will maintain access until the planned EOL.`]}),`\n`,_jsx(Heading,{level:`2`,id:`multiple-actions-for-custom-phone-and-email-provider-triggers`,children:`Multiple Actions for Custom Phone and Email Provider Triggers`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` June 16, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` December 16, 2025`]}),`\n`,_jsx(_components.p,{children:`Auth0 is introducing a maximum limit of one Action for Actions associated with the following triggers:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`custom-phone-provider`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`custom-email-provider`})}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`This limitation applies to the Management API `,_jsx(_components.a,{href:`/docs/api/management/v2/actions/post-action`,children:`Create an Action`}),` endpoint (`,_jsx(_components.code,{children:`POST`}),` - `,_jsx(_components.code,{children:`/api/v2/actions/actions`}),`). Once the newly introduced limit becomes effective for a given tenant, attempts to create multiple actions for these triggers will fail.`]}),`\n`,_jsx(Heading,{level:`2`,id:`uncustomizable-brute-force-protection-unblock-email-flow`,children:`Uncustomizable Brute-force Protection Unblock Email Flow`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` June 9, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` December 9, 2025`]}),`\n`,_jsxs(_components.p,{children:[`An updated version of the email-based unblock flow for `,_jsx(_components.a,{href:`/docs/secure/attack-protection/brute-force-protection`,children:`Brute-force Protection`}),` supports customization and localization through Universal Login and improves the experience in situations where email security scanners process the unblock email.`]}),`\n`,_jsxs(Heading,{level:`2`,id:`field-fromsandbox-in-authentication-api-error-responses`,children:[`Field `,_jsx(_components.code,{children:`fromSandbox`}),` in Authentication API Error Responses`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` June 11, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` December 11, 2025`]}),`\n`,_jsxs(_components.p,{children:[`Authentication API error responses will no longer include the `,_jsx(_components.code,{children:`fromSandbox`}),` field for flows that require custom database script invocation. For example, in an end-user signup flow for a custom database connection, an API error response will no longer return this field.`]}),`\n`,_jsx(Heading,{level:`2`,id:`allow-omitting-password-on-smtp-email-provider-host-related-changes`,children:`Allow Omitting Password on SMTP Email Provider Host-Related Changes`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` May 13, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` November 13, 2025`]}),`\n`,_jsxs(_components.p,{children:[`When updating a SMTP email provider’s host, port, or username using a `,_jsx(_components.code,{children:`PATCH`}),` request to the `,_jsx(_components.a,{href:`/docs/api/management/v2/emails/patch-provider`,children:_jsx(_components.code,{children:`/api/v2/emails/provider endpoint`})}),`, you may need to specify a password for the `,_jsx(_components.code,{children:`credentials.smtp_pass`}),` field.`]}),`\n`,_jsx(_components.p,{children:`A SMTP email provider’s credentials object supports the following fields:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`credentials.smtp_pass`}),`: SMTP email provider’s password`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`credentials.smtp_host`}),`: SMTP email provider’s host`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`credentials.smtp_port`}),`: SMTP email provider’s port`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`credentials.smtp_user`}),`: SMTP email provider’s username`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Auth0 requires an explicit value for the `,_jsx(_components.code,{children:`credentials.smtp_pass`}),` field in the following cases:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`When you’re updating a SMTP email provider’s `,_jsx(_components.code,{children:`credentials.smtp_host`}),`, `,_jsx(_components.code,{children:`credentials.smtp_port`}),`, or `,_jsx(_components.code,{children:`credentials.smtp_user`}),` fields with a value that is different from the existing value or updating just a subset of those three fields.`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Auth0 does not require an explicit value for the `,_jsx(_components.code,{children:`credentials.smtp_pass`}),` field in the following cases:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`When you’re updating an SMTP email provider and the request body includes the same values as the existing values for the `,_jsx(_components.code,{children:`credentials.smtp_host`}),`, `,_jsx(_components.code,{children:`credentials.smtp_port`}),`, and `,_jsx(_components.code,{children:`credentials.smtp_user`}),` fields.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`unrestricted-offset-pagination-in-connections-management-api`,children:`Unrestricted Offset Pagination in Connections Management API`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: April 29, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: October 27, 2025`]}),`\n`,_jsxs(_components.p,{children:[`The offset-based pagination available for the Management API `,_jsx(_components.a,{href:`/docs/api/management/v2/connections/get-connections`,children:`get all connections`}),` endpoint will no longer support retrieving a paginated result beyond the first 1000 connections.`]}),`\n`,_jsxs(_components.p,{children:[`For example, the service will return an error response if `,_jsx(_components.code,{children:`page=30\u0026per_page=50`}),` or `,_jsx(_components.code,{children:`page=15\u0026per_page=100`}),` is used. In both situations, multiplying the number of records requested per page by the requested page index plus one (to account for the page index being zero-based) causes the request to exceed the initial 1000 connections.`]}),`\n`,_jsxs(_components.p,{children:[`Per the above, with a page size of 50, the last page index that you can request without errors is 19 (`,_jsx(_components.code,{children:`page=19\u0026per_page=50`}),`), and with the maximum page size of 100, you can request up to page index number 9 (`,_jsx(_components.code,{children:`page=9\u0026per_page=100`}),`).`]}),`\n`,_jsx(_components.p,{children:`Conditions that surpass the limit trigger the error even if the tenant associated with the request has fewer than 1000 connections.`}),`\n`,_jsx(Heading,{level:`2`,id:`protected-properties-in-non-custom-social-connections`,children:`Protected Properties in Non-Custom Social Connections`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: July 30, 2024`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: January 31, 2025`]}),`\n`,_jsxs(_components.p,{children:[`Management API endpoints for connections (`,_jsx(_components.code,{children:`GET`}),`, `,_jsx(_components.code,{children:`POST`}),`, and `,_jsx(_components.code,{children:`PATCH`}),`) will no longer allow retrieving or setting values for the following protected properties in the context of the `,_jsx(_components.code,{children:`options`}),` object for non-custom social connections:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`authorizationURL`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`tokenURL`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`userInfoUrl`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`baseUrl`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`userAuthorizationURL`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`grant_type`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`authorizationURL`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`tokenURL`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`userInfoUrl`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`baseUrl`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`userAuthorizationURL`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`grant_type`})}),`\n`]}),`\n`,_jsx(_components.p,{children:`Non-custom social connections refer to any social connection whose implementation logic is controlled entirely within the Auth0 service itself. This category excludes any connections explicitly created as custom social connectors or those available as Marketplace integrations that rely on custom social connection functionality.`}),`\n`,_jsx(Heading,{level:`2`,id:`unwarranted-session-removal-after-management-api-user-updates`,children:`Unwarranted Session Removal After Management API User Updates`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: February 11, 2025`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: August 19, 2025`]}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(Tooltip,{tip:`Management API: A product to allow customers to perform administrative tasks.`,cta:`View Glossary`,href:`/docs/glossary?term=Management+API`,children:`Management API`}),` `,_jsx(_components.a,{href:`/docs/api/management/v2/users/patch-users-by-id`,children:`Update a user`}),` endpoint (`,_jsx(_components.code,{children:`PATCH /api/v2/users/{id}`}),`) will no longer invalidate user sessions for database connection users when:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`The `,_jsx(_components.code,{children:`email`}),` or `,_jsx(_components.code,{children:`email_verified`}),` attributes are set to an unchanged value.`]}),`\n`,_jsxs(_components.li,{children:[`The `,_jsx(_components.code,{children:`email_verified`}),` attribute is set to a `,_jsx(_components.code,{children:`true`}),` value.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`mandatory-use-of-sni-for-https-requests`,children:`Mandatory Use of SNI for HTTPS requests`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: October 29, 2024`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: April 29, 2025`]}),`\n`,_jsxs(_components.p,{children:[`The Auth0 service will mandate using `,_jsx(_components.a,{href:`https://en.wikipedia.org/wiki/Server_Name_Indication`,children:`Server Name Indication`}),` (SNI) for all HTTPS requests. SNI is an extension to the TLS protocol that allows the client to indicate the hostname to which it intends to connect at the start of the handshake process.`]}),`\n`,_jsx(_components.p,{children:`Since their creation, the vast majority of our private cloud environments and some of our public cloud environments have enforced the SNI requirement. For example, the CA-1, JP-1, and UK-1 public cloud environments always required SNI.`}),`\n`,_jsxs(_components.p,{children:[`With this change, the SNI requirement will apply to the remaining environments. For more detailed information on environment-specific timelines, read the `,_jsx(_components.a,{href:`https://support.auth0.com/center/s/article/End-of-Life-Rollout-for-Mandatory-Use-of-SNI-for-HTTPS-Requests`,children:`End-of-Life Rollout for Mandatory Use of SNI for HTTPS Requests`}),` article.`]}),`\n`,_jsx(Heading,{level:`2`,id:`always-use-https-for-communication-with-auth0`,children:`Always Use HTTPS for Communication with Auth0`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: September 4, 2024`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: October 4, 2024`]}),`\n`,_jsx(_components.p,{children:`Starting October 4, 2024, Auth0 will no longer automatically redirect API requests using unencrypted HTTP to secure HTTPS and will respond with an error. To avoid any disruption in service, update any HTTP URLs you use or publish to use HTTPS instead.`}),`\n`,_jsx(Heading,{level:`2`,id:`management-api-transition-updating-roles-assignment-to-require-create-scope`,children:`Management API Transition: Updating Roles Assignment to Require Create Scope`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: March 7, 2024`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: September 10, 2024`]}),`\n`,_jsxs(_components.p,{children:[`Management API scopes for the User-Roles endpoint (`,_jsx(_components.code,{children:`POST /api/v2/users/{id}/roles`}),`) will require the `,_jsx(_components.code,{children:`create:role_members`}),` scope. This better represents the scope’s intended permissions.`]}),`\n`,_jsxs(_components.p,{children:[`Previously, roles could be assigned to users with `,_jsx(_components.code,{children:`read:roles`}),` scope.`]}),`\n`,_jsx(Heading,{level:`2`,id:`update-applications-that-use-cross-origin-authentication`,children:`Update Applications that use Cross-Origin Authentication`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: April 25, 2024`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: October 10, 2024`]}),`\n`,_jsxs(_components.p,{children:[`New applications created in Auth0 will have cross-origin authentication disabled by default. Calls to some Management API endpoints (`,_jsx(_components.a,{href:`/docs/api/management/v2/clients/get-clients`,children:`Get Clients`}),`, `,_jsx(_components.a,{href:`/docs/api/management/v2/clients/get-clients-by-id`,children:`Get Client by ID`}),`) will need to be modified to use `,_jsx(_components.code,{children:`cross_origin_authentication`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`remove-subscription-tickets-access-for-tenant-admins`,children:`Remove Subscription Tickets access for Tenant Admins`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: June 5, 2024`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: August 5, 2024`]}),`\n`,_jsxs(_components.p,{children:[`Access to view `,_jsx(_components.a,{href:`/docs/troubleshoot/customer-support/open-and-manage-support-tickets`,children:`Subscription Tickets`}),` within the Auth0 Support Center is changing on August 5, 2024. To retain access to view and manage all support tickets created by all users across a tenant, the new Elevated Support Access role is required.`]}),`\n`,_jsx(Heading,{level:`2`,id:`password-reset-and-email-verification-links-in-tenant-logs-deprecation`,children:`Password Reset and Email Verification Links in Tenant Logs Deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: December 7, 2023`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: February 5, 2024`]}),`\n`,_jsxs(_components.p,{children:[`Password reset and email verification links will no longer be logged to tenant logs. These links can be retrieved from the password reset or email verification `,_jsx(Tooltip,{tip:`Management API: A product to allow customers to perform administrative tasks.`,cta:`View Glossary`,href:`/docs/glossary?term=Management+API`,children:`Management API`}),` request response.`]}),`\n`,_jsx(Heading,{level:`2`,id:`reducing-maximum-expiration-time-for-login-transactions`,children:`Reducing Maximum Expiration Time for Login Transactions`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: September 5, 2023 (Public Cloud), November 21, 2023 (Private Cloud)`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: February 21, 2024`]}),`\n`,_jsx(_components.p,{children:`With this change, we will enforce a maximum lifetime of 1 hour for redirection-based login flows. Login flows that take longer than 1 hour to complete will expire in both Universal and Classic Login. After expiration, subsequent actions from the end user’s browser (e.g. input email/password, redirect back to Actions/Rules, etc.) will result in either:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`A redirect to the associated application’s default login route to reinitiate the flow as a new login transaction, or`}),`\n`,_jsx(_components.li,{children:`An error page if the default login route is not configured.`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`unregistered-scopes-in-refresh-tokens-deprecation`,children:`Unregistered Scopes in Refresh Tokens Deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: July 12, 2023`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: January 17, 2024`]}),`\n`,_jsxs(_components.p,{children:[`We are improving scope evaluation during `,_jsx(Tooltip,{tip:`Refresh Token: Token used to obtain a renewed Access Token without forcing users to log in again.`,cta:`View Glossary`,href:`/docs/glossary?term=refresh+token`,children:`refresh token`}),` exchange to ensure that unregistered scopes cannot be requested. Custom scope values not registered against the `,_jsx(_components.code,{children:`aud`}),` or `,_jsx(_components.code,{children:`audience`}),` value (for an API registered in your tenant) are considered unregistered scopes.`]}),`\n`,_jsxs(_components.p,{children:[`With this change, the API scope evaluation will include any custom scopes requested during user authentication or injected through extensibility, such as `,_jsx(_components.a,{href:`/docs/customize/rules`,children:`Rules`}),`. This evaluation will validate that all scopes are registered, returning an error if any are not registered.`]}),`\n`,_jsx(Heading,{level:`2`,id:`auth0-cordova-angular-auth0-and-express-oauth2-bearer-repo-deprecations`,children:`auth0-cordova, angular-auth0, and express-oauth2-bearer Repo Deprecations`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: April 27, 2023`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: June 30, 2023 (express-oauth2-bearer), October 27, 2023 (angular-auth0 and auth0-cordova)`]}),`\n`,_jsx(_components.p,{children:`We have deprecated the following repos:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`https://github.com/auth0/express-oauth2-bearer`,children:`express-oauth2-bearer`}),` | `,_jsx(_components.a,{href:`https://github.com/auth0/express-oauth2-bearer/blob/master/MIGRATION_GUIDE.md`,children:`migration guide`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`https://github.com/auth0/angular-auth0`,children:`angular-auth0`}),` | `,_jsx(_components.a,{href:`https://github.com/auth0/angular-auth0/blob/master/MIGRATION_GUIDE.md`,children:`migration guide`})]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.a,{href:`https://github.com/auth0/auth0-cordova`,children:`auth0-cordova`}),` | `,_jsx(_components.a,{href:`https://github.com/auth0/auth0-cordova/blob/master/MIGRATION_GUIDE.md`,children:`migration guide`})]}),`\n`]}),`\n`,_jsx(_components.p,{children:`These libraries will no longer be supported. Please remove these libraries from any active projects before these dates.`}),`\n`,_jsx(_components.p,{children:`If you have any questions or concerns, please reach out to us on GitHub.`}),`\n`,_jsx(Heading,{level:`2`,id:`actions-migration-from-node-js-16-to-node-js-18`,children:`Actions Migration from Node.js 16 to Node.js 18`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Target migration`}),`: Sept 11, 2023`]}),`\n`,_jsx(_components.p,{children:`As part of our mission to support every future version of LTS Node.js through Actions, and to be in line with the Node JS developer community, we are releasing Node 18 while Node 16 is still in Active LTS. We urge all customers to transition today to Node 18 and make the most of its LTS. Remember, while Node 16 LTS remains available until September, their use may involve certain risks following the conclusion of LTS and we recommend you to update to Node 18.`}),`\n`,_jsx(_components.p,{children:`Node.js 18 is now generally available (GA) across our entire suite of extensibility offerings. This includes Actions, Rules, Hooks, Database Scripts, and Custom Social Connections. We strongly encourage everyone to update to Node 18 by Sept 11, 2023, to adhere to best code security practices.`}),`\n`,_jsx(Heading,{level:`2`,id:`support-for-edge-js-in-extensibility-features`,children:`Support for edge.js in Extensibility Features`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` December 21, 2022`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` June 21, 2023`]}),`\n`,_jsx(_components.p,{children:`After June 21, 2023, Auth0 will no longer support running .NET and C# from Node.js in Extensibility features. Auth0 previously supported a subset of the C# language to write extensibility code for Rules, Hooks, and Custom Database Scripts via a Node.js module called edge.js.`}),`\n`,_jsxs(_components.p,{children:[`Deprecating support for running .NET and C# from Node.js in Extensibility is critical to maintaining a performant and secure platform for running untrusted code. This change will allow us to continue improving our next-generation Extensibility offerings.\nTo learn more, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-from-edge-js-extensibility-features`,children:`Migrate from edge.js extensibility features`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`support-for-oracledb-in-extensibility-features`,children:`Support for oracledb in Extensibility Features`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` December 21, 2022`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` June 21, 2023`]}),`\n`,_jsx(_components.p,{children:`Auth0 will no longer support the auth0-claims-provider add-on for Sharepoint 2010/2013 after July 31, 2023.`}),`\n`,_jsxs(_components.p,{children:[`After June 21, 2023, Auth0 will no longer support connecting to Oracle Databases from Node.js in Extensibility features. Auth0 previously supported connecting to Oracle Databases from extensibility code for Rules, Hooks, and Custom Database Scripts via a Node.js module called `,_jsx(_components.a,{href:`https://www.npmjs.com/package/oracledb`,children:`oracledb`}),`.`]}),`\n`,_jsx(_components.p,{children:`Deprecating support for connecting to Oracle Databases from Node.js in Extensibility is critical to maintaining a performant and secure platform for running untrusted code. This change will allow us to continue improving our next-generation Extensibility offerings.`}),`\n`,_jsxs(_components.p,{children:[`To learn more, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-from-oracledb-extensibility-features`,children:`Migrate from oracledb extensibility features`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`auth0-claims-provider-for-sharepoint-2010-/-2013`,children:`Auth0 Claims Provider for SharePoint 2010 / 2013`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` January 31, 2023`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` July 31, 2023`]}),`\n`,_jsx(_components.p,{children:`Auth0 will no longer support the auth0-claims-provider add-on for Sharepoint 2010/2013 after July 31, 2023. Without this add-on, you won’t be able to use the “Sharepoint People Picker” with Auth0 connections to assign permissions to Sharepoint 2010/2013 users.`}),`\n`,_jsx(_components.p,{children:`You must remove any integrations with the auth0-claims-provider add-on before July 31, 2023. After that date, any remaining integrations with the auth0-claims-provider add-on will cease to function properly and may impact users of your applications.`}),`\n`,_jsx(Heading,{level:`2`,id:`checkpoint-pagination-on-get-role-users-endpoint`,children:`Checkpoint Pagination on Get Role Users Endpoint`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` November 9, 2022`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` May 9, 2023`]}),`\n`,_jsx(_components.p,{children:`To improve performance, the Get Role Users Management API endpoint will only return greater than 1,000 total results if the checkpoint pagination method is used. This pagination method is optimized to support large quantities of results. The offset pagination method will be capped at 1,000 results.`}),`\n`,_jsxs(_components.p,{children:[`For implementation details for the two pagination methods, read the `,_jsx(_components.a,{href:`/docs/api/management/v2/roles/get-role-user`,children:`Management API documentation for the Get Role Users endpoint`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`legacy-custom-claims`,children:`Legacy Custom Claims`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` July 28, 2022 (Public Cloud), August 31, 2022 (Private Cloud)`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` January 30, 2023 (Public Cloud), April 18, 2023 (Private Cloud)`]}),`\n`,_jsxs(_components.p,{children:[`Beginning January 30, 2023 in Public Cloud and April 18, 2023 in Private Cloud, Auth0 will allow the addition of non-namespaced custom claims to `,_jsx(Tooltip,{tip:`JSON Web Token (JWT): Standard ID Token format (and often Access Token format) used to represent claims securely between two parties.`,cta:`View Glossary`,href:`/docs/glossary?term=JWT`,children:`JWT`}),` tokens using Auth0 Actions and in responses from the Authentication API `,_jsx(_components.code,{children:`/userinfo`}),` endpoint. Previously, Auth0 allowed namespaced claims on access and `,_jsx(Tooltip,{tip:`ID Token: Credential meant for the client itself, rather than for accessing a resource.`,cta:`View Glossary`,href:`/docs/glossary?term=ID+tokens`,children:`ID tokens`}),` via extensibility code (`,_jsx(_components.a,{href:`/docs/customize/rules`,children:`Rules`}),` / `,_jsx(_components.a,{href:`/docs/customize/hooks`,children:`Hooks`}),` / `,_jsx(_components.a,{href:`/docs/customize/actions`,children:`Actions`}),`). The migration to custom claims allows private, non-namespaced custom claims and OIDC user profile claims to be added to `,_jsx(Tooltip,{tip:`Access Token: Authorization credential, in the form of an opaque string or JWT, used to access an API.`,cta:`View Glossary`,href:`/docs/glossary?term=access+tokens`,children:`access tokens`}),`; ID tokens currently support user profile claims and will additionally support private, non-namespaced custom claims. These claims will also be added to the Auth0 `,_jsx(_components.code,{children:`/userinfo`}),` response. To begin the migration, read the `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/custom-claims-migration`,children:`Custom Claims Migration Guide`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`If your tenant is running extensibility code (`,_jsx(_components.a,{href:`/docs/customize/rules`,children:`Rules`}),` / `,_jsx(_components.a,{href:`/docs/customize/hooks`,children:`Hooks`}),` / `,_jsx(_components.a,{href:`/docs/customize/actions`,children:`Actions`}),`) that tries to set non-namespaced custom claims that are being ignored until this deprecation, then those claims will begin to appear on the tokens and the `,_jsx(_components.code,{children:`/userinfo`}),` response. We recommend you review your configuration and Auth0 logs.`]}),`\n`,_jsx(_components.p,{children:`With the addition of non-namespaced, private claims, Auth0 is enforcing the following restrictions that could potentially affect your tenant:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Auth0 will restrict the custom claims payload to a maximum of 100KB.`}),`\n`,_jsxs(_components.li,{children:[`Auth0 will restrict the customization/modification of `,_jsx(Tooltip,{tip:`OpenID: Open standard for authentication that allows applications to verify users' identities without collecting and storing login information.`,cta:`View Glossary`,href:`/docs/glossary?term=OPENID`,children:`OPENID`}),` standard claims or claims used internally by Auth0.`]}),`\n`,_jsx(_components.li,{children:`In the future, Auth0 may restrict the use of other claims not included in the above list. In those cases, customers will be notified with a reasonable time to migrate.`}),`\n`,_jsxs(_components.li,{children:[`Auth0 will restrict the creation of private, non-namespaced custom claims on access tokens with an Auth0 `,_jsx(Tooltip,{tip:`Audience: Unique identifier of the audience for an issued token. Named aud in a token, its value contains the ID of either an application (Client ID) for an ID Token or an API (API Identifier) for an Access Token.`,cta:`View Glossary`,href:`/docs/glossary?term=audience`,children:`audience`}),`, excluding the `,_jsx(_components.code,{children:`/userinfo`}),` endpoint.`]}),`\n`,_jsx(_components.li,{children:`Only specified OIDC user profile claims can be added to access tokens.`}),`\n`,_jsx(_components.li,{children:`Auth0 will restrict creating a custom claim starting with a $ character.`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`To learn more about custom claims, review `,_jsx(_components.a,{href:`/docs/secure/tokens/json-web-tokens/create-custom-claims`,children:`Create Custom Claims`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`legacy-private-cloud-platform`,children:`Legacy Private Cloud Platform`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` June 13, 2022`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` January 31, 2023`]}),`\n`,_jsx(_components.p,{children:`We’re making improvements to the underlying infrastructure that supports Auth0 Private Cloud by introducing a modern Kubernetes-based technology stack, as well as database upgrades. We are currently working with all Auth0 Private Cloud customers to schedule the upgrade of their private cloud deployment to the new infrastructure stack during the course of this year, and will be discontinuing the older stack by January 31, 2023.`}),`\n`,_jsx(_components.p,{children:`In addition, 2205 (May 2022 release) is the last official release for the legacy Private Cloud platform. Any bugs or security vulnerabilities will be assessed and addressed in patch releases as necessary.\\xA0 Prior to upgrading to the new infrastructure stack, environments will need to be updated to the minimum compatible version to support the upgrade efforts.`}),`\n`,_jsx(_components.p,{children:`Please reach out to your Technical Account Manager with any questions.`}),`\n`,_jsx(Heading,{level:`2`,id:`log-extensions`,children:`Log Extensions`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` May 4, 2022 (Public Cloud), June 9, 2022 (Private Cloud release 2205)`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` May 2, 2023 (Public Cloud), January 6, 2023 (Private Cloud)`]}),`\n`,_jsx(_components.p,{children:`Beginning May 4, 2022, in Public Cloud and June 9th, 2022, in Private Cloud, the following Auth0 Log Extensions will be deprecated:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Auth0 Authentication API Webhooks`}),`\n`,_jsx(_components.li,{children:`Auth0 Management API Webhooks`}),`\n`,_jsx(_components.li,{children:`Logs to Cloudwatch`}),`\n`,_jsx(_components.li,{children:`Logs to Logentries`}),`\n`,_jsx(_components.li,{children:`Logs to Loggly`}),`\n`,_jsx(_components.li,{children:`Logs to Logstash`}),`\n`,_jsx(_components.li,{children:`Logs to Papertrail`}),`\n`,_jsx(_components.li,{children:`Logs to Splunk`}),`\n`,_jsx(_components.li,{children:`Logs to Sumo Logic`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated:`}),` November 2, 2022 (Public Cloud), December 21, 2022 (Private Cloud)`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life:`}),` May 2, 2023 (Public Cloud), May 31, 2023 (Private Cloud)`]}),`\n`,_jsx(_components.p,{children:`Beginning November 2, 2022 in Public Cloud and December 21, 2022 in Private Cloud, the following Auth0 Log Extensions will be deprecated:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Logs to Segment`}),`\n`,_jsx(_components.li,{children:`Logs to Mixpanel`}),`\n`,_jsx(_components.li,{children:`Logs to AppInsights`}),`\n`,_jsx(_components.li,{children:`Logs to Azure Blob Storage`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`All the Log extensions listed above are now deprecated. You can set up equivalent functionality using log event streams or integrations on the `,_jsx(_components.a,{href:`https://marketplace.auth0.com/`,children:`Auth0 Marketplace`}),`. On November 2, 2022 in Public Cloud and December 21, 2022 in Private Cloud, Auth0 will no longer support the installed log extensions from the list above. For more information, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-from-log-extensions`,children:`Migrate from Log Extensions`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`tenant-hostname-validation`,children:`Tenant Hostname Validation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: December 9, 2021 and December, 2021 (Private Cloud Release 2112.2)`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: June 9, 2022 and September 9, 2022 (Private Cloud)`]}),`\n`,_jsxs(_components.p,{children:[`As of June 9, 2022 in Public Cloud and September 9, 2022 in Private Cloud, Auth0 will increase the security of API calls by adding a validation step for tenant hostnames to the Authentication API’s identification process. When a call is made, the Authentication API will validate the entity identifier (eg: `,_jsx(_components.code,{children:`client_id`}),`) of the requesting tenant as well as the tenant name in the URL domain. The tenant owning the identifier `,_jsx(_components.strong,{children:`must`}),` be from the same tenant in the URL domain or the request will be rejected.`]}),`\n`,_jsx(_components.p,{children:`If your application or API calls any of the listed endpoints, you must configure your API calls to make sure the identifier of the requesting tenant and hostname are the same:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`/oauth/token`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`/co/authenticate`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`/userinfo`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`/login`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`/oauth/revoke`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`/mfa/challenge`})}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`/p/\u003cconnection-type>/\u003cticket>`}),` (Enterprise connection provisioning endpoint)`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`To learn more, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/tenant-hostname-migration`,children:`Tenant Hostname Validation Migration`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`node-js-16-migration`,children:`Node.js 16 Migration`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: April 30, 2022`]}),`\n`,_jsxs(_components.p,{children:[`On 30 Apr 2022, `,_jsx(_components.a,{href:`https://github.com/nodejs/Release#release-schedule`,children:`Node.js v12 went out of long-term support (LTS)`}),`, which means that the Node.js development team no longer back-ports critical security fixes to this version. This could potentially expose your extensibility code to security vulnerabilities. Therefore, Auth0 is migrating from Node 12 to Node 16.`]}),`\n`,_jsxs(_components.p,{children:[`Although the Node 16 update will not introduce any breaking changes in the Node.js standard library (Rules and Custom Database Action Scripts are affected; see the `,_jsx(_components.a,{href:`#breaking-changes-rules-only`,children:`Breaking changes - Rules and Custom Database Action Scripts only`}),` section), we encourage customers on Node version 12 to stay current with Active Long-Term Support (LTS) Node versions for security and compliance purposes. Customers who are still on Node 8 are out of security compliance and must migrate to Node 16 to eliminate security risks. We removed the Node 8 runtime on\\xA022 Feb 2022 for Public Cloud tenants and removed it in the April 2022 Private Cloud release. After these dates, tenants still set to Node 8 run the risk of a service interruption.`]}),`\n`,_jsx(Heading,{level:`2`,id:`opaque-access-token-and-authorization-code-fixed-length`,children:`Opaque Access Token and Authorization Code Fixed Length`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: October 7, 2021 (Public Cloud), December 2021 (Private Cloud)`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: April 12, 2022 (Public Cloud), June 30, 2022 (Private Cloud)`]}),`\n`,_jsxs(_components.p,{children:[`Beginning April 12, 2022 in Public Cloud and with the December 2021 Private Cloud, access token and authorization codes will be issued with varied lengths to support `,_jsx(_components.a,{href:`https://datatracker.ietf.org/doc/html/rfc6749`,children:`OAuth specification RFC6749`}),` to avoid clients making assumptions about authorization code and access token values. Currently, the access token and authorization code sizes are fixed. The current size of the authorization code is shorter than what some security practitioners recommend. Through this change, Auth0 provides a stronger code and token while also improving the performance of Auth0 systems.`]}),`\n`,_jsx(_components.p,{children:`Customers with systems configured to rely on specific-sized authorization code and access token length must change from fixed-sized to variable-sized configurations before April 12, 2022 in Public Cloud or the June 30, 2022 Private Cloud release.`}),`\n`,_jsx(Heading,{level:`2`,id:`node-js-v8-extensibility-runtime-end-of-life`,children:`Node.js v8 Extensibility Runtime End of Life`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 15 April 2020`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 25 February 2022 (Public Cloud), April 2022 (Private Cloud release)`]}),`\n`,_jsxs(_components.p,{children:[`Beginning 13 December 2019,\\xA0`,_jsx(_components.a,{href:`https://github.com/nodejs/Release#release-schedule`,children:`Node.js v8 was no longer under long-term support (LTS)`}),`. This means that critical security fixes were no longer back-ported to this version. Customers who are still on Node 8 are out of security compliance and must migrate to Node 12 to eliminate security risks. To learn more about how to migrate your tenant-level Node version from 8 to 12, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-nodejs-12`,children:`Migrate from Node.js 8 to Node.js 12`}),`.`]}),`\n`,_jsxs(_components.p,{children:[`Because Node.js v12 is also going out of LTS in 2022, we also highly encourage all customers using Rules and Hooks to migrate to Actions using Node 16 as soon as possible, and before Node 12 support expires formally from the Node.js community on 30 April 2022. To learn more about required migration steps, read `,_jsx(_components.a,{href:`/docs/customize/actions/migrate/migrate-from-rules-to-actions`,children:`Migrate Rules and Hooks to Actions`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`legacy-network-edge-deprecation`,children:`Legacy Network Edge Deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 05 May 2021 (Public Cloud)`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 03 November 2021 (Public Cloud)`]}),`\n`,_jsxs(_components.p,{children:[`Auth0 legacy network edge will cease to function on Public Cloud. After 03 November 2021, Public Cloud tenants who have not completed a migration to the new Auth0 network edge will no longer receive traffic. All new `,_jsx(Tooltip,{tip:`Custom Domain: Third-party domain with a specialized, or vanity, name.`,cta:`View Glossary`,href:`/docs/glossary?term=custom+domains`,children:`custom domains`}),` are automatically created on the new network edge.`]}),`\n`,_jsx(Heading,{level:`2`,id:`unpaginated-management-api-v2-request-deprecation`,children:`Unpaginated Management API v2 Request deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 21 July 2020 (Public Cloud)`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 26 January 2021 (Public Cloud), February 2022 (Private Cloud release)`]}),`\n`,_jsxs(_components.p,{children:[`After 26 January 2021, requests to the following Management API v2 endpoints will return a maximum of 50 items for Public Cloud tenants. To retrieve more items, you must include `,_jsx(_components.code,{children:`page`}),` and `,_jsx(_components.code,{children:`per_page`}),` parameters. Beginning on 21 July 2020, Auth0 will display tenant logs and a migration toggle to help you prepare for this change.`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`GET /api/v2/clients`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`GET /api/v2/client-grants`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`GET /api/v2/grants`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`GET /api/v2/connections`})}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`GET /api/v2/device-crecentials`}),` (when the `,_jsx(_components.code,{children:`type`}),` query parameter is used)`]}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`GET /api/v2/resource-servers`})}),`\n`,_jsx(_components.li,{children:_jsx(_components.code,{children:`GET /api/v2/rules`})}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`All Public Cloud tenants are affected that are created before 21 July 2020 and are actively calling affected endpoints without passing the\\xA0`,_jsx(_components.code,{children:`per_page`}),`\\xA0parameter for queries that can return more than 1 result. Tenants are not affected if they are created after 21 July 2020, are not using the affected endpoints, are using the affected endpoints and passing the\\xA0`,_jsx(_components.code,{children:`per_page`}),`\\xA0parameter, or are making queries that always return only 1 result. To learn more, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-paginated-queries`,children:`Migrate to Management API v2 Endpoint Paginated Queries`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`private-cloud-custom-domain-deprecation`,children:`Private Cloud Custom Domain Deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 17 June 2021`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 20 December 2021`]}),`\n`,_jsx(_components.p,{children:`To achieve consistency across all Auth0 deployments and focus on enhancing the Auth0 Custom Domain feature, we are discontinuing the Private Cloud Custom Domain capability on December 20, 2021. Consistency enables us to enhance the feature and fix reliability issues faster, improving operational efficiency and enabling customers to get value out of custom domains more quickly.`}),`\n`,_jsx(Heading,{level:`2`,id:`logout-redirect-validation`,children:`Logout Redirect Validation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 25 May 2021`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 01 December 2021`]}),`\n`,_jsxs(_components.p,{children:[`On\\xA001 December 2021, the logout behavior will change to always redirect users to the URI passed to the Auth0 logout APIs instead of using the\\xA0`,_jsx(_components.code,{children:`returnTo`}),`\\xA0query parameter passed by `,_jsx(Tooltip,{tip:`Identity Provider (IdP): Service that stores and manages digital identities.`,cta:`View Glossary`,href:`/docs/glossary?term=Identity+Providers`,children:`Identity Providers`}),` to\\xA0`,_jsx(_components.code,{children:`/login/callback`}),`\\xA0during the execution of the logout. If Auth0 does not have a record of a preceding call to one of these APIs, logout will complete, but redirection will not occur and an error page will be displayed to end users.\\xA0To learn more, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/deprecations-and-migrations/logout-return-to`,children:`Logout Redirects Migration Guide`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`application-admin-dashboard-role-deprecation`,children:`Application Admin Dashboard Role deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 01 February 2021`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 30 September 2021 (Public Cloud), September 2021 (Private Cloud monthly release)`]}),`\n`,_jsx(_components.p,{children:`Auth0 is changing the role-based access control to the Dashboard. The Application Administrator role as defined today is being deprecated. After 01 February 2021, administrators won’t be able to invite members with the deprecated Application Administrator role. Existing application-specific administrators will continue to be able to use the Dashboard with the existing permission set until the end of life date.`}),`\n`,_jsxs(_components.p,{children:[`A new set of Dashboard roles is available for improved and more secure collaboration among team members, including viewer and editor roles with limited access. A new `,_jsx(_components.strong,{children:`Editor - Specific Apps`}),` role replaces the previous `,_jsx(_components.strong,{children:`Application Administrator`}),` role for subscription plans where editor roles are supported.`]}),`\n`,_jsx(_components.p,{children:`Your tenants will be affected by this deprecation if the following criteria are met:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Created before 01 February 2021`}),`\n`,_jsxs(_components.li,{children:[`Have at least one tenant member with the `,_jsx(_components.strong,{children:`Application Admin`}),` role`]}),`\n`,_jsx(_components.li,{children:`Haven’t opted-in to the Dashboard roles feature preview`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Beginning on 01 February 2021, Auth0 will display a migration toggle to help you prepare for this change. To learn more, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-tenant-member-roles`,children:`Migrate to Manage Dashboard New Roles`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`legacy-tls-deprecation`,children:`Legacy TLS Deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 19 January 2021`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 10 May 2021 (Public Cloud), June Private Cloud Release (v2106)`]}),`\n`,_jsx(_components.p,{children:`As of 10 May 2021 for Public Cloud and the June Private Cloud Release (v2106), the Auth0 network edge will no longer accept TLS 1.0 or TLS 1.1 traffic.\\xA0 These legacy protocols are insecure, with well-known weaknesses and vulnerabilities within the industry.\\xA0 For maximum security, all Auth0 clients must upgrade to TLS 1.2 or later. The exact details and steps required will vary, depending on your application.`}),`\n`,_jsx(Heading,{level:`2`,id:`auth0-analytics-js-deprecation`,children:`Auth0-analytics.js deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecation`}),`: January 2018`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: January 2021`]}),`\n`,_jsxs(_components.p,{children:[`Auth0 has deprecated the use of the `,_jsx(_components.a,{href:`https://github.com/auth0/auth0-analytics.js/`,children:`auth0-analytics.js library`}),` that adds Facebook and Google Analytics integration with Lock. It listens for events in Lock and passes them to the Auth0-tag-manager.js library. It may still function in some legacy cases. This library is no longer maintained. You may need to write custom code to use `,_jsx(_components.a,{href:`https://github.com/auth0/auth0-tag-manager`,children:`auth0-tag-manage.js`}),` to manage proxy requests to third-party analytics libraries such as Facebook, X, and Google.`]}),`\n`,_jsx(Heading,{level:`2`,id:`device-credential-metadata-without-user_id-deprecation`,children:`Device credential metadata without user_id deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 31 August 2020`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 17 December 2020`]}),`\n`,_jsxs(_components.p,{children:[`Auth0 now requires that you provide the `,_jsx(_components.code,{children:`user_id`}),` when you use the `,_jsx(_components.a,{href:`/docs/api/management/v2/#!/Device_Credentials/get_device_credentials`,children:`GET /api/v2/device-credentials endpoint`}),`. If your request does not provide a `,_jsx(_components.code,{children:`user_id`}),`, it will return a 400 status code. Check the `,_jsx(_components.code,{children:`depnote`}),` in your tenant logs to see if you are affected by this deprecation.`]}),`\n`,_jsxs(_components.p,{children:[`Auth0 has identified tenants affected by this deprecation and contacted the administrators for those tenants. If your tenant is currently making requests without a `,_jsx(_components.code,{children:`user_id`}),`, you should make the change as soon as possible.`]}),`\n`,_jsx(Heading,{level:`2`,id:`azure-ad/adfs-email-verification-deprecation`,children:`Azure AD/ADFS email verification deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Public Cloud: 18 November 2020`}),`\n`,_jsx(_components.li,{children:`Private Cloud: 01 December 2020`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Public Cloud: 18 May 2021`}),`\n`,_jsx(_components.li,{children:`Private Cloud: June Private Cloud Release (v2106)`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`Auth0 previously set the `,_jsx(_components.code,{children:`email_verified`}),` field to true in Azure AD and ADFS connections. If you used Azure AD/ADFS connections before this deprecation date, you have a tenant setting that overrides the connection setting for email verification and keeps the previous behavior.`]}),`\n`,_jsxs(_components.p,{children:[`On 18 May 2021 in Public Cloud and the June Private Cloud Release (v2106), Auth0 begins using the connection-level property for all Azure AD/ADFS connections. You should make sure all your connections are configured properly before that date. To learn more, read `,_jsx(_components.a,{href:`/docs/authenticate/identity-providers/enterprise-identity-providers/azuread-adfs-email-verification`,children:`Email Verification for Azure AD and ADFS`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`samesite-cookie-attribute-changes`,children:`sameSite cookie attribute changes`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Effective`}),`: February 2020`]}),`\n`,_jsx(_components.p,{children:`Google Chrome v80 is changing the way it handles cookies. To that end, Auth0 will implement the following changes in the way it handles cookies:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Cookies without the `,_jsx(_components.code,{children:`samesite`}),` attribute set will be set to `,_jsx(_components.code,{children:`lax`})]}),`\n`,_jsxs(_components.li,{children:[`Cookies with `,_jsx(_components.code,{children:`sameSite=none`}),` must be secured, otherwise they cannot be saved in the browser’s cookie jar`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`The goal of these changes is to improve security and help mitigate CSRF attacks. For details, see `,_jsx(_components.a,{href:`/docs/manage-users/cookies/samesite-cookie-attribute-changes`,children:`sameSite Cookie Attribute Changes`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`user-search-v2-deprecation`,children:`User Search v2 deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 10 November 2018`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 30 June 2019 (Public Cloud), May 2021 (Private Cloud monthly release)`]}),`\n`,_jsx(_components.p,{children:`For Public Cloud, User Search v2 was deprecated and you should have taken action before 30 June 2019. Notifications were sent to customers that need to complete this migration.`}),`\n`,_jsx(_components.p,{children:`For Private Cloud, User Search v1 and v2 endpoints will be no longer be available after the May Private Cloud monthly release and have been replaced with the new User Search v3 endpoint.`}),`\n`,_jsx(Heading,{level:`2`,id:`passwordless-endpoint-from-confidential-applications-deprecation`,children:`Passwordless Endpoint from Confidential Applications deprecation`}),`\n`,_jsxs(_components.p,{children:[`Auth0 has deprecated the use of the `,_jsx(_components.code,{children:`/passwordless/start`}),` endpoint from confidential applications when Auth0 cannot authenticate that the call is made on behalf of the application. To learn more, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-passwordless`,children:`Migrate to Passwordless Endpoint from Confidential Applications`}),`.Clickjacking Protection for `,_jsx(Tooltip,{tip:`Universal Login: Your application redirects to Universal Login, hosted on Auth0's Authorization Server, to verify a user's identity.`,cta:`View Glossary`,href:`/docs/glossary?term=Universal+Login`,children:`Universal Login`}),` changes`]}),`\n`,_jsxs(_components.p,{children:[`To prevent clickjacking, in cases where you render your login page in an iframe, Auth0 has added an opt-in to add headers which we strongly recommend you enable. For details, see `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/clickjacking-protection-for-universal-login`,children:`Clickjacking Protection for Universal Login Change`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`management-api-endpoints-using-id-token-credentials-deprecation`,children:`Management API endpoints using ID token credentials deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecation`}),`: 31 March 2018`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: TBD`]}),`\n`,_jsxs(_components.p,{children:[`Auth0 is deprecating the use of ID tokens as credentials to call some of the users and device endpoints and replacing it with the use of access tokens instead. For details, see `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-calling-api-with-access-tokens`,children:`Migrate to Management API Endpoints with Access Tokens`}),` and `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/link-user-accounts-with-access-tokens-migration`,children:`Migrate to Link User Accounts with Access Tokens`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`resource-owner-password-/oauth/ro-deprecation`,children:`Resource Owner Password /oauth/ro deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecation`}),`: 08 July 2017`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: TBD`]}),`\n`,_jsxs(_components.p,{children:[`As of 08 July 2017 Auth0 has deprecated the`,_jsx(_components.code,{children:`/oauth/ro`}),`\\xA0endpoint for both password and `,_jsx(Tooltip,{tip:`Passwordless: Form of authentication that does not rely on a password as the first factor.`,cta:`View Glossary`,href:`/docs/glossary?term=passwordless`,children:`passwordless`}),` connections. You can now implement the same functionality using the\\xA0`,_jsx(_components.code,{children:`/oauth/token`}),` endpoint. To learn more, read `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migration-oauthro-oauthtoken`,children:`Resource Owner Password Flow Migration`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`management-api-v1-deprecation`,children:`Management API v1 deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecation`}),`: October 2016`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Public Cloud: 13 July 2020`}),`\n`,_jsx(_components.li,{children:`Private Cloud: November 2020 monthly release`}),`\n`]}),`\n`,_jsx(_components.p,{children:`Management API v1 will reach its End of Life in the Public Cloud on 13 July 2020. Management API v1 will be included in the Private Cloud until the November 2020 monthly release, which is the first release that will not include Management API v1. You may be required to take action before that date to ensure no interruption to your service. Notifications have been and will continue to be sent to customers that need to complete this migration.`}),`\n`,_jsx(Heading,{level:`2`,id:`instagram-connection-deprecation`,children:`Instagram connection deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 05 March 2020`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 31 March 2020`]}),`\n`,_jsxs(_components.p,{children:[`Facebook announced that on 31 March 2020 that they will turn off the Instagram legacy APIs, and they won’t provide an alternative to implement login with Instagram. For details, see `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/instagram-connection-deprecation`,children:`Instagram Connection Deprecation`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`yahoo-api-changes`,children:`Yahoo API changes`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecated`}),`: 01 March 2020`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 01 March 2020`]}),`\n`,_jsxs(_components.p,{children:[`Yahoo changed the way to retrieve the user profile and the information included in it. For details, see `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/yahoo-api-changes`,children:`Yahoo API Changes`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`google-cloud-messaging-deprecation`,children:`Google Cloud Messaging deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecation`}),`: 11 April 2019`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 11 April 2019`]}),`\n`,_jsxs(_components.p,{children:[`As of 11 April 2019, `,_jsx(_components.a,{href:`https://firebase.googleblog.com/2018/04/time-to-upgrade-from-gcm-to-fcm.html`,children:`Google deprecated`}),` and replaced Google Cloud Messaging (GCM) with Firebase Cloud Messaging (FCM). For details, see `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/google-firebase-migration`,children:`Google to Firebase Cloud Messaging Migration`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`facebook-social-context-field-deprecation`,children:`Facebook Social Context field deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecation`}),`: 30 April 2019`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: 30 July 2019`]}),`\n`,_jsxs(_components.p,{children:[`On 30 April 2019, Facebook deprecated the use of the `,_jsx(_components.strong,{children:`Social Context`}),` field for new applications. For details, see `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/facebook-social-context-field-deprecation`,children:`Facebook Social Context Field Deprecation`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`facebook-graph-api-changes`,children:`Facebook Graph API changes`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecation`}),`: 01 August 2018`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`: Graph API v3 released 08 January 2019`]}),`\n`,_jsxs(_components.p,{children:[`As of 01 August 2018, Facebook has changed the Facebook Graph API permissions and fields that can be requested. Auth0 has updated Facebook Connections to reflect these changes and modified the connection interface for clarity. See `,_jsx(_components.a,{href:`https://developers.facebook.com/docs/facebook-login/changelog#2018-07-02`,children:`Facebook Login Changelog: Recent Changes to Facebook Login`}),` for complete details and key dates. For details, see `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/facebook-graph-api-changes`,children:`Facebook Graph API Changes`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`lock-v11-and-auth0-js-v9`,children:`Lock v11 and Auth0.js v9`}),`\n`,_jsxs(_components.p,{children:[`We are continually improving the security of our service. As part of this effort, we have deprecated the Legacy Lock API, which consists of the `,_jsx(_components.code,{children:`/usernamepassword/login`}),` and `,_jsx(_components.code,{children:`/ssodata`}),` endpoints. These endpoints are used by Lock.js v8, v9, and v10 and Auth0.js, v6, v7, and v8, and can also be called directly from applications.`]}),`\n`,_jsxs(_components.p,{children:[`As of August 6, 2018, Auth0 has permanently disabled the Legacy Lock API. This removal of service fully mitigates the CSRF vulnerability `,_jsx(_components.a,{href:`https://auth0.com/blog/managing-and-mitigating-security-vulnerabilities-at-auth0/`,children:`disclosed in April 2018`}),`. This also ends the soft removal grace period that was first announced on 16 July 2018, meaning the Legacy Lock API can no longer be re-enabled.`]}),`\n`,_jsx(_components.p,{children:`If your Legacy Lock API migration has not yet been completed, your users may experience an outage, failed logins, or other adverse effects. You will need to complete your migration in order to restore normal functionality. Check deprecation errors to identify the source(s) of any errors in your tenant logs related to deprecations.`}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected`,children:`Features affected`}),`\n`,_jsxs(_components.p,{children:[`If you are currently implementing login in your application with Lock v8, v9, or v10, or Auth0.js v6, v7, or v8, you are affected by these changes. Additionally, you are affected if your application calls the `,_jsx(_components.code,{children:`/usernamepassword/login`}),` or `,_jsx(_components.code,{children:`/ssodata`}),` endpoints directly via the API.`]}),`\n`,_jsx(_components.p,{children:`We recommend that applications using Universal Login update the library versions they use inside of the login page.`}),`\n`,_jsx(_components.p,{children:`However, those who are using Lock or Auth0.js embedded within their applications, or are calling the affected API endpoints directly, are required to update, and applications which still use deprecated endpoints will cease to function properly after the removal of service date.`}),`\n`,_jsx(_components.p,{children:`Libraries and SDKs not explicitly named here are not affected by this migration.`}),`\n`,_jsx(Heading,{level:`2`,id:`tenant-log-search-v2-deprecation`,children:`Tenant Log Search v2 deprecation`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Deprecation`}),`: 21 May 2019`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End of life`}),`:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Free: 09 July 2019`}),`\n`,_jsx(_components.li,{children:`Essential (former Developer): 20 August 2019`}),`\n`,_jsx(_components.li,{children:`Professional (former Developer Pro): 20 August 2019`}),`\n`,_jsx(_components.li,{children:`Enterprise: 04 November 2019`}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`To provide our customers with the most reliable and scalable solution, Auth0 has deprecated Tenant Logs Search Engine v2 in favor of v3. Auth0 is proactively migrating customers unaffected by this change, while those who are potentially affected are being notified to opt in for v3 during the provided grace period.\\xA0For details, see `,_jsx(_components.a,{href:`/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-tenant-log-search-v3`,children:`Migrate to Tenant Log Search v1 to V2`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`new-ip-addresses-for-allowlisting-in-australia`,children:`New IP addresses for Allowlisting in Australia`}),`\n`,_jsx(_components.p,{children:`As of 30 September 2017, Auth0 updated its cloud environments and traffic from Australia originates from new IP addresses. If you are allowlisting IP addresses, you will need to add the new addresses to your firewall rules.`}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-2`,children:`Features affected`}),`\n`,_jsxs(_components.p,{children:[`If you are using a custom database connection, rule, and/or custom email provider that connects to your environment, `,_jsx(_components.strong,{children:`and`}),` you have implemented firewall restrictions for IP address ranges, then you are affected by this change. You will need to make sure the following IP addresses are allowed to go through your firewall:`]}),`\n`,_jsx(_components.p,{children:_jsx(_components.code,{children:`13.55.232.24, 13.54.254.182, 13.210.52.131, 52.62.91.160, 52.63.36.78, 52.64.84.177, 52.64.111.197, 52.64.120.184, 54.66.205.24, 54.79.46.4, 54.153.131.0`})}),`\n`,_jsx(Heading,{level:`2`,id:`new-ip-addresses-for-allowlisting-in-europe`,children:`New IP addresses for allowlisting in Europe`}),`\n`,_jsx(_components.p,{children:`As of 30 September 2017, Auth0 updated its cloud environments and traffic from Europe originates from new IP addresses. If you are allowlisting IP addresses, you will need to add the new addresses to your firewall rules.`}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-3`,children:`Features affected`}),`\n`,_jsx(_components.p,{children:`If you are using a custom database connection, rule, and/or custom email provider that connects to your environment, and you have implemented firewall restrictions for IP address ranges, then you are affected by this change. You will need to make sure the following IP addresses are allowed to go through your firewall:`}),`\n`,_jsx(_components.p,{children:_jsx(_components.code,{children:`34.253.4.94, 35.156.51.163, 35.157.221.52, 52.16.193.66, 52.16.224.164, 52.28.45.240, 52.28.56.226, 52.28.184.187, 52.28.212.16, 52.29.176.99, 52.50.106.250, 52.57.230.214, 52.211.56.181, 52.213.216.142, 52.213.38.246, 52.213.74.69`})}),`\n`,_jsx(Heading,{level:`2`,id:`cdn-provider-migration-in-the-europe-and-australia-environments`,children:`CDN provider migration in the Europe and Australia environments`}),`\n`,_jsx(_components.p,{children:`As of 12 July 2017, Auth0 has improved the Auth0 CDN scaling and availability. We now use Amazon CloudFront. We have already made this change in the US environment, and are now ready to do so in Europe and Australia.`}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-4`,children:`Features affected`}),`\n`,_jsx(_components.p,{children:`You are affected if you use Lock (hosted by our CDN) in Europe or Australia. This change shouldn’t cause any disruption or change in behavior in your applications, so you don’t have to do anything. This notification is for information only.`}),`\n`,_jsx(Heading,{level:`2`,id:`password-and-refresh-token-exchange-rules-migration`,children:`Password and refresh token exchange rules migration`}),`\n`,_jsxs(_components.p,{children:[`On 31 May 2017, as part of Auth0’s efforts to improve security, we added the ability to execute rules during the `,_jsx(Tooltip,{tip:`OAuth 2.0: Authorization framework that defines authorization protocols and workflows.`,cta:`View Glossary`,href:`/docs/glossary?term=OAuth+2.0`,children:`OAuth 2.0`}),` `,_jsx(Tooltip,{tip:`OAuth 2.0: Authorization framework that defines authorization protocols and workflows.`,cta:`View Glossary`,href:`/docs/glossary?term=Resource+Owner`,children:`Resource Owner`}),` Password Grant exchange (the password exchange) and the refresh token exchange.`]}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-5`,children:`Features affected`}),`\n`,_jsxs(_components.p,{children:[`You are using this feature if you are calling the `,_jsx(_components.code,{children:`/oauth/token`}),` endpoint of our Authentication API with `,_jsx(_components.code,{children:`grant_type = \"password\"`}),` , `,_jsx(_components.code,{children:`grant_type = \"http://auth0.com/oauth/grant-type/password-realm\"`}),`, or `,_jsx(_components.code,{children:`grant_type = \"refresh_token\"`}),`.`]}),`\n`,_jsx(_components.p,{children:`You could be impacted if you are currently using these exchanges and have rules defined in Dashboard. In order to ensure a smooth transition, we have disabled the rules execution on these specific exchanges for your tenant. These rules will now execute for all new customers, as well as customers who have not yet used these exchanges.`}),`\n`,_jsxs(_components.p,{children:[`You can add logic to your rules to alter their behavior for these exchanges by checking the `,_jsx(_components.code,{children:`context.protocol`}),` property:`]}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`oauth2-password`}),` indicates the password (and password-realm) exchange`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`oauth2-refresh-token`}),` indicates the Refresh Token exchange`]}),`\n`]}),`\n`,_jsxs(_components.p,{children:[`If you would like to enable the new behavior on this tenant for testing before the mandatory opt-in date, login to `,_jsx(_components.a,{href:`https://manage.auth0.com/#`,children:`Dashboard`}),` and enable the `,_jsx(_components.strong,{children:`Run Rules on Password and Refresh Token Exchanges`}),` toggle in `,_jsx(_components.a,{href:`https://manage.auth0.com/#/tenant/advanced`,children:`Tenant Settings > Advanced`}),`.`]}),`\n`,_jsx(Heading,{level:`2`,id:`account-linking-removal`,children:`Account linking removal`}),`\n`,_jsx(_components.p,{children:`On 01 March 2017, as part of Auth0’s efforts to improve security and standards compliance, we stopped supporting account linking as part of the authorization callback (that is, accepting an access token as part of the authorize call).`}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-6`,children:`Features affected`}),`\n`,_jsx(_components.p,{children:`If you received an email notification about it, then you are impacted by this change. As you work to update your applications to use the Management API to link accounts, you can check if you are still impacted, by checking your tenant logs for warnings. These entries will be logged if you are sending an Access Token in your authorize calls.`}),`\n`,_jsx(Heading,{level:`2`,id:`allowlist-ip-address-ranges`,children:`Allowlist IP address ranges`}),`\n`,_jsx(_components.p,{children:`As of 20 February 2017, Auth0 expanded into new US regions and traffic originating from these regions will have new IP addresses. If you allowlist IP addresses you will need to add the new addresses to your firewall rules.`}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-7`,children:`Features affected`}),`\n`,_jsx(_components.p,{children:`If you are using a custom database connection, rule, and/or custom email provider that connects to your environment, and you have implemented firewall restrictions for IP address ranges, then you are affected by this change. You will need to add the following IP addresses to your firewall rules:`}),`\n`,_jsx(_components.p,{children:_jsx(_components.code,{children:`138.91.154.99, 54.183.64.135, 54.67.77.38, 54.67.15.170,54.183.204.205, 54.173.21.107, 54.85.173.28, 35.167.74.121, 35.160.3.103,35.166.202.113, 52.14.40.253,52.14.38.78, 52.14.17.114, 52.71.209.77, 34.195.142.251, 52.200.94.42`})}),`\n`,_jsx(Heading,{level:`2`,id:`vulnerable-password-flow`,children:`Vulnerable password flow`}),`\n`,_jsx(_components.p,{children:`Prior to 01 February 2017, Auth0’s password reset flow allowed a user to enter their email and a new password. This triggered a confirmation email that to be sent to the user asking them to confirm that they requested a password reset.`}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-8`,children:`Features affected`}),`\n`,_jsx(_components.p,{children:`The issue is that the confirmation link could be inadvertently clicked by a user which would result in the user’s password being changed by an attacker.`}),`\n`,_jsx(_components.p,{children:`Lock version 9 and above uses the new password reset flow exclusively. Lock 8 and below does not handle the new password reset flow. We strongly recommend upgrading to Lock 9 or greater as soon as possible.`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Even if you are not using Lock, the vulnerable reset flow can be accessed directly through the API. (See the /dbconnections/change_password endpoint for details.) Auth0 strongly encourages you to change any app using the current flow to move immediately to the new reset flow and enable this migration.`})}),`\n`,_jsx(Heading,{level:`2`,id:`state-parameter-required-on-redirect-from-rule`,children:`State parameter required on redirect from rule`}),`\n`,_jsxs(_components.p,{children:[`As of 06 December 2016, when a redirect is done from an Auth0 rule, Auth0 generates and sends a state parameter in HTTP and check for a valid state parameter when flow returns to the `,_jsx(_components.code,{children:`/continue`}),` endpoint. The site to which the redirect goes has to capture the value of the state parameter and return it by adding it as a parameter when returning to the `,_jsx(_components.code,{children:`/continue`}),` endpoint.`]}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-9`,children:`Features affected`}),`\n`,_jsx(_components.p,{children:`You are affected by the change only if you redirect from rules, and do not yet capture and return (to the /continue end point) the state parameter.`}),`\n`,_jsx(Heading,{level:`2`,id:`delete-all-users-endpoint-change`,children:`Delete all users endpoint change`}),`\n`,_jsxs(_components.p,{children:[`Prior to 13 September 2016, the previous endpoint for deleting all users was `,_jsx(_components.code,{children:`DELETE /api/v2/users`}),`. This is similar to the endpoint to delete one user: DELETE `,_jsx(_components.code,{children:`/api/v2/users`}),`. To prevent accidental requests to the delete all users endpoint, the url has been changed to `,_jsx(_components.code,{children:`DELETE /api/v2/allusers`}),`. This should ensure that only intentional calls to this endpoint get made.`]}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-10`,children:`Features affected`}),`\n`,_jsx(_components.p,{children:`You are affected by the change only if you currently make use of the delete all users endpoint. If so, the only change you need to make is to change the URL as explained above.`}),`\n`,_jsx(Heading,{level:`2`,id:`email-delivery-template-customization-changes`,children:`Email delivery template customization changes`}),`\n`,_jsx(_components.p,{children:`As of 29 August 2016, Auth0’s built-in email provider is longer be supported for use in a production environment. The emails sent using the Auth0 provider will no longer be customizable. They will be restricted to the template and you will not be able to change the from address or subject line.`}),`\n`,_jsxs(_components.p,{children:[`The built-in email service may still be used for test purposes but you must switch to an Auth0-supported third-party service (`,_jsx(_components.a,{href:`https://aws.amazon.com/ses/`,children:`Amazon SES`}),`, `,_jsx(_components.a,{href:`https://mailchimp.com/features/transactional-email/`,children:`Mailchimp`}),`, `,_jsx(_components.a,{href:`https://sendgrid.com/en-us/pricing`,children:`SendGrid`}),` or another SMTP-based provider before moving your apps to production. If you already use a custom email provider, no action is necessary.`]}),`\n`,_jsx(Heading,{level:`2`,id:`identity-provider-access-tokens-removed-from-user-profile-and-id-token`,children:`Identity provider access tokens removed from user profile and ID token`}),`\n`,_jsxs(_components.p,{children:[`As of 08 August 2016, the format of the user profile JSON object (ID token) that is returned by Auth0 Authentication APIs changed to remove the identity provider access token and included in the user profile `,_jsx(_components.code,{children:`identities`}),` array.`]}),`\n`,_jsxs(_components.p,{children:[`To obtain a user’s identity provider access token, you will need to make an HTTP GET call to the `,_jsx(_components.code,{children:`/api/v2/users/{user-id}`}),` endpoint containing an API token generated with `,_jsx(_components.code,{children:`read:user_idp_tokens`}),` scope. You will still have access to the identity provider access token in the `,_jsx(_components.code,{children:`user`}),` argument in Auth0 rules.`]}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-11`,children:`Features affected`}),`\n`,_jsxs(_components.p,{children:[`You are affected by the change only if you are using the Identity Provider Access Token (`,_jsx(_components.code,{children:`identities[0].access_token`}),` in the user profile) outside of rules to call other services from the Identity Provider (such as Facebook Graph API, Google APIs, etc.). If your tenant was created after the change the update will be done automatically.`]}),`\n`,_jsx(Heading,{level:`2`,id:`tokeninfo-endpoint-validation`,children:`Tokeninfo endpoint validation`}),`\n`,_jsxs(_components.p,{children:[`As of 01 June 2016, when calling the Tokeninfo endpoint, the URL of the API call (for example `,_jsx(_components.code,{children:`https://{yourDomain}/`}),`) must match the value of the `,_jsx(_components.code,{children:`iss`}),` attribute of the ID Token being validated. If these values do not match, the response will be `,_jsx(_components.code,{children:`HTTP 400 - Bad Request`}),`.`]}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-12`,children:`Features affected`}),`\n`,_jsxs(_components.p,{children:[`If you are calling the Tokeninfo endpoint directly, make sure that the value of the `,_jsx(_components.code,{children:`iss`}),` attribute of the ID Token being validated matches your Auth0 tenant namespace: `,_jsx(_components.code,{children:`https://{yourDomain}/`}),`. You can use `,_jsx(_components.a,{href:`https://www.jwt.io/`,children:`jwt.io`}),` to decode the token to confirm the `,_jsx(_components.code,{children:`iss`}),` attribute value.`]}),`\n`,_jsx(Heading,{level:`2`,id:`email-delivery-from-address-changes`,children:`Email delivery from address changes`}),`\n`,_jsxs(_components.p,{children:[`On 27 April 2016, Auth0’s built-in email provider started sending all emails from a predefined from address (`,_jsx(_components.code,{children:`no-reply@auth0user.net`}),`). Custom Email Providers are now free. To customize the “from” address, you can switch to an Auth0-supported third-party service (`,_jsx(_components.a,{href:`https://aws.amazon.com/ses/`,children:`Amazon SES`}),`, `,_jsx(_components.a,{href:`https://mailchimp.com/features/transactional-email/`,children:`Mailchimp`}),`, `,_jsx(_components.a,{href:`https://sendgrid.com/en-us/pricing`,children:`SendGrid`}),`) or another SMTP-based provider. If you already use a custom email provider, nothing will change.`]}),`\n`,_jsx(Heading,{level:`2`,id:`patch-and-post-endpoints-no-longer-accept-secret_encoded-flag`,children:`Patch and Post endpoints no longer accept secret_encoded flag`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.code,{children:`jwt_configuration.secret_encoded`}),` configuration is no longer accepted by the PATCH and POST applications endpoints.`]}),`\n`,_jsx(_components.p,{children:`In order to further comply with the OIDC specification, Auth0 will no longer generate or accept base64 encoded application secrets for new applications.`}),`\n`,_jsxs(_components.p,{children:[`Existing applications with encoded secrets stored will remain intact and unchanged, but new applications will no longer use base64 encoding. The `,_jsx(_components.code,{children:`secret_encoded`}),` flag is no longer accepted or necessary, as a result.`]}),`\n`,_jsx(Heading,{level:`3`,id:`features-affected-13`,children:`Features affected`}),`\n`,_jsx(_components.p,{children:`You are affected by this change only if you interact with these endpoints directly.`})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"description":"List of Auth0 updates that have already been enabled for all customers.","sidebarTitle":"Overview","title":"Past Migrations","href":"/docs/troubleshoot/product-lifecycle/past-migrations"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Weak TLS 1.2 Cipher Suites","slug":"weak-tls-1-2-cipher-suites","depth":2,"children":[]},{"title":"New Management API Scopes Required for Connection Options","slug":"new-management-api-scopes-required-for-connection-options","depth":2,"children":[]},{"title":"Prompt for Organization Name Without SSO","slug":"prompt-for-organization-name-without-sso","depth":2,"children":[]},{"title":"Unconfirmed Login with Non-Verifiable Callback URI Redirects","slug":"unconfirmed-login-with-non-verifiable-callback-uri-redirects","depth":2,"children":[]},{"title":"Extended Attributes in Azure Active Directory (v1) Identity API Connections","slug":"extended-attributes-in-azure-active-directory-v1-identity-api-connections","depth":2,"children":[]},{"title":"Real-Time Webtask Logs Extension","slug":"real-time-webtask-logs-extension","depth":2,"children":[]},{"title":"Multiple Actions for Custom Phone and Email Provider Triggers","slug":"multiple-actions-for-custom-phone-and-email-provider-triggers","depth":2,"children":[]},{"title":"Uncustomizable Brute-force Protection Unblock Email Flow","slug":"uncustomizable-brute-force-protection-unblock-email-flow","depth":2,"children":[]},{"title":"Field fromSandbox in Authentication API Error Responses","slug":"field-fromsandbox-in-authentication-api-error-responses","depth":2,"children":[]},{"title":"Allow Omitting Password on SMTP Email Provider Host-Related Changes","slug":"allow-omitting-password-on-smtp-email-provider-host-related-changes","depth":2,"children":[]},{"title":"Unrestricted Offset Pagination in Connections Management API","slug":"unrestricted-offset-pagination-in-connections-management-api","depth":2,"children":[]},{"title":"Protected Properties in Non-Custom Social Connections","slug":"protected-properties-in-non-custom-social-connections","depth":2,"children":[]},{"title":"Unwarranted Session Removal After Management API User Updates","slug":"unwarranted-session-removal-after-management-api-user-updates","depth":2,"children":[]},{"title":"Mandatory Use of SNI for HTTPS requests","slug":"mandatory-use-of-sni-for-https-requests","depth":2,"children":[]},{"title":"Always Use HTTPS for Communication with Auth0","slug":"always-use-https-for-communication-with-auth0","depth":2,"children":[]},{"title":"Management API Transition: Updating Roles Assignment to Require Create Scope","slug":"management-api-transition-updating-roles-assignment-to-require-create-scope","depth":2,"children":[]},{"title":"Update Applications that use Cross-Origin Authentication","slug":"update-applications-that-use-cross-origin-authentication","depth":2,"children":[]},{"title":"Remove Subscription Tickets access for Tenant Admins","slug":"remove-subscription-tickets-access-for-tenant-admins","depth":2,"children":[]},{"title":"Password Reset and Email Verification Links in Tenant Logs Deprecation","slug":"password-reset-and-email-verification-links-in-tenant-logs-deprecation","depth":2,"children":[]},{"title":"Reducing Maximum Expiration Time for Login Transactions","slug":"reducing-maximum-expiration-time-for-login-transactions","depth":2,"children":[]},{"title":"Unregistered Scopes in Refresh Tokens Deprecation","slug":"unregistered-scopes-in-refresh-tokens-deprecation","depth":2,"children":[]},{"title":"auth0-cordova, angular-auth0, and express-oauth2-bearer Repo Deprecations","slug":"auth0-cordova-angular-auth0-and-express-oauth2-bearer-repo-deprecations","depth":2,"children":[]},{"title":"Actions Migration from Node.js 16 to Node.js 18","slug":"actions-migration-from-node-js-16-to-node-js-18","depth":2,"children":[]},{"title":"Support for edge.js in Extensibility Features","slug":"support-for-edge-js-in-extensibility-features","depth":2,"children":[]},{"title":"Support for oracledb in Extensibility Features","slug":"support-for-oracledb-in-extensibility-features","depth":2,"children":[]},{"title":"Auth0 Claims Provider for SharePoint 2010 / 2013","slug":"auth0-claims-provider-for-sharepoint-2010-/-2013","depth":2,"children":[]},{"title":"Checkpoint Pagination on Get Role Users Endpoint","slug":"checkpoint-pagination-on-get-role-users-endpoint","depth":2,"children":[]},{"title":"Legacy Custom Claims","slug":"legacy-custom-claims","depth":2,"children":[]},{"title":"Legacy Private Cloud Platform","slug":"legacy-private-cloud-platform","depth":2,"children":[]},{"title":"Log Extensions","slug":"log-extensions","depth":2,"children":[]},{"title":"Tenant Hostname Validation","slug":"tenant-hostname-validation","depth":2,"children":[]},{"title":"Node.js 16 Migration","slug":"node-js-16-migration","depth":2,"children":[]},{"title":"Opaque Access Token and Authorization Code Fixed Length","slug":"opaque-access-token-and-authorization-code-fixed-length","depth":2,"children":[]},{"title":"Node.js v8 Extensibility Runtime End of Life","slug":"node-js-v8-extensibility-runtime-end-of-life","depth":2,"children":[]},{"title":"Legacy Network Edge Deprecation","slug":"legacy-network-edge-deprecation","depth":2,"children":[]},{"title":"Unpaginated Management API v2 Request deprecation","slug":"unpaginated-management-api-v2-request-deprecation","depth":2,"children":[]},{"title":"Private Cloud Custom Domain Deprecation","slug":"private-cloud-custom-domain-deprecation","depth":2,"children":[]},{"title":"Logout Redirect Validation","slug":"logout-redirect-validation","depth":2,"children":[]},{"title":"Application Admin Dashboard Role deprecation","slug":"application-admin-dashboard-role-deprecation","depth":2,"children":[]},{"title":"Legacy TLS Deprecation","slug":"legacy-tls-deprecation","depth":2,"children":[]},{"title":"Auth0-analytics.js deprecation","slug":"auth0-analytics-js-deprecation","depth":2,"children":[]},{"title":"Device credential metadata without user_id deprecation","slug":"device-credential-metadata-without-user_id-deprecation","depth":2,"children":[]},{"title":"Azure AD/ADFS email verification deprecation","slug":"azure-ad/adfs-email-verification-deprecation","depth":2,"children":[]},{"title":"sameSite cookie attribute changes","slug":"samesite-cookie-attribute-changes","depth":2,"children":[]},{"title":"User Search v2 deprecation","slug":"user-search-v2-deprecation","depth":2,"children":[]},{"title":"Passwordless Endpoint from Confidential Applications deprecation","slug":"passwordless-endpoint-from-confidential-applications-deprecation","depth":2,"children":[]},{"title":"Management API endpoints using ID token credentials deprecation","slug":"management-api-endpoints-using-id-token-credentials-deprecation","depth":2,"children":[]},{"title":"Resource Owner Password /oauth/ro deprecation","slug":"resource-owner-password-/oauth/ro-deprecation","depth":2,"children":[]},{"title":"Management API v1 deprecation","slug":"management-api-v1-deprecation","depth":2,"children":[]},{"title":"Instagram connection deprecation","slug":"instagram-connection-deprecation","depth":2,"children":[]},{"title":"Yahoo API changes","slug":"yahoo-api-changes","depth":2,"children":[]},{"title":"Google Cloud Messaging deprecation","slug":"google-cloud-messaging-deprecation","depth":2,"children":[]},{"title":"Facebook Social Context field deprecation","slug":"facebook-social-context-field-deprecation","depth":2,"children":[]},{"title":"Facebook Graph API changes","slug":"facebook-graph-api-changes","depth":2,"children":[]},{"title":"Lock v11 and Auth0.js v9","slug":"lock-v11-and-auth0-js-v9","depth":2,"children":[{"title":"Features affected","slug":"features-affected","depth":3,"children":[]}]},{"title":"Tenant Log Search v2 deprecation","slug":"tenant-log-search-v2-deprecation","depth":2,"children":[]},{"title":"New IP addresses for Allowlisting in Australia","slug":"new-ip-addresses-for-allowlisting-in-australia","depth":2,"children":[{"title":"Features affected","slug":"features-affected-2","depth":3,"children":[]}]},{"title":"New IP addresses for allowlisting in Europe","slug":"new-ip-addresses-for-allowlisting-in-europe","depth":2,"children":[{"title":"Features affected","slug":"features-affected-3","depth":3,"children":[]}]},{"title":"CDN provider migration in the Europe and Australia environments","slug":"cdn-provider-migration-in-the-europe-and-australia-environments","depth":2,"children":[{"title":"Features affected","slug":"features-affected-4","depth":3,"children":[]}]},{"title":"Password and refresh token exchange rules migration","slug":"password-and-refresh-token-exchange-rules-migration","depth":2,"children":[{"title":"Features affected","slug":"features-affected-5","depth":3,"children":[]}]},{"title":"Account linking removal","slug":"account-linking-removal","depth":2,"children":[{"title":"Features affected","slug":"features-affected-6","depth":3,"children":[]}]},{"title":"Allowlist IP address ranges","slug":"allowlist-ip-address-ranges","depth":2,"children":[{"title":"Features affected","slug":"features-affected-7","depth":3,"children":[]}]},{"title":"Vulnerable password flow","slug":"vulnerable-password-flow","depth":2,"children":[{"title":"Features affected","slug":"features-affected-8","depth":3,"children":[]}]},{"title":"State parameter required on redirect from rule","slug":"state-parameter-required-on-redirect-from-rule","depth":2,"children":[{"title":"Features affected","slug":"features-affected-9","depth":3,"children":[]}]},{"title":"Delete all users endpoint change","slug":"delete-all-users-endpoint-change","depth":2,"children":[{"title":"Features affected","slug":"features-affected-10","depth":3,"children":[]}]},{"title":"Email delivery template customization changes","slug":"email-delivery-template-customization-changes","depth":2,"children":[]},{"title":"Identity provider access tokens removed from user profile and ID token","slug":"identity-provider-access-tokens-removed-from-user-profile-and-id-token","depth":2,"children":[{"title":"Features affected","slug":"features-affected-11","depth":3,"children":[]}]},{"title":"Tokeninfo endpoint validation","slug":"tokeninfo-endpoint-validation","depth":2,"children":[{"title":"Features affected","slug":"features-affected-12","depth":3,"children":[]}]},{"title":"Email delivery from address changes","slug":"email-delivery-from-address-changes","depth":2,"children":[]},{"title":"Patch and Post endpoints no longer accept secret_encoded flag","slug":"patch-and-post-endpoints-no-longer-accept-secret_encoded-flag","depth":2,"children":[{"title":"Features affected","slug":"features-affected-13","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":["/_mintlify/custom/auth0/68ac07e0f912aad4/docs/scripts/navbar-controller.js","/_mintlify/custom/auth0/98c52e2a822716a4/docs/scripts/overscroll-disable.js","/_mintlify/custom/auth0/15b21268d7cc82a0/ui/auth0-docs-ui-1.10.0.umd.js","/_mintlify/custom/auth0/edda60bac2809e28/ui/js/auth0-cli-language.js","/_mintlify/custom/auth0/af65702d2f0210f7/ui/universal-components/universal-components-1.0.27.umd.js"],"subdomain":"auth0","siteName":"Auth0 Docs","title":"Past Migrations - Auth0 Docs","relatedPagesConfig":{"enabled":true,"limit":5,"mode":"manual"},"navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/docs/troubleshoot/product-lifecycle/past-migrations","matchLevel":0},"fr-ca":{"href":"/docs/fr-ca/troubleshoot/product-lifecycle/past-migrations","matchLevel":1},"ja-jp":{"href":"/docs/ja-jp/troubleshoot/product-lifecycle/past-migrations","matchLevel":1}}},"lastModified":"2026-11-06T14:38:51.439Z","originalFileLocation":"docs/troubleshoot/product-lifecycle/past-migrations.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"List of Auth0 updates that have already been enabled for all customers.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Auth0 Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/svg+xml\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/logo/favicon.svg\">\u003clink data-mint-head rel=\"icon\" type=\"image/svg+xml\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/logo/favicon.svg\">\u003clink data-mint-head rel=\"icon\" type=\"image/svg+xml\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/logo/favicon.svg\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/svg+xml\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/logo/favicon.svg\">\u003cmeta data-mint-head property=\"og:title\" content=\"Past Migrations - Auth0 Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"List of Auth0 updates that have already been enabled for all customers.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Auth0 Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://auth0.mintlify.site/docs/images/share-image.png\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Past Migrations - Auth0 Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"List of Auth0 updates that have already been enabled for all customers.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://auth0.mintlify.site/docs/images/share-image.png\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/auth0/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Auth0 Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#9921FE\">\u003clink data-mint-head rel=\"canonical\" href=\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/troubleshoot/product-lifecycle/past-migrations.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr-CA\" href=\"https://auth0.com/docs/fr-ca/troubleshoot/product-lifecycle/past-migrations\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja-JP\" href=\"https://auth0.com/docs/ja-jp/troubleshoot/product-lifecycle/past-migrations\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://auth0.com/#organization\",\"name\":\"Auth0 Docs\",\"url\":\"https://auth0.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintlify.s3.us-west-1.amazonaws.com/auth0/docs/images/logo/light.svg\"}},{\"@type\":\"WebSite\",\"@id\":\"https://auth0.com#website\",\"name\":\"Auth0 Docs\",\"url\":\"https://auth0.com\",\"publisher\":{\"@id\":\"https://auth0.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations#webpage\",\"url\":\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations\",\"name\":\"Past Migrations\",\"description\":\"List of Auth0 updates that have already been enabled for all customers.\",\"dateModified\":\"2026-11-06T14:38:51.439Z\",\"isPartOf\":{\"@id\":\"https://auth0.com#website\"},\"breadcrumb\":{\"@id\":\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Product Lifecycle\",\"item\":\"https://auth0.com/docs/troubleshoot/product-lifecycle\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Past Migrations\",\"item\":\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations#article\",\"headline\":\"Past Migrations\",\"name\":\"Past Migrations\",\"description\":\"List of Auth0 updates that have already been enabled for all customers.\",\"url\":\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations\",\"mainEntityOfPage\":{\"@id\":\"https://auth0.com/docs/troubleshoot/product-lifecycle/past-migrations#webpage\"},\"image\":\"https://auth0.com/docs/images/share-image.png\",\"dateModified\":\"2026-11-06T14:38:51.439Z\",\"publisher\":{\"@id\":\"https://auth0.com/#organization\"},\"isPartOf\":{\"@id\":\"https://auth0.com#website\"}}]}\u003c/script>","agentPointerHref":"/docs/troubleshoot/product-lifecycle/past-migrations.md","siteName":"Auth0 Docs","nav":{"global":null,"languages":[{"language":"en","footer":{"socials":{"x-twitter":"https://x.com/auth0","github":"https://github.com/auth0","linkedin":"https://www.linkedin.com/company/auth0"},"links":[{"header":"Developers","items":[{"label":"Developer Hub","href":"https://developer.auth0.com"},{"label":"Code Samples \u0026 Guides","href":"https://developer.auth0.com/resources"},{"label":"Zero Index Newsletter","href":"https://auth0.com/blog/newsletter"},{"label":"Blog","href":"https://auth0.com/blog"},{"label":"Changelog","href":"https://auth0.com/changelog"}]},{"header":"Docs","items":[{"label":"Documentation","href":"https://auth0.com/docs"},{"label":"Quickstarts","href":"https://auth0.com/docs/quickstarts"},{"label":"APIs","href":"https://auth0.com/docs/api"},{"label":"SDK Libraries","href":"https://auth0.com/docs/libraries"},{"label":"Learn","href":"https://auth0.com/learn"},{"label":"Intro to IAM (CIAM)","href":"https://auth0.com/intro-to-iam"},{"label":"Reports","href":"https://auth0.com/resources/whitepapers"},{"label":"Webinars","href":"https://auth0.com/resources/webinars"}]},{"header":"Support Center","items":[{"label":"Community","href":"https://community.auth0.com"},{"label":"Help","href":"https://support.auth0.com"},{"label":"FAQs","href":"https://auth0.com/docs/troubleshoot"},{"label":"Auth0","href":"https://auth0.com"}]},{"header":"Company","items":[{"label":"Our Customers","href":"https://auth0.com/customers"},{"label":"Compliance","href":"https://auth0.com/security"},{"label":"Partners","href":"https://auth0.com/partners"},{"label":"Careers","href":"https://www.okta.com/company/careers"},{"label":"Okta + Auth0","href":"https://www.okta.com/okta-and-auth0"},{"label":"About us","href":"https://auth0.com/about"}]}]},"tabs":[{"tab":"Get Started","icon":"play","directory":"accordion","pages":[{"title":"Get Started","href":"/docs/get-started"}]},{"tab":"Authenticate","icon":"lock-keyhole","pages":[{"title":"Authenticate","href":"/docs/authenticate"}]},{"tab":"Manage Users","icon":"user-group","directory":"accordion","pages":[{"title":"Manage Users","href":"/docs/manage-users"}]},{"tab":"Brand","icon":"swatchbook","directory":"accordion","pages":[{"title":"Brand","href":"/docs/customize"}]},{"tab":"Extend","icon":"arrow-up-small-big","directory":"accordion","pages":[{"title":"Extend","href":"/docs/extend"}]},{"tab":"Secure","icon":"shield-check","pages":[{"title":"Secure","href":"/docs/secure"}]},{"tab":"Monitor","icon":"chart-simple","directory":"accordion","pages":[{"title":"Monitor","href":"/docs/deploy-monitor"}]},{"tab":"AI Agents \u0026 MCP","icon":"robot","directory":"accordion","pages":[{"title":"AI Agents \u0026 MCP","href":"/docs/ai-agents-mcp"}]},{"tab":"Platform","icon":"credit-card","pages":[{"title":"Auth0 Platform","href":"/docs/troubleshoot"},{"group":"Customer Support","root":{"title":"Customer Support","href":"/docs/troubleshoot/customer-support"},"pages":[{"title":"Support Plans","href":"/docs/troubleshoot/customer-support/support-plans"},{"title":"Product Support Matrix","href":"/docs/troubleshoot/customer-support/product-support-matrix"},{"title":"Service Level Agreements","href":"/docs/troubleshoot/customer-support/services-level-descriptions"},{"title":"Open and Manage Support Tickets","href":"/docs/troubleshoot/customer-support/open-and-manage-support-tickets"},{"title":"Responsible Disclosure Program","href":"/docs/troubleshoot/customer-support/responsible-disclosure-program-security-support-tickets"}]},{"group":"Account and Plan Management","pages":[{"title":"Update Billing Information","href":"/docs/troubleshoot/customer-support/update-billing-information"},{"title":"Manage your Auth0 Subscription Plan","sidebarTitle":"Manage Subscriptions","href":"/docs/troubleshoot/customer-support/manage-subscriptions"},{"title":"Delete or Reset Tenants","href":"/docs/troubleshoot/customer-support/manage-subscriptions/delete-or-reset-tenant"},{"title":"Export Data","href":"/docs/troubleshoot/customer-support/manage-subscriptions/export-data"},{"title":"Monitor Subscription Usage","href":"/docs/troubleshoot/customer-support/manage-subscriptions/monitor-subscription-usage"},{"title":"Reset Account Passwords","href":"/docs/troubleshoot/customer-support/reset-account-passwords"}]},{"group":"Operational Policies","root":{"title":"Auth0 Operational Policies","href":"/docs/troubleshoot/customer-support/operational-policies"},"pages":[{"title":"Billing Policy","href":"/docs/troubleshoot/customer-support/operational-policies/billing-policy"},{"title":"Auth0 Public Cloud Service Endpoints","href":"/docs/troubleshoot/customer-support/operational-policies/public-cloud-service-endpoints"},{"title":"Data Export and Transfer Policy","href":"/docs/troubleshoot/customer-support/operational-policies/data-export-and-transfer-policy"},{"title":"Change Freeze Policy","href":"/docs/troubleshoot/customer-support/operational-policies/change-freeze-policy"},{"title":"Load Testing Policy","href":"/docs/troubleshoot/customer-support/operational-policies/load-testing-policy"},{"title":"Penetration Testing Policy","href":"/docs/troubleshoot/customer-support/operational-policies/penetration-testing-policy"},{"group":"Rate Limit Policy","root":{"sidebarTitle":"Overview","title":"Rate Limit Policy","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy"},"pages":[{"title":"Rate Limit Use Cases","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-use-cases"},{"title":"Custom Rate Limit Policies","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/custom-rate-limit-policies"},{"group":"Rate Limit Configurations","root":{"sidebarTitle":"Overview","title":"Rate Limit Configurations","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations"},"pages":[{"title":"Free","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/free-public"},{"title":"Essentials and Professional","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/essentials-professional-b2b"},{"title":"Enterprise Rate Limits","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/enterprise-public"},{"title":"Tier Dev Private Cloud","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/tier-20-development-private-cloud"},{"title":"Private Cloud Basic 100 RPS (1x)","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/tier-100-rps-private-cloud"},{"title":"Private Cloud Performance 500 RPS (5x)","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/tier-500-rps-private-cloud"},{"title":"Private Cloud Performance 1500 RPS (15x)","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/tier-1500-rps-private-cloud"},{"title":"Private Cloud Performance 3000 RPS (30x) and 3000 RPS (30x) Burst","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/tier-3000-rps-private-cloud"},{"title":"Private Cloud Performance 6000 RPS (60x) and 6000 RPS (60x) Burst","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/tier-6000-rps-private-cloud"},{"title":"Private Cloud Performance 10,000 RPS (100x)","href":"/docs/troubleshoot/customer-support/operational-policies/rate-limit-policy/rate-limit-configurations/tier-10000-rps-private-cloud"}]}]},{"title":"Entity Limit Policy","href":"/docs/troubleshoot/customer-support/operational-policies/entity-limit-policy"},{"title":"Auth0 Versioning Strategy","href":"/docs/troubleshoot/customer-support/versioning-strategy"}]},{"group":"Data Privacy and Compliance","root":{"title":"Auth0 Data Privacy and Compliance","href":"/docs/secure/data-privacy-and-compliance"},"directory":"accordion","pages":[{"group":"GDPR","root":{"title":"Auth0 General Data Protection Regulation Compliance","href":"/docs/secure/data-privacy-and-compliance/gdpr"},"pages":[{"title":"GDPR: Conditions for Consent","sidebarTitle":"Conditions for Consent","href":"/docs/secure/data-privacy-and-compliance/gdpr/gdpr-conditions-for-consent"},{"title":"GDPR: Track Consent with Custom UI","sidebarTitle":"Track Consent with Custom UI","href":"/docs/secure/data-privacy-and-compliance/gdpr/gdpr-track-consent-with-custom-ui"},{"title":"GDPR: Track Consent with Lock","sidebarTitle":"Track Consent with Lock","href":"/docs/secure/data-privacy-and-compliance/gdpr/gdpr-track-consent-with-lock"},{"title":"GDPR: Right to Access, Correct, and Erase Data","sidebarTitle":"Right to Access, Correct, and Erase Data","href":"/docs/secure/data-privacy-and-compliance/gdpr/gdpr-right-to-access-correct-and-erase-data"},{"title":"GDPR: Data Minimization","sidebarTitle":"Data Minimization","href":"/docs/secure/data-privacy-and-compliance/gdpr/gdpr-data-minimization"},{"title":"GDPR: Data Portability","sidebarTitle":"Data Portability","href":"/docs/secure/data-privacy-and-compliance/gdpr/gdpr-data-portability"},{"title":"GDPR: Protect and Secure User Data","sidebarTitle":"Protect and Secure User Data","href":"/docs/secure/data-privacy-and-compliance/gdpr/gdpr-protect-and-secure-user-data"}]},{"title":"Auth0 Data Processing","href":"/docs/secure/data-privacy-and-compliance/data-processing"}]},{"group":"Product Lifecycle","root":{"title":"Product Lifecycle","href":"/docs/troubleshoot/product-lifecycle"},"pages":[{"title":"Product Release Stages","href":"/docs/troubleshoot/product-lifecycle/product-release-stages"},{"title":"Migration Process","href":"/docs/troubleshoot/product-lifecycle/migration-process"},{"group":"Deprecations and Migrations","root":{"sidebarTitle":"Overview","title":"Deprecations and Migrations","href":"/docs/troubleshoot/product-lifecycle/deprecations-and-migrations"},"pages":[{"title":"Migrate to Enhanced Security for Third-Party Applications","href":"/docs/troubleshoot/product-lifecycle/deprecations-and-migrations/migrate-to-enhanced-security-third-party-applications"},{"title":"Migrate from Node 18 to Node 22","href":"/docs/troubleshoot/product-lifecycle/deprecations-and-migrations/migrate-nodejs-22"},{"title":"Migrate Enabled Client Management to Dedicated Connection Endpoints","href":"/docs/troubleshoot/product-lifecycle/deprecations-and-migrations/migrate-dedicated-connection-endpoints"},{"description":"Learn how to identify, review, and migrate away from oversized Auth0 user profiles ahead of the 50KB size limit enforcement.","title":"Migrate Oversized User Profiles","href":"/docs/troubleshoot/product-lifecycle/deprecations-and-migrations/migrate-oversized-user-profiles"}]},{"group":"Past Migrations","root":{"sidebarTitle":"Overview","title":"Past Migrations","href":"/docs/troubleshoot/product-lifecycle/past-migrations"},"pages":[{"description":"Learn how to update your Auth0 integrations to manage connections with options-specific scopes.","sidebarTitle":"Migrate to Management API Connection Options Scopes","title":"Migrate to Management API Connection Options Scopes","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-connection-options-scope"},{"description":"Learn how you can enhance security and mitigate risks of application impersonation with HTTPS-based callbacks.","title":"Migrate to Non-Verifiable Callback URI End-User Confirmation","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-non-verifiable-callback-uri-end-user-confirmation"},{"description":"Describes Auth0 Actions items affected by the Node.js v12+6 to Node.js v18 migration.","title":"Migrate from Node 12 and 16 to Node 18","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-nodejs-16-to-nodejs-18"},{"description":"Get started using Auth0. Implement authentication for any kind of application in minutes.","title":"Migrate from edge.js extensibility features","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-from-edge-js-extensibility-features"},{"description":"Get started using Auth0. Implement authentication for any kind of application in minutes.","title":"Migrate from oracledb extensibility features","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-from-oracledb-extensibility-features"},{"description":"Describes migration from Legacy namespaced claims to custom claims.","title":"Migrate Custom Claims","href":"/docs/troubleshoot/product-lifecycle/past-migrations/custom-claims-migration"},{"description":"Migrate from log extensions to log streams or Auth0 Marketplace integrations.","title":"Migrate from Log Extensions","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-from-log-extensions"},{"description":"Describes how to check tenant logs for deprecation notices so you can migrate your application domain","title":"Migrate Tenant Hostname Validation","href":"/docs/troubleshoot/product-lifecycle/past-migrations/tenant-hostname-migration"},{"description":"Describes Auth0 features affected by the Node.js v12 to Node.js v16 migration and provides recommendations for migration.","title":"Migrate to Node.js 16","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-nodejs-16"},{"description":"Describes Auth0 features affected by the Node.js v8 to Node.js v12 migration and provides recommendations for migration.","title":"Migrate from Node.js 8 to Node.js 12","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-nodejs-12"},{"description":"Describes how to use the pagination parameters for specific Management API v2 endpoint queries.","title":"Migrate to Management API v2 Endpoint Paginated Queries","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-paginated-queries"},{"description":"Learn how to migrate to the new Dashboard tenant member roles feature.","title":"Migrate to New Tenant Member Roles","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-tenant-member-roles"},{"description":"Learn how to migrate from Auth0 Search v2 to v3.","title":"Migrate from Search v2 to v3","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-v2-v3"},{"description":"Describes the migration steps you need to take because Auth0 is deprecating the usage of the /passwordless/start endpoint from confidential applications without a client secret in the request.","title":"Migrate to Passwordless Endpoint from Confidential Applications","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-passwordless"},{"description":"Describes how Auth0 is adding a way to prevent the Universal Login pages from being embedded into an iframe to protect against clickjacking attacks.","title":"Clickjacking Protection for Universal Login Change","href":"/docs/troubleshoot/product-lifecycle/past-migrations/clickjacking-protection-for-universal-login"},{"description":"Describes the deprecation of using ID tokens as credentials for the Management API and how to migrate your configuration to use access tokens.","title":"Migrate to Management API Endpoints with Access Tokens","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-calling-api-with-access-tokens"},{"description":"Describes how to migrate from using ID tokens to access tokens when linking user accounts.","title":"Migrate to Access Tokens for Account Linking","href":"/docs/troubleshoot/product-lifecycle/past-migrations/link-user-accounts-with-access-tokens-migration"},{"description":"Describes how to migrate your Passwordless API calls and responses from /oauth/ro to /oauth/token.","title":"Migrate Your Resource Owner Passwordless Credentials Exchange","href":"/docs/troubleshoot/product-lifecycle/past-migrations/resource-owner-passwordless-credentials-exchange"},{"description":"Describes how to migrate your password API calls and responses from /oauth/ro to /oauth/token.","title":"Migrate Your Resource Owner Password Flow","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migration-oauthro-oauthtoken"},{"description":"Describes changes occuring due to Instagram deprecating their Authentication API.","title":"Instagram Connection Deprecation","href":"/docs/troubleshoot/product-lifecycle/past-migrations/instagram-connection-deprecation"},{"description":"Describes the Yahoo API changes that affect the structure of the user profile.","title":"Yahoo API Changes","href":"/docs/troubleshoot/product-lifecycle/past-migrations/yahoo-api-changes"},{"description":"Describes how to migrate your applications based on the Guardian Android SDK to Firebase Cloud Messaging","title":"Migrate from Google to Firebase Cloud Messaging","href":"/docs/troubleshoot/product-lifecycle/past-migrations/google-firebase-migration"},{"description":"Describes changes occuring due to Facebook removing access to the social context field from their profile.","title":"Facebook Social Context Field Deprecation","href":"/docs/troubleshoot/product-lifecycle/past-migrations/facebook-social-context-field-deprecation"},{"description":"The latest version of the Facebook Graph API changes what permissions and fields can be requested.","title":"Facebook Graph API Changes","href":"/docs/troubleshoot/product-lifecycle/past-migrations/facebook-graph-api-changes"},{"description":"Describes how to migrate from legacy authentication flows.","title":"Migrate from Legacy Authentication Flows","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-from-legacy-auth-flows"},{"description":"Describes how to migrate from Auth0 Logs Search v2 to v3.","title":"Migrate to Tenant Log Search v3","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-tenant-log-search-v3"},{"description":"Describes how to enable 1-hour expiration for interactive login flows.","title":"Migrate to 1-Hour Login Flows Expiration","href":"/docs/troubleshoot/product-lifecycle/past-migrations/migrate-to-1-hour-expiration"}]}]},{"url":"https://auth0.com/changelog","title":"Auth0 Changelog","href":"/docs/troubleshoot/customer-support/auth0-changelog"},{"url":"https://community.auth0.com/","title":"Auth0 Community","href":"/docs/troubleshoot/auth0-community"},{"url":"https://auth0.com/blog/","title":"Auth0 Blog","href":"/docs/troubleshoot/auth0-blog"}]},{"tab":"Dev Tools","icon":"code-simple","menu":[{"item":"APIs","icon":"code-pull-request","pages":[{"title":"APIs","href":"/docs/api"}]},{"item":"CLIs","icon":"terminal","pages":[{"title":"CLIs","href":"/docs/deploy-monitor/auth0-cli"}]},{"item":"SDKs","icon":"cube","dropdowns":[{"dropdown":"SDK Libraries","icon":"book","description":"","pages":[{"title":"SDK Libraries","href":"/docs/libraries"}]},{"dropdown":"auth0-spa-js","icon":"book-open","description":"version: v2.30.0","pages":[{"title":"auth0-spa-js","href":"/docs/sdk/auth0-spa-js/functions/createAuth0Client"}]},{"dropdown":"auth0-react","icon":"book-open","description":"version: v2.30.0","pages":[{"title":"auth0-react","href":"/docs/sdk/auth0-react/functions/Auth0Provider"}]},{"dropdown":"auth0-acul-js","icon":"book-open","description":"","pages":[{"title":"auth0-acul-js","href":"/docs/libraries/acul/js-sdk"}]},{"dropdown":"auth0-acul-react","icon":"book-open","description":"","pages":[{"title":"auth0-acul-react","href":"/docs/libraries/acul/react-sdk"}]},{"dropdown":"auth0-android","icon":"book-open","description":"","pages":[{"title":"auth0-android","href":"/docs/libraries/auth0-android/auth0-android-configuration"}]},{"dropdown":"auth0-php","icon":"book-open","description":"","pages":[{"title":"auth0-php","href":"/docs/libraries/auth0-php"}]}]},{"item":"Universal Components","icon":"objects-column","pages":[{"title":"Universal Components","href":"/docs/get-started/universal-components/universal-components-overview"}]}],"pages":[{"title":"Dev Tools","href":"/docs/api"}]},{"tab":"auth0-spa-js","hidden":true,"pages":[{"title":"auth0-spa-js","href":"/docs/sdk/auth0-spa-js/package-overview"}]},{"tab":"auth0-react","hidden":true,"pages":[{"title":"auth0-react","href":"/docs/sdk/auth0-react/package-overview"}]}]},{"language":"fr-ca","footer":{"socials":{"x-twitter":"https://x.com/auth0","github":"https://github.com/auth0","linkedin":"https://www.linkedin.com/company/auth0"},"links":[{"header":"Développeurs","items":[{"label":"Espace développeurs","href":"https://developer.auth0.com"},{"label":"Exemples de code et guides","href":"https://developer.auth0.com/resources"},{"label":"Infolettre Zero Index","href":"https://auth0.com/blog/newsletter"},{"label":"Blogue","href":"https://auth0.com/blog"},{"label":"Journal des modifications","href":"https://auth0.com/changelog"}]},{"header":"Documentation","items":[{"label":"Documentation","href":"https://auth0.com/docs"},{"label":"Guides de démarrage rapide","href":"https://auth0.com/docs/quickstarts"},{"label":"API","href":"https://auth0.com/docs/api"},{"label":"Bibliothèques SDK","href":"https://auth0.com/docs/libraries"},{"label":"Apprendre","href":"https://auth0.com/learn"},{"label":"Introduction à l’IAM (CIAM)","href":"https://auth0.com/intro-to-iam"},{"label":"Rapports","href":"https://auth0.com/resources/whitepapers"},{"label":"Webinaires","href":"https://auth0.com/resources/webinars"}]},{"header":"Centre d’assistance","items":[{"label":"Communauté","href":"https://community.auth0.com"},{"label":"Aide","href":"https://support.auth0.com"},{"label":"Foire aux questions","href":"https://auth0.com/docs/troubleshoot"},{"label":"Auth0","href":"https://auth0.com"}]},{"header":"Entreprise","items":[{"label":"Nos clients","href":"https://auth0.com/customers"},{"label":"Conformité","href":"https://auth0.com/security"},{"label":"Partenaires","href":"https://auth0.com/partners"},{"label":"Carrières","href":"https://www.okta.com/company/careers"},{"label":"Okta + Auth0","href":"https://www.okta.com/okta-and-auth0"},{"label":"À propos de nous","href":"https://auth0.com/about"}]}]},"pages":[{"title":"fr-ca","href":"/docs/fr-ca/troubleshoot/product-lifecycle/past-migrations"}]},{"language":"ja-jp","footer":{"socials":{"x-twitter":"https://x.com/auth0","github":"https://github.com/auth0","linkedin":"https://www.linkedin.com/company/auth0"},"links":[{"header":"開発者向け","items":[{"label":"開発者ハブ","href":"https://developer.auth0.com"},{"label":"コードサンプルとガイド","href":"https://developer.auth0.com/resources"},{"label":"Zero Index Newsletter","href":"https://auth0.com/blog/newsletter"},{"label":"ブログ","href":"https://auth0.com/blog"},{"label":"変更履歴","href":"https://auth0.com/changelog"}]},{"header":"ドキュメント","items":[{"label":"ドキュメント","href":"https://auth0.com/docs"},{"label":"クイックスタート","href":"https://auth0.com/docs/quickstarts"},{"label":"API","href":"https://auth0.com/docs/api"},{"label":"SDKライブラリ","href":"https://auth0.com/docs/libraries"},{"label":"教育","href":"https://auth0.com/learn"},{"label":"IAM(CIAM)入門","href":"https://auth0.com/intro-to-iam"},{"label":"レポート","href":"https://auth0.com/resources/whitepapers"},{"label":"ウェビナー","href":"https://auth0.com/resources/webinars"}]},{"header":"サポートセンター","items":[{"label":"コミュニティ","href":"https://community.auth0.com"},{"label":"ヘルプ","href":"https://support.auth0.com"},{"label":"よくある質問","href":"https://auth0.com/docs/troubleshoot"},{"label":"Auth0","href":"https://auth0.com"}]},{"header":"会社情報","items":[{"label":"導入企業","href":"https://auth0.com/customers"},{"label":"コンプライアンス","href":"https://auth0.com/security"},{"label":"パートナー","href":"https://auth0.com/partners"},{"label":"採用情報","href":"https://www.okta.com/company/careers"},{"label":"Okta + Auth0","href":"https://www.okta.com/okta-and-auth0"},{"label":"私たちについて","href":"https://auth0.com/about"}]}]},"pages":[{"title":"ja-jp","href":"/docs/ja-jp/troubleshoot/product-lifecycle/past-migrations"}]}]},"basePath":"","title":"Past Migrations - Auth0 Docs","buildId":"dpl_8hoxaqFTU7hTr6A2fUraxAyjuiZo","deploymentId":"dpl_8hoxaqFTU7hTr6A2fUraxAyjuiZo","dynamics":[],"chunks":[]}