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

# March 29, 2026

> The latest updates to Daily's real-time audio and video APIs.

## Overview

March includes significant performance improvements for daily-js and react-native-daily-js, with the initial call-machine bundle now \~2MB smaller through dynamic loading. Audio processor errors no longer automatically mute the microphone, and `testCallQuality()` reliability has been fixed. On the server side, VCS streaming layouts gain animation support, and a new `max_api_keys` domain property lets you limit API key creation per domain. The oldest supported daily-js version has been bumped to 0.81.0, with versions through 0.83.1 approaching end-of-support.

Complete release history for our client SDKs is available in our Github release notes:

* [daily-js](https://github.com/daily-co/daily-js/releases)
* [react-native-daily-js](https://github.com/daily-co/react-native-daily-js/releases)
* [daily-react](https://github.com/daily-co/daily-react/releases)
* [daily-ios](https://github.com/daily-co/daily-client-ios/blob/main/CHANGELOG.md)
* [daily-android](https://github.com/daily-co/daily-client-android/blob/main/CHANGELOG.md)
* [daily-python](https://github.com/daily-co/daily-python/blob/main/CHANGELOG.md)

***

## daily-js

[View full release notes →](https://github.com/daily-co/daily-js/releases)

### 0.89.1

* Fixed an issue causing all `testCallQuality()` tests to fail.
* Fixed remaining vulnerabilities in dependencies.

### 0.89.0

* Reduced initial call-machine bundle download size by \~2MB. Larger portions are now dynamically loaded as-needed.
* Audio processor errors no longer automatically mute the microphone.
* Removed the client-side 3-hour limit for raw-tracks recordings. Limits are now handled server-side.
* Fixed auto-syncing audio output device on Safari, where `setSinkId` requires a user gesture and was causing repeated errors.
* Improved system idle detection to avoid stale reconnect retries after 5 minutes of inactivity. Calls will now leave cleanly in idle scenarios.
* **Breaking:** If you self-host the call-machine-bundle using `callObjectBundleUrlOverride`, a new separate bundle is now required for Krisp noise cancellation. Contact [help@daily.co](mailto:help@daily.co) for upgrade instructions.

***

## react-native-daily-js

[View full release notes →](https://github.com/daily-co/react-native-daily-js/releases)

### 0.84.1

* Fixed remaining vulnerabilities in dependencies.

### 0.84.0

* Reduced initial call-machine bundle download size by \~2MB with dynamic loading.
* Added `digitDurationMs` option to `sendDTMF()` for configurable DTMF digit duration.
* Removed the client-side 3-hour limit for raw-tracks recordings.
* Improved system idle detection to avoid stale reconnect retries after 5 minutes of inactivity.
* **Breaking:** If you self-host the call-machine-bundle using `callObjectBundleUrlOverride`, a new separate bundle is now required for Krisp noise cancellation. Contact [help@daily.co](mailto:help@daily.co) for upgrade instructions.

***

## Dashboard

* Added a configurable `max_api_keys` domain property to set the maximum number of API keys allowed per domain.

***

## Media Services

### Telephony

* Fixed video not working with Linphone SIP client.
* Improved STUN server fallback during SDP negotiation retry.
* Fixed hung media workers caused by unresolved SIP transport promises.
* Improved handling of active SIP sessions during meeting moves.
* Broadcast app messages are no longer sent to participants in the knocking (waiting room) state.
* Oldest supported daily-js version bumped to 0.81.0. Versions through 0.83.1 are approaching end-of-support.

### Streaming

* The new VCS pipeline is now the default for new customers. In April, we are transitioning existing customers to the new pipeline; the legacy pipeline will be EOLed later this summer. In the meantime, you can switch between the new and legacy pipelines with the `enable_legacy_compositor` flag.
* Added a layout animation system for VCS (Video Compositing Service) streaming layouts.
* Fixed RTMP URL handling for streaming destinations.
* Improved jitter buffer latency and added video stall detection for RTMP streaming.

### Recording

* Added `event-json` as a valid `dataOutputs` option for recordings via the REST API. We’re considering making `event-json` the default output format and invite feedback from the community. Note that this would add an additional `event-json` file to the existing S3 folder and may break downstream workflows that assume only media files are present.

### REST API

* Added validation for the `cloud-audio-only` room and meeting token property.
* New `max_api_keys` domain property to configure the maximum number of API keys per domain.
