Skip to content

v11.9.0

Latest

Choose a tag to compare

@ryanio ryanio released this 14 Aug 17:58

What's Changed

Stream API client moves into the SDK

The OpenSea Stream API client now ships at the @opensea/sdk/stream subpath, replacing the standalone @opensea/stream-js package. It speaks the Phoenix Channels wire protocol directly rather than depending on phoenix, so the subpath pulls in no third-party runtime code, and neither ethers nor seaport.

Migrating is mostly an import change. See developerDocs/stream-migration.md.

  • Node users no longer need ws or node-localstorage.
  • apiKey replaces token in ClientConfig. token still works and is deprecated.
  • Unsubscribing removes a single handler instead of leaving the whole collection channel. Two subscriptions on one collection previously meant unsubscribing from one silently stopped the other.
  • engines.node is raised to >=22.0.0. Node 20 reached end of life in April 2026.

Correctness fixes

  • getTraits no longer camelizes its response. Its keys are the collection's own trait names and values, so a fur_color trait was reported as furColor, and a collection with both dark_brown and darkBrown had them merged into one entry with a wrong count.
  • parseUnits accepts scientific notation from strings. parseUnits("1e-8", 18) previously threw. This affected any caller that stringified an amount first, including the SDK's own wrapEth, unwrapWeth, and listing/offer price paths.
  • Private listings reject payment items in different tokens. constructPrivateListingCounterOrder summed mixed currencies into one item, so 100 TOKEN_A plus 20 TOKEN_B became 120 TOKEN_A and surfaced as an onchain revert rather than an SDK error.

Repository rename

The public repo is now ProjectOpenSea/opensea-sdk, matching the package name it has shipped as since 9.0.0. repository.url and bugs.url point there. The old URL still redirects. The npm package name is unchanged.

The TypeDoc GitHub Pages site was retired: nothing built it, so it had been serving v8.0.20 docs. Reference documentation lives in developerDocs/api-reference.md.

Community Contributions

  • getTraits trait-key camelization fix, thanks @crazywriter1 (opensea-sdk#1989)
  • parseUnits string scientific notation fix, thanks @Lesnak1 (opensea-sdk#1990)
  • Mixed ERC20 payment token rejection in private listings, thanks @MrFaruk0 (opensea-sdk#1991)

Full Changelog: ProjectOpenSea/opensea-devtools@sdk-v11.8.0...sdk-v11.9.0