Docs Collections Release Notes
Last updated: Mar 12, 2026
- Mar 11, 2026
- Date parsed from source:Mar 11, 2026
- First seen by Releasebot:Mar 12, 2026
Docs Collections by Cloudflare
JSON responses and RFC 9457 support for Cloudflare 1xxx errors
Cloudflare rolls out structured JSON error responses for 1xxx errors, aligning with RFC 9457 Problem Details. The update renames http_status to status, adds standard members (type, status, title, detail, instance), and mirrors Content-Type. Available now for all 1xxx errors; breaking change for Markdown frontmatter parsers.
Cloudflare-generated 1xxx errors now return structured JSON when clients send
Accept: application/json or Accept: application/problem+json . JSON responses follow RFC 9457 (Problem Details for HTTP APIs) ↗, so any HTTP client that understands Problem Details can parse the base members without Cloudflare-specific code.Breaking change
The Markdown frontmatter field http_status has been renamed to status . Agents consuming Markdown frontmatter should update parsers accordingly.
Changes
JSON format. Clients sending Accept: application/json or Accept: application/problem+json now receive a structured JSON object with the same operational fields as Markdown frontmatter, plus RFC 9457 standard members.
RFC 9457 standard members (JSON only):
- type — URI pointing to Cloudflare documentation for the specific error code
- status — HTTP status code (matching the response status)
- title — short, human-readable summary
- detail — human-readable explanation specific to this occurrence
- instance — Ray ID identifying this specific error occurrence
Field renames:
- http_status -> status (JSON and Markdown)
- what_happened -> detail (JSON only — Markdown prose sections are unchanged)
Content-Type mirroring. Clients sending Accept: application/problem+json receive Content-Type: application/problem+json; charset=utf-8 back; Accept: application/json receives application/json; charset=utf-8 . Same body in both cases.
Negotiation behavior
Availability
Available now for Cloudflare-generated 1xxx errors.
Get started
Original source Report a problem - Mar 6, 2026
- Date parsed from source:Mar 6, 2026
- First seen by Releasebot:Mar 10, 2026
Docs Collections by Cloudflare
Workflow steps now expose retry attempt number via step context
Cloudflare clouds up Workflows with new retry visibility, exposing the current attempt for each step via step.do context. Developers can log, back off, and tailor logic with 1‑indexed attempts, boosting observability and control in workflow definitions.
Cloudflare Workflows retry logic
Cloudflare Workflows allows you to configure specific retry logic for each step in your workflow execution. Now, you can access
which retry attempt is currently executing for calls to
step.do() :await step.do( "my-step", async (ctx) => { // ctx.attempt is 1 on first try, 2 on first retry, etc. console.log(`Attempt ${ctx.attempt}`); } );You can use the step context for improved logging & observability, progressive backoff, or conditional logic in your workflow definition.
Note that the current attempt number is 1-indexed. For more information on retry behavior, refer to Sleeping and Retrying.
Original source Report a problem All of your release notes in one feed
Join Releasebot and get updates from Cloudflare and hundreds of other software products.
- Mar 6, 2026
- Date parsed from source:Mar 6, 2026
- First seen by Releasebot:Mar 9, 2026
Docs Collections by Cloudflare
Real-time transcription in RealtimeKit now supports 10 languages with regional variants
Cloudflare announces real-time transcription in RealtimeKit now supports 10 languages with regional variants, powered by Deepgram Nova-3 on Workers AI. Transcripts run end-to-end on Cloudflare's network, reducing latency. Multilingual detection and per-meeting language settings enable native transcription for callers.
Real-time transcription in RealtimeKit now supports 10 languages with regional variants
in RealtimeKit now supports 10 languages with regional variants, powered by Deepgram Nova-3 running on Workers AI.
During a meeting, participant audio is routed through AI Gateway to Nova-3 on Workers AI — so transcription runs on Cloudflare's network end-to-end, reducing latency compared to routing through external speech-to-text services.
Set the language when creating a meeting via ai_config.transcription.language :
{ "ai_config" : { "transcription" : { "language" : "fr" } } }Supported languages include English, Spanish, French, German, Hindi, Russian, Portuguese, Japanese, Italian, and Dutch — with regional variants like en-AU , en-GB , en-IN , en-NZ , es-419 , fr-CA , de-CH , pt-BR , and pt-PT . Use multi for automatic multilingual detection.
If you are building voice agents or real-time translation workflows, your agent can now transcribe in the caller's language natively — no extra services or routing logic needed.
- Transcription docs
- Nova-3 model page
- Workers AI
- AI Gateway
- Mar 6, 2026
- Date parsed from source:Mar 6, 2026
- First seen by Releasebot:Mar 6, 2026
Docs Collections by Cloudflare
Region Filtering, AS Traffic Volume, and Navigation Improvements on Cloudflare Radar
Cloudflare Radar adds region filtering across pages, a traffic volume view for top AS and locations, and new AS/location dimensions in Data Explorer for HTTP DNS NetFlows. Breadcrumb navigation now enhances navigation across pages, delivering deeper visibility into regional traffic and connectivity issues.
Region filtering
All location-aware pages now support filtering by region, including continents, geographic subregions (Middle East ↗, Eastern Asia ↗, , etc.), political regions (EU ↗, , African Union ↗, ), and US Census regions/divisions (for example, New England ↗, US Northeast ↗, ).
Traffic volume by top autonomous systems and locations
A new traffic volume view shows the top autonomous systems and countries/territories for a given location. This is useful for quickly determining which network providers in a location may be experiencing connectivity issues, or how traffic is distributed across a region.
The new AS and location dimensions have also been added to the Data Explorer ↗ for the HTTP, DNS, and NetFlows datasets. Combined with other available filters, this provides a powerful tool for generating unique insights.
Finally, breadcrumb navigation is now available on most pages, allowing easier navigation between parent and related pages.
Check out these features on Cloudflare Radar ↗ .
Original source Report a problem - Mar 4, 2026
- Date parsed from source:Mar 4, 2026
- First seen by Releasebot:Mar 5, 2026
- Modified by Releasebot:Mar 6, 2026
Docs Collections by Cloudflare
Browser Rendering: 3x higher REST API request rate
Cloudflare raises Browser Rendering REST API rate limits for Workers Paid plans from 3 to 10 rps with no action needed.
Browser Rendering REST API rate limits
Browser Rendering REST API rate limits for Workers Paid plans have been increased from 3 requests per second (180/min) to 10 requests per second (600/min). No action is needed to benefit from the higher limit.
The REST API lets you perform common browser tasks with a single API call, and you can now do it at a higher rate.
If you use the Workers Bindings method, increases to concurrent browser and new browser limits are coming soon. Stay tuned.
For full details, refer to the Browser Rendering limits page.
Original source Report a problem - Mar 4, 2026
- Date parsed from source:Mar 4, 2026
- First seen by Releasebot:Mar 4, 2026
Docs Collections by Cloudflare
User risk score selector in Access policies
You can now use user risk scores in your Access policies.
The new User Risk Score selector allows you to create Access policies that respond to user behavior patterns detected by Cloudflare's risk scoring system, including impossible travel, high DLP policy matches, and more.
For more information, refer to Use risk scores in Access policies.
Original source Report a problem - Mar 4, 2026
- Date parsed from source:Mar 4, 2026
- First seen by Releasebot:Mar 4, 2026
Docs Collections by Cloudflare
Gateway Authorization Proxy and hosted PAC files (open beta)
Gateway Authorization Proxy and PAC hosting enter open beta across plans, replacing IP-based access with Cloudflare Access identity. No WARP client needed, logs show exact users, and you can enforce identity-based policies. Includes Cloudflare-hosted PAC files and multiple IdP support for flexible deployments.
The Gateway Authorization Proxy and PAC file hosting are now in open beta for all plan types.
The Gateway Authorization Proxy and PAC file hosting are now in open beta for all plan types.
Previously, proxy endpoints relied on static source IP addresses to authorize traffic, providing no user-level identity in logs or policies. The new authorization proxy replaces IP-based authorization with Cloudflare Access authentication, verifying who a user is before applying Gateway filtering without installing the WARP client.
This is ideal for environments where you cannot deploy a device client, such as virtual desktops (VDI), mergers and acquisitions, or compliance-restricted endpoints.
Key capabilities
- Identity-aware proxy traffic — Users authenticate through your identity provider (Okta, Microsoft Entra ID, Google Workspace, and others) via Cloudflare Access. Logs now show exactly which user accessed which site, and you can write identity-based policies like "only the Finance team can access this accounting tool."
- Multiple identity providers — Display one or multiple login methods simultaneously, giving flexibility for organizations managing users across different identity systems.
- Cloudflare-hosted PAC files — Create and host PAC files directly in Cloudflare One with pre-configured templates for Okta and Azure, hosted at https://pac.cloudflare-gateway.com// on Cloudflare's global network.
- Simplified billing — Each user occupies a seat, exactly like they do with the Cloudflare One Client. No new metrics to track.
Get started
- In Cloudflare One ↗ Cloudflare One ↗, go to Networks > Resolvers & Proxies > Proxy endpoints.
- Create an authorization proxy endpoint and configure Access policies.
- Create a hosted PAC file or write your own.
- Configure browsers to use the PAC file URL.
- Install the Cloudflare certificate for HTTPS inspection.
For more details, refer to the proxy endpoints documentation and the announcement blog post announcement blog post ↗.
Original source Report a problem - Mar 3, 2026
- Date parsed from source:Mar 3, 2026
- First seen by Releasebot:Mar 3, 2026
Docs Collections by Cloudflare
Workflows step limit increased to 25,000 steps per instance
Workflows on Workers Paid now default to 10,000 steps and can be set up to 25,000 in wrangler.jsonc. This enables longer, more complex executions without extra recursion. Persisted state limits stay at 100 MB (Free) or 1 GB (Paid).
Release notes
Each Workflow on Workers Paid now supports 10,000 steps by default, configurable up to 25,000 steps in your wrangler.jsonc file:
{ "workflows": [ { "name": "my-workflow", "binding": "MY_WORKFLOW", "class_name": "MyWorkflow", "limits": { "steps": 25000 } } ] }Previously, each instance was limited to 1,024 steps. Now, Workflows can support more complex, long-running executions without the additional complexity of recursive or child workflow calls.
Note that the maximum persisted state limit per Workflow instance remains 100 MB for Workers Free and 1 GB for Workers Paid. Refer to Workflows limits for more information.
Original source Report a problem - Mar 2, 2026
- Date parsed from source:Mar 2, 2026
- First seen by Releasebot:Mar 3, 2026
Docs Collections by Cloudflare
Agents SDK v0.7.0: Observability rewrite, keepAlive, and waitForMcpConnections
Agents SDK ships a complete observability rewrite using diagnostics channels for structured, zero-overhead events. It adds keepAlive for Durable Objects and a waitForMcpConnections enhancement to keep MCP tools ready during onChatMessage. Also includes MCP dedupe, security hardening, and improved tool and chat flow reliability.
The latest release
The latest release of the Agents SDK rewrites observability from scratch with diagnostics_channel, adds keepAlive() to prevent Durable Object eviction during long-running work, and introduces waitForMcpConnections so MCP tools are always available when onChatMessage runs.
Observability rewrite
The previous observability system used console.log() with a custom Observability.emit() interface. v0.7.0 replaces it with structured events published to diagnostics channels — silent by default, zero overhead when nobody is listening.
Every event has a type, payload, and timestamp. Events are routed to seven named channels:
- agents:state — state:update
- agents:rpc — rpc, rpc:error
- agents:message — message:request, message:response, message:clear, message:cancel, message:error, tool:result, tool:approval
- agents:schedule — schedule:create, schedule:execute, schedule:cancel, schedule:retry, schedule:error, queue:retry, queue:error
- agents:lifecycle — connect, destroy
- agents:workflow — workflow:start, workflow:event, workflow:approved, workflow:rejected, workflow:terminated, workflow:paused, workflow:resumed, workflow:restarted
- agents:mcp — mcp:client:preconnect, mcp:client:connect, mcp:client:authorize, mcp:client:discover
Use the typed subscribe() helper from agents/observability for type-safe access.
In production, all diagnostics channel messages are automatically forwarded to Tail Workers — no subscription code needed in the agent itself.
The custom Observability override interface is still supported for users who need to filter or forward events to external services.
For the full event reference, refer to the Observability documentation.
keepAlive() and keepAliveWhile()
Durable Objects are evicted after a period of inactivity (typically 70-140 seconds with no incoming requests, WebSocket messages, or alarms). During long-running operations — streaming LLM responses, waiting on external APIs, running multi-step computations — the agent can be evicted mid-flight.
keepAlive() prevents this by creating a 30-second heartbeat schedule. The alarm firing resets the inactivity timer. Returns a disposer function that cancels the heartbeat when called.
keepAliveWhile() wraps an async function with automatic cleanup — the heartbeat starts before the function runs and stops when it completes:
Key details:
- Multiple concurrent callers — Each keepAlive() call returns an independent disposer. Disposing one does not affect others.
- AIChatAgent built-in — AIChatAgent automatically calls keepAlive() during streaming responses. You do not need to add it yourself.
- Uses the scheduling system — The heartbeat does not conflict with your own schedules. It shows up in getSchedules() if you need to inspect it.
Note: keepAlive() is marked @experimental and may change between releases.
For the full API reference and when-to-use guidance, refer to Schedule tasks — Keeping the agent alive.
waitForMcpConnections
AIChatAgent now waits for MCP server connections to settle before calling onChatMessage. This ensures this.mcp.getAITools() returns the full set of tools, especially after Durable Object hibernation when connections are being restored in the background.
Other improvements
- MCP deduplication by name and URL — addMcpServer with HTTP transport now deduplicates on both server name and URL. Calling it with the same name but a different URL creates a new connection. URLs are normalized before comparison (trailing slashes, default ports, hostname case).
- callbackHost optional for non-OAuth servers — addMcpServer no longer requires callbackHost when connecting to MCP servers that do not use OAuth.
- MCP URL security — Server URLs are validated before connection to prevent SSRF. Private IP ranges, loopback addresses, link-local addresses, and cloud metadata endpoints are blocked.
- Custom denial messages — addToolOutput now supports state: "output-error" with errorText for custom denial messages in human-in-the-loop tool approval flows.
- requestId in chat options — onChatMessage options now include a requestId for logging and correlating events.
Upgrade
To update to the latest version:
npm i agents@latest @cloudflare/ai-chat@latest
Original source Report a problem - Feb 27, 2026
- Date parsed from source:Feb 27, 2026
- First seen by Releasebot:Feb 27, 2026
Docs Collections by Cloudflare
Post-Quantum Encryption and Key Transparency on Cloudflare Radar
Radar debuts post-quantum testing and origin support with new API endpoints and a host tester, plus a Key Transparency dashboard for monitoring end-to-end messaging audit logs. See Post-Quantum Encryption and Key Transparency pages for live data.
Radar now tracks post-quantum encryption support on origin servers, provides a tool to test any host for post-quantum compatibility, and introduces a Key Transparency dashboard for monitoring end-to-end encrypted messaging audit logs.
Post-quantum origin support
The new Post-Quantum API provides the following endpoints:
- /post_quantum/tls/support - Tests whether a host supports post-quantum TLS key exchange.
- /post_quantum/origin/summary/{dimension} - Returns origin post-quantum data summarized by key agreement algorithm.
- /post_quantum/origin/timeseries_groups/{dimension} - Returns origin post-quantum timeseries data grouped by key agreement algorithm.
The new Post-Quantum Encryption ↗ page shows the share of customer origins supporting X25519MLKEM768, derived from daily automated TLS scans of TLS 1.3-compatible origins. The scanner tests for algorithm support rather than the origin server's configured preference.
A host test tool allows checking any publicly accessible website for post-quantum encryption compatibility. Enter a hostname and optional port to see whether the server negotiates a post-quantum key exchange algorithm.
Key Transparency
A new Key Transparency ↗ section displays the audit status of Key Transparency logs for end-to-end encrypted messaging services. The page launches with two monitored logs: WhatsApp and Facebook Messenger Transport.
Each log card shows the current status, last signed epoch, last verified epoch, and the root hash of the Auditable Key Directory tree. The data is also available through the Key Transparency Auditor API.
Learn more about these features in our blog post ↗ and check out the Post-Quantum Encryption ↗ and Key Transparency ↗ pages to explore the data.
Original source Report a problem