Edge Scripting(Improvement)
HTMLRewriter, Cache API, and Before cache execution for Edge Scripts are now GA
Edge Scripting’s HTMLRewriter, Cache API, and Before cache execution have been promoted to General Availability and are no longer in preview. Learn moreCLIDatabase(New)
Bunny Database Migrations in the CLI (Public Preview)
The CLI now versions your Bunny Database schema as plain.sql files kept in your repository. Create a migration with migrations create, apply pending ones in filename order with migrations apply, and review what has run with migrations list. The CLI records every applied migration, so the same file never runs twice. Read the announcement or learn more.Database(New)
Bunny Database Client (Public Preview)
@bunny.net/database-client is a dependency-free SQL client for Bunny Database. The same code runs on Edge Scripting, Bun, and Node. It supports prepared statements, tagged-template queries, batched statements that roll back together, and row types inferred from each statement. Read the announcement or learn more.Edge Scripting(New)
Server-Sent Events with Edge Scripting
An Edge Script can answer a request with a stream of Server-Sent Events by returning aResponse that holds a ReadableStream, and the edge delivers each event as the script writes it. Return the response before you await anything, write the first event as soon as the stream opens, and pass a promise to waitUntil that resolves when the stream ends so the isolate is not evicted mid-stream. Learn moreCDN(New)
EEA Routing Filter for Pull Zones
Pull Zones now support a European Economic Area (EEA) routing filter that routes all traffic exclusively through 26 PoPs across EU member states plus Iceland and Norway. Use this filter when you need GDPR-compliant data residency across the full EEA. Learn moreCDN(New)
TLS Security Levels for Pull Zones
Pull Zones now support Legacy, Compatible, and Modern only TLS security profiles, configurable per zone. Set the minimum cipher-suite strength to balance stronger security with the client compatibility each workload requires. Learn moreStorage(Improvement)
S3 API compatibility improvements
The S3 API now supports virtual hosted-style URLs alongside path-style URLs, addsETag and conditional request support to HeadObject and GetObject, improves CopyObject with content-type preservation, metadata directives, and conditional copy headers, and returns a standard SlowDown (503) response with a Retry-After header when requests are rate limited.Stream(New)
Bunny Stream Live - Closed Preview
We’ve opened up bunny Stream customers to signup for our new live streaming preview. The signup banner can be found within your video library! Once approved you’ll be able to live stream at scale globally to your audiences. All managed with the new dashboard control room & API. Features include: RTMP ingest & distribution, scheduling, countdown, DVR, VOD and more.Shield(New)
Investigative Event Logs for Bunny Shield
Bunny Shield Event Logs now support advanced filtering and grouping across Feature, Action, Rule ID, IP / Range, Country, ASN, JA4 Fingerprint, User-Agent, and URL. Combine multiple signals, such as IP, User-Agent, and JA4, to investigate related activity and uncover attack patterns across Shield features. You can also investigate events across multiple days within the 3-day retention window and export results as CSV for further analysis.Learn moreEdge Scripting(New)
Connect a Bunny Database from the Edge Scripting creation flow
You can now connect a Bunny Database directly from the Edge Scripting creation flow. Create a new database or pick an existing one, and we’ll automatically add the connection credentials (BUNNY_DATABASE_URL and BUNNY_DATABASE_AUTH_TOKEN) as script secrets. There’s also a new Database CRUD API script template available to get you started.
CLI(New)
Cloud sandbox environments via Bunny CLI
bunny sandbox manages on-demand cloud sandbox environments backed by Bunny Magic Containers. Create sandboxes (create), connect via SSH (ssh), run commands (exec), copy files (cp), browse remote files (files), expose ports as public HTTPS endpoints (url add/list/delete), and manage persistent environment variables (env set/list/delete). Each sandbox is a fully isolated Ubuntu container with Node.js, Bun, Python, and Claude Code pre-installed, with a 10 GB persistent volume mounted at /workplace. Read the announcement or learn more.CDN(New)
IP Family Policy for Pull Zones
Pull Zones now support an IP Family Policy that controls which address families (IPv4, IPv6, or both) are advertised and which edge servers are eligible to serve the zone. Four policies are available: IPv4 Only, Dual Stack (default), Dual Stack Prefer IPv6, and IPv6 Only. Token authentication IP locking now also supports IPv6 addresses, binding at the client’s/64 prefix. Enabling Token IP Validation pins the zone to a single address family automatically. Learn moreStorage(New)
Read-only password support for S3 API
Bunny Storage’s S3-compatible API now supports read-only access keys. Use a dedicated read-only secret access key for S3 connections that should only have read permissions, adding an extra layer of access control to your storage zones. Learn moreShield(New)
Verified bot customization for Shield Zones
Bunny Shield now lets you control how verified bots are handled per Shield Zone: allow, block, or take no action, with per-bot and per-category overrides across seven categories: SEO, AI Scraper, AI Tool, Tool, Ads, Preview, and Social. Verification supports both reverse DNS and published IP range checks, and verified bot categories are exposed to the Rule Engine via theVERIFIED_BOT_CATEGORY variable for custom WAF rules. Learn moreEdge Scripting(New)
Before cache execution for Edge Scripts (Public Preview)
Edge Scripts can now run before the CDN cache layer, giving you full control over every request instead of only executing on cache misses. Enable it per Pull Zone under General > Origin > Run script before cache. Middleware scripts gain two new hooks:onClientRequest (intercept requests before the cache lookup) and onClientResponse (modify responses before they reach the client, including cached ones). Standalone scripts also support this mode, running on every request and deciding how responses are cached. Read the announcement or learn more.CLIDNS(New)
Scriptable DNS commands and record presets in the Bunny CLI
Bunny DNS can now be managed from the command line.bunny dns scripts brings Scriptable DNS to the CLI: init scaffolds a project from starter examples (geo, closest, weighted, failover, pullzone) with the @bunny.net/scriptable-dns-types package preconfigured for editor autocomplete, deploy uploads and publishes your entry file, and attach points a hostname at the script by adding a SCRIPT record to a zone. bunny dns records preset applies curated record sets for common providers and tasks (Google Workspace, Microsoft 365, DMARC, and more) in one step, and bunny dns zones link lets a directory resolve its zone without passing a domain. The DNS docs now include CLI examples alongside the dashboard steps. Read the announcement or learn more.Stream(Improvement)
Bunny Player extended Chromecast support
We’ve just updated the Bunny player with a rebuilt Chromecast experience. Casting now supports eDRM (Widevine-protected) videos, closing a long-standing gap versus the legacy player.The TV experience feels native, with the video title and thumbnail on screen and player colors and captions appearance (color, font, size, language) synced from the embed.Viewers keep full playback control while casting. audio track selection works before and during a session, and playback rate changes apply on the TV. Session handling is seamless too: playback continues from the current position when casting starts and transfers back on stop, with page reloads, replays after the video ends with a smoother experience overall.Learn moreCDN(Improvement)
HTTP validation for Seamless Domain Migration
Seamless Domain Migration now supports HTTP (file-based) validation alongside the existing DNS (TXT record) method for issuing SSL certificates before pointing your domain to bunny.net. Choose DNS if you control your domain’s DNS records, or HTTP if you can place a challenge file on the server your domain currently points to. Learn moreEdge Scripting(New)
Symbolic links, timestamps, and permissions in Edge Scripting
The Edge Scripting Node.js file system module now supports symbolic links (symlink(), readlink(), lstat()), returns correct file timestamps (atime, mtime, ctime, birthtime), and enforces owner-level file and directory permissions (chmod(), access(), Stats.mode). Learn moreStorage(New)
S3 API ‘Public Preview’ launched
S3-Compatible API is now available for all! We have also added a new S3 Storage Zone region: Sydney (SYD) & Uploadpart now supports Content-MD5 validation. Learn moreOptimizer(Improvement)
AVIF, HEIC and HEIF are now GA
Support for AVIF, HEIC and HEIF as input formats, and AVIF as an output format, has been promoted to General Availability. Learn moreEdge Scripting(New)
waitUntil
New Runtime API reference page for Edge Scripting, documenting the waitUntil function that allows scripts to continue running after a request completes — useful for maintaining WebSocket connections and background tasks. The WebSocket guide has also been updated with a practical waitUntil example. Learn moreDNS(Improvement)
Bunny DNS is now free
Bunny DNS query fees are gone. DNS hosting is free for up to 500 domains per account, with no per-query charges and no usage-based billing, and smart records and health monitoring are included at no extra cost. Accounts remain subject to the standard $1/month platform minimum. Read the announcement or learn more.Shield(New)
Custom Response Pages for Bunny Shield
Customize the challenge, block, and rate limit pages shown to visitors when Bunny Shield takes action. Replace default response pages with fully branded HTML experiences that match your website, including custom styling, messaging, and support information. Available on Advanced and higher Shield plans. Learn moreStream(Improvement)
Direct play URLs now support query parameters and documentation improvements
Added direct play URL and embed URL examples with query parameters, documented the-auto captions flag, and improved cross-linking between Stream pages. Updated MP4 fallback documentation to reflect support for 240p, 360p, 720p & 1080p resolutions. Learn moreCDN(New)
CDN Connectivity documentation
New documentation covering IPv4 and IPv6 connectivity across the bunny.net CDN, including network tier support, origin connectivity, CDN Acceleration with dual-stack origins, and Origin Shield for guaranteed IPv6 connectivity. Learn moreCLI(New)
Edge Scripting support now in CLI
bunny scripts now covers the full Edge Scripts lifecycle: create a script without scaffolding, deploy and manage deployments (including rollbacks), env for environment variables and secrets, domains for custom domains with SSL, stats for usage statistics, and delete. The init command adds --template-repo for custom templates and --github-actions / --no-github-actions flags. Read the announcement or learn more.CLIDNS(New)
DNS commands in the Bunny CLI (Public Preview)
bunny dns adds CLI management for DNS zones and records. Create, list, update, and remove records, import and export BIND zone files, manage DNSSEC, view query statistics, and configure query logging with optional IP anonymization. This command is experimental and hidden from --help while it stabilizes. Learn moreCLI(New)
Shell completion for the Bunny CLI
Runbunny completion to generate a shell completion script for tab completion in your terminal. Learn moreStorage(New)
Storage root directory deletion support
The Storage Edge API DELETE endpoint now supports deleting the root directory (/) of a storage zone. By default, root deletion is blocked as a safety guard. Pass allowRootDelete=true as a query parameter or request header to bypass this protection. Learn moreOptimizer(Improvement)
AVIF output area limit
Bunny Optimizer now limits AVIF output to a maximum area of 4 megapixels. Larger images automatically fall back to another format (WebP, JPEG, or GIF) to keep latency low. A new304 processing error code is returned when this limit is reached. Learn moreCDN(New)
Vary Cache by Request Headers
You can now vary cached content based on the value of one or more request headers, such asAccept-Language. Each unique header value combination creates a separate cache entry, enabling localized content, feature flags, and device-specific experiences without sacrificing CDN caching. Learn moreCDN(Improvement)
WebSocket pay-as-you-go pricing
WebSocket billing has moved to pay-as-you-go pricing based on connection-minutes, replacing the previous tiered monthly subscription model. Connection limits can now be configured from 100 to 25,000 concurrent connections per zone. Learn moreStream(Improvement)
Stream Transcribing supported languages reference
The Transcribing documentation now includes a complete reference table of all 56 supported languages with their ISO 639-1 codes. Learn moreCDN(Improvement)
CDN Logging API enhancements
The CDN Logging API now supports exact request ID lookup and includes additional fields such as JA4 TLS client fingerprint, ASN, and ASN organization in the response. Learn moreStream(Improvement)
Stream compact controls added to player settings
Maximize screen real estate on the bunny player with Compact Controls. Ideal for mobile and embedded players. You can now enable compact controls on your video library via the ‘Compact Controls’ toggle within player settings. Learn moreStream(Improvement)
Stream Video storage size info API endpoint & Dashboard update
We’ve created and extended the ‘Get Video Storage Size Info’ endpoint, giving customers a granular, per-video breakdown of your encoded videos storage consumption over API. Learn moreThis feature has been added to the Stream dashboard for granular video storage usage breakdown via the (i) information icon - selectable within your video library or the video page. Learn moreCDN(New)
CDN Logging API v2
The CDN Logging API v2 now returns structured JSON with filtering by status, cache status, country, IP, edge location, URL, User-Agent, and Referer. Learn moreStorage(Improvement)
S3 API (Closed Preview)
Added support for 4 new S3 Storage Zone regions: London (UK), Stockholm (SE), Los Angeles (LA) and Johannesburg (JH).CLIDatabase(New)
Bunny CLI (Public Preview)
The new Bunny CLI lets you manage bunny.net resources from your terminal. The initial release supports Bunny Database: create databases, open an interactive SQL shell withbunny db shell, generate auth tokens, and browse data with bunny db studio. Read the announcement or learn more.CDN(Improvement)
Per-request control for Request Coalescing
You can now enable or disable Request Coalescing per request using Edge Rules, allowing more granular control over caching behavior. Learn moreStream(New)
Stream compact controls - bunny player feature
Maximize screen real estate on the bunny player with Compact Controls. Ideal for mobile and embedded players. You can now enable compact controls on your video library via the ‘update video library’ API endpoint or by adding ‘compactControls=true’ to your player embed parameters. Learn moreStream(Improvement)
Stream ‘Add video library’ API update
The Stream ‘Add video library’ API endpoint can now pre-configure premium encoding, transcribing, video resolutions and more in a single API call.Learn more
Optimizer(New)
AVIF support
The Optimizer now supports AVIF as both an input and output format, offering better compression than WebP with excellent quality. Learn moreOptimizer(New)
Image Upscaling
Introduced the ‘upscaling’ parameter to allow images to be enlarged beyond their original dimensions using resampling. Learn moreCDN(New)
Seamless Domain Migration
Introducing seamless domain migration with SSL certificate issuance via DNS verification, allowing zero-downtime transitions to bunny.net. Learn moreShield(New)
API Guardian
Introducing API Guardian, a new feature in Bunny Shield that provides schema-aware protection for your APIs. It enforces your OpenAPI contract at the edge, ensuring requests and responses match your application’s expectations, and stops invalid or abusive traffic before it reaches your origin. Read the announcement or learn more.Stream(Improvement)
Bunny Player
This release makes playback smoother and more reliable everywhere. We’ve upgraded media-chrome to 4.19.0, fixed Firefox H.265 seeking and referrer handling, tightened Chromecast sync, and cleaned up iOS fullscreen transitions. Early-play and JIT videos start has improved, heatmaps work on token-protected embeds, and we’ve refined French UI translations and expanded RUM monitoring to new regions.Stream(Improvement)
Stream API
Upgraded Smart feature language model to v5.4 for higher quality generation. JIT watermarking is now more reliable, accurate, and consistent. Cleanup unconfigured resolutions endpoint now supports MP4 removal Learn moreStorage(Improvement)
S3 API (Closed Preview)
CopyObject now handles source objects up to 5 GB and plays nicely with multipart uploads, CORS works across pre-signed URLS.Stream(Improvement)
Transcribing upgrade
Transcribing language model has been upgraded to v1.2.0 for faster and higher quality transcriptions. Learn moreStream(New)
Free encoding
Increased capacity and performance improvements to Stream Free encoding for faster transcoding and shorter queue time. Learn moreStorage(Improvement)
S3 API ‘Closed Preview’
Added presigned URL support for S3 via the AWS CLI presign command.Stream(Improvement)
Language detection for transcribing
Transcribing now includes language detection information, making it easier to manage multi-language video content. Learn moreStream(New)
Vimeo2Bunny CLI
A new command-line tool to migrate videos from Vimeo to Bunny Stream. Videos transfer directly from Vimeo via Fetch Video URL — nothing is downloaded to your machine. Learn moreCDN(New)
Edge Rule pattern matching
Use Lua-based pattern matching in Edge Rule conditions to match structured request values such as URLs, headers, cookies, and query strings. Learn moreDatabase(New)
Database Shell
The Bunny Database Shell (bsql) is a standalone, interactive SQL shell for querying and managing your database from the terminal. It supports dot-commands, multiple output formats, and persistent history. Read the announcement or learn more.Stream(New)
Webhook signature validation
Validate webhook signatures to verify that incoming notifications are genuinely from Bunny Stream and have not been tampered with. Learn moreStream(New)
Player 2.0
The new Bunny Stream video player is here with a modern interface and improved performance. It’s enabled by default for all new video libraries. Learn moreMagic Containers(New)
Templates
Deploy pre-built application templates with just a few clicks. Each template includes a ready-to-run container image, and some include a sidecar database. Read the announcement or learn more.Magic Containers(New)
Quick Deploy
A streamlined deployment flow that lets you go from zero to deployed in seconds, with everything presented in a single form. Learn moreCDN(New)
JA4 fingerprinting
JA4 TLS fingerprinting is now available on all pull zones. Identify clients based on their TLS handshake characteristics via theCDN-JA4 request header. Learn moreCDN(Improvement)
Logging and Permanent Log Storage updates
Logging documentation has been updated with improved details on log retention, and Permanent Log Storage now includes specifics on part rotation, file size limits, and GZip compression. Learn moreStream(New)
Mobile SDK token authentication
Token authentication is now available for the Stream Mobile SDKs, adding an extra layer of security for mobile video playback. Learn moreEdge Scripting(New)
Node.js file system API
A Node.js-compatible file system API is now available in Edge Scripts, allowing you to read and write files directly at the edge. Learn moreDatabase(New)
Bunny Database (Public Preview)
Bunny Database is now available in Public Preview. A globally distributed, SQLite-compatible database service that handles scaling and replication automatically. Read the announcement.Magic Containers(Improvement)
Graceful Shutdown
New applications now have a default grace period of 30 seconds (up from 1 second), giving your applications more time to clean up resources and complete in-flight requests during rolling updates and scaling events. Learn moreStream(New)
Smart Chapters
Automatically generate chapters for your videos using AI. Smart Chapters analyzes your video’s caption track to create chapter markers. Learn moreDatabase(New)
SQL API
Execute SQL queries against your Bunny Database over HTTP using the SQL API. Learn moreEdge Scripting(New)
WebSockets with Edge Scripting
Callrequest.upgradeWebSocket() in an Edge Script to hold a two-way, low-latency connection open between your script and connected clients. Enable WebSockets on the Pull Zone first, then handle the open, message, and close events and send frames back with socket.send(). Learn moreDatabase(New)