Status property configs in data source responses now include a read-only default_option that names the option shown when a page has no explicit Status value, or null when no default is configured. The field is required on the response type, so hand-built objects such as test fixtures must add it.
SDK (JS)
npx @buildinternet/releases get notion-sdk-jsCloudflare Workers and Deno worker threads are no longer detected as browsers, restoring client creation with auth and the user-agent header after v5.27.0 threw BrowserTokenNotAllowedError. The dangerouslyAllowBrowser workaround can now be removed on server runtimes.
Constructing a client with auth in a browser, web worker, or service worker now throws BrowserTokenNotAllowedError unless dangerouslyAllowBrowser: true is passed. Adds client.plugins and client.skills methods returning signed archive URLs, typed databases with a database_type field, and updates agent response types including the notion_ai personal agent ID.
Adds client.agents methods for retrieving, querying, deleting, and batching agents, plus client.sessions methods for retrieving, updating, canceling, and querying sessions, session events, and streamed responses. Session streaming returns an async iterable that retries eligible HTTP failures before opening, without replaying events after streaming begins, and introduces typed session events and metadata.
The verification property filter in data source and database queries now supports a does_not_equal condition alongside the existing status filter, matching pages whose verification state is anything other than the specified value. Purely additive — existing filters are unaffected.
isFullDataSource and isFullDatabase no longer accept partial responses — they now also require the title field, matching the structural checks used by isFullPage and isFullBlock. This prevents incorrect type narrowing for partial data source or database objects.
Pages created or updated via the SDK now accept a filter_properties parameter to bound which properties are returned in the write response, matching pages.retrieve(). The failed-task error type was also compacted into a single union with correlated status/code, with no behavioral change.
New client.blocks.meetingNotes.create() supports file uploads or existing audio, video, or file blocks, with parent required only for file-upload sources. Formula and rollup response unions now include type: "unsupported" for values Notion didn't compute, and APIErrorCode.InvalidBeta recognizes invalid_beta responses as APIResponseError.
Requests rejected at the network edge now populate a ray_id from the cf-ray response header and a request_id from x-notion-request-id, making firewall-blocked requests diagnosable. Also fixes retry-after header lookup to be case-insensitive and handle array-valued headers.
Client.search() now accepts an in_trash filter to return only trashed pages and data sources. Existing searches are unaffected — trash remains excluded by default.
Rich text annotation types (ApiColor, RichTextItemResponseCommon, AnnotationResponse) are now exported from the package entrypoint. Pagination helpers (iteratePaginatedAPI, collectPaginatedAPI) now accept endpoint methods under strictNullChecks, fixing a regression introduced in v5.23.0.
Adds verifyWebhookSignature() and signWebhookPayload() helpers to confirm webhooks came from Notion without hand-rolling HMAC-SHA256, and iterateAllDataSourceRows / collectAllDataSourceRows helpers that page past the ~10,000-row limit by partitioning on created_time. Also adds client.asyncTasks.retrieve support, allow_async option on createPage and page markdown updates, automatic retry on HTTP 529 service overload, and fixes the relevance search sort type and pagination null handling.
The update page markdown endpoint's insert_content params now accept a position field.
Meeting notes queries now support attendees property typing, and agent_id is added as a parent type for workflow-parented pages and blocks.
What's Changed
- Add
request_statusfield to all affected list response types in https://github.com/makenotion/notion-sdk-js/pull/711 - Bump version to
v5.20.0by @github-actions[bot] in https://github.com/makenotion/notion-sdk-js/pull/712
Links
-…
What's Changed
- Add
updatemethod tocommentsnamespace for UpdateComment endpoint in https://github.com/makenotion/notion-sdk-js/pull/705 - Update
markdownfield descriptions in comments endpoints to match updated API spec in…
What's Changed
- Support multi-value filters for select, status, and multi_select property filters in https://github.com/makenotion/notion-sdk-js/pull/707
- Bump version to
v5.18.0in https://github.com/makenotion/notion-sdk-js/pull/708
Links
- **Full…
What's Changed
- Add
markdownparameter to Create Comment endpoint in https://github.com/makenotion/notion-sdk-js/pull/703 - Bump version to
v5.17.0in https://github.com/makenotion/notion-sdk-js/pull/704
Links
- Full Changelog:…
What's Changed
- Add icon support to paragraph blocks (tab block items) by @notion-buildkite-app[bot] in https://github.com/makenotion/notion-sdk-js/pull/697
- Add
gateway_timeouttoAPIErrorCodeenum by @notion-buildkite-app[bot] in…


