> ## Documentation Index
> Fetch the complete documentation index at: https://www.osohq.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Node.js SDK Changelog

> Changelog of updates to Oso Cloud Node.js SDK.

### 2.6.0

* Add `listPaginated()` method for paginated list queries. Returns results in pages with a `nextPageToken` for fetching subsequent pages. `pageSize` is a required parameter.

### 2.5.6

* Remove unused internal API.

### 2.5.5

* Make the `BatchTransaction` class public for testing purposes

### 2.5.4

* Log node-fetch errors and return opaque error to the caller

### 2.5.3

* Fix bug concerning undefined `dnsServerEndpoints`.

### 2.5.2

* Stable release with `ParityHandle`.
* Support for custom DNS servers using the `dnsServerEndpoints` option.

### 2.5.2-experimental

* Add support for custom DNS servers using the `dnsServerEndpoints` option.

### 2.5.1-experimental

* Fix bug that prevented normal usage of `.expect()` calls.

### 2.5.0-experimental

* Add `ParityHandle` for use with [`Oso Migrate`](/develop/local-dev/oso-migrate).

### 2.4.7

* Added optional `fetchBuilder` argument to the `Oso` constructor. Use it to modify arguments passed to the underlying "fetch" implementation and provide other logic, like retries. If provided, `fetchBuilder` replaces the Oso Cloud client's default "fetch" wrapper, which is currently only responsible for retries.
  N.B. If `fetchBuilder` is used together with `fetchTimeoutMillis`, `fetchBuilder` will be applied *after* the timeout logic is applied to "fetch".

### 2.4.6

* Deduplicate results when evaluating on a variable or list of variables in the QueryBuilder.

### 2.4.5

* Added optional `fetchTimeoutMillis` argument to the `Oso` constructor. Timeout applies to requests to Oso Cloud.

### 2.4.4

* Bump dependencies.

### 2.4.3

* Fix "Type instantiation is excessively deep and possibly infinite" error in generated TypeScript declarations.

### 2.4.2

* Raise a more helpful error on invalid fact syntax.

### 2.4.1

* Return entire response body in event of malformed error payload.

### 2.4.0

* Add support for custom debug logger in client options.

### 2.3.0

* Add support for context facts to the `authorizeLocal`, `actionsLocal`, and `listLocal` functions.

### 2.2.0

* Use Fallback, if configured, for `.get`, `.getPolicyMetadata`, Query Builder, and
  local check APIs if Oso Cloud returns an error (Requires [Fallback 1.0.0](#fallback-1.0.0) or later).
* Use Fallback, if configured, if Oso Cloud returns an HTTP 400 error.

### 2.1.0

* Add `.evaluateLocalSelect` and `.evaluateLocalFilter` functions to the Query
  Builder to support querying with Local Authorization.

### 2.0.2

* Internal changes: remove deprecated API method.

### 2.0.1

* Improve error message when using a list filtering method without providing a
  valid Local Authorization config YAML file.
* More defensively handle non-JSON responses.

### 2.0.0

This release contains several breaking changes. There's a [migration guide](/reference/sdks/migration-guide) for upgrading from version 1.x, and don't hesitate to reach out if you run into any issues.

#### Generate TypeScript Types From Your Policy

See [TypeScript types](/reference/sdks/migration-guide#typescript-types) for more details.

#### Simplified Fact Management API

Reduced the number of methods for managing facts in Oso Cloud from five to
three:

* `tell` is now `insert`.
* `delete` has been upgraded to support wildcard deletions.
* `bulk`, `bulkTell`, and `bulkDelete` have been replaced with a new
  transactional `batch` API.

See the [API docs](/reference/sdks/migration-guide#facts-api) and the [migration guide](/reference/sdks/migration-guide) for more details.

#### Powerful New QueryBuilder API for Querying Arbitrary Rules in Your Policy

See the [API docs](/reference/sdks/migration-guide#query-api) and the [migration guide](/reference/sdks/migration-guide) for more details.

### 1.7.1

* Add `X-Request-ID` header to uniquely identify individual API requests; include this ID in error messages for better debugging.

### 1.7.0

* Add new [`oso.actionsLocal()`](/reference/sdks/local-authorization#actions-local) method.
* Accept `boolean`, `bigint`, and `number` as fact args. These are converted to the appropriate Polar type.

### 1.6.2

* Return an error if the request body is too large without sending a request to Oso Cloud.

### 1.6.1

* Update error message wording: add "Oso Cloud error" prefix.

### 1.6.0

Added support for the local check API:

* Added new [`oso.listLocal()`](/reference/sdks/local-authorization#list-local) method.
* Added new [`oso.authorizeLocal()`](/reference/sdks/local-authorization#authorize-local) method.
* Added optional `dataBindings` argument to
  the `Oso` constructor.

### 1.5.0

Add new [`oso.bulkActions()` API](/reference/api/centralized-authorization-data/post-bulk).
