---
source_url: https://www.pubnub.com/docs/release-notes/2026/january
title: Documentation Release Notes - January 2026
updated_at: 2026-06-16T12:50:02.318Z
---

> Documentation Index
> For a curated overview of PubNub documentation, see: https://www.pubnub.com/docs/llms.txt
> For the full list of all documentation pages, see: https://www.pubnub.com/docs/llms-full.txt


# Documentation Release Notes - January 2026

January kicked off the year with a focus on developer experience improvements and continued modernization of our SDK documentation.

The biggest addition this month was a comprehensive [JavaScript environment setup guide](#javascript-environment-setup) covering Node.js versions, package managers (npm, yarn, pnpm, bun), TypeScript configuration, and modern build tools. We also added [Bun support](#bun-support-in-chat-sdk) to the JavaScript Chat SDK and improved installation instructions across all Chat SDKs.

On the SDK side, we continued the HereNow pagination work from November 2025, adding `limit` and `offset` parameters to [Swift, JavaScript, and Kotlin Chat SDKs](#herenow-pagination-in-chat-sdks). We also completed the migration of [Swift Chat SDK code snippets](#swift-chat-sdk-code-snippets) to use repository-sourced examples.

## General 🛠️

### Troubleshooting improvements

**Type**: Enhancement

We improved the [troubleshooting documentation](https://www.pubnub.com/docs/general/resources/troubleshooting) and [JavaScript SDK status events](https://www.pubnub.com/docs/sdks/javascript/status-events) based on user feedback.

The troubleshooting page now includes:

* Clear HTTP status code tables for success and error codes
* Detailed guidance on handling concurrent updates (HTTP 412) with ETag
* Links to SDK-specific troubleshooting and status event references

### Legacy provisioning API deprecation

**Type**: Enhancement

We updated the [API limits documentation](https://www.pubnub.com/docs/general/setup/limits) to clarify keyset limits for different account tiers and added deprecation notices for the legacy provisioning API.

| Account Tier | Keyset Limit |
| --- | --- |
| Free | 3 keysets (hard limit) |
| Starter | Unlimited |
| Pro | Unlimited |

For programmatic keyset management, use the [Admin API](https://www.pubnub.com/docs/admin-api) instead of the deprecated provisioning endpoints.

## SDKs 📦

### JavaScript environment setup

**Type**: New feature

We added a comprehensive [JavaScript environment setup guide](https://www.pubnub.com/docs/sdks/javascript/environment-setup) covering everything you need to configure a modern JavaScript environment for PubNub development.

The guide covers:

* **Node.js versions** - PubNub's JavaScript SDK requires Node.js 20 or later for server-side applications
* **Package managers** - Installation instructions for npm, yarn, pnpm, and bun
* **TypeScript configuration** - Recommended `tsconfig.json` settings for PubNub projects
* **Build tools** - Setup guides for Vite, Next.js, Remix, and Angular
* **ES Modules vs CommonJS** - Guidance on import styles and Node.js ESM support
* **React Native** - Setup for both Expo and React Native CLI

**Package manager comparison:**

| Feature | npm | yarn | pnpm | bun |
| --- | --- | --- | --- | --- |
| Bundled with Node.js | Yes | No | No | No |
| Install speed | Moderate | Fast | Very fast | Very fast |
| Disk space efficiency | Moderate | Moderate | Very efficient | Efficient |
| Workspaces support | Yes | Yes | Yes | Yes |

**TypeScript setup example:**

```typescript
import PubNub from 'pubnub';

const pubnub = new PubNub({
    publishKey: 'your-publish-key',
    subscribeKey: 'your-subscribe-key',
    userId: 'your-user-id'
});
```

### Bun support in Chat SDK

**Type**: New feature

We added [Bun](https://bun.sh/) package manager installation instructions to the [JavaScript Chat SDK documentation](https://www.pubnub.com/docs/chat/chat-sdk).

You can now install the JavaScript Chat SDK using Bun:

```bash
bun add @pubnub/chat
```

The JavaScript Chat SDK now supports all major package managers:

#### npm

```bash
npm install @pubnub/chat
```

#### yarn

```bash
yarn add @pubnub/chat
```

#### pnpm

```bash
pnpm add @pubnub/chat
```

#### bun

```bash
bun add @pubnub/chat
```

### Chat SDK installation updates

**Type**: Enhancement

We updated installation instructions across all Chat SDK documentation with clearer npm and yarn guidance:

* [JavaScript Chat SDK](https://www.pubnub.com/docs/chat/chat-sdk)
* [Kotlin Chat SDK](https://www.pubnub.com/docs/chat/kotlin-chat-sdk)
* [Swift Chat SDK](https://www.pubnub.com/docs/chat/swift-chat-sdk)
* [Unity Chat SDK](https://www.pubnub.com/docs/chat/unity-chat-sdk)
* [Unreal Chat SDK](https://www.pubnub.com/docs/chat/unreal-chat-sdk)

Each SDK landing page now includes consistent, easy-to-follow installation steps with all supported package managers.

### HereNow pagination in Chat SDKs

**Type**: Enhancement

Continuing the [HereNow pagination work from November 2025](https://www.pubnub.com/docs/release-notes/2025/november#herenow-changes-across-sdks), we added `limit` and `offset` parameters to presence features in the [Swift](https://www.pubnub.com/docs/chat/swift-chat-sdk), [JavaScript](https://www.pubnub.com/docs/chat/chat-sdk/build/features/users/presence), and [Kotlin](https://www.pubnub.com/docs/chat/kotlin-chat-sdk/build/features/users/presence) Chat SDKs.

These parameters help you efficiently retrieve presence information for high-occupancy channels:

| Parameter | Description |
| --- | --- |
| `limit`Default: `100` | Maximum number of occupants to return per channel. |
| `offset`Default: `0` | Zero-based starting index for pagination. |

The `whoIsPresent()` method now supports pagination parameters:

```ts
// Get a list of users present on a channel with pagination
const result = await channel.whoIsPresent({
    limit: 50,
    offset: 0
})

console.log(`Users present: ${result.occupants.join(", ")}`)
```

We also expanded the threads documentation in JavaScript and Kotlin Chat SDKs to include additional methods for thread management.

### Kotlin and Java connection pool config

**Type**: Enhancement

We documented connection pool configuration options in the [Kotlin SDK](https://www.pubnub.com/docs/sdks/kotlin/api-reference/configuration#methods) and [Java SDK](https://www.pubnub.com/docs/sdks/java/api-reference/configuration#methods) API references.

These options help you fine-tune network performance for high-throughput applications.

### Swift Chat SDK code snippets

**Type**: Enhancement

Following the [Swift Chat SDK work from December 2025](https://www.pubnub.com/docs/release-notes/2025/december#files-and-push-notifications-in-unity-chat-sdk), we completed the migration of Swift Chat SDK documentation to use the `EmbeddedCode` component.

This update affects 42 documentation files across the Swift Chat SDK, including:

* [Configuration](https://www.pubnub.com/docs/chat/swift-chat-sdk/build/configuration)
* [Channel operations](https://www.pubnub.com/docs/chat/swift-chat-sdk/build/features/channels/create)
* [Message handling](https://www.pubnub.com/docs/chat/swift-chat-sdk/build/features/messages/send-receive)
* [User management](https://www.pubnub.com/docs/chat/swift-chat-sdk/build/features/users/create)
* [Presence](https://www.pubnub.com/docs/chat/swift-chat-sdk/build/features/users/presence)

All code snippets are now pulled directly from the [Swift Chat SDK GitHub repository](https://github.com/pubnub/swift-chat-sdk), ensuring examples are always tested and up-to-date with the latest SDK version.

## Illuminate 💡

### Query Builder improvements

**Type**: Enhancement

Following the [Query Builder introduction in December 2025](https://www.pubnub.com/docs/release-notes/2025/december#query-builder-documentation), we enhanced the [Query Builder documentation](https://www.pubnub.com/docs/illuminate/business-objects/query-builder) with predefined decisions information.

The updated documentation now includes visual examples for all four predefined query types:

| Predefined Query | Purpose |
| --- | --- |
| **Top N** | Reward the top 10 users who are most engaged by message count |
| **Bottom N** | Incentivize users who are least engaged |
| **Cross-posting spam** | Detect users sending duplicate messages across multiple channels |
| **Chat flooding spam** | Detect users posting excessive or repetitive messages in a single channel |

Each predefined query now shows the corresponding predefined decision template:

![Predefined decision reward](https://www.pubnub.com/assets/images/predefined-decision-reward-9417090959bd63cbeeaaa31e2f5ebefd.png)

The documentation also includes new screenshots showing how to create decisions from query data fields.

## Functions ⚙️

### Export logs in Functions overview

**Type**: Enhancement

We added the export logs documentation to the [Functions overview](https://www.pubnub.com/docs/serverless/functions/overview) page. This information was previously only available in the [Admin Portal Functions page](https://www.pubnub.com/docs/serverless/functions/functions-in-admin-portal) and is now easier to discover when reading the serverless Functions documentation.

The documentation explains how to retain Function logs long-term using [Events & Actions](https://www.pubnub.com/docs/serverless/events-and-actions/overview) via [Webhook](https://www.pubnub.com/docs/serverless/events-and-actions/actions/create-webhook-action) or [S3](https://www.pubnub.com/docs/serverless/events-and-actions/actions/create-s3-action).