{"id":"src__AnPsDvnstiBXno4p5YEP","slug":"cloudflare-what-s-new","name":"Cloudflare Changelog","type":"feed","url":"https://developers.cloudflare.com/changelog/","orgId":"org_fW6EY8PY8Cr42ifo1IUAm","org":{"slug":"cloudflare","name":"Cloudflare"},"isPrimary":true,"metadata":"{\"feedUrl\":\"https://developers.cloudflare.com/changelog/rss/index.xml\",\"feedType\":\"rss\",\"feedDiscoveredAt\":\"2026-04-02T20:07:09.560Z\",\"noFeedFound\":false,\"feedEtag\":\"\\\"9ad4610c72a9303a38fbdf2b7ad08306\\\"\",\"feedContentLength\":\"3522977\"}","releaseCount":256,"releasesLast30Days":89,"avgReleasesPerWeek":17.5,"latestVersion":null,"latestDate":"2026-04-17T00:00:00.000Z","changelogUrl":null,"hasChangelogFile":false,"lastFetchedAt":"2026-04-18T01:01:02.276Z","trackingSince":"2025-12-18T00:00:00.000Z","releases":[{"id":"rel_Hc38XynpUV-gOzb5Amyi-","version":null,"title":"Radar - AI Insights updates on Cloudflare Radar","summary":"[**Radar**](https://developers.cloudflare.com/radar/) adds three new features to the [AI Insights](https://radar.cloudflare.com/ai-insights) page, exp...","content":"[**Radar**](https://developers.cloudflare.com/radar/) adds three new features to the [AI Insights](https://radar.cloudflare.com/ai-insights) page, expanding visibility into how AI bots, crawlers, and agents interact with the web.\n\n#### Adoption of AI agent standards\n\nThe AI Insights page now includes an [adoption of AI agent standards](https://radar.cloudflare.com/ai-insights#adoption-of-ai-agent-standards) widget that tracks how websites adopt agent-facing standards. The data is filterable by domain category and updated weekly on Mondays.\nThis data is also available through the [Agent Readiness API reference](https://developers.cloudflare.com/api/resources/radar/subresources/agent_readiness/methods/summary/).\n\n![Screenshot of the adoption of AI agent standards chart](https://developers.cloudflare.com/_astro/agent-readiness-adoption-chart.B3ATN59P_172bR1.webp)\n\n[URL Scanner](https://radar.cloudflare.com/scan) reports now include an **Agent readiness** tab that evaluates a scanned URL against the criteria used by the [Agent Readiness score tool](https://isitagentready.com/).\n\n![Screenshot of the URL Scanner agent readiness tab](https://developers.cloudflare.com/_astro/agent-readiness-url-scanner.DRVuuaUi_Z1fkUeF.webp)\n\nFor more details, refer to the [Agent Readiness blog post](https://blog.cloudflare.com/agent-readiness/).\n\n#### Markdown for Agents savings\n\nA new [savings gauge](https://radar.cloudflare.com/ai-insights#markdown-for-agents-savings) shows the median response-size reduction when serving Markdown instead of HTML to AI bots and crawlers. This highlights the bandwidth and token savings that [Markdown for Agents](https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/) provides.\n\n![Screenshot of the Markdown for Agents savings gauge](https://developers.cloudflare.com/_astro/markdown-for-agents-savings.Di1GjNON_Z156BnD.webp)\n\nFor more details, refer to the [Markdown for Agents API reference](https://developers.cloudflare.com/api/resources/radar/subresources/ai/subresources/markdown_for_agents/methods/summary).\n\n#### Response status\n\nThe new [response status widget](https://radar.cloudflare.com/ai-insights#response-status) displays the distribution of HTTP response status codes returned to AI bots and crawlers. Results are groupable by individual status code (200, 403, 404) or by category (2xx, 3xx, 4xx, 5xx).\n\nThe same widget is available on each verified bot's detail page (only available for AI bots), for example [Google](https://radar.cloudflare.com/bots/directory/google#response-status).\n\n![Screenshot of the response status distribution widget](https://developers.cloudflare.com/_astro/ai-response-status.BwSMF23Z_I8wQo.webp)\n\nExplore all three features on the [Cloudflare Radar AI Insights](https://radar.cloudflare.com/ai-insights) page.","publishedAt":"2026-04-17T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-17-radar-ai-insights-updates/","media":[]},{"id":"rel_XIgNn5TTpgvCWPMTNAABd","version":null,"title":"AI Crawl Control - Introducing Redirects for AI Training","summary":"Cloudflare's network now supports redirecting verified AI training crawlers to canonical URLs when they request deprecated or duplicate pages. When en...","content":"Cloudflare's network now supports redirecting verified AI training crawlers to canonical URLs when they request deprecated or duplicate pages. When enabled via **AI Crawl Control** > **Quick Actions**, AI training crawlers that request a page with a canonical tag pointing elsewhere receive a 301 redirect to the canonical version. Humans, search engine crawlers, and AI Search agents continue to see the original page normally.\n\nThis feature leverages your existing `` tags. No additional configuration required beyond enabling the toggle. Available on Pro, Business, and Enterprise plans at no additional cost.\n\nRefer to the [Redirects for AI Training documentation](https://developers.cloudflare.com/ai-crawl-control/reference/redirects-for-ai-training/) for details.","publishedAt":"2026-04-17T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-17-redirects-for-ai-training/","media":[]},{"id":"rel_0cafTKS_6k3Gyv7_zjZIT","version":null,"title":"AI Crawl Control - Tools to prepare your site for the agentic Internet","summary":"AI Crawl Control now includes new tools to help you prepare your site for the agentic Internet—a web where AI agents are first-class citizens that dis...","content":"AI Crawl Control now includes new tools to help you prepare your site for the agentic Internet—a web where AI agents are first-class citizens that discover and interact with content differently than human visitors.\n\n#### Content Format insights\n\nThe **Metrics** tab now includes a **Content Format** chart showing what content types AI systems request versus what your origin serves. Understanding these patterns helps you optimize content delivery for both human and agent consumption.\n\n#### Directives tab (formerly Robots.txt)\n\nThe **Robots.txt** tab has been renamed to **Directives** and now includes a link to check your site's [Agent Readiness](https://isitagentready.org) score.\n\nRefer to our [blog post on preparing for the agentic Internet](https://blog.cloudflare.com/welcome-to-agents-week/) for more on why these capabilities matter.","publishedAt":"2026-04-17T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-17-tools-for-agentic-internet/","media":[]},{"id":"rel_6wKYIYxeDkuMQAwOdRsxp","version":null,"title":"AI Search - AI Search instances now include built-in storage and namespace Workers Bindings","summary":"New [AI Search](https://developers.cloudflare.com/ai-search/) instances created after today will work differently. New instances come with built-in st...","content":"New [AI Search](https://developers.cloudflare.com/ai-search/) instances created after today will work differently. New instances come with built-in storage and a vector index, so you can upload a file, have it indexed immediately, and search it right away.\n\nAdditionally new Workers Bindings are now available to use with AI Search. The new namespace binding lets you create and manage instances at runtime, and cross-instance search API lets you query across multiple instances in one call.\n\n#### Built-in storage and vector index\n\nAll new instances now comes with built-in storage which allows you to upload files directly to it using the [Items API](https://developers.cloudflare.com/ai-search/api/items/workers-binding/) or the dashboard. No R2 buckets to set up, no external data sources to connect first.\n\n```\n\nconst instance = env.AI_SEARCH.get(\"my-instance\");\n\n// upload and wait for indexing to complete\n\nconst item = await instance.items.uploadAndPoll(\"faq.md\", content);\n\n// search immediately after indexing\n\nconst results = await instance.search({\n\n  messages: [{ role: \"user\", content: \"onboarding guide\" }],\n\n});\n\n```\n\n#### Namespace binding\n\nThe new `ai_search_namespaces` binding replaces the previous `env.AI.autorag()` API provided through the `AI` binding. It gives your Worker access to all instances within a [namespace](https://developers.cloudflare.com/ai-search/concepts/namespaces/) and lets you create, update, and delete instances at runtime without redeploying.\n\n```\n\n// wrangler.jsonc\n\n{\n\n  \"ai_search_namespaces\": [\n\n    {\n\n      \"binding\": \"AI_SEARCH\",\n\n      \"namespace\": \"default\",\n\n    },\n\n  ],\n\n}\n\n```\n\n```\n\n// create an instance at runtime\n\nconst instance = await env.AI_SEARCH.create({\n\n  id: \"my-instance\",\n\n});\n\n```\n\nFor migration details, refer to [Workers binding migration](https://developers.cloudflare.com/ai-search/api/migration/workers-binding/). For more on namespaces, refer to [Namespaces](https://developers.cloudflare.com/ai-search/concepts/namespaces/).\n\n#### Cross-instance search\n\nWithin the new AI Search binding, you now have access to a Search and Chat API on the namespace level. Pass an array of instance IDs and get one ranked list of results back.\n\n```\n\nconst results = await env.AI_SEARCH.search({\n\n  messages: [{ role: \"user\", content: \"What is Cloudflare?\" }],\n\n  ai_search_options: {\n\n    instance_ids: [\"product-docs\", \"customer-abc123\"],\n\n  },\n\n});\n\n```\n\nRefer to [Namespace-level search](https://developers.cloudflare.com/ai-search/api/search/workers-binding/#namespace-level) for details.","publishedAt":"2026-04-16T12:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-16-ai-search-namespace-binding/","media":[]},{"id":"rel_M3Cv9KkSCN4Rm166lGtZl","version":null,"title":"AI Search - AI Search now has hybrid search and relevance boosting","summary":"[AI Search](https://developers.cloudflare.com/ai-search/) now supports hybrid search and relevance boosting, giving you more control over how results ...","content":"[AI Search](https://developers.cloudflare.com/ai-search/) now supports hybrid search and relevance boosting, giving you more control over how results are found and ranked.\n\n#### Hybrid search\n\nHybrid search combines vector (semantic) search with BM25 keyword search in a single query. Vector search finds chunks with similar meaning, even when the exact words differ. Keyword search matches chunks that contain your query terms exactly. When you enable hybrid search, both run in parallel and the results are fused into a single ranked list.\n\nYou can configure the tokenizer (`porter` for natural language, `trigram` for code), keyword match mode (`and` for precision, `or` for recall), and fusion method (`rrf` or `max`) per instance:\n\n```\n\nconst instance = await env.AI_SEARCH.create({\n\n  id: \"my-instance\",\n\n  index_method: { vector: true, keyword: true },\n\n  fusion_method: \"rrf\",\n\n  indexing_options: { keyword_tokenizer: \"porter\" },\n\n  retrieval_options: { keyword_match_mode: \"and\" },\n\n});\n\n```\n\nRefer to [Search modes](https://developers.cloudflare.com/ai-search/concepts/search-modes/) for an overview and [Hybrid search](https://developers.cloudflare.com/ai-search/configuration/indexing/hybrid-search/) for configuration details.\n\n#### Relevance boosting\n\nRelevance boosting lets you nudge search rankings based on document metadata. For example, you can prioritize recent documents by boosting on `timestamp`, or surface high-priority content by boosting on a custom metadata field like `priority`.\n\nConfigure up to 3 boost fields per instance or override them per request:\n\n```\n\nconst results = await env.AI_SEARCH.get(\"my-instance\").search({\n\n  messages: [{ role: \"user\", content: \"deployment guide\" }],\n\n  ai_search_options: {\n\n    retrieval: {\n\n      boost_by: [\n\n        { field: \"timestamp\", direction: \"desc\" },\n\n        { field: \"priority\", direction: \"desc\" },\n\n      ],\n\n    },\n\n  },\n\n});\n\n```\n\nRefer to [Relevance boosting](https://developers.cloudflare.com/ai-search/configuration/retrieval/boosting/) for configuration details.","publishedAt":"2026-04-16T12:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-16-hybrid-search-and-relevance-boosting/","media":[]},{"id":"rel_v9ZK4BzBOfFKhAkfLfwuz","version":null,"title":"Artifacts - Artifacts now in beta: versioned filesystem with Git access","summary":"[Artifacts](https://developers.cloudflare.com/artifacts/) is now in private beta. Artifacts is Git-compatible storage built for scale: create tens of ...","content":"[Artifacts](https://developers.cloudflare.com/artifacts/) is now in private beta. Artifacts is Git-compatible storage built for scale: create tens of millions of repos, fork from any remote, and hand off a URL to any Git client. It provides a versioned filesystem for storing and exchanging file trees across Workers, the REST API, and any Git client, running locally or within an agent.\n\nYou can [read the announcement blog](https://blog.cloudflare.com/artifacts-git-for-agents-beta/) to learn more about what Artifacts does, how it works, and how to create repositories for your agents to use.\n\nArtifacts has three API surfaces:\n\n- Workers bindings (for creating and managing repositories)\n\n- REST API (for creating and managing repos from any other compute platform)\n\n- Git protocol (for interacting with repos)\n\nAs an example: you can use the Workers binding to create a repo and read back its remote URL:\n\n```\n\n# Create a thousand, a million or ten million repos: one for every agent, for every upstream branch, or every user.\n\nconst created = await env.PROD_ARTIFACTS.create(\"agent-007\");\n\nconst remote = (await created.repo.info())?.remote;\n\n```\n\nOr, use the REST API to create a repo inside a namespace from your agent(s) running on any platform:\n\n```\n\ncurl --request POST \"https://artifacts.cloudflare.net/v1/api/namespaces/some-namespace/repos\" --header \"Authorization: Bearer $CLOUDFLARE_API_TOKEN\" --header \"Content-Type: application/json\" --data '{\"name\":\"agent-007\"}'\n\n```\n\nAny Git client that speaks smart HTTP can use the returned remote URL:\n\n```\n\n# Agents know git.\n\n# Every repository can act as a git repo, allowing agents to interact with Artifacts the way they know best: using the git CLI.\n\ngit clone https://x:${REPO_TOKEN}@artifacts.cloudflare.net/some-namespace/agent-007.git\n\n```\n\nTo learn more, refer to [Get started](https://developers.cloudflare.com/artifacts/get-started/), [Workers binding](https://developers.cloudflare.com/artifacts/api/workers-binding/), and [Git protocol](https://developers.cloudflare.com/artifacts/api/git-protocol/).","publishedAt":"2026-04-16T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-16-artifacts-now-in-beta/","media":[]},{"id":"rel_hV8F3CVKHxgXuLaiQ3VOh","version":null,"title":"Workflows, Workers - Increased concurrency, creation rate, and queued instance limits for Workflows instances","summary":"[Workflows](https://developers.cloudflare.com/workflows/) limits have been raised to the following:\n\nLimitPreviousNewConcurrent instances (running in ...","content":"[Workflows](https://developers.cloudflare.com/workflows/) limits have been raised to the following:\n\nLimitPreviousNewConcurrent instances (running in parallel)10,00050,000Instance creation rate (per account)100/second per account300/second per account, 100/second per workflowQueued instances per Workflow 11 million2 million\n\nThese increases apply to all users on the [Workers Paid plan](https://developers.cloudflare.com/workers/platform/pricing/). Refer to the [Workflows limits documentation](https://developers.cloudflare.com/workflows/reference/limits/) for more details.\n\n#### Footnotes\n\n- \n\nQueued instances are instances that have been created or awoken and are waiting for a concurrency slot. ↩","publishedAt":"2026-04-15T13:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-workflows-limits-raised/","media":[]},{"id":"rel_dzYP50FM2KRkwtpS0kxQW","version":null,"title":"Browser Run - Browser Rendering is now Browser Run","summary":"We are renaming Browser Rendering to **[Browser Run](https://developers.cloudflare.com/browser-run/)**. The name Browser Rendering never fully capture...","content":"We are renaming Browser Rendering to **[Browser Run](https://developers.cloudflare.com/browser-run/)**. The name Browser Rendering never fully captured what the product does. Browser Run lets you run full browser sessions on Cloudflare's global network, drive them with code or AI, record and replay sessions, crawl pages for content, debug in real time, and let humans intervene when your agent needs help.\n\nAlong with the rename, we have increased limits for Workers Paid plans and redesigned the Browser Run dashboard.\n\nWe have 4x-ed concurrency limits for Workers Paid plan users:\n\n- **Concurrent browsers per account**: 30 → **120 per account**\n\n- **New browser instances**: 30 per minute → **1 per second**\n\n- **REST API rate limits**: recently increased from [3 to 10 requests per second](https://developers.cloudflare.com/changelog/post/2026-03-04-br-rest-api-limit-increase/)\n\nRate limits across the [limits page](https://developers.cloudflare.com/browser-run/limits/) are now expressed in per-second terms, matching how they are enforced. No action is needed to benefit from the higher limits.\n\nThe [redesigned dashboard](https://dash.cloudflare.com/?to=/:account/workers/browser-run) now shows every request in a single Runs tab, not just browser sessions but also quick actions like screenshots, PDFs, markdown, and crawls. Filter by endpoint, view target URLs, status, and duration, and expand any row for more detail.\n\n![Browser Run dashboard Runs tab with browser sessions and quick actions visible in one list, and an expanded crawl job showing its progress](https://developers.cloudflare.com/images/browser-run/BRdashboardredesign.png)\n\nWe are also shipping several new features:\n\n- **[Live View, Human in the Loop, and Session Recordings](https://developers.cloudflare.com/changelog/post/2026-04-15-br-observability/)** - See what your agent is doing in real time, let humans step in when automation hits a wall, and replay any session after it ends.\n\n- **[WebMCP](https://developers.cloudflare.com/changelog/post/2026-04-15-br-webmcp/)** - Websites can expose structured tools for AI agents to discover and call directly, replacing slow screenshot-analyze-click loops.\n\nFor the full story, read our Agents Week blog [Browser Run: Give your agents a browser](https://blog.cloudflare.com/browser-run-for-ai-agents).","publishedAt":"2026-04-15T12:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-br-rename/","media":[]},{"id":"rel_StB8R1x6nKIrMj-kHDi70","version":null,"title":"Browser Run - Browser Run adds Live View, Human in the Loop, and Session Recordings","summary":"When browser automation fails or behaves unexpectedly, it can be hard to understand what happened. We are shipping three new features in [Browser Run]...","content":"When browser automation fails or behaves unexpectedly, it can be hard to understand what happened. We are shipping three new features in [Browser Run](https://developers.cloudflare.com/browser-run/) (formerly Browser Rendering) to help:\n\n- **[Live View](https://developers.cloudflare.com/browser-run/features/live-view/)** for real-time visibility\n\n- **[Human in the Loop](https://developers.cloudflare.com/browser-run/features/human-in-the-loop/)** for human intervention\n\n- **[Session Recordings](https://developers.cloudflare.com/browser-run/features/session-recording/)** for replaying sessions after they end\n\n#### Live View\n\n[Live View](https://developers.cloudflare.com/browser-run/features/live-view/) lets you see what your agent is doing in real time. The page, DOM, console, and network requests are all visible for any active browser session. Access Live View from the Cloudflare dashboard, via the hosted UI at `live.browser.run`, or using native Chrome DevTools.\n\n#### Human in the Loop\n\nWhen your agent hits a snag like a login page or unexpected edge case, it can hand off to a human instead of failing. With [Human in the Loop](https://developers.cloudflare.com/browser-run/features/human-in-the-loop/), a human steps into the live browser session through Live View, resolves the issue, and hands control back to the script.\n\nToday, you can step in by opening the Live View URL for any active session. Next, we are adding a handoff flow where the agent can signal that it needs help, notify a human to step in, then hand control back to the agent once the issue is resolved.\n\n![Browser Run Human in the Loop demo where an AI agent searches Amazon, selects a product, and requests human help when authentication is needed to buy](https://developers.cloudflare.com/images/browser-run/liveview.gif)\n\n#### Session Recordings\n\n[Session Recordings](https://developers.cloudflare.com/browser-run/features/session-recording/) records DOM state so you can replay any session after it ends. Enable recordings by passing `recording: true` when launching a browser. After the session closes, view the recording in the Cloudflare dashboard under **Browser Run** > **Runs**, or retrieve via API using the session ID. Next, we are adding the ability to inspect DOM state and console output at any point during the recording.\n\n![Browser Run session recording showing an automated browser navigating the Sentry Shop and adding a bomber jacket to the cart](https://developers.cloudflare.com/images/browser-run/sessionrecording.gif)\n\nTo get started, refer to the documentation for [Live View](https://developers.cloudflare.com/browser-run/features/live-view/), [Human in the Loop](https://developers.cloudflare.com/browser-run/features/human-in-the-loop/), and [Session Recording](https://developers.cloudflare.com/browser-run/features/session-recording/).","publishedAt":"2026-04-15T11:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-br-observability/","media":[]},{"id":"rel_IlWB1il1pyspn4eaTx0YG","version":null,"title":"Browser Run - Browser Run adds WebMCP support","summary":"[Browser Run](https://developers.cloudflare.com/browser-run/) (formerly Browser Rendering) now supports [WebMCP](https://webmachinelearning.github.io/...","content":"[Browser Run](https://developers.cloudflare.com/browser-run/) (formerly Browser Rendering) now supports [WebMCP](https://webmachinelearning.github.io/webmcp/) (Web Model Context Protocol), a new browser API from the Google Chrome team.\n\nThe Internet was built for humans, so navigating as an AI agent today is unreliable. WebMCP lets websites expose structured tools for AI agents to discover and call directly. Instead of slow screenshot-analyze-click loops, agents can call website functions like `searchFlights()` or `bookTicket()` with typed parameters, making browser automation faster, more reliable, and less fragile.\n\n![Browser Run lab session showing WebMCP tools being discovered and executed in the Chrome DevTools console to book a hotel](https://developers.cloudflare.com/images/browser-run/webMCP.gif)\n\nWith WebMCP, you can:\n\n- **Discover website tools** - Use `navigator.modelContextTesting.listTools()` to see available actions on any WebMCP-enabled site\n\n- **Execute tools directly** - Call `navigator.modelContextTesting.executeTool()` with typed parameters\n\n- **Handle human-in-the-loop interactions** - Some tools pause for user confirmation before completing sensitive actions\n\nWebMCP requires Chrome beta features. We have an experimental pool with browser instances running Chrome beta so you can test emerging browser features before they reach stable Chrome. To start a WebMCP session, add `lab=true` to your `/devtools/browser` request:\n\n```\n\ncurl -X POST \"https://api.cloudflare.com/client/v4/accounts/{account_id}/browser-rendering/devtools/browser?lab=true&keep_alive=300000\" \\\n\n  -H \"Authorization: Bearer {api_token}\"\n\n```\n\nCombined with the recently launched [CDP endpoint](https://developers.cloudflare.com/browser-run/cdp/), AI agents can also use WebMCP. Connect an [MCP client](https://developers.cloudflare.com/browser-run/cdp/mcp-clients/) to Browser Run via CDP, and your agent can discover and call website tools directly. Here's the same hotel booking demo, this time driven by an AI agent through OpenCode:\n\n![Browser Run Live View showing an AI agent navigating a hotel booking site in real time](https://developers.cloudflare.com/images/browser-run/webMCPagent.gif)\n\nFor a step-by-step guide, refer to the [WebMCP documentation](https://developers.cloudflare.com/browser-run/features/webmcp/).","publishedAt":"2026-04-15T10:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-br-webmcp/","media":[]},{"id":"rel_agSoTDeEVH0jWmnCoce8N","version":null,"title":"Logs - New TenantID and Firewall for AI fields in Logpush datasets","summary":"Cloudflare has added new fields to multiple [Logpush datasets](https://developers.cloudflare.com/logs/logpush/logpush-job/datasets/):\n\n#### TenantID f...","content":"Cloudflare has added new fields to multiple [Logpush datasets](https://developers.cloudflare.com/logs/logpush/logpush-job/datasets/):\n\n#### TenantID field\n\nThe following Gateway and Zero Trust datasets now include a `TenantID` field:\n\n- **[Gateway DNS](https://developers.cloudflare.com/logs/logpush/logpush-job/datasets/account/gateway_dns/#tenantid)**: Identifies the tenant ID of the DNS request, if it exists.\n\n- **[Gateway HTTP](https://developers.cloudflare.com/logs/logpush/logpush-job/datasets/account/gateway_http/#tenantid)**: Identifies the tenant ID of the HTTP request, if it exists.\n\n- **[Gateway Network](https://developers.cloudflare.com/logs/logpush/logpush-job/datasets/account/gateway_network/#tenantid)**: Identifies the tenant ID of the network session, if it exists.\n\n- **[Zero Trust Network Sessions](https://developers.cloudflare.com/logs/logpush/logpush-job/datasets/account/zero_trust_network_sessions/#tenantid)**: Identifies the tenant ID of the network session, if it exists.\n\n#### Firewall for AI fields\n\nThe following datasets now include [Firewall for AI](https://developers.cloudflare.com/api-shield/security/volumetric-abuse-detection/#firewall-for-ai) fields:\n\n- \n\n**[Firewall Events](https://developers.cloudflare.com/logs/logpush/logpush-job/datasets/zone/firewall_events/)**:\n\n`FirewallForAIInjectionScore`: The score indicating the likelihood of a prompt injection attack in the request.\n\n- `FirewallForAIPIICategories`: List of PII categories detected in the request.\n\n- `FirewallForAITokenCount`: The number of tokens in the request.\n\n- `FirewallForAIUnsafeTopicCategories`: List of unsafe topic categories detected in the request.\n\n- \n\n**[HTTP Requests](https://developers.cloudflare.com/logs/logpush/logpush-job/datasets/zone/http_requests/)**:\n\n`FirewallForAIInjectionScore`: The score indicating the likelihood of a prompt injection attack in the request.\n\n- `FirewallForAIPIICategories`: List of PII categories detected in the request.\n\n- `FirewallForAITokenCount`: The number of tokens in the request.\n\n- `FirewallForAIUnsafeTopicCategories`: List of unsafe topic categories detected in the request.\n\nFor the complete field definitions for each dataset, refer to [Logpush datasets](https://developers.cloudflare.com/logs/logpush/logpush-job/datasets/).","publishedAt":"2026-04-15T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-logpush-new-fields/","media":[]},{"id":"rel_UJgppjEtZl1lBRgGEc_aL","version":null,"title":"Access - Independent MFA for Access applications","summary":"Cloudflare Access now supports independent multi-factor authentication (MFA), allowing you to enforce MFA requirements without relying on your identit...","content":"Cloudflare Access now supports independent multi-factor authentication (MFA), allowing you to enforce MFA requirements without relying on your identity provider (IdP). This feature addresses common gaps in IdP-based MFA, such as inconsistent MFA policies across different identity providers or the need for additional security layers beyond what the IdP provides.\n\nIndependent MFA supports the following authenticator types:\n\n- **Authenticator application** — Time-based one-time passwords (TOTP) using apps like Google Authenticator, Microsoft Authenticator, or Authy.\n\n- **Security key** — Hardware security keys such as YubiKeys.\n\n- **Biometrics** — Built-in device authenticators including Apple Touch ID, Apple Face ID, and Windows Hello.\n\nNote\n\nInfrastructure applications do not yet support independent MFA.\n\n#### Configuration levels\n\nYou can configure MFA requirements at three levels:\n\nLevelDescription**Organization**Enforce MFA by default for all applications in your account.**Application**Require or turn off MFA for a specific application.**Policy**Require or turn off MFA for users who match a specific policy.\n\nSettings at lower levels (policy) override settings at higher levels (organization), giving you granular control over MFA enforcement.\n\n#### User enrollment\n\nUsers enroll their authenticators through the [App Launcher](https://developers.cloudflare.com/cloudflare-one/access-controls/access-settings/app-launcher/). To help with onboarding, administrators can share a direct enrollment link: `.cloudflareaccess.com/AddMfaDevice`.\n\nTo get started with Independent MFA, refer to [Independent MFA](https://developers.cloudflare.com/cloudflare-one/access-controls/access-settings/independent-mfa/).","publishedAt":"2026-04-15T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-independent-mfa/","media":[]},{"id":"rel_Mre12JZqK_XIqq8EWk3UH","version":null,"title":"Cloudflare One - New, streamlined creation experience for Access Applications and Gateway Policies","summary":"The Cloudflare One dashboard now features redesigned builders for two core workflows: creating Gateway policies and configuring self-hosted Access app...","content":"The Cloudflare One dashboard now features redesigned builders for two core workflows: creating Gateway policies and configuring self-hosted Access applications.\n\n#### Gateway rule builder\n\nThe Gateway rule builder now features a redesigned user experience, bringing it in line with the Access policy builder experience. Improvements include:\n\n- **Streamlined UX** with clearer states and improved user interactions\n\n- **Wirefilter editing** for viewing and editing Gateway rules directly from wirefilter expressions\n\n- **Preview state** to review the impact of your policy in a simple graphic\n\n![New Gateway rule builder](https://developers.cloudflare.com/_astro/gateway-rule-builder.BxvzsN8s_Z2q9xKY.webp)\n\nFor more information, refer to [Traffic policies](https://developers.cloudflare.com/cloudflare-one/traffic-policies/).\n\n#### Access application builder for self-hosted apps\n\nThe self-hosted Access application builder now offers a simplified creation workflow with fewer steps from setup to save. Improvements include:\n\n- **New application selection experience** that makes choosing the right application type before you begin easier.\n\n- **Streamlined creation flow** with fewer clicks to build and save an application\n\n- **Inline policy creation** for building Access policies directly within the application creation flow\n\n- **Preview state** to understand how your policies enforce user access before saving\n\n![New Access application builder](https://developers.cloudflare.com/_astro/access-application-builder.B__yqGin_Z2pRlHk.webp)\n\nFor more information, refer to [self-hosted applications](https://developers.cloudflare.com/cloudflare-one/access-controls/applications/http-apps/).","publishedAt":"2026-04-15T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-new-rule-and-application-builders/","media":[]},{"id":"rel_Hfftqxa_aJPhRox1nSqs7","version":null,"title":"Digital Experience Monitoring - Last seen timestamp for Cloudflare One Client devices is more consistent","summary":"The last seen timestamp for [Cloudflare One Client](https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/cloudflare-one-client/...","content":"The last seen timestamp for [Cloudflare One Client](https://developers.cloudflare.com/cloudflare-one/team-and-resources/devices/cloudflare-one-client/) devices is now more consistent across the dashboard. IT teams will see more consistent information about the most recent client event between a device and Cloudflare's network.","publishedAt":"2026-04-15T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-dex-consistent-last-seen-timestamps/","media":[]},{"id":"rel__eo0K5rzV7dqEqMQIW_CX","version":null,"title":"Privacy Proxy - Privacy Proxy metrics now available via GraphQL Analytics API","summary":"Privacy Proxy metrics are now queryable through Cloudflare's [GraphQL Analytics API](https://developers.cloudflare.com/privacy-proxy/reference/metrics...","content":"Privacy Proxy metrics are now queryable through Cloudflare's [GraphQL Analytics API](https://developers.cloudflare.com/privacy-proxy/reference/metrics/graphql/), the new default method for accessing Privacy Proxy observability data. All metrics are available through a single endpoint:\n\n```\n\ncurl https://api.cloudflare.com/client/v4/graphql \\\n\n  --header \"Authorization: Bearer \" \\\n\n  --header \"Content-Type: application/json\" \\\n\n  --data '{\n\n    \"query\": \"{ viewer { accounts(filter: { accountTag: $accountTag }) { privacyProxyRequestMetricsAdaptiveGroups(filter: { date_geq: $startDate, date_leq: $endDate }, limit: 10000, orderBy: [date_ASC]) { count dimensions { date } } } } }\",\n\n    \"variables\": {\n\n      \"accountTag\": \"\",\n\n      \"startDate\": \"2026-04-04\",\n\n      \"endDate\": \"2026-04-06\"\n\n    }\n\n  }'\n\n```\n\n#### Available nodes\n\nFour GraphQL nodes are now live, providing aggregate metrics across all key dimensions of your Privacy Proxy deployment:\n\n- **`privacyProxyRequestMetricsAdaptiveGroups`** — Request volume, error rates, status codes, and proxy status breakdowns.\n\n- **`privacyProxyIngressConnMetricsAdaptiveGroups`** — Client-to-proxy connection counts, bytes transferred, and latency percentiles.\n\n- **`privacyProxyEgressConnMetricsAdaptiveGroups`** — Proxy-to-origin connection counts, bytes transferred, and latency percentiles.\n\n- **`privacyProxyAuthMetricsAdaptiveGroups`** — Authentication attempt counts by method and result.\n\nAll nodes support filtering by time, data center (`coloCode`), and endpoint, with additional node-specific dimensions such as transport protocol and authentication method.\n\n#### What this means for existing OpenTelemetry users\n\nOpenTelemetry-based metrics export remains available. The GraphQL Analytics API is now the recommended default method — a plug-and-play method that requires no collector infrastructure, saving engineering overhead.\n\n#### Learn more\n\n- [GraphQL Analytics API for Privacy Proxy](https://developers.cloudflare.com/privacy-proxy/reference/metrics/graphql/)\n\n- [GraphQL Analytics API — getting started](https://developers.cloudflare.com/analytics/graphql-api/getting-started/)","publishedAt":"2026-04-15T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-graphql-analytics-api/","media":[]},{"id":"rel_AS1msHYctpYDxHw6j44Xi","version":null,"title":"WAF - WAF Release - 2026-04-15","summary":"This week's release introduces a new detection for a critical Remote Code Execution (RCE) vulnerability in Mesop (CVE-2026-33057), alongside protectio...","content":"This week's release introduces a new detection for a critical Remote Code Execution (RCE) vulnerability in Mesop (CVE-2026-33057), alongside protections for high-impact vulnerabilities in Cisco Secure Firewall Management Center (CVE-2026-20079) and FortiClient EMS (CVE-2026-21643). Additionally, this release includes an update to our existing React Server DoS coverage to address recently identified resource exhaustion vectors (CVE-2026-23869).\n\n**Key Findings**\n\n- \n\nCisco Secure FMC (CVE-2026-20079): A vulnerability in the web-based management interface of Cisco Secure Firewall Management Center (FMC) that allows an unauthenticated, remote attacker to execute arbitrary commands or bypass security filters.\n\n- \n\nFortiClient EMS (CVE-2026-21643): A critical vulnerability in the FortiClient EMS permitting unauthorized access or administrative configuration manipulation via crafted HTTP requests.\n\n- \n\nMesop (CVE-2026-33057): A vulnerability in the Mesop Python-based UI framework where unauthenticated attackers can execute arbitrary code by sending specially crafted, Base64-encoded payloads in the request body.\n\n**Impact**\n\nSuccessful exploitation of these vulnerabilities could allow unauthenticated attackers to execute arbitrary code, gain administrative control over network management infrastructure, or trigger server-side resource exhaustion. Administrators are strongly encouraged to apply official vendor updates.\n\nRulesetRule IDLegacy Rule IDDescriptionPrevious ActionNew ActionCommentsCloudflare Managed Ruleset7767165cda1841b8b6e5abb7aef9415b N/ACisco Secure FMC - RCE via upgradeReadinessCall - CVE:CVE-2026-20079LogBlockThis is a new detection.Cloudflare Managed Ruleset3dd0b2b6f45c4bc08e49bf27ee7be621 N/AFortiClient EMS - Pre-Auth SQL Injection - CVE:CVE-2026-21643LogBlockThis is a new detection.Cloudflare Managed Ruleset0e3a6828906c4b24bad318a9c953a72b N/AMesop - Remote Code Execution - Base64 Payload - CVE:CVE-2026-33057LogBlockThis is a new detection.Cloudflare Managed Rulesetd95aa5410d1b4e98bf7a59d150c08f6f N/AReact Server - DOS - CVE:CVE-2026-23864 - 1 - BetaLogBlockThis rule has been merged into the original rule \"React Server - DOS - CVE:CVE-2026-23864 - 1\" (ID: aaede80b4d414dc89c443cea61680354 )Cloudflare Managed Ruleset7d6757e8a28f4853a72b4ce6ebd81645 N/AXSS, HTML Injection - Link Tag - URI (beta)N/ADisabledThis is a new detection.Cloudflare Managed Ruleset5e69d599ad634c81abe36a5f0af34bba N/AXSS, HTML Injection - Embed Tag  - URI (beta)N/ADisabledThis is a new detection.","publishedAt":"2026-04-15T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-waf-release/","media":[]},{"id":"rel_eccQK759LPoI8seq3jK_5","version":null,"title":"Agents - Agent Lee adds Write Operations and Generative UI","summary":"#### Agent Lee adds Write Operations and Generative UI\n\nWe are excited to announce two major capability upgrades for **Agent Lee**, the AI co-pilot bu...","content":"#### Agent Lee adds Write Operations and Generative UI\n\nWe are excited to announce two major capability upgrades for **Agent Lee**, the AI co-pilot built directly into the Cloudflare dashboard. Agent Lee is designed to understand your specific account configuration, and with this release, it moves from a passive advisor to an active assistant that can help you manage your infrastructure and visualize your data through natural language.\n\n#### Take action with Write Operations\n\nAgent Lee can now perform changes on your behalf across your Cloudflare account. Whether you need to update DNS records, modify SSL/TLS settings, or configure Workers routes, you can simply ask.\n\nTo ensure security and accuracy, every write operation requires **explicit user approval**. Before any change is committed, Agent Lee will present a summary of the proposed action in plain language. No action is taken until you select **Confirm**, and this approval requirement is enforced at the infrastructure level to prevent unauthorized changes.\n\n**Example requests:**\n\n- *\"Add an A record for blog.example.com pointing to 192.0.2.10.\"*\n\n- *\"Enable Always Use HTTPS on my zone.\"*\n\n- *\"Set the SSL mode for example.com to Full (strict).\"*\n\n#### Visualize data with Generative UI\n\nUnderstanding your traffic and security trends is now as easy as asking a question. Agent Lee now features **Generative UI**, allowing it to render inline charts and structured data visualizations directly within the chat interface using your actual account telemetry.\n\n**Example requests:**\n\n- *\"Show me a chart of my traffic over the last 7 days.\"*\n\n- *\"What does my error rate look like for the past 24 hours?\"*\n\n- *\"Graph my cache hit rate for example.com this week.\"*\n\n---\n\n#### Availability\n\nThese features are currently available in **Beta** for all users on the **Free plan**. To get started, log in to the [Cloudflare dashboard](https://dash.cloudflare.com) and select **Ask AI** in the upper right corner.\n\nTo learn more about how to interact with your account using AI, refer to the [Agent Lee documentation](https://developers.cloudflare.com/agent-lee/).","publishedAt":"2026-04-15T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-15-agentlee-writeops-genui/","media":[]},{"id":"rel_pPhUX6mz2vm0X02vNyD5J","version":null,"title":"Containers - Control where your Containers run with regional and jurisdictional placement","summary":"You can now specify placement constraints to control where your [Containers](https://developers.cloudflare.com/containers/) run.\n\nConstraintValuesUse ...","content":"You can now specify placement constraints to control where your [Containers](https://developers.cloudflare.com/containers/) run.\n\nConstraintValuesUse case`regions``ENAM`, `WNAM`, `EEUR`, `WEUR`Geographic placement`jurisdiction``eu`, `fedramp`Compliance boundaries\n\nUse `regions` to limit placement to specific geographic areas. Use `jurisdiction` to restrict containers to compliance boundaries — `eu` maps to European regions (EEUR, WEUR) and `fedramp` maps to North American regions (ENAM, WNAM).\n\nRefer to [Containers architecture](https://developers.cloudflare.com/containers/platform-details/architecture/) for more details on placement.","publishedAt":"2026-04-15T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-05-regional-placement/","media":[]},{"id":"rel_1WvpxacxfriYlm87k-KD-","version":null,"title":"Data Loss Prevention - DLP account-level settings","summary":"**Account-level DLP settings are now available** in Cloudflare One. You can now configure advanced DLP settings at the account level, including OCR, A...","content":"**Account-level DLP settings are now available** in Cloudflare One. You can now configure advanced DLP settings at the account level, including OCR, AI context analysis, and payload masking. This provides consistent enforcement across all DLP profiles and simplifies configuration management.\n\nKey changes:\n\n- **Consistent enforcement**: Settings configured at the account level apply to all DLP profiles\n\n- **Simplified migration**: Settings enabled on any profile are automatically migrated to account level\n\n- **Deprecation notice**: Profile-level advanced settings will be deprecated in a future release\n\n**Migration details:**\n\nDuring the migration period, if a setting is enabled on any profile, it will automatically be enabled at the account level. This means profiles that previously had a setting disabled may now have it enabled if another profile in the account had it enabled.\n\nSettings are evaluated using OR logic - a setting is enabled if it is turned on at either the account level or the profile level. However, profile-level settings cannot be enabled when the account-level setting is off.\n\nFor more details, refer to the [DLP advanced settings documentation](https://developers.cloudflare.com/cloudflare-one/data-loss-prevention/dlp-profiles/advanced-settings/).","publishedAt":"2026-04-14T12:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2025-04-14-account-level-dlp-settings/","media":[]},{"id":"rel_dGEGBsGT1p4hlOZhzf1_5","version":null,"title":"Data Loss Prevention - Detect Cloudflare API tokens with DLP","summary":"The **Credentials and Secrets** DLP profile now includes three new predefined entries for detecting Cloudflare API credentials:\n\nEntry nameToken prefi...","content":"The **Credentials and Secrets** DLP profile now includes three new predefined entries for detecting Cloudflare API credentials:\n\nEntry nameToken prefixDetectsCloudflare User API Key`cfk_`User-scoped API keysCloudflare User API Token`cfut_`User-scoped API tokensCloudflare Account Owned API Token`cfat_`Account-scoped API tokens\n\nThese detections target the new [Cloudflare API credential format](https://developers.cloudflare.com/fundamentals/api/get-started/token-formats/), which uses a structured prefix and a CRC32 checksum suffix. The identifiable prefix makes it possible to detect leaked credentials with high confidence and low false positive rates — no surrounding context such as `Authorization: Bearer` headers is required.\n\nCredentials generated before this format change will not be matched by these entries.\n\n#### How to enable Cloudflare API token detections\n\n- In the [Cloudflare dashboard](https://dash.cloudflare.com/), go to **Zero Trust** > **DLP** > **DLP Profiles**.\n\n- Select the **Credentials and Secrets** profile.\n\n- Turn on one or more of the new Cloudflare API token entries.\n\n- Use the profile in a Gateway HTTP policy to log or block traffic containing these credentials.\n\nExample policy:\n\nSelectorOperatorValueActionDLP Profilein*Credentials and Secrets*Block\n\nYou can also enable individual entries to scope detection to specific credential types — for example, enabling **Account Owned API Token** detection without enabling **User API Key** detection.\n\nFor more information, refer to [predefined DLP profiles](https://developers.cloudflare.com/cloudflare-one/data-loss-prevention/dlp-profiles/predefined-profiles/).","publishedAt":"2026-04-14T00:00:00.000Z","url":"https://developers.cloudflare.com/changelog/post/2026-04-14-cloudflare-api-token-detections/","media":[]}],"pagination":{"page":1,"pageSize":20,"totalPages":13,"totalItems":256},"summaries":{"rolling":{"windowDays":90,"summary":"Over 90 days, Cloudflare shipped a major push toward agentic and edge-compute infrastructure, expanding AI capabilities while building out connectivity and security layers that span from the network to application code.\n\nAI Search matured into a production platform with hybrid search, REST APIs, custom metadata filtering, and UI components for embedding search into websites. Workers AI added frontier-scale models (Kimi K2.5, GLM-4.7-Flash, Gemma 4) with extended context windows and multi-turn tool calling—the infrastructure for agents to reason and act at scale. Browser Run (formerly Browser Rendering) shipped Live View, Human in the Loop, session recordings, and WebMCP support, positioning browser automation as a first-class agent interface. Artifacts entered private beta as Git-compatible versioned storage, solving the core problem of how agents exchange and iterate on code.\n\nOn the foundational side, Dynamic Workers graduated from beta, enabling Workers to spawn other Workers at runtime for secure code execution—essential for Code Mode and agentic patterns. Agents SDK hit v0.8.0 with readable state, idempotent schedules, and full TypeScript inference. Sandboxes and Containers went GA with Docker-in-Docker, custom egress policies, credential injection, and regional placement constraints. Real-time transcription in RealtimeKit expanded to 10 languages. Workers limits doubled (subrequests, Workflows steps, Browser concurrency).\n\nSecurity and observability hardened significantly: Audit Logs v2 hit GA with ~95% product coverage and standardized format. Risk Scoring now ingests Gateway DNS to flag users visiting malicious domains. Access gained independent MFA, managed OAuth for CLI and SDK clients, and policies for bookmark applications. WAF released weekly detections for emerging CVEs. Markdown for Agents shipped as automatic content conversion on the edge—AI systems can request text/markdown and get it on-the-fly from any Cloudflare-protected zone.\n\nNetworking infrastructure expanded: Cloudflare Mesh entered GA with post-quantum encryption and private IPs for every device. Cloudflare One Appliance added LACP, post-quantum IPsec, and Anycast IP visibility. VPC Networks graduated to public beta, allowing Workers to reach any service on a tunnel or Mesh node without pre-registering ports. Gateway gained OIDC Claims filtering and new protocol detection (IMAP, SMTP, LDAP, MySQL, NTP).\n\nCross-platform tooling matured: wrangler tunnel brought tunnel lifecycle management to CLI. Wrangler now auto-configures frameworks without a config file. Pywrangler landed on Windows. R2 added Local Uploads (open beta) for 75% latency reduction on global uploads. Pipelines dashboard added dropped event metrics and typed bindings. Logpush expanded to BigQuery and gained millisecond/nanosecond timestamps.\n\nThe throughline: Cloudflare moved from scattered point products toward an integrated platform where agents, code, data, and connectivity converge—Workers execute code, Agents SDK orchestrate them, Dynamic Workers sandbox untrusted logic, Mesh connects private infrastructure, and AI models run natively. The ~40 releases reflect a shift in direction: less incremental feature work, more systemic capability for building agentic applications at the edge.","releaseCount":216,"generatedAt":"2026-04-16T15:06:28.895Z"},"monthly":[{"year":2026,"month":3,"summary":"March accelerated deployment of AI and observability infrastructure. Workers, Containers, and Sandbox products expanded their ecosystem integrations — Workers now manages Cloudflare Tunnels via CLI, Containers added Docker Hub image support and SSH access, and Sandboxes connected directly to Workers bindings over HTTP. The Agents SDK matured across three releases with readable state, diagnostics channels, and MCP support. AI Search consolidated management into Wrangler CLI while adding metadata filtering, public endpoints, and OpenAI-compatible REST APIs. Rules and Workers both shipped RFC 9440 mTLS certificate fields to simplify client certificate forwarding. Security expanded across WAF detections for Fortinet, Magento, and Ivanti vulnerabilities, while Access introduced OAuth 2.0 for non-browser clients and Managed OAuth eliminated workarounds like `cloudflared access curl`. Access logs and Gateway activity logs received a UI refresh with field customization and filter-by-value. Workflows raised step limits to 25,000 per instance, and Dynamic Workers entered open beta for code execution on-demand.","releaseCount":75,"generatedAt":"2026-04-16T15:06:34.048Z"}]}}