JavaScript

Beta Versions

Certain WorkOS features may be available only in the beta version of the SDK. Beta versions have the -beta.* suffix, for example, 3.2.0-beta.1. For more information on how to use beta versions, refer to the README in the GitHub repository.

Releases

May 19, 2026

v9.3.1

Latest
May 19, 2026

v9.3.0...v9.3.1" rel="noreferrer" target="_blank">9.3.1 (2026-05-19)

Bug Fixes

May 13, 2026

v9.3.0

May 13, 2026

v9.2.0...v9.3.0" rel="noreferrer" target="_blank">9.3.0 (2026-05-13)

Features

May 5, 2026

v9.2.0

May 5, 2026

v9.1.1...v9.2.0" rel="noreferrer" target="_blank">9.2.0 (2026-05-04)

Features

--- This PR was generated with Release Please. See documentation.

April 24, 2026

v9.1.1

April 24, 2026

v9.1.0...v9.1.1" rel="noreferrer" target="_blank">9.1.1 (2026-04-24)

Bug Fixes

April 22, 2026

v9.1.0

April 22, 2026

v9.0.0...v9.1.0" rel="noreferrer" target="_blank">9.1.0 (2026-04-21)

Features

April 21, 2026

v9.0.0

April 21, 2026

v8.13.0...v9.0.0" rel="noreferrer" target="_blank">9.0.0 (2026-04-21)

⚠ BREAKING CHANGES

Features

Bug Fixes

Code Refactoring

Read the https://github.com/workos/workos-node/blob/main/docs/V9_MIGRATION_GUIDE.md" rel="noreferrer" target="_blank">V9_MIGRATION_GUIDE.md for more information.

April 13, 2026

v8.13.0

April 13, 2026

v8.12.1...v8.13.0" rel="noreferrer" target="_blank">8.13.0 (2026-04-13)

Features

April 7, 2026

v8.12.1

April 7, 2026

v8.12.0...v8.12.1" rel="noreferrer" target="_blank">8.12.1 (2026-04-07)

Bug Fixes

April 6, 2026

v8.12.0

April 6, 2026

v8.11.1...v8.12.0" rel="noreferrer" target="_blank">8.12.0 (2026-04-06)

Features

April 5, 2026

v8.11.1

April 5, 2026

v8.11.0...v8.11.1" rel="noreferrer" target="_blank">8.11.1 (2026-04-04)

Bug Fixes

April 2, 2026

v8.11.0

April 2, 2026

v8.10.0...v8.11.0" rel="noreferrer" target="_blank">8.11.0 (2026-04-02)

Features

Bug Fixes

March 25, 2026

v8.10.0

March 25, 2026

v8.9.0...v8.10.0" rel="noreferrer" target="_blank">8.10.0 (2026-03-25)

Features

Bug Fixes

March 12, 2026

v8.9.0

March 12, 2026

v8.8.0...v8.9.0" rel="noreferrer" target="_blank">8.9.0 (2026-03-12)

Features

Bug Fixes

March 3, 2026

v8.8.0

March 3, 2026

v8.7.0...v8.8.0" rel="noreferrer" target="_blank">8.8.0 (2026-03-03)

Features

Bug Fixes

February 26, 2026

v8.7.0

February 26, 2026

v8.6.0...v8.7.0" rel="noreferrer" target="_blank">8.7.0 (2026-02-26)

Features

Bug Fixes

February 23, 2026

v8.6.0

February 23, 2026
  • Add BYOK intent to Admin Portal
February 14, 2026

v8.5.0

February 14, 2026

What's Changed

  • Add dedicated event types for organisation role deserialisation by @smorimoto in #1485
  • Version bump to 8.4.1 by @csrbarber in #1489
  • chore(deps): update actions/setup-node action to v6 by @renovate[bot] in #1444
  • chore(deps): update actions/checkout action to v6 by @renovate[bot] in #1390
  • v8.5.0 by @nicknisi in #1493

Full Changelog: v8.4.0...v8.5.0

February 13, 2026

v8.4.0

February 13, 2026

What's Changed

  • Added: Authorization Resource support by @swaroopAkkineniWorkos in #1479
  • Added: Role support by @swaroopAkkineniWorkos in #1479
  • Deprecated: FGA by @swaroopAkkineniWorkos in #1479
February 11, 2026

v8.3.1

February 11, 2026

What's Changed

  • Rename api_key.deleted event type to api_key.revoked by @smorimoto in #1476

New Contributors

  • @smorimoto made their first contribution in #1476

Full Changelog: v8.3.0...v8.3.1

February 10, 2026

v8.3.0

February 10, 2026

What's Changed

  • Organization role and permission events support by @csrbarber in #1469

Full Changelog: v8.2.0...v8.3.0

February 5, 2026

v8.2.0

February 5, 2026

What's Changed

  • feat: Add environment role support by @csrbarber in #1454
  • feat: Add organization role support by @csrbarber in #1455
  • Bump to 8.2.0 by @csrbarber in #1466

Full Changelog: v8.1.0...v8.2.0

February 3, 2026

v8.1.0

February 3, 2026

What's Changed

  • docs: fix inconsistencies in V8 migration guide by @nicknisi in #1449
  • Add custom_attributes field to OrganizationMembership by @ajworkos in #1458
  • feat: Add locale param to send/resend invitation methods by @jasonbarry in #1460
  • fix: exclude organizationId from autoPagination params in listOrganizationFeatureFlags by @gjtorikian in #1461
  • Release v8.1.0 by @gjtorikian in #1462

New Contributors

  • @jasonbarry made their first contribution in #1460
  • @gjtorikian made their first contribution in #1461

Full Changelog: v8.0.0...v8.1.0

January 12, 2026

v8.0.0

January 12, 2026

What's Changed

  • chore(deps): update jest monorepo by @renovate[bot] in #832
  • Release v8.0.0: Universal Runtime Support & API Modernization by @nicknisi in #1370

Breaking Change

This is a breaking change that drops support for Node 16 and Node 18.

:sparkles: _New Features_

_PKCE Authentication for Public Clients_

  • API key is now _optional_ - initialize with just clientId for public client apps
  • New getAuthorizationUrlWithPKCE() method generates PKCE challenge internally
  • authenticateWithCode() auto-detects client mode (public vs confidential)
  • New createWorkOS() factory with compile-time type safety - TypeScript errors if you use server-only methods on public clients
  • _Use case_: Build mobile apps, desktop apps, SPAs with secure WorkOS auth without exposing API keys

_Universal Runtime Support_

  • SDK now works seamlessly across Node.js, Deno, Bun, and Cloudflare Workers
  • Runtime-specific exports automatically detected via package.json conditions
  • Dual build strategy: ESM unbundled (optimal tree-shaking), CJS inlines ESM-only deps
  • No more lib/node_modules/ issues that broke Electron packaging

_Better TypeScript Types_

  • SSO authorization options now use discriminated unions (must specify exactly one of: connection, organization, or provider)
  • Public vs confidential client types enforced at compile time
  • Improved type inference across the board

:fire: _Most Exciting Changes_

  1. _You can now build mobile/desktop apps with WorkOS_ - PKCE support means no backend proxy needed for client apps
  2. _Deploy to Cloudflare Workers/edge_ - Full edge runtime support with proper exports
  3. _Type-safe public clients_ - TypeScript catches security mistakes at compile time
  4. _Works everywhere_ - Node, Deno, Bun, Workers all tested and verified

:warning: _Breaking Changes_

_Minimum Node.js version: 20+_ (Node 16 and 18 both have reached EOL)

_Removed deprecated methods:_

  • Vault: createSecret() → use createObject()
  • Vault: listSecrets() → use listObjects()
  • Vault: readSecret() → use readObject()
  • Vault: updateSecret() → use updateObject()
  • Vault: deleteSecret() → use deleteObject()
  • MFA: verifyFactor() → use verifyChallenge()
  • User Management: sendMagicAuthCode() → use sendMagicCode()

_API Changes:_

  • listOrganizationMemberships() now requires userId OR organizationId
  • Directory Sync: user fields moved to customAttributes (e.g., user.customAttributes?.emails)
  • SSO: stricter types - must specify one of connection, organization, or provider (not multiple)
  • Organizations: removed allowProfilesOutsideOrganization and domains fields
  • Events: dsync.deactivateddsync.deleted

_Package structure:_

  • Now ESM-first with dual CJS/ESM exports
  • Removed internal HTTP/crypto provider classes (public API unchanged)

Questions? Hit me up!

Full Changelog: v7.82.0...v8.0.0

January 9, 2026

v7.82.0

January 9, 2026

What's Changed

  • Add context field to Event interface by @nicknisi in #1442

Full Changelog: v7.81.0...v7.82.0

January 7, 2026

v7.81.0

January 7, 2026

What's Changed

  • Add api key events by @stanleyphu in #1437
  • v7.81.0 by @stanleyphu in #1438

Full Changelog: v7.80.0...v7.81.0

January 7, 2026

v7.80.0

January 7, 2026

What's Changed

  • Add Invitation Resent Event Interfaces by @kevinmitch14 in #1433
  • Add api keys management api methods by @stanleyphu in #1434
  • v7.80.0 by @stanleyphu in #1436

Full Changelog: v7.79.3...v7.80.0

January 2, 2026

v7.79.3

January 2, 2026

What's Changed

  • Update qs by @gcarvelli in #1432

Full Changelog: v7.79.2...v7.79.3

December 30, 2025

v7.79.2

December 30, 2025

What's Changed

  • Fix URLs in package.json by @gcarvelli in #1428

Full Changelog: v7.79.1...v7.79.2

December 30, 2025

v7.79.1

December 30, 2025

What's Changed

  • Update repository.url to match npm expectation by @hexedpackets in #1426

Full Changelog: v7.79.0...v7.79.1

December 30, 2025

v7.79.0

December 30, 2025

What's Changed

  • Add readObjectByName method for Vault API by @hexedpackets in #1424

Full Changelog: v7.78.0...v7.79.0