Supabase Auth
Backend & InfraAn isomorphic Javascript client for Supabase. Query your Supabase database, subscribe to realtime events, upload and download files, browse typescript examples, invoke postgres functions via rpc, invoke supabase edge functions, query pgvector.
Release History
v2.98.04 fixes3 featuresThis release introduces new features for OAuth client configuration and custom providers in the auth module, alongside several bug fixes addressing lock recovery and Realtime connection handling.
v2.97.1-canary.51 fixThis canary release primarily addresses a bug fix related to userattributes typing within the authentication module.
v2.97.1-canary.41 fixThis canary release primarily addresses a bug in the Realtime module related to patching channel join payloads with the access token.
v2.97.1-canary.32 featuresThis canary release introduces support for custom authentication providers and updates the UserAttributes type with the currentPassword field.
v2.97.1-canary.21 featureThis canary release introduces a new configuration option for OAuth clients within the auth module.
v2.97.1-canary.11 fixThis canary release primarily addresses an authentication fix by lowering the default lockAcquireTimeout and updating associated JSDoc.
v2.97.1-canary.01 fixThis canary release primarily addresses an issue in the authentication module by implementing a steal fallback to recover from orphaned navigator locks.
v2.97.01 featureThis release introduces the skipAutoInitialize option for the auth module to control constructor auto-initialization.
v2.96.1-canary.01 featureThis canary release introduces a new option to control automatic initialization within the auth module.
v2.96.03 fixes1 featureThis release introduces a new setHeader method for BaseApiClient in storage and includes several bug fixes across auth, postgrest, and realtime modules.
v2.95.4-canary.21 fixThis canary release primarily addresses a security-related bug fix concerning Firefox content scripts and authentication locks.
v2.95.4-canary.11 fixThis canary release primarily focuses on a bug fix within the Postgrest client to enforce type safety for table and view names in the from() method.
v2.95.4-canary.01 fix1 featureThis canary release introduces a new setHeader method for storage operations and fixes an unnecessary check in the realtime channel removal logic.
v2.95.32 fixes1 featureThis release introduces canonical CORS header export for Edge Functions and includes fixes for Realtime channel management and Storage download parameters.
v2.95.21 fixThis patch release primarily addresses a documentation issue by adding module information to the tsdoc for the supabase integration.
v2.95.2-canary.22 fixesThis canary release (2.95.2-canary.2) primarily addresses minor fixes, including testing compatibility with older ESM versions and a small addition to the core supabase functionality.
v2.95.2-canary.11 fixThis canary release primarily addresses a bug related to repository subpath handling.
v2.95.2-canary.01 fixThis canary release primarily addresses an ESM release issue within the repository.
v2.95.1This was a version bump only, there were no code changes.
v2.95.02 fixes1 featureThis release introduces canonical CORS header export for Supabase edge functions and includes fixes for realtime channel management and storage download parameters.
v2.94.2-canary.02 fixes1 featureThis canary release introduces canonical CORS header export for Supabase edge functions and includes fixes for realtime channel management and storage download parameters.
v2.94.11 fixThis patch release fixes an issue where OAuth authorization types did not correctly match API responses in the auth module.
v2.94.1-canary.01 fixThis canary release primarily addresses an issue in the auth module by correcting OAuth authorization types to match API responses.
v2.94.01 fix1 featureVersion 2.94.0 introduces URL length validation and timeout protection for postgrest operations and resolves a CI script issue.
v2.93.4-canary.11 fix1 featureThis canary release introduces URL length validation and timeout protection for postgrest, alongside a fix for the CI release script.
v2.93.4-canary.02 fixesThis canary release primarily focuses on fixing internal CI/CD and authentication verification issues related to the canary build process.
v2.93.32 fixesThis patch release (2.93.3) focuses on minor fixes, including improvements to authentication fallback naming and handling of empty responses in storage vector operations.
v2.93.21 fixThis patch release reverts client platform and runtime detection headers for the supabase integration.
v2.93.2-canary.01 fixThis canary release primarily addresses a bug fix by reverting changes related to Supabase client platform and runtime detection headers.
v2.93.11 fixThis patch release reverts an unnecessary validation step in the realtime postgres_changes event dispatch mechanism.
v2.93.06 fixes2 featuresThis release introduces an optional jwt parameter for authentication assurance level and improves client platform detection by adding necessary HTTP headers. Several bug fixes address promise rejections, storage handling, and realtime connection errors.
v2.92.1-canary.01 fixThis canary release addresses an issue with environment detection for Supabase when running in Node.js versus browser contexts.
v2.92.1-rc.21 fixThis release includes a minor fix addressing an internal implementation detail within the Supabase integration.
v2.92.1-rc.11 fixThis release addresses a specific environment detection issue within the Supabase integration.
v2.91.3-rc.1This release was a version bump only, containing no functional code changes.
v2.91.3-rc.0This release was a version bump only, containing no functional code changes.
v2.91.2-rc.06 fixes2 featuresThis release introduces an optional JWT parameter for assurance level retrieval and improves client platform detection via HTTP headers. Several bug fixes address promise rejections, storage handling, and realtime connection errors.
v2.91.11 fixThis patch release primarily focuses on fixing an issue where SSR OAuth functionality was broken in the previous version.
v2.91.1-canary.31 featureThis canary release introduces an optional jwt parameter for the getAuthenticatorAssuranceLevel function in the auth module.
v2.91.1-canary.24 fixes1 featureThis canary release introduces improved platform detection via HTTP headers and fixes several bugs related to auth, realtime connections, and storage error reporting.
v2.91.1-canary.01 fixThis canary release primarily focuses on fixing an issue where SSR OAuth functionality was broken in the previous version.
v2.91.03 fixes1 featureThis release introduces an update to the default realtime serializer and includes several bug fixes related to auth operations and cross-context promise errors in Firefox.
v2.90.2-canary.21 fixThis canary release primarily addresses a clarification regarding the behavior of updateUserById in the auth module.
v2.90.2-canary.11 fix1 featureThis canary release introduces an update to the default serializer for realtime functionality and fixes a cross-context Promise error in the Firefox extension.
v2.90.2-canary.01 fixThis canary release primarily addresses a deadlock issue within the authentication flow by deferring subscriber notification.
v2.90.12 fixesThis patch release addresses critical bugs in postgrest query building and realtime event dispatch validation.
v2.90.1-canary.11 fixThis canary release primarily addresses a bug in the PostgREST query builder to ensure proper isolation between operations.
v2.90.1-canary.01 fixThis canary release primarily addresses a bug fix related to validating table filters during postgres_changes event dispatch.
v2.90.010 fixes1 featureThis release introduces the exposure of heartbeat latency in realtime callbacks and includes numerous bug fixes across auth, functions, postgrest, and general supabase types to improve stability and compatibility.
v2.89.1-canary.81 fixThis canary release primarily addresses an authentication issue by introducing a configurable lock acquisition timeout to prevent deadlocks.
v2.89.1-canary.72 fixesThis canary release addresses two specific bugs related to function content-type handling and RPC head requests with object arguments in Postgrest.
v2.89.1-canary.61 fixThis canary release fixes an issue where the user session was not preserved if a magic link was clicked twice.
v2.89.1-canary.51 fixThis canary release primarily addresses a bug fix in the auth module related to clearing the initial setTimeout during auto-refresh stop.
v2.89.1-canary.41 fixThis canary release primarily addresses an issue in the supabase integration to avoid edge runtime warnings within Next.js environments.
v2.89.1-canary.31 fixThis canary release (2.89.1-canary.3) primarily addresses a type definition issue within the supabase integration.
v2.89.1-canary.22 fixesThis canary release primarily focuses on updating the auth types by adding 'banned_until' to user and 'last_challenged_at' to factor.
v2.89.1-canary.11 fixThis canary release primarily addresses a minor issue in the Supabase integration by splitting type-only exports to clean up import warnings.
v2.89.1-canary.01 featureThis canary release introduces the ability to access heartbeat latency within the realtime heartbeat callback.
v2.89.03 featuresThis release introduces new authentication features, including X (OAuth 2.0) provider support and string array support for AMR claims, alongside exporting a new utility type.
v2.88.1-canary.21 featureThis canary release introduces the export of the DatabaseWithoutInternals utility type within the supabase module.
v2.88.1-canary.11 featureThis canary release introduces string array support for AMR claims within the authentication module.
v2.88.1-canary.01 featureThis canary release introduces support for the X (OAuth 2.0) authentication provider.
v2.88.02 fixes3 featuresThis release introduces custom predicates for session detection in auth, adds the 'notin' filter for Postgrest, and resolves a websocket race condition in Realtime for Node.js.
v2.87.4-canary.51 featureThis canary release focuses on internal infrastructure improvements by migrating the build system to tsdown for better ESM/CJS compatibility.
v2.87.4-canary.48 fixes1 featureThis canary release focuses primarily on internal repository tooling updates, migrating the build process to tsup and ensuring backwards compatibility across recent changes.
v2.87.4-canary.31 featureThis canary release introduces a new feature allowing custom predicates for the detectSessionInUrl authentication option.
v2.87.4-canary.21 featureThis canary release introduces the 'notin' filter capability to postgrest operations.
v2.87.4-canary.11 fixThis canary release fixes an issue where the authorization header was incorrectly included in realtime operations even when no access token was present.
v2.87.4-canary.01 fixThis canary release primarily addresses a websocket race condition within the realtime functionality when operating in a Node.js environment.
v2.87.31 fixThis patch release resolves an issue with ESM imports failing in the supabase integration when using .js extensions via jsDelivr CDN.
v2.87.3-canary.11 fixThis canary release primarily addresses a bug related to ESM imports failing on jsDelivr CDN within the supabase integration.
v2.87.3-canary.01 fixThis canary release primarily addresses a bug related to ESM imports failing on jsDelivr CDN when using .js extensions.
v2.87.23 fixesThis patch release (2.87.2) focuses on stability, fixing a memory leak in realtime connections, resolving a CDN import issue, and improving error handling for PKCE authentication.
v2.87.2-canary.03 fixesThis canary release focuses on stability, fixing an auth error related to PKCE, resolving a memory leak in realtime workers, and correcting an ESM import issue via jsDelivr.
v2.87.13 fixesThis patch release (2.87.1) focuses on bug fixes across authentication and realtime subscriptions, including JWT preservation and improved null handling in filters.
v2.87.1-canary.12 fixesThis canary release addresses two specific bugs: one in auth related to session persistence and another in realtime concerning null value handling in postgres change filters.
v2.87.1-canary.01 fixThis canary release primarily fixes an issue where custom JWT tokens were not being preserved during channel resubscription in the realtime module.
v2.87.01 fix1 featureThis release introduces an alignment of storage analytics with the standard { data, error } pattern and includes a minor fix to update the lock file.
v2.86.3-canary.01 fix1 featureThis canary release introduces an alignment of storage analytics to the { data, error } pattern and includes a minor fix to update the lock file.
v2.86.21 fixThis patch release fixes an issue in the storage module related to the structure of QueryVectorsResponse.
v2.86.2-canary.01 fixThis canary release primarily addresses a bug fix in the storage module related to QueryVectorsResponse structure.
v2.86.14 fixes1 featureThis patch release focuses on stability, fixing several bugs related to authentication warnings, PostgREST type inference, and resolving lock file issues. It also introduces an ESM wrapper to improve compatibility with Nuxt.
v2.86.1-canary.04 fixes1 featureThis canary release focuses on bug fixes across auth and postgrest modules, including suppressing warnings and improving type inference, alongside adding an ESM wrapper for Nuxt compatibility.
v2.86.01 featureThis release introduces a new 'from' method for storage operations and integrates iceberg-js.
v2.85.1-canary.01 featureThis canary release introduces a new feature for storage operations by integrating iceberg-js and adding a from method.
v2.85.01 fix1 featureThis release introduces metadata support for realtime user broadcasts and includes minor type fixes in the authentication module.
v2.84.1-canary.11 featureThis canary release introduces metadata capabilities for realtime user broadcast pushes.
v2.84.1-canary.01 fixThis canary release primarily addresses minor type fixes within the authentication module.
v2.84.02 fixes1 featureRelease 2.84.0 introduces new pattern matching operators for Postgrest and includes fixes for relation name validation and Realtime serialization.
v2.83.1-canary.21 featureThis canary release introduces new pattern matching operators for postgrest queries.
v2.83.1-canary.11 fixThis canary release focuses on internal improvements by simplifying the realtime serializer.
v2.83.1-canary.01 fixThis canary release primarily focuses on fixing an issue related to relation name validation within Postgrest operations.
v2.83.01 featureThis release primarily renames the StorageAnalyticsApi to StorageAnalyticsClient for improved clarity in the storage module.
v2.82.1-canary.01 featureThis canary release primarily renames the StorageAnalyticsApi to StorageAnalyticsClient for clarity.
v2.82.03 fixes1 featureThis release introduces new OAuth management endpoints in the auth module and includes several bug fixes across PostgREST, Realtime, and Storage components.
v2.81.2-canary.31 fixThis canary release primarily addresses a bug fix related to the analytics bucket property within storage operations.
v2.81.2-canary.21 featureThis canary release introduces new OAuth management endpoints for listing and revoking grants within the auth module.
v2.81.2-canary.11 fixThis canary release primarily addresses a bug in the Realtime module related to null reference handling during message encoding.
v2.81.2-canary.01 fixThis canary release primarily addresses an issue in PostgREST by ensuring fetch error causes and codes are properly propagated.
v2.81.13 fixesThis patch release addresses compatibility issues with Next.js 16 in the auth module, improves SSO handling, and relaxes the requirement for setAuth in the realtime module when using custom JWTs.
Common Errors
SelectQueryError6 reportsSelectQueryError in supabase-auth usually arises from type mismatches when the TypeScript compiler infers incorrect types after a database operation like `rpc()` or joins involving different schemas. To fix it, explicitly cast the returned data to the correct TypeScript type using `as` or define a more specific function return type using generics, ensuring the compiler understands the structure of the data you're selecting. This guarantees the expected schema and data types are aligned, resolving the mismatch.
AuthSessionMissingError3 reportsThe "AuthSessionMissingError" usually occurs when the app tries to access or manipulate an authentication session (like signing out) before a session has been properly initialized or is no longer valid (e.g., expired or cleared). To fix this, ensure you have a valid Supabase client initialized and that a user session exists before attempting operations like signOut. If the session might be expired or cleared, handle the error gracefully by checking for a valid session before calling `signOut` or re-authenticating the user.
StorageUnknownError3 reportsThe "StorageUnknownError" in supabase-auth often arises from inconsistent or corrupted data in the storage bucket's metadata or underlying storage system, or from temporary unavailability/glitches in Supabase's storage service. To resolve, try retrying the operation (especially uploads) after a short delay to see if it was transient; if the error persists, investigate and consider refreshing/resetting your storage bucket, using Supabase's dashboard, if data corruption is suspected. If that doesn't fix it, contact Supabase support.
AuthApiError3 reportsThe "AuthApiError" in supabase-auth often arises from incorrect or missing configuration, particularly with environment variables or authentication providers. Double-check that your Supabase project URL and anon key are correctly set in your application and that any external authentication providers (like Google, phone auth) are properly configured and enabled in your Supabase project dashboard. Verify that your code handling authentication flows, especially `exchangeCodeForSession` or similar methods, correctly provides all required parameters like the auth code and code verifier (if applicable), ensuring they are non-empty.
FunctionsRelayError1 reportFunctionsRelayError usually indicates a mismatch between the supabase-js client version and the Supabase project's Functions relay version, or a misconfiguration in the Functions URL. Upgrade your supabase-js client to the latest version matching your project's expected Functions relay and diligently verify that your Functions URL in the client's configuration is correct and accessible. Ensure that the Supabase Functions runtime URL is correctly set in your Supabase project settings.
ReferenceError1 reportThe "ReferenceError: window is not defined" error usually occurs because `window` is a browser-specific object and your code is running in a server-side environment (like Next.js SSR, Node.js) where it doesn't exist. To fix this, conditionally use browser-specific code only when running in the browser, commonly achieved using a check like `typeof window !== 'undefined'` before accessing `window` or by lazy-loading the supabase-auth client within a `useEffect` hook in React/Next.js. If using Next.js, consider using dynamic imports with `ssr: false`.
Related Backend & Infra Packages
Production-Grade Container Scheduling and Management
Node.js JavaScript runtime ✨🐢🚀✨
Promise based HTTP client for the browser and node.js
A modern runtime for JavaScript and TypeScript.
Deliver web apps with confidence 🚀
Incredibly fast JavaScript runtime, bundler, test runner, and package manager – all in one
Subscribe to Updates
Get notified when new versions are released