diff --git a/.version b/.version index 6d8b0258..71f83d7f 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -v4.12.0 \ No newline at end of file +v4.11.0 \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index aedc4261..54a48e8c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,14 +1,5 @@ # Change Log -## [v4.12.0](https://github.com/auth0/nextjs-auth0/tree/v4.12.0) (2025-10-30) -[Full Changelog](https://github.com/auth0/nextjs-auth0/compare/v4.11.0...v4.12.0) - -**Fixed** -- fix: append intl headers in with-next-intl instead of overwrite [\#2386](https://github.com/auth0/nextjs-auth0/pull/2386) ([tusharpandey13](https://github.com/tusharpandey13)) -- fix: make sure `beforeSessionSaved` hook gets the updated token after refresh [\#2387](https://github.com/auth0/nextjs-auth0/pull/2387) ([tusharpandey13](https://github.com/tusharpandey13)) -- Fix `updateSession` and header overwrite issues [\#2330](https://github.com/auth0/nextjs-auth0/pull/2330) ([tusharpandey13](https://github.com/tusharpandey13)) -- bugfix: Remove React dependency from server helpers to fix edge runtime bundling [\#2329](https://github.com/auth0/nextjs-auth0/pull/2329) ([tusharpandey13](https://github.com/tusharpandey13)) - ## [v4.11.0](https://github.com/auth0/nextjs-auth0/tree/v4.11.0) (2025-10-18) [Full Changelog](https://github.com/auth0/nextjs-auth0/compare/v4.10.0...v4.11.0) diff --git a/docs/assets/hierarchy.js b/docs/assets/hierarchy.js index 58434247..faf4a203 100644 --- a/docs/assets/hierarchy.js +++ b/docs/assets/hierarchy.js @@ -1 +1 @@ -window.hierarchyData = "eJyllttO4zAQht/F1wbqpDn1joXd1UrLQZS7FRdRMm2tBjtrO0gF9d2Z9IBcEpRpuXCsxPP7+ydx7HljRmtn2eRfmvIwjZ44MzCroHBSK3z8xtK0var8GdiETcvlT2O0YZwtpSrZRAQpZ42pcKyocmvBXkAbYM/3oecL91xh/GYYw5wtz1rt2fYBDixkVRpQ6CELuRgJbDEXAnuBfYB9OMIWcTEeY8u4iDAuxvsk4SLF+yzhQZA+rTnLQs/t3WXjFgHVsBc94Bk5aNMDXUtb6BcwKyrrUEDBxR7uRlor1XzqcgdUYkdDgAo/xz/qJa9keRS0o6FA4y70SquZnDcmb1flkfCulmAi8DNv14U28vUoeldEwIajr7BXuoTfJlfuAf43YN1JNnonodiKBm19zw/VyHjsGfmRF8tikSsF1V891w3ZQ7+Qgs/68W1SoJwsNlndajdt6lobB+UJlgYmI9iMQorNb1uj2okPVk9RgLWPegn0P+mThIBMkn7kL21wO1Db0+0EfldPMJP6q+b6Xt+TD4l9LAGS+RnfrNCzbpS7rCX5fPisGYbiketBdy9mNwsV26MaBmOd4tck+HU2m4m3z3+Qgyjek6VyYGY5fswLt6oBK5Qe4ZfwD/VhxRJmSVt2hAfvfzfx1GkDd/W2kjrCkK8j+Fmv1++ew1HA" \ No newline at end of file +window.hierarchyData = "eJylll1v2jAUhv+Lr08pJyafd4xu06R1rcbuql5EjgGL1Ga2U4lV/PcpBSrTpMqB3uQi8evnOdaJ7RdmjfGOFQ9ZBjyLH4FZuail8Mpox4oXlmXtU5dPkhVsXq2/WmssA7ZWumIFRhmwxtasYKIunZPuWrYD3Og4dLTyTzWD/WdWMO+qqzZ7tX8BTKxUXVmpWfGQc8AxAo4TQERATAAjBORjQB4DTiaAkxww5oBJDJimgFkOmKcQRdnjDljOA9u7aeNXEVU4GD3gvAOGYwxAN8oJ8yztlso6DVBwSYC7Vc4pvZz70ksqsZMhQDGs8Yd+LmtVnQXtZCjQpAudGb1Qy8aWbVeeCe9mCRJRWHnbF8aqf2fRuyEClo8/ws5MJb/bUvvf8m8jnb9Io3cSilY8qPU5H6rIZBKIfCnFWqxKrWX90yxNQ3boD1LweT++LUpqr8RrVb+MnzebjbFeVhcoDUxG0Iw5RfPTalSd5KR7hJDO/TFrSf+T3kUIyDTtR34zdma03p9uF/C7eYJMFnbNzb25Jx8Sx7EESB5WfLudCmEa7acbRT4f3meGoVEUXg0OC3OYhYrtSQ2DeRa21Fw697qZBPv8GzmKkyNZaS/tohTSXfvtRrpRX/BD+Fv69MbC87S9dvCT9T9MPPfGyrvN/iZ1hlCYI/jsdrv/nsNRwA==" \ No newline at end of file diff --git a/docs/assets/navigation.js b/docs/assets/navigation.js index 13068cf9..a39b2109 100644 --- a/docs/assets/navigation.js +++ b/docs/assets/navigation.js @@ -1 +1 @@ -window.navigationData = "eJylmV1z4jYUhv8L15k2m3a3be5YYFPabGAwmU5nJ5NRbAEajEVlmZZ29r9X8geWLenomL1LzHueV986x/7y30jSf+TofhSnjGZydDM6ErlT/x94UqQ0/756/t1OHlL1455lyej+7mYU71iaCJqN7r9cEH8wuVuSLR0XcreifxVM0GRxlIxnectlmaRiQ+IWDYT1bN9/+HoDurU28nyEHXro219+evf+zsD/DeJPRDDyZoyPS961+MGka9ntUvATS6hosZsii8uON9iOrsv78KPB21I5jtWY5mu+V5PiB3aFALHI6XMOtq1WWIwXg0KF4CK3V1X1HLWqjObOdNSEJ7QF0qw4XHAuadfjZ3MOWvUnrc0yWnZwgIs7zm9ZixWBF5m8BOQeJ5/cbzBd8mWo/R0NanhKdUuLU5Ln1DvqXeS7O/SYYxzsKNBObR8u2L9Eq3V3HwSpB9Jv5o8ZbqWPAppf5WiGoo0HGAXBH0m8j3dEDXaqA9WWZzHCBA67yvCJy6g4HrmQNLnS3EIgG/LIt7wIzJ9bDhk4NraX7tBC6CnLY36i4gxTuzIQ2BwXflajgDDz7ERSlqjebNi2EIiF5I1A2ESSSIrCt0oI+5nlOcu2CKylBLHnelrHRxbA9pUQdqHX/h0MNDQQKkr2MKcR2BAzD1B5wslMJpo8oHqOywPecilILCN1FaiVEEkuqN2qGugShw7R20kvBe4zW00IhSCFQWt1C+SkvOjgzvaFYOuOx5U6oajQyWr5Vz9nbtpoCUMZsx2hsvgcjdfikMUDVTOq4yOVD6u0+JivaF6kUif49VR7/BCRIfPQiKEHClO51MxrKhdXzGW4B/hcYr7J0CoA8b7uIhBlf5mLIR1ug77NcniXrdhQA6azT+Pnx/XrfPq6Xvw+e3qdPI7nnyNXgVrbeiKAGnXDUtWgKd0QtU/mSZl+T1LCDkbP2qKwtvEHgXWiVJmuujXtC6L+AXVDPNCMqjSB1vt5wvme0Sp96M9FgwVCQlOwdYW6RqbxcgbAo6Lb6hgT/Rg1IqtZtFw8RbPX9Z/LmbE6qnqw4nQ1/nowev7422yyrlcPAHQIhxfh0HujyiYQCb06MkIjKnEeSggi2+QA0XRLHEIPIQ8CX8rBKZWEpSF2X47GL4kgB6qIaIc2AjLxFnzhsQqFXmWrsoqjiqXX+DaxkHG3Ggx30qlHGCgZYn/YYhitTzxMmw0dBCyvTIhUCSDE5TA2ikwA6JKj8Lieu+QI/JRIEqZqFRLWqzcgoqPicGJLHXoETDUIl0TIuYbo+udEH/mWIbY+FAbZIbYEZiMYBRt2ZfhCkDbl6wgcvpSisahJ9URAJt1vDxbR/vDQO5/pRvk0i4mcaPKrGjUrC6zOY6cWUYoa2YEn5a8MnNIQv3qTGEmdMW7PbnBXgyP2PhDZOMeHIZu1yCYkTd/UTaaOwvKZk2jJ8Fz/fHU1mKo9r2qr+o26m2rrBpH7t74X7bziLfaKkoRn6bluSrXlPcvLrQ06lFcjuG47Ejfv5evL/z5JqoE=" \ No newline at end of file +window.navigationData = "eJylmVtv4zYQhf+LnoM2m3a3bd68tjd1m40Ny0FRLIKAkcY2YZlUScqtW+x/L3SxdSE5HHvfAuWc7/AmaUb+8l9k4B8T3UdJxkGY6CbKmdlG99FepkUG+vv6+ndbs8+im2jHRRrd391EyZZnqQIR3X85I/7gZrtgGxgVZruEvwquIJ3nhkuhWy4XBtSaJS0asQ1i33/4eoOmtTHmmOMJA/TtLz+9e3/Xwf+N4g9McfbWWR+XvB/xQ5deym4XSh54CqrFrguRVBM/YXu6Pu/Djx3eBswoSUDrldyBQIB9IUIsNDxrdGyNwmK8dCiglFTaPlX1ddKp6gx3WrrGMoUWCKLYn3EuaT/j5+4etOpPpVYIqCZ4QYrb549sxKMkkYUwZ4P2JPnk/oDJQi5C4+9pSMtTqVtakjGtwbvqfeS7O/KaUxJsFxpXmK1U/F9WqsvpPijWLKQ/zO+5PKp8FIC+KrFrJQdfEBQEf2TJLtkyISArjSAMTwghuO2qwCdp4iLPpTKQXhluIYgDeZQbWQT2zy3HAhw3tpfu0GLoCdeJPIA64tS+DAWeHhd+1kmBYWbiwDKejqVY802hCAfJ6yDExIYZIOFbJYb9zLXmYkPAWkoUe2y2dZTzAHaoxLDz8uzf4cCOBkPF6Q7nnAQ2pFsHaFCHbjFxqgPq67Q64E0bxRITg9ZcithIBfaoGqBLHHqI3o4HJfCQ2WpCKAIpDFopJjSrXnT4ZIdCdHR5vpSFAVUWq9Vfw5r5NEZLGKqYbcc8N5qML8WhiAcwceWPeQoLJXO9BF1kpizwm6325BGcofDQipEXitK5NMxrOheX57zcF+ScPd8UaDWA9Fx3E0iKP+/FJRNuTd8WefmULW9oAJPpp9Hz4+p1NnldzX+fPr2OH0ezz7GrQW1iPQ6kR13zzICawJoVmZmlVfk9zhjfd2bWNoVNjN+E9okGtOFiY78gmn+Q3hAPIEAxA839PJZyx6EuH4Z7ccIiltAWbFxW18qcspwGfFXKsTrWpLxMWpHlNF7Mn+Lp6+rPxbRzOup+sOb0Nf5+MH7++Nt0vGpODwJ0CC9vwrHvRnVMwIl9OupYYzC0jBiGH8H6yLY4IAzdEofQl5AvAp/bwQkYxrMQeygn4xdMsT0YUOSE1oGFeBu+8FqFrFfFLkHnUmi4JvfkxYL73WB4kk49IYBLQbg/bDGOLp94lDF3dBiwemVipFqAIc4P406TiQBdchKeNnOXnICfMMPC1FJFhA36DYzo6Dic2EpHXoGuGoUbpsyshJT9zwEe5YYTbn3MhsURbgnKjdBp2Kgnw2chxlSfI2j4SkrGkjbV48BC+r89WET7h4fB8xnWUp0qrZgdIP1Vyp1VBdbPY6eW0Ip2qgNPyV8HOKUhfv0lMTZlxbg5usF9DY04+IHIxjl+GLJZczFmWfbGkt1Yiuqak2jJ6Fz/fvU1lK5d171V80XdTbV1F5GHb30v2vmKt9hLYKkU2bEZSn3Le46XWxtMqF6N6LntSdy8l68v/wM+SaqB" \ No newline at end of file diff --git a/docs/assets/search.js b/docs/assets/search.js index a51e59f2..a04ff844 100644 --- a/docs/assets/search.js +++ b/docs/assets/search.js @@ -1 +1 @@ -window.searchData = "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"; \ No newline at end of file +window.searchData = "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"; \ No newline at end of file diff --git a/docs/classes/errors.AccessTokenError.html b/docs/classes/errors.AccessTokenError.html index 6443fcfd..14bcd498 100644 --- a/docs/classes/errors.AccessTokenError.html +++ b/docs/classes/errors.AccessTokenError.html @@ -1,4 +1,4 @@ -
Optionalcause: OAuth2ErrorOptionalcause: OAuth2ErrorOptionalmessage: stringOptionalmessage: stringOptionalmessage: stringOptionalmessage: stringError class representing a connect account error.
-Error class representing a connect account error.
+Represents an error that occurred during DPoP (Demonstrating Proof-of-Possession) operations.
+Represents an error that occurred during DPoP (Demonstrating Proof-of-Possession) operations.
DPoP is an OAuth 2.0 extension that provides application-level proof-of-possession security by binding access tokens to cryptographic key pairs. This error is thrown when DPoP-related operations fail, such as key pair operations, proof generation, or configuration issues.
@@ -16,7 +16,7 @@Constructs a new DPoPError instance.
OptionalcauseThe underlying error that caused this DPoP error (optional)
+The specific DPoP error code indicating the type of failure
+Optionalmessage: stringOptionalmessage: stringOptionalmessage: stringOptionalmessage: stringOptionalmessage: stringOptionalmessage: stringOptionalmessage: stringOptionalmessage: stringError class representing a connect account request error.
-Error class representing a connect account request error.
+OptionalvalidationA human-readable description of the specific error. Required.
+OptionalvalidationA human-readable description of the specific error. Required.
Optionalfield?: stringThe name of the invalid parameter. Optional.
Optionalpointer?: stringA JSON Pointer that points to the exact location of the error in a JSON document being validated. Optional.
Optionalsource?: stringSpecifies the source of the error (e.g., body, query, or header in an HTML message). Optional.
-Errors that come from Auth0 in the redirect_uri callback may contain reflected user input via the OpenID Connect error and error_description query parameter.
+
Errors that come from Auth0 in the redirect_uri callback may contain reflected user input via the OpenID Connect error and error_description query parameter.
You should not render the error message, or error and error_description properties without properly escaping them first.
AbstractAbstractOptionalmessage: stringOptionalmessage: stringAbstractAbstractcalculateMaxAge calculates the max age of the session based on createdAt and the rolling and absolute durations.
-Abstractdeleteepoch returns the time since unix epoch in seconds.
-AbstractgetAbstractsetsave adds the encrypted session cookie as a Set-Cookie header. If the iat property
+
calculateMaxAge calculates the max age of the session based on createdAt and the rolling and absolute durations.
+Abstractdeleteepoch returns the time since unix epoch in seconds.
+AbstractgetAbstractsetsave adds the encrypted session cookie as a Set-Cookie header. If the iat property
is present on the session, then it will be used to compute the maxAge cookie value.
OptionalisNew: booleanOptionalisNew: booleanInitiates the Connect Account flow to connect a third-party account to the user's profile. +
Initiates the Connect Account flow to connect a third-party account to the user's profile.
If the user does not have an active session, a ConnectAccountError is thrown.
This method first attempts to obtain an access token with the create:me:connected_accounts scope
for the My Account API to create a connected account for the user.
The user will then be redirected to authorize the connection with the third-party provider.
-Creates a configured Fetcher instance for making authenticated API requests.
+Creates a configured Fetcher instance for making authenticated API requests.
This method creates a specialized HTTP client that handles:
The fetcher provides a high-level interface for making requests to protected resources without manually handling authentication details.
Response type that extends the standard Response interface
-Request object for session context (required for Pages Router, optional for App Router)
-Configuration options for the fetcher
+Request object for session context (required for Pages Router, optional for App Router)
+Configuration options for the fetcher
OptionalbaseUrl?: stringBase URL for relative requests. Must be provided if using relative URLs
Optionalfetch?: CustomFetchImpl<TOutput>Custom fetch implementation. Falls back to global fetch if not provided
OptionalgetAccessToken?: AccessTokenFactoryCustom access token factory function. If not provided, uses the default from hooks
-OptionaluseDPoP?: booleanEnable DPoP for this fetcher instance (overrides global setting)
+OptionalnonceStorageId?: stringOptionaluseDPoP?: booleanEnable DPoP for this fetcher instance (overrides global setting)
Promise that resolves to a configured Fetcher instance
import { auth0 } from "@/lib/auth0";
const fetcher = await auth0.createFetcher(undefined, {
baseUrl: "https://api.example.com",
useDPoP: true
});
const response = await fetcher.fetchWithAuth("/users");
const users = await response.json();
@@ -42,11 +43,11 @@
- Fetcher for details on using the returned fetcher instance
- FetcherMinimalConfig for available configuration options
-Optionaloptions: GetAccessTokenOptionsOptional configuration for getting the access token.
+Optionaloptions: GetAccessTokenOptionsOptional configuration for getting the access token.
Optionalaudience?: string | nullPlease note: If you are passing audience, ensure that the used audiences and scopes are part of the Application's Refresh Token Policies in Auth0 when configuring Multi-Resource Refresh Tokens (MRRT). Auth0 Documentation on Multi-resource Refresh Tokens
-Optionalrefresh?: boolean | nullOptionalscope?: string | nullgetAccessToken returns the access token.
+Optionalrefresh?: boolean | nullOptionalscope?: string | nullgetAccessToken returns the access token.
This method can be used in middleware and getServerSideProps, API routes in the Pages Router.
The request object.
The response object.
@@ -54,23 +55,23 @@Optionalaudience?: string | nullPlease note: If you are passing audience, ensure that the used audiences and scopes are part of the Application's Refresh Token Policies in Auth0 when configuring Multi-Resource Refresh Tokens (MRRT). Auth0 Documentation on Multi-resource Refresh Tokens
-Optionalrefresh?: boolean | nullOptionalscope?: string | nullRetrieves an access token for a connection.
+Optionalrefresh?: boolean | nullOptionalscope?: string | nullRetrieves an access token for a connection.
This method can be used in Server Components, Server Actions, and Route Handlers in the App Router.
NOTE: Server Components cannot set cookies. Calling getAccessTokenForConnection() in a Server Component will cause the access token to be refreshed, if it is expired, and the updated token set will not to be persisted.
It is recommended to call getAccessTokenForConnection(req, res) in the middleware if you need to retrieve the access token in a Server Component to ensure the updated token set is persisted.
Retrieves an access token for a connection.
+Retrieves an access token for a connection.
This method can be used in middleware and getServerSideProps, API routes in the Pages Router.
getSession returns the session data for the current request.
+getSession returns the session data for the current request.
This method can be used in Server Components, Server Actions, and Route Handlers in the App Router.
-getSession returns the session data for the current request.
+getSession returns the session data for the current request.
This method can be used in middleware and getServerSideProps, API routes in the Pages Router.
Authenticates using Client-Initiated Backchannel Authentication and returns the token set and optionally the ID token claims and authorization details.
+Authenticates using Client-Initiated Backchannel Authentication and returns the token set and optionally the ID token claims and authorization details.
This method will initialize the backchannel authentication process with Auth0, and poll the token endpoint until the authentication is complete.
Using Client-Initiated Backchannel Authentication requires the feature to be enabled in the Auth0 dashboard.
middleware mounts the SDK routes to run as a middleware function.
-updateSession updates the session of the currently authenticated user. If the user does not have a session, an error is thrown.
+middleware mounts the SDK routes to run as a middleware function.
+updateSession updates the session of the currently authenticated user. If the user does not have a session, an error is thrown.
This method can be used in middleware and getServerSideProps, API routes, and middleware in the Pages Router.
updateSession updates the session of the currently authenticated user. If the user does not have a session, an error is thrown.
+updateSession updates the session of the currently authenticated user. If the user does not have a session, an error is thrown.
This method can be used in Server Actions and Route Handlers in the App Router.
-OptionalfnOrOpts: AppRouterPageRoute | WithPageAuthRequiredPageRouterOptionsOptionalopts: WithPageAuthRequiredAppRouterOptionsOptionalfnOrOpts: AppRouterPageRoute | WithPageAuthRequiredPageRouterOptionsOptionalopts: WithPageAuthRequiredAppRouterOptionsInitiates the connect account flow for linking a third-party account to the user's profile. +
Initiates the connect account flow for linking a third-party account to the user's profile. The user will be redirected to authorize the connection.
-Creates a new Fetcher instance with DPoP support and authentication capabilities.
+Creates a new Fetcher instance with DPoP support and authentication capabilities.
This method creates fetcher-scoped DPoP handles via oauth.DPoP(this.clientMetadata, this.dpopKeyPair!).
Each fetcher instance maintains its own DPoP nonce state for isolation and security.
It is recommended to create fetchers at module level and reuse them across requests
Filters and processes ID token claims for a session.
+Filters and processes ID token claims for a session.
If a beforeSessionSaved callback is configured, it will be invoked to allow
custom processing of the session and ID token. Otherwise, default filtering
will be applied to remove standard ID token claims from the user object.
OptionalidToken: stringExchanges a refresh token for an access token for a connection.
+OptionalidToken: stringExchanges a refresh token for an access token for a connection.
This method performs a token exchange using the provided refresh token and connection details.
It first checks if the refresh token is present in the tokenSet. If not, it returns an error.
Then, it constructs the necessary parameters for the token exchange request and performs
the request to the authorization server's token endpoint.
A promise that resolves to a tuple. +
A promise that resolves to a tuple.
The first element is either an AccessTokenForConnectionError if an error occurred, or null if the request was successful.
The second element is either null if an error occurred, or a ConnectionTokenSet object
containing the access token, expiration time, and scope if the request was successful.
Retrieves OAuth token sets, handling token refresh when necessary or if forced.
+Retrieves OAuth token sets, handling token refresh when necessary or if forced.
A tuple containing either:
[SdkError, null] if an error occurred (missing refresh token, discovery failure, or refresh failure)[null, {tokenSet, idTokenClaims}] if a new token was retrieved, containing the new token set ID token claims[null, {tokenSet, }] if token refresh was not done and existing token was returnedTransactionStore is responsible for storing the state required to successfully complete +
TransactionStore is responsible for storing the state required to successfully complete an authentication transaction. The store relies on encrypted, stateless cookies to store the transaction state.
-Deletes all transaction cookies based on the configured prefix.
-Returns the configured prefix for transaction cookies.
-Saves the transaction state to an encrypted cookie.
+Deletes all transaction cookies based on the configured prefix.
+Returns the configured prefix for transaction cookies.
+Saves the transaction state to an encrypted cookie.
The response cookies object to set the transaction cookie on
The transaction state to save
OptionalreqCookies: RequestCookiesOptional request cookies to check for existing transactions. @@ -17,4 +17,4 @@ will check for existing transaction cookies. When omitted, the existence check is skipped for performance optimization.
Enum representing error codes related to access tokens for connections.
-Enum representing error codes related to access tokens for connections.
+Failed to exchange the refresh token.
-The refresh token is missing.
-The session is missing.
-The refresh token is missing.
+The session is missing.
+Enum representing error codes related to the connect account flow.
-Enum representing error codes related to the connect account flow.
+Failed to complete the connect account flow.
-Failed to initiate the connect account flow.
-The session is missing.
-Failed to initiate the connect account flow.
+The session is missing.
+Error codes for DPoP-related errors.
+Error codes for DPoP-related errors.
These error codes categorize different types of failures that can occur during DPoP (Demonstrating Proof-of-Possession) operations.
-DPoP configuration is invalid or incomplete. This occurs when the provided DPoP configuration contains invalid values or missing required components.
-Failed to calculate dpop_jkt (JWK thumbprint) parameter. +
Failed to calculate dpop_jkt (JWK thumbprint) parameter. This occurs when the SDK cannot generate the required thumbprint from the provided public key for the authorization request.
-Failed to export DPoP public key to JWK format. +
Failed to export DPoP public key to JWK format. This occurs when the SDK cannot convert the CryptoKey to the JSON Web Key format required for DPoP proofs.
-Connect Account flow.
+Indicates that the token is an OAuth 2.0 access token issued by the given authorization server.
Indicates that the token is an OAuth 2.0 refresh token issued by the given authorization server.
+Indicates that the token is an OAuth 2.0 refresh token issued by the given authorization server.
Fetches an access token for the currently logged-in user.
+Fetches an access token for the currently logged-in user.
Options for fetching the access token, including optional audience and scope.
The access token as a string.
Filters the claims to only include those that are considered default.
+Filters the claims to only include those that are considered default.
The claims to filter.
The filtered claims containing only default ID token claims.
-

The Auth0 Next.js SDK is a library for implementing user authentication in Next.js applications.
Options to customize the withPageAuthRequired higher order component.
-Options to customize the withPageAuthRequired higher order component.
+OptionalonwithPageAuthRequired(Profile, {
onError: error => <div>Error: {error.message}</div>
});
Render a fallback in case of error fetching the user from the profile API route.
-OptionalonwithPageAuthRequired(Profile, {
onRedirecting: () => <div>Redirecting...</div>
});
+OptionalonwithPageAuthRequired(Profile, {
onRedirecting: () => <div>Redirecting...</div>
});
Render a message to show that the user is being redirected.
-OptionalreturnwithPageAuthRequired(Profile, {
returnTo: '/profile'
});
+OptionalreturnwithPageAuthRequired(Profile, {
returnTo: '/profile'
});
Add a path to return the user to after login.
-Options for retrieving a connection access token.
-Options for retrieving a connection access token.
+The connection name for while you want to retrieve the access token.
-Optionallogin_An optional login hint to pass to the authorization server.
-Optionalsubject_The type of token that is being exchanged.
+Optionallogin_An optional login hint to pass to the authorization server.
+Optionalsubject_The type of token that is being exchanged.
Uses the SUBJECT_TOKEN_TYPES enum with the following allowed values:
SUBJECT_TYPE_REFRESH_TOKEN: "urn:ietf:params:oauth:token-type:refresh_token"SUBJECT_TYPE_ACCESS_TOKEN: "urn:ietf:params:oauth:token-type:access_token"Defaults to SUBJECT_TYPE_REFRESH_TOKEN.
OptionalallowAllow insecure requests to be made to the authorization server. This can be useful when testing
with a mock OIDC provider that does not support TLS, locally.
This option can only be used when NODE_ENV is not set to production.
OptionalappThe URL of your application (e.g.: http://localhost:3000).
OptionalappThe URL of your application (e.g.: http://localhost:3000).
If it's not specified, it will be loaded from the APP_BASE_URL environment variable.
OptionalauthorizationAdditional parameters to send to the /authorize endpoint.
OptionalbeforeA method to manipulate the session before persisting it.
+OptionalauthorizationAdditional parameters to send to the /authorize endpoint.
OptionalbeforeA method to manipulate the session before persisting it.
See beforeSessionSaved for additional details
-OptionalclientThe algorithm used to sign the client assertion JWT. +
OptionalclientThe algorithm used to sign the client assertion JWT.
Uses one of token_endpoint_auth_signing_alg_values_supported if not specified.
If the Authorization Server discovery document does not list token_endpoint_auth_signing_alg_values_supported
this property will be required.
OptionalclientPrivate key for use with private_key_jwt clients.
+
OptionalclientPrivate key for use with private_key_jwt clients.
This should be a string that is the contents of a PEM file or a CryptoKey.
OptionalclientThe Auth0 client ID.
+OptionalclientThe Auth0 client ID.
If it's not specified, it will be loaded from the AUTH0_CLIENT_ID environment variable.
OptionalclientThe Auth0 client secret.
+OptionalclientThe Auth0 client secret.
If it's not specified, it will be loaded from the AUTH0_CLIENT_SECRET environment variable.
OptionaldomainThe Auth0 domain for the tenant (e.g.: example.us.auth0.com).
OptionaldomainThe Auth0 domain for the tenant (e.g.: example.us.auth0.com).
If it's not specified, it will be loaded from the AUTH0_DOMAIN environment variable.
OptionaldpopES256 key pair for DPoP proof generation.
+OptionaldpopES256 key pair for DPoP proof generation.
If not provided when useDPoP is true, the SDK will attempt to load keys from
environment variables AUTH0_DPOP_PUBLIC_KEY and AUTH0_DPOP_PRIVATE_KEY.
Keys must be in PEM format and use the P-256 elliptic curve.
OptionaldpopConfiguration options for DPoP timing validation and retry behavior.
+OptionaldpopConfiguration options for DPoP timing validation and retry behavior.
These options control how the SDK validates DPoP proof timing and handles nonce errors. Proper configuration is important for both security and reliability.
const auth0 = new Auth0Client({
useDPoP: true,
dpopOptions: {
clockTolerance: 60, // Allow 60 seconds clock difference
clockSkew: 0, // No clock adjustment needed
retry: {
delay: 200, // 200ms delay before retry
jitter: true // Add randomness to prevent thundering herd
}
}
});
@@ -70,17 +70,17 @@
OptionalenableBoolean value to enable the /auth/access-token endpoint for use in the client app.
OptionalenableBoolean value to enable the /auth/access-token endpoint for use in the client app.
Defaults to true.
NOTE: Set this to false if your client does not need to directly interact with resource servers (Token Mediating Backend). This will be false for most apps.
A security best practice is to disable this to avoid exposing access tokens to the client app.
-OptionalenableIf true, the /auth/connect endpoint will be mounted to enable users to connect additional accounts.
OptionalenableOptionalenableBoolean value to opt-out of sending the library name and version to your authorization server +
OptionalenableIf true, the /auth/connect endpoint will be mounted to enable users to connect additional accounts.
OptionalenableOptionalenableBoolean value to opt-out of sending the library name and version to your authorization server
via the Auth0-Client header. Defaults to true.
OptionalhttpInteger value for the HTTP timeout in milliseconds for authentication requests. +
OptionalhttpInteger value for the HTTP timeout in milliseconds for authentication requests.
Defaults to 5000 ms.
OptionalincludeConfigure whether to include id_token_hint in OIDC logout URLs.
+OptionalincludeConfigure whether to include id_token_hint in OIDC logout URLs.
Recommended (default): Set to true to include id_token_hint parameter.
Auth0 recommends using id_token_hint for secure logout as per the
OIDC specification.
OptionallogoutConfigure the logout strategy to use.
+OptionallogoutConfigure the logout strategy to use.
'auto' (default): Attempts OIDC RP-Initiated Logout first, falls back to /v2/logout if not supported'oidc': Always uses OIDC RP-Initiated Logout (requires RP-Initiated Logout to be enabled)'v2': Always uses the Auth0 /v2/logout endpoint (supports wildcards in allowed logout URLs)OptionalnoIf true, the profile endpoint will return a 204 No Content response when the user is not authenticated +
OptionalnoIf true, the profile endpoint will return a 204 No Content response when the user is not authenticated instead of returning a 401 Unauthorized response.
Defaults to false.
OptionalonA method to handle errors or manage redirects after attempting to authenticate.
+OptionalonA method to handle errors or manage redirects after attempting to authenticate.
See onCallback for additional details
-OptionalpushedIf enabled, the SDK will use the Pushed Authorization Requests (PAR) protocol when communicating with the authorization server.
-OptionalroutesConfigure the paths for the authentication routes.
+OptionalpushedIf enabled, the SDK will use the Pushed Authorization Requests (PAR) protocol when communicating with the authorization server.
+OptionalroutesConfigure the paths for the authentication routes.
See Custom routes for additional details.
-OptionalsecretA 32-byte, hex-encoded secret used for encrypting cookies.
+OptionalsecretA 32-byte, hex-encoded secret used for encrypting cookies.
If it's not specified, it will be loaded from the AUTH0_SECRET environment variable.
OptionalsessionConfigure the session timeouts and whether to use rolling sessions or not.
+OptionalsessionConfigure the session timeouts and whether to use rolling sessions or not.
See Session configuration for additional details.
-OptionalsessionA custom session store implementation used to persist sessions to a data store.
+OptionalsessionA custom session store implementation used to persist sessions to a data store.
See Database sessions for additional details.
-OptionalsignThe path to redirect the user to after successfully authenticating. Defaults to /.
OptionaltransactionConfigure the transaction cookie used to store the state of the authentication transaction.
-OptionaluseEnable DPoP (Demonstrating Proof-of-Possession) for enhanced OAuth 2.0 security.
+OptionalsignThe path to redirect the user to after successfully authenticating. Defaults to /.
OptionaltransactionConfigure the transaction cookie used to store the state of the authentication transaction.
+OptionaluseEnable DPoP (Demonstrating Proof-of-Possession) for enhanced OAuth 2.0 security.
When enabled, the SDK will:
OptionalallowOptionalauthorizationOptionalbeforeOptionalclientOptionalclientOptionalclientOptionaldpopOptionaldpopOptionalenableOptionalenableOptionalenableOptionalfetchOptionalallowOptionalauthorizationOptionalbeforeOptionalclientOptionalclientOptionalclientOptionaldpopOptionaldpopOptionalenableOptionalenableOptionalenableOptionalfetchOptionalinit: RequestInitOptionalinit: RequestInitOptionalhttpOptionalincludeOptionaljwksOptionallogoutOptionalnoOptionalonOptionalpushedOptionalsignOptionaluseOptionalinit: RequestInitOptionalhttpOptionalincludeOptionaljwksOptionallogoutOptionalnoOptionalonOptionalpushedOptionalsignOptionaluseAdditional authorization parameters.
-Additional authorization parameters.
+OptionalaudienceThe unique identifier of the target API you want to access.
-Optionalmax_The maximum amount of time, in seconds, after which a user must reauthenticate.
-OptionalorganizationThe unique identifier of the organization that the user should be logged into. +
OptionalaudienceThe unique identifier of the target API you want to access.
+Optionalmax_The maximum amount of time, in seconds, after which a user must reauthenticate.
+OptionalorganizationThe unique identifier of the organization that the user should be logged into. When specified, the user will be prompted to log in to this specific organization. The organization ID will be included in the user's session after successful authentication.
-Optionalredirect_The URL to which the authorization server will redirect the user after granting authorization.
-OptionalscopeThe scope of the access request, expressed as a list of space-delimited, case-sensitive strings. +
Optionalredirect_The URL to which the authorization server will redirect the user after granting authorization.
+OptionalscopeThe scope of the access request, expressed as a list of space-delimited, case-sensitive strings.
Defaults to "openid profile email offline_access".
OptionalauthorizationOptional authorization details to use Rich Authorization Requests (RAR).
OptionalauthorizationAuthorization Parameters to be sent with the authorization request.
-Human-readable message to be displayed at the consumption device and authentication device. +
OptionalauthorizationAuthorization Parameters to be sent with the authorization request.
+Human-readable message to be displayed at the consumption device and authentication device. This allows the user to ensure the transaction initiated by the consumption device is the same that triggers the action on the authentication device.
-The login hint to inform which user to use.
+The login hint to inform which user to use.
The sub claim of the user that is trying to login using Client-Initiated Backchannel Authentication, and to which a push notification to authorize the login will be sent.
OptionalrequestedSet a custom expiry time for the CIBA flow in seconds. Defaults to 300 seconds (5 minutes) if not set.
-OptionalrequestedSet a custom expiry time for the CIBA flow in seconds. Defaults to 300 seconds (5 minutes) if not set.
+Options to initiate a connect account flow using the My Account API.
+Options to initiate a connect account flow using the My Account API.
OptionalauthorizationAuthorization parameters to be passed to the authorization server.
-The name of the connection to link the account with (e.g., 'google-oauth2', 'facebook').
-OptionalreturnThe URL to redirect to after successfully connecting the account.
-The name of the connection to link the account with (e.g., 'google-oauth2', 'facebook').
+OptionalreturnThe URL to redirect to after successfully connecting the account.
+OptionalabsoluteThe absolute duration after which the session will expire. The value must be specified in seconds.
Once the absolute duration has been reached, the session will no longer be extended.
Default: 3 days.
-OptionalcookieThe options for the session cookie.
-OptionalinactivityThe duration of inactivity after which the session will expire. The value must be specified in seconds.
+OptionalcookieThe options for the session cookie.
+OptionalinactivityThe duration of inactivity after which the session will expire. The value must be specified in seconds.
The session will be extended as long as it was active before the inactivity duration has been reached.
Default: 1 day.
-OptionalrollingA boolean indicating whether rolling sessions should be used or not.
+OptionalrollingA boolean indicating whether rolling sessions should be used or not.
When enabled, the session will continue to be extended as long as it is used within the inactivity duration.
Once the upper bound, set via the absoluteDuration, has been reached, the session will no longer be extended.
Default: true.
OptionaldomainSpecifies the value for the Set-Cookie attribute. By default, no domain is set, and most clients will consider the cookie to apply to only the current domain.
-OptionalnameThe name of the session cookie.
+OptionalnameThe name of the session cookie.
Default: __session.
OptionalpathThe path attribute of the session cookie. Will be set to '/' by default.
-OptionalsameThe sameSite attribute of the session cookie.
+OptionalpathThe path attribute of the session cookie. Will be set to '/' by default.
+OptionalsameThe sameSite attribute of the session cookie.
Default: lax.
OptionalsecureThe secure attribute of the session cookie.
+OptionalsecureThe secure attribute of the session cookie.
Default: depends on the protocol of the application's base URL. If the protocol is https, then true, otherwise false.
OptionaltransientThe transient attribute of the session cookie. When true, the cookie will not persist beyond the current session.
-OptionaltransientThe transient attribute of the session cookie. When true, the cookie will not persist beyond the current session.
+Destroys the session with the given session ID.
-OptionaldeleteDeletes the session with the given logout token which may contain a session ID or a user ID, or both.
-Gets the session from the store given a session ID.
-Upsert a session in the store given a session ID and SessionData.
OptionaldeleteDeletes the session with the given logout token which may contain a session ID or a user ID, or both.
+Gets the session from the store given a session ID.
+Upsert a session in the store given a session ID and SessionData.
OptionalabsoluteThe absolute duration after which the session will expire. The value must be specified in seconds.
Once the absolute duration has been reached, the session will no longer be extended.
Default: 3 days.
-OptionalcookieThe options for the session cookie.
-OptionalcookieOptionalinactivityThe duration of inactivity after which the session will expire. The value must be specified in seconds.
+OptionalcookieThe options for the session cookie.
+OptionalcookieOptionalinactivityThe duration of inactivity after which the session will expire. The value must be specified in seconds.
The session will be extended as long as it was active before the inactivity duration has been reached.
Default: 1 day.
-OptionalrollingA boolean indicating whether rolling sessions should be used or not.
+OptionalrollingA boolean indicating whether rolling sessions should be used or not.
When enabled, the session will continue to be extended as long as it is used within the inactivity duration.
Once the upper bound, set via the absoluteDuration, has been reached, the session will no longer be extended.
Default: true.
OptionalstoreOptionalstoreOptionalreturnThe URL to redirect to after a successful login.
+OptionaldomainSpecifies the value for the Set-Cookie attribute. By default, no domain is set, and most clients will consider the cookie to apply to only the current domain.
-OptionalmaxThe expiration time for transaction cookies in seconds. +
OptionalmaxThe expiration time for transaction cookies in seconds. If not provided, defaults to 1 hour (3600 seconds).
OptionalpathThe path attribute of the transaction cookie. Will be set to '/' by default.
-OptionalprefixThe prefix of the cookie used to store the transaction state.
+OptionalpathThe path attribute of the transaction cookie. Will be set to '/' by default.
+OptionalprefixThe prefix of the cookie used to store the transaction state.
Default: __txn_{state}.
OptionalsameThe sameSite attribute of the transaction cookie.
+OptionalsameThe sameSite attribute of the transaction cookie.
Default: lax.
OptionalsecureThe secure attribute of the transaction cookie.
+OptionalsecureThe secure attribute of the transaction cookie.
Default: depends on the protocol of the application's base URL. If the protocol is https, then true, otherwise false.
Any other JWT Claim Set member.
-Any other JWT Claim Set member.
+OptionalaudienceThe audience used for this transaction.
-OptionalauthOptionalmaxOptionalnonceOptionalscopeThe scope requested for this transaction.
-OptionalauthOptionalmaxOptionalnonceOptionalscopeThe scope requested for this transaction.
+OptionalcookieOptionalenableControls whether multiple parallel login transactions are allowed. When false, only one transaction cookie is maintained at a time. When true (default), multiple transaction cookies can coexist for multi-tab support.
OptionalemailOptionalemail_Optionalfamily_Optionalgiven_OptionalnameOptionalnicknameOptionalorg_The organization ID that the user belongs to. This field is populated when the user logs in through an organization.
-OptionalpictureOptionalpictureconst MyProtectedPage = withPageAuthRequired(MyPage);
+WithPageAuthRequired | @auth0/nextjs-auth0 - v4.11.0 Type Alias WithPageAuthRequired
WithPageAuthRequired: <P extends object>(
Component: ComponentType<P & UserProps>,
options?: WithPageAuthRequiredOptions,
) => React.FC<P>const MyProtectedPage = withPageAuthRequired(MyPage);
When you wrap your pages in this higher order component and an anonymous user visits your page,
they will be redirected to the login page and then returned to the page they were redirected from (after login).
-Type Declaration
- <P extends object>(
Component: ComponentType<P & UserProps>,
options?: WithPageAuthRequiredOptions,
): React.FC<P> Type Parameters
- P extends object
Parameters
- Component: ComponentType<P & UserProps>
Optionaloptions: WithPageAuthRequiredOptions
Returns React.FC<P>
+Optionaloptions: WithPageAuthRequiredOptionsAn app route that has been augmented with WithPageAuthRequired. -Returns unknown to avoid React dependency while maintaining type safety.
-An app route that has been augmented with WithPageAuthRequired.
+Objects containing the route parameters and search parameters of the page.
-Objects containing the route parameters and search parameters of the page.
+If you wrap your getServerSideProps with WithPageAuthRequired your props object will be augmented with
+
If you wrap your getServerSideProps with WithPageAuthRequired your props object will be augmented with
the user property, which will be the User object.
// pages/profile.js
import { auth0 } from "@/lib/auth0";
export default function Profile({ user }) {
return <div>Hello {user.name}</div>;
}
export const getServerSideProps = auth0.withPageAuthRequired();
-A page route that has been augmented with WithPageAuthRequired.
-A page route that has been augmented with WithPageAuthRequired.
+Protects Page router pages WithPageAuthRequiredPageRouter or +
Protects Page router pages WithPageAuthRequiredPageRouter or App router pages WithPageAuthRequiredAppRouter
-Wrap your Server Component with this method to make sure the user is authenticated before +
Wrap your Server Component with this method to make sure the user is authenticated before visiting the page.
// app/protected-page/page.js
import { auth0 } from "@/lib/auth0";
const ProtectedPage = auth0.withPageAuthRequired(async function ProtectedPage() {
return <div>Protected content</div>;
}, { returnTo: '/protected-page' });
export default ProtectedPage;
@@ -14,4 +14,4 @@
// app/protected-page/[slug]/page.js
import { AppRouterPageRouteOpts } from '@auth0/nextjs-auth0/server';
import { auth0 } from "@/lib/auth0";
const ProtectedPage = auth0.withPageAuthRequired(async function ProtectedPage({
params, searchParams
}: AppRouterPageRouteOpts) {
const slug = (await params)?.slug as string;
return <div>Protected content for {slug}</div>;
}, {
returnTo({ params }) {
return `/protected-page/${(await params)?.slug}`;
}
});
export default ProtectedPage;
-Optionalopts: WithPageAuthRequiredAppRouterOptionsOptionalopts: WithPageAuthRequiredAppRouterOptionsSpecify the URL to returnTo - this is important in app router pages because the server component
+
Specify the URL to returnTo - this is important in app router pages because the server component
won't know the URL of the page.
Wrap your getServerSideProps with this method to make sure the user is authenticated before
+
Wrap your getServerSideProps with this method to make sure the user is authenticated before
visiting the page.
// pages/protected-page.js
import { auth0 } from "@/lib/auth0";
export default function ProtectedPage() {
return <div>Protected content</div>;
}
export const getServerSideProps = auth0.withPageAuthRequired();
If the user visits /protected-page without a valid session, it will redirect the user to the
login page. Then they will be returned to /protected-page after login.
Optionalopts: WithPageAuthRequiredPageRouterOptions<P, Q>Optionalopts: WithPageAuthRequiredPageRouterOptions<P, Q>If you have a custom returnTo url you should specify it in returnTo.
If you have a custom returnTo url you should specify it in returnTo.
You can pass in your own getServerSideProps method, the props returned from this will be
merged with the user props. You can also access the user session data by calling getSession
inside of this method. For example:
// pages/protected-page.js
import { auth0 } from "@/lib/auth0";
export default function ProtectedPage({ user, customProp }) {
return <div>Protected content</div>;
}
export const getServerSideProps = auth0.withPageAuthRequired({
// returnTo: '/unauthorized',
async getServerSideProps(ctx) {
// access the user session if needed
// const session = await auth0.getSession(ctx.req);
return {
props: {
// customProp: 'bar',
}
};
}
});
-OptionalaudiencePlease note: If you are passing audience, ensure that the used audiences and scopes are part of the Application's Refresh Token Policies in Auth0 when configuring Multi-Resource Refresh Tokens (MRRT). Auth0 Documentation on Multi-resource Refresh Tokens
-OptionalrefreshOptionalscopeOptionalrefreshOptionalscopeLogout strategy options for controlling logout endpoint selection.
-Logout strategy options for controlling logout endpoint selection.
+OptionalconnectedThe connected account information when the responseType is RESPONSE_TYPES.CONNECT_CODE
-OptionalresponseThe type of response expected from the authorization server. +
OptionalresponseThe type of response expected from the authorization server. One of RESPONSE_TYPES
-OptionalreturnThe URL or path the user should be redirected to after completing the transaction.
-OptionalreturnThe URL or path the user should be redirected to after completing the transaction.
+ConstConstConstDefault claims for the ID token.
-ConstDefault claims for the ID token.
+
Error class representing an access token for connection error. +
Class AccessTokenForConnectionError
Error class representing an access token for connection error. Extends the
-SdkErrorclass.Hierarchy (View Summary)
Index
Constructors
Hierarchy (View Summary)
Index
Constructors
Properties
Constructors
constructor
code: string,
message: string,
cause?: OAuth2Error,
): AccessTokenForConnectionError
Constructs a new
AccessTokenForConnectionErrorinstance.Parameters
The error code.
The error message.
Optionalcause: OAuth2ErrorThe OAuth2 cause of the error.
-Returns AccessTokenForConnectionError
Properties
Optionalcausecode
The error code associated with the access token error.
-Settings
On This Page
Constructors
Properties
Returns AccessTokenForConnectionError