<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Cloudflare changelogs | Cloudflare Fundamentals</title><description>Cloudflare changelogs for Cloudflare Fundamentals</description><link>https://developers.stormtrust.net/changelog/</link><item><title>Cloudflare Fundamentals - Improved publisher verification details on OAuth consent screens</title><link>https://developers.stormtrust.net/changelog/post/2026-08-04-oauth-consent-shields/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-08-04-oauth-consent-shields/</guid><description>&lt;p&gt;OAuth consent screens now display a shield icon with explanatory text beneath the consent screen title. Each shield icon indicates who owns the application and whether its domain ownership is verified.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Green filled shield&lt;/strong&gt;: Cloudflare owns and manages the application.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Blue outlined shield&lt;/strong&gt;: A third-party application with verified ownership of its domain.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Amber filled shield&lt;/strong&gt;: A third-party application without verified ownership of a domain.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Domain verification only confirms that the application owner controls the displayed domain.&lt;/p&gt;
&lt;p&gt;For more information, refer to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/oauth/authorizing-an-application/&quot;&gt;Authorizing an application&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Wed, 05 Aug 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Create Free accounts from the dashboard</title><link>https://developers.stormtrust.net/changelog/post/2026-08-04-free-dashboard-button/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-08-04-free-dashboard-button/</guid><description>&lt;p&gt;You can now create standalone Free accounts directly from the Cloudflare dashboard using the new &lt;strong&gt;Create Account&lt;/strong&gt; button. This feature is currently available to all users.&lt;/p&gt;
&lt;p&gt;When creating a Free account:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;You can create up to &lt;strong&gt;5 Free accounts&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Your user account must have at least &lt;strong&gt;7 days of tenure&lt;/strong&gt; to be eligible.&lt;/li&gt;
&lt;li&gt;The account is created immediately and ready to use.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To create a Free account, go to the &lt;a href=&quot;https://dash.cloudflare.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;strong&gt;Cloudflare dashboard&lt;/strong&gt;&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; and select &lt;strong&gt;Create Account&lt;/strong&gt; from either the account switcher in the top left (where your account name appears) or from the &lt;strong&gt;Accounts&lt;/strong&gt; page.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;limitations&quot;&gt;Limitations&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#limitations&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;This feature can only be used to create a Cloudflare Free account. To create an Enterprise Account under your existing contract, please contact Cloudflare Support.&lt;/li&gt;
&lt;li&gt;All users can create a Cloudflare Free account, however, Enterprises wish to restrict this action to only Super Administrators. We will deliver this improvement in a future release.&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;next-steps&quot;&gt;Next steps&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#next-steps&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;After creating your Free account, you can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/billing/get-started/create-billing-profile/&quot;&gt;Add a payment method&lt;/a&gt; to enable additional Cloudflare products and services.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/billing/get-started/update-billing-info/&quot;&gt;Update billing information&lt;/a&gt; to manage payment methods, billing address, or tax IDs.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/billing/understand/how-billing-works/&quot;&gt;Review how Cloudflare billing works&lt;/a&gt; to understand the billing lifecycle and charge types.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/organizations/for-enterprise/&quot;&gt;Assign accounts to an Enterprise Organization&lt;/a&gt; to centrally manage multiple accounts from a single dashboard.&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Tue, 04 Aug 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Account Role API deprecated</title><link>https://developers.stormtrust.net/changelog/post/2026-07-21-account-role-api-deprecated/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-07-21-account-role-api-deprecated/</guid><description>&lt;p&gt;The &lt;a href=&quot;https://developers.stormtrust.net/api/resources/accounts/subresources/roles/&quot;&gt;Account Roles API&lt;/a&gt; is deprecated and is being replaced by the &lt;a href=&quot;https://developers.stormtrust.net/api/resources/iam/subresources/permission_groups/&quot;&gt;Permission Groups API&lt;/a&gt;. An end of life date has not yet been established.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;what-you-need-to-do&quot;&gt;What you need to do&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#what-you-need-to-do&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Review the &lt;a href=&quot;https://developers.stormtrust.net/api/resources/iam/subresources/permission_groups/&quot;&gt;Permission Groups API&lt;/a&gt; documentation; the response schema differs from the legacy Roles response.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;highlights&quot;&gt;Highlights&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#highlights&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Integrations migrating to the Permission Groups API must obtain Permission Group IDs from that API and use them in the Account Members API policies request shape. Integrations that persist legacy Role IDs will need to remap their assignments.&lt;/li&gt;
&lt;li&gt;The legacy &lt;code&gt;Role&lt;/code&gt; response includes a top-level &lt;code&gt;description&lt;/code&gt; and a &lt;code&gt;permissions&lt;/code&gt; object keyed by resource type with edit/read flags.&lt;/li&gt;
&lt;li&gt;The &lt;code&gt;PermissionGroup&lt;/code&gt; response replaces those with a &lt;code&gt;meta&lt;/code&gt; object containing &lt;code&gt;label&lt;/code&gt; and &lt;code&gt;scopes&lt;/code&gt;. Individual permissions are not returned as part of the permission group.&lt;/li&gt;
&lt;li&gt;The new API supports the &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/api/get-started/create-token/&quot;&gt;API Token&lt;/a&gt; authorization scheme. The legacy Email + API Key authorization schema is provided for backwards compatibility.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information, refer to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/api/reference/deprecations/&quot;&gt;API deprecations&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Tue, 21 Jul 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Organizations - Distributor, MSSP, and Agency partners can manage Organization members directly</title><link>https://developers.stormtrust.net/changelog/post/2026-07-17-distributor-mssp-self-serve-members/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-07-17-distributor-mssp-self-serve-members/</guid><description>&lt;p&gt;Distributor, MSSP, and Agency partners on Cloudflare &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/organizations/&quot;&gt;Organizations&lt;/a&gt; can now add and manage Organization Members directly from the Cloudflare dashboard, without help from Cloudflare.&lt;/p&gt;
&lt;p&gt;Previously, adding a member to a Distributor, MSSP, or Agency Organization was a manual, Cloudflare-assisted process that required a request to Cloudflare and enrollment in a closed beta, and the dashboard &lt;strong&gt;Add member&lt;/strong&gt; flow was blocked for these Organizations.&lt;/p&gt;
&lt;p&gt;Now, Organization admins can add members themselves from &lt;strong&gt;Organization&lt;/strong&gt; &amp;gt; &lt;strong&gt;Members&lt;/strong&gt; &amp;gt; &lt;strong&gt;Add member&lt;/strong&gt;, with no beta enrollment required.&lt;/p&gt;
&lt;p&gt;New members receive access to the Organization&apos;s accounts through the same implicit-access model already used for enterprise Organizations. The &lt;strong&gt;Accounts&lt;/strong&gt; list and the account switcher classify Distributor, MSSP, and Agency Organizations consistently with enterprise Organizations, so their accounts are labeled and grouped correctly in the dashboard.&lt;/p&gt;
&lt;p&gt;Agency partners also gain access to the Organizations dashboard, while retaining access to their existing Tenant management dashboard.&lt;/p&gt;
&lt;p&gt;Distributor, MSSP, and Agency Organizations are currently in beta.&lt;/p&gt;
&lt;p&gt;For more information, refer to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/organizations/manage-members/&quot;&gt;Manage Organization members&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Fri, 17 Jul 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Organizations</category></item><item><title>Cloudflare Fundamentals - Origin Content Signals for Markdown for Agents</title><link>https://developers.stormtrust.net/changelog/post/2026-07-13-markdown-for-agents-header-preservation/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-07-13-markdown-for-agents-header-preservation/</guid><description>&lt;p&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/reference/markdown-for-agents/&quot;&gt;Markdown for Agents&lt;/a&gt; now preserves security- and cache-relevant response headers from your origin when converting HTML to Markdown:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Markdown for Agents preserves security headers such as &lt;code&gt;Strict-Transport-Security&lt;/code&gt; (HSTS), &lt;code&gt;Content-Security-Policy&lt;/code&gt; (CSP), &lt;code&gt;X-Frame-Options&lt;/code&gt;, &lt;code&gt;Set-Cookie&lt;/code&gt;, and CORS headers (for example, &lt;code&gt;Access-Control-Allow-Origin&lt;/code&gt;) on the converted response.&lt;/li&gt;
&lt;li&gt;Caching headers (&lt;code&gt;Cache-Control&lt;/code&gt;, &lt;code&gt;Expires&lt;/code&gt;, &lt;code&gt;Age&lt;/code&gt;) continue to pass through.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Your origin&apos;s &lt;a href=&quot;https://contentsignals.org/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Content Signals&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; policy is now authoritative. If your origin sets a &lt;code&gt;content-signal&lt;/code&gt; header, Markdown for Agents preserves it. When the origin does not send one, Cloudflare adds the default &lt;code&gt;Content-Signal: ai-train=yes, search=yes, ai-input=yes&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;This release also fixes relative link resolution for directory-style base URLs (those ending in a trailing slash). Previously, relative links such as &lt;code&gt;../page/&lt;/code&gt; could resolve one path segment too high and return a &lt;code&gt;404&lt;/code&gt;. Links are now resolved correctly per &lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc3986#section-5.2.3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;RFC 3986&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Refer to our &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/reference/markdown-for-agents/&quot;&gt;developer documentation&lt;/a&gt; for more details.&lt;/p&gt;</description><pubDate>Mon, 13 Jul 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Gateway, Cloudflare One, Cloudflare Fundamentals - New permissions and roles for Gateway policies and lists</title><link>https://developers.stormtrust.net/changelog/post/2026-06-30-gateway-granular-permissions/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-06-30-gateway-granular-permissions/</guid><description>&lt;p&gt;You can now assign granular, resource-scoped roles for &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-one/traffic-policies/&quot;&gt;Cloudflare Gateway&lt;/a&gt; firewall policies and &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-one/reusable-components/lists/&quot;&gt;Zero Trust lists&lt;/a&gt;. Administrators can delegate access to specific policy types or list management without granting account-wide or product-wide control.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;what-is-new&quot;&gt;What is new&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#what-is-new&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;When you &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/manage/&quot;&gt;add a member&lt;/a&gt; or create a &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/policies/&quot;&gt;permission policy&lt;/a&gt;, the following resource-scoped roles are now available:&lt;/p&gt;
&lt;div class=&quot;table-scroll&quot; tabindex=&quot;0&quot; role=&quot;region&quot; aria-label=&quot;Table&quot;&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Role&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Gateway Firewall Policies Admin&lt;/td&gt;
&lt;td&gt;Can view and edit all Gateway firewall policies, including DNS, HTTP, and Network policies.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Gateway DNS Policies Admin&lt;/td&gt;
&lt;td&gt;Can view and edit Gateway DNS policies.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Gateway HTTP Policies Admin&lt;/td&gt;
&lt;td&gt;Can view and edit Gateway HTTP policies.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Gateway Network Policies Admin&lt;/td&gt;
&lt;td&gt;Can view and edit Gateway Network policies.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Gateway Egress Policies Admin&lt;/td&gt;
&lt;td&gt;Can view and edit Gateway Egress policies.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Gateway Resolver Policies Admin&lt;/td&gt;
&lt;td&gt;Can view and edit Gateway Resolver policies.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Gateway Policies Admin&lt;/td&gt;
&lt;td&gt;Can view and edit all Gateway policies.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Gateway Policies Read&lt;/td&gt;
&lt;td&gt;Can view all Gateway policies.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Gateway Read Only&lt;/td&gt;
&lt;td&gt;Can view all Gateway resources.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust DNS Locations Admin&lt;/td&gt;
&lt;td&gt;Can view and edit DNS locations.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Proxy Endpoints Admin&lt;/td&gt;
&lt;td&gt;Can view and edit Gateway Proxy Endpoints.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Account Lists Admin&lt;/td&gt;
&lt;td&gt;Can view and edit all Gateway and Access lists.&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Zero Trust Account Lists Read&lt;/td&gt;
&lt;td&gt;Can view all Gateway and Access lists.&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;These roles allow you to:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Grant a network engineer write access to Network policies only, without exposing DNS or HTTP policy configuration.&lt;/li&gt;
&lt;li&gt;Allow a security analyst to view all Gateway policies in read-only mode for auditing purposes.&lt;/li&gt;
&lt;li&gt;Delegate list management to a team that maintains block and allow lists without giving them access to policy configuration.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can also now assign &lt;em&gt;Resource-scoped roles&lt;/em&gt;. These roles are complementary to existing account-level roles, and allow you to grant access to a specific resource, like an individual Gateway policy or Cloudflare One list. &lt;strong&gt;Existing account-level roles continue to work.&lt;/strong&gt; A member with the &lt;code&gt;Cloudflare Gateway&lt;/code&gt; or &lt;code&gt;Cloudflare Zero Trust&lt;/code&gt; role retains full access to all Gateway resources. This ensures backward compatibility for existing automation and API tokens.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;get-started&quot;&gt;Get started&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#get-started&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Review the &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/roles/#resource-scoped-roles&quot;&gt;resource-scoped roles&lt;/a&gt; on the Cloudflare role reference.&lt;/li&gt;
&lt;li&gt;Learn how to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/policies/&quot;&gt;create permission policies&lt;/a&gt; that use these roles.&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Tue, 30 Jun 2026 00:00:00 GMT</pubDate><product>Gateway</product><category>Gateway</category><category>Cloudflare One</category><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Search API tokens by name</title><link>https://developers.stormtrust.net/changelog/post/2026-06-25-api-token-search/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-06-25-api-token-search/</guid><description>&lt;p&gt;You can now search API tokens by name, making it easier to find specific tokens across large token lists without manually paginating.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;whats-new&quot;&gt;What&apos;s new&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#whats-new&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Dashboard search&lt;/strong&gt;: Both &lt;a href=&quot;https://dash.cloudflare.com/?to=/:account/account-api-tokens&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;account API tokens&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; and &lt;a href=&quot;https://dash.cloudflare.com/profile/api-tokens&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;user API tokens&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; pages now include a search bar. Type a name to filter results.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;API search support&lt;/strong&gt;: The &lt;a href=&quot;https://developers.stormtrust.net/api/resources/user/subresources/tokens/methods/list/&quot;&gt;&lt;code&gt;/user/tokens&lt;/code&gt;&lt;/a&gt; and &lt;a href=&quot;https://developers.stormtrust.net/api/resources/accounts/subresources/tokens/methods/list/&quot;&gt;&lt;code&gt;/accounts/{account_id}/tokens&lt;/code&gt;&lt;/a&gt; endpoints now accept a &lt;code&gt;name&lt;/code&gt; query parameter to filter tokens by name.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information, refer to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/api/get-started/create-token/&quot;&gt;Create an API token&lt;/a&gt; and &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/api/get-started/account-owned-tokens/&quot;&gt;Account API tokens&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Thu, 25 Jun 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Workers, D1, R2, KV, Queues, Vectorize, Durable Objects, Containers - Billable usage and budget alerts now in product sidebars</title><link>https://developers.stormtrust.net/changelog/post/2026-06-04-billable-usage-product-sidebar/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-06-04-billable-usage-product-sidebar/</guid><description>&lt;p&gt;Pay-as-you-go customers can now view billable usage and create &lt;a href=&quot;https://developers.stormtrust.net/changelog/post/2026-04-13-billable-usage-dashboard-and-budget-alerts/&quot;&gt;budget alerts&lt;/a&gt; directly from the product overview pages for &lt;a href=&quot;https://developers.stormtrust.net/workers/&quot;&gt;Workers &amp;amp; Pages&lt;/a&gt;, &lt;a href=&quot;https://developers.stormtrust.net/d1/&quot;&gt;D1&lt;/a&gt;, &lt;a href=&quot;https://developers.stormtrust.net/r2/&quot;&gt;R2&lt;/a&gt;, &lt;a href=&quot;https://developers.stormtrust.net/kv/&quot;&gt;Workers KV&lt;/a&gt;, &lt;a href=&quot;https://developers.stormtrust.net/queues/&quot;&gt;Queues&lt;/a&gt;, &lt;a href=&quot;https://developers.stormtrust.net/vectorize/&quot;&gt;Vectorize&lt;/a&gt;, &lt;a href=&quot;https://developers.stormtrust.net/durable-objects/&quot;&gt;Durable Objects&lt;/a&gt;, and &lt;a href=&quot;https://developers.stormtrust.net/containers/&quot;&gt;Containers&lt;/a&gt;. A new sidebar widget shows current-period spend and the billing cycle date range, alongside a button to create a budget alert.&lt;/p&gt;
&lt;p&gt;The widget pulls from the same data as the &lt;a href=&quot;https://developers.stormtrust.net/changelog/post/2026-04-13-billable-usage-dashboard-and-budget-alerts/&quot;&gt;Billable Usage dashboard&lt;/a&gt; and aligns to your billing cycle (or the current day on Free plans), so the numbers match your invoice. Enterprise contract accounts are not yet supported.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=2872,height=1614,format=webp/_astro/2026-06-04-billable-usage-product-sidebar.BUuIokn_.png&quot; alt=&quot;Billable usage widget in the Durable Objects product sidebar showing current-period spend and a breakdown by service&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;2872&quot; height=&quot;1614&quot;&gt;
&lt;p&gt;Selecting &lt;strong&gt;Create budget alert&lt;/strong&gt; opens the budget alert flow inline so you can set a dollar threshold in the same place you are reviewing usage. Budget alerts apply to your total account-level spend across all products, not just the product page you create them from.&lt;/p&gt;
&lt;p&gt;For more information, refer to the &lt;a href=&quot;https://developers.stormtrust.net/billing/&quot;&gt;Usage-based billing documentation&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Thu, 04 Jun 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Workers</category><category>D1</category><category>R2</category><category>KV</category><category>Queues</category><category>Vectorize</category><category>Durable Objects</category><category>Containers</category></item><item><title>Cloudflare Fundamentals - Introducing self-managed OAuth clients</title><link>https://developers.stormtrust.net/changelog/post/2026-06-03-public-oauth-clients/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-06-03-public-oauth-clients/</guid><description>
&lt;p&gt;Today we are launching self-managed OAuth, enabling developers to build third-party applications that integrate with Cloudflare via OAuth. This provides a more secure, user-friendly, and manageable alternative to API tokens.&lt;/p&gt;
&lt;p&gt;OAuth lets third-party applications act on behalf of a user to access their Cloudflare account. For example, after a user grants consent, Wrangler can deploy Workers into that account.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;what-is-new&quot;&gt;What is new&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#what-is-new&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Cloudflare Developers can now create and manage their own OAuth applications to integrate with Cloudflare.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;create-an-application&quot;&gt;Create an application&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#create-an-application&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;To create an application, go to &lt;strong&gt;Manage account&lt;/strong&gt; &amp;gt; &lt;strong&gt;OAuth clients&lt;/strong&gt; in your account on the Cloudflare dashboard.&lt;/p&gt;
&lt;a href=&quot;https://dash.cloudflare.com/?to=/:account/oauth-clients&quot; data-nb-button class=&quot;group inline-flex w-max shrink-0 items-center justify-center rounded-full font-medium whitespace-nowrap no-underline shadow-xs transition-colors cursor-pointer select-none focus-visible:outline-2 focus-visible:outline-ring focus-visible:outline-offset-2 disabled:cursor-not-allowed disabled:opacity-50 bg-primary text-primary-foreground hover:bg-primary-hover h-9 gap-1.5 px-3 text-sm&quot; target=&quot;_blank&quot;&gt;Go to &lt;strong&gt;OAuth clients&lt;/strong&gt;&amp;nbsp;&amp;#8599;&lt;/a&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;select-limited-scopes&quot;&gt;Select limited scopes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#select-limited-scopes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;If you have used an API token to call Cloudflare APIs, OAuth client scopes will look familiar. Select only the scopes your application needs during application creation, and include that scope list when sending users to Cloudflare for consent.&lt;/p&gt;
&lt;p&gt;Users can review the requested scopes before they consent.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;apps-for-both-private-and-public-use&quot;&gt;Apps for both private and public use&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#apps-for-both-private-and-public-use&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Applications start with &lt;code&gt;private&lt;/code&gt; visibility. Private applications can only be used by members of the account where the application was created.&lt;/p&gt;
&lt;p&gt;To make an application available to any Cloudflare user, complete the prerequisites for &lt;code&gt;public&lt;/code&gt; visibility.&lt;/p&gt;
&lt;p&gt;For more information, refer to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/oauth/create-an-oauth-client/#private-and-public-clients&quot;&gt;client visibility&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;client-domain-verification&quot;&gt;Client domain verification&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#client-domain-verification&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Before an application can be made public, you must verify the client domain. Domain verification helps users confirm that the application owner controls the domain shown on the consent page.&lt;/p&gt;
&lt;p&gt;After verification, users see a verified badge on the consent page.&lt;/p&gt;
&lt;p&gt;For more information, refer to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/oauth/create-an-oauth-client/#client-url-domain-ownership-verification&quot;&gt;domain verification&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;learn-more&quot;&gt;Learn more&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#learn-more&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;For more information, refer to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/oauth/&quot;&gt;OAuth clients&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Wed, 03 Jun 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Cloudflare One, Cloudflare Tunnel for SASE, Cloudflare Tunnel, Cloudflare Mesh - Granular permissions for Cloudflare Tunnel and Cloudflare Mesh</title><link>https://developers.stormtrust.net/changelog/post/2026-05-21-tunnel-mesh-granular-permissions/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-05-21-tunnel-mesh-granular-permissions/</guid><description>&lt;p&gt;You can now scope Cloudflare permissions to individual &lt;a href=&quot;https://developers.stormtrust.net/tunnel/&quot;&gt;Cloudflare Tunnel&lt;/a&gt; instances and &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-one/networks/connectors/cloudflare-mesh/&quot;&gt;Cloudflare Mesh&lt;/a&gt; nodes. Administrators can delegate access to specific Tunnels or Mesh nodes without granting account-wide control over private networking.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;what-is-new&quot;&gt;What is new&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#what-is-new&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;When you &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/manage/&quot;&gt;add a member&lt;/a&gt; or create a &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/policies/&quot;&gt;permission policy&lt;/a&gt;, the resource picker now lists &lt;a href=&quot;https://developers.stormtrust.net/tunnel/&quot;&gt;Cloudflare Tunnel&lt;/a&gt; instances and &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-one/networks/connectors/cloudflare-mesh/&quot;&gt;Cloudflare Mesh&lt;/a&gt; nodes as scopable resource types. You can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Grant a read-only role on a single Cloudflare Tunnel instance to a support operator for log streaming and diagnostics — without exposing other Tunnels or destructive actions.&lt;/li&gt;
&lt;li&gt;Grant a write role on a specific Cloudflare Mesh node to an application team — without giving them access to the rest of your private network.&lt;/li&gt;
&lt;li&gt;Scope a single policy to one or many Tunnels and Mesh nodes at once.&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;how-it-works&quot;&gt;How it works&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#how-it-works&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Granular permissions are a parallel layer to existing account-level roles — they do not replace them.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Existing account-level roles continue to work.&lt;/strong&gt; A member with &lt;code&gt;Cloudflare Access&lt;/code&gt; or &lt;code&gt;Cloudflare Zero Trust&lt;/code&gt; retains write access to every Tunnel and Mesh node in the account. This ensures backward compatibility for existing automation and tokens.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Granular permissions are additive.&lt;/strong&gt; For any API request on a specific Tunnel or Mesh node, access is granted if the principal has &lt;strong&gt;either&lt;/strong&gt; the account-level role &lt;strong&gt;or&lt;/strong&gt; a granular permission for that resource.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Resource enumeration is authorization-aware.&lt;/strong&gt; Listing endpoints (&lt;code&gt;GET /accounts/{id}/cfd_tunnel&lt;/code&gt;, &lt;code&gt;GET /accounts/{id}/warp_connector&lt;/code&gt;) return only the resources the principal has at least read access to.&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;get-started&quot;&gt;Get started&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#get-started&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Configure &lt;a href=&quot;https://developers.stormtrust.net/tunnel/advanced/granular-permissions/&quot;&gt;granular permissions for Cloudflare Tunnel&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Configure &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-one/networks/connectors/granular-permissions/&quot;&gt;granular permissions for Cloudflare Tunnel and Cloudflare Mesh in Cloudflare One&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Review the &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/roles/#resource-scoped-roles&quot;&gt;resource-scoped roles&lt;/a&gt; on the Cloudflare role reference.&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Thu, 21 May 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Cloudflare One</category><category>Cloudflare Tunnel for SASE</category><category>Cloudflare Tunnel</category><category>Cloudflare Mesh</category></item><item><title>Cloudflare Fundamentals - Keyboard shortcuts for the Cloudflare dashboard</title><link>https://developers.stormtrust.net/changelog/post/2026-05-04-keyboard-shortcuts/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-05-04-keyboard-shortcuts/</guid><description>&lt;p&gt;You can now navigate, switch context, and take common actions in the Cloudflare dashboard without leaving your keyboard. Press &lt;code&gt;?&lt;/code&gt; anywhere to see the full list. Keyboard shortcuts can be disabled by visiting your &lt;a href=&quot;https://dash.cloudflare.com/profile/settings&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;profile settings&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;navigate&quot;&gt;Navigate&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#navigate&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;table-scroll&quot; tabindex=&quot;0&quot; role=&quot;region&quot; aria-label=&quot;Table&quot;&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Shortcut&lt;/th&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;g h&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Go to Home&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;g a&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Go to account overview&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;g z&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Go to zone overview&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;g p&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Go to your profile&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;g w&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Go to Workers &amp;amp; Pages&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;g o&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Go to Zero Trust&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;g b&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Go to billing&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;g 1&lt;/code&gt; – &lt;code&gt;g 5&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Go to a recent or pinned item (by position in sidebar)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;t →&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Move to the next tab&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;t ←&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Move to the previous tab&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;p →&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Move to the next page of a table&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;p ←&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Move to the previous page of a table&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;take-action&quot;&gt;Take action&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#take-action&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;table-scroll&quot; tabindex=&quot;0&quot; role=&quot;region&quot; aria-label=&quot;Table&quot;&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Shortcut&lt;/th&gt;
&lt;th&gt;Action&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Open quick search&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;?&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Show keyboard shortcuts&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;s a&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Switch account&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;s z&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Switch zone&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;s .&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Star or unstar the current zone&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;p .&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Pin or unpin the current page&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;t s&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Toggle the sidebar open or closed&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;t m&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Expand or collapse all sidebar menus&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;t a&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Toggle Ask AI sidebar&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;d .&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Toggle dark mode&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;c u&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Copy the current URL&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;c d&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Copy a deep link URL&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;</description><pubDate>Mon, 04 May 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Instant Bank Payments via Link</title><link>https://developers.stormtrust.net/changelog/post/2026-04-29-instant-bank-payments-via-link/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-04-29-instant-bank-payments-via-link/</guid><description>&lt;p&gt;You can now pay for Cloudflare services directly from your bank account using &lt;a href=&quot;https://developers.stormtrust.net/billing/payment-methods/instant-bank-payments-link/&quot;&gt;Instant Bank Payments via Link&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;what-changed&quot;&gt;What changed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#what-changed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;a href=&quot;https://link.co/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Link&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; now supports bank account payments in addition to cards. If you have a bank account saved in Link, it appears as a payment option at checkout. If not, you can connect one during the checkout flow.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=413,height=562,format=webp/_astro/2026-04-29-instant-bank-payments-link.ChGd-t7M.png&quot; alt=&quot;Instant Bank Payments via Link at checkout&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;413&quot; height=&quot;562&quot;&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;how-to-use-it&quot;&gt;How to use it&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#how-to-use-it&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ol&gt;
&lt;li&gt;During checkout, select your bank account from your saved Link payment methods.&lt;/li&gt;
&lt;li&gt;Confirm the payment.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;After your first Link authentication, your bank account is available for future purchases without re-entering details.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;who-is-eligible&quot;&gt;Who is eligible&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#who-is-eligible&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Instant Bank Payments via Link is available to US-based self-serve accounts across all Cloudflare products. Your existing cards remain available at checkout.&lt;/p&gt;
&lt;p&gt;Bank-based Link payments appear in your billing history with the payment method shown as &lt;code&gt;link&lt;/code&gt; and last four digits as &lt;code&gt;0000&lt;/code&gt;. For details, refer to the &lt;a href=&quot;https://developers.stormtrust.net/billing/payment-methods/instant-bank-payments-link/&quot;&gt;Instant Bank Payments via Link documentation&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Wed, 29 Apr 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Structured error responses for Cloudflare 5xx errors</title><link>https://developers.stormtrust.net/changelog/post/2026-04-27-structured-responses-for-5xx-errors/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-04-27-structured-responses-for-5xx-errors/</guid><description>&lt;p&gt;Cloudflare-generated 5xx error responses now return structured JSON and Markdown when agents request them, matching the format already available for 1xxx errors. Responses follow &lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc9457&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;RFC 9457 (Problem Details for HTTP APIs)&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; and include a &lt;code&gt;Retry-After&lt;/code&gt; HTTP header on retryable codes.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;5xx coverage.&lt;/strong&gt; Ten Cloudflare-generated error codes (500, 502, 504, 520-526) now serve structured responses. These are errors Cloudflare itself generates when it cannot reach or understand the origin server. Origin-generated 5xx responses that Cloudflare passes through are not affected.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Fault attribution.&lt;/strong&gt; The &lt;code&gt;error_category&lt;/code&gt; field tells agents where the fault lies:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;origin&lt;/code&gt; (502, 504, 520-524) — the origin server is responsible. Transient; retry with the backoff in &lt;code&gt;retry_after&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare&lt;/code&gt; (500) — Cloudflare&apos;s fault, not the website or the request. Short retry.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ssl&lt;/code&gt; (525, 526) — the origin&apos;s TLS configuration is broken. Do not retry.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Retry-After header.&lt;/strong&gt; Retryable codes (500, 502, 504, 520-524) include a &lt;code&gt;Retry-After&lt;/code&gt; HTTP header matching the &lt;code&gt;retry_after&lt;/code&gt; body field. Non-retryable codes (525, 526) do not include the header.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;negotiation-behavior&quot;&gt;Negotiation behavior&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#negotiation-behavior&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;table-scroll&quot; tabindex=&quot;0&quot; role=&quot;region&quot; aria-label=&quot;Table&quot;&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Request header sent&lt;/th&gt;
&lt;th&gt;Response format&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: application/json&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;JSON (&lt;code&gt;application/json&lt;/code&gt; content type)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: application/problem+json&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;JSON (&lt;code&gt;application/problem+json&lt;/code&gt; content type)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: application/json, text/markdown;q=0.9&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: text/markdown&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Markdown&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: text/markdown, application/json&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Markdown (equal &lt;code&gt;q&lt;/code&gt;, first-listed wins)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: */*&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;HTML (default)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;availability&quot;&gt;Availability&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#availability&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Available now for all zones on all plans.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;get-started&quot;&gt;Get started&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#get-started&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Get JSON response for error 522:&lt;/p&gt;
&lt;figure class=&quot;nb-code-figure&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;pre class=&quot;astro-code astro-code-themes github-light github-dark nb-shiki-c6xiwz&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt;curl&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -s&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; --compressed&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept: application/json&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -A&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;TestAgent/1.0&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept-Encoding: gzip, deflate&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;&amp;lt;YOUR_DOMAIN&amp;gt;/cdn-cgi/error/522&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt; |&lt;/span&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt; jq&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; .&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;p&gt;Check presence of the &lt;code&gt;Retry-After&lt;/code&gt; HTTP header associated with the JSON response for error 521:&lt;/p&gt;
&lt;figure class=&quot;nb-code-figure&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;pre class=&quot;astro-code astro-code-themes github-light github-dark nb-shiki-c6xiwz&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt;curl&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -s&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; --compressed&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -D&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; -&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -o&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; /dev/null&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept: application/json&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -A&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;TestAgent/1.0&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept-Encoding: gzip, deflate&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;&amp;lt;YOUR_DOMAIN&amp;gt;/cdn-cgi/error/521&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt; |&lt;/span&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt; grep&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -i&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; retry-after&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;p&gt;References:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc9457&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;RFC 9457 — Problem Details for HTTP APIs&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/support/troubleshooting/http-status-codes/cloudflare-5xx-errors/&quot;&gt;Cloudflare 5xx error documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Mon, 27 Apr 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Resource Tagging - Resource Tagging enters public beta</title><link>https://developers.stormtrust.net/changelog/post/2026-04-27-resource-tagging-public-beta/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-04-27-resource-tagging-public-beta/</guid><description>&lt;p&gt;Resource Tagging is now in public beta and rolling out to all Cloudflare accounts over the coming days. You can attach custom key-value metadata to your Cloudflare resources and query across your entire account to find what you need.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;whats-included&quot;&gt;What&apos;s included&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#whats-included&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Broad resource type support&lt;/strong&gt; — Tag zones, custom hostnames, Cloudflare Tunnels, Workers, D1 databases, R2 buckets, KV namespaces, Durable Object namespaces, Queues, Stream videos, Images, Access applications, Gateway rules, AI Gateways, and more. Refer to the &lt;a href=&quot;https://developers.stormtrust.net/resource-tagging/reference/resource-types/&quot;&gt;full list of supported resource types&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Powerful filtering&lt;/strong&gt; — Query tagged resources using AND/OR logic, negation, and key-only matching. Combine up to 20 filters per query to build precise resource views.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Account and zone-level endpoints&lt;/strong&gt; — Full CRUD operations across both scopes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Token-based authentication&lt;/strong&gt; — Tagging supports &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/api/get-started/account-owned-tokens/&quot;&gt;Account Owned Tokens&lt;/a&gt; that persist independently of individual users, so your automation keeps running through credential rotations and team changes.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Flexible role support&lt;/strong&gt; — Super Administrators, Workers Admins, and Tag Admins can all manage tags.&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;api-first-by-design&quot;&gt;API-first by design&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#api-first-by-design&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;The API is the primary interface for Resource Tagging and the recommended path for all workflows — scripting tag assignments, building CI/CD pipelines, or integrating with your infrastructure-as-code toolchain.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;dashboard-ui&quot;&gt;Dashboard UI&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#dashboard-ui&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;You can also view and manage tagged resources directly in the Cloudflare dashboard. Navigate to &lt;strong&gt;Manage Account&lt;/strong&gt; &amp;gt; &lt;strong&gt;Resource Tagging&lt;/strong&gt; to see all tagged resources across your account, filter by resource name or tag, and add or edit tags inline.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=2874,height=1234,format=webp/_astro/tagged-resources-dashboard.Dg5WvwiN.png&quot; alt=&quot;Tagged Resources dashboard&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;2874&quot; height=&quot;1234&quot;&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;whats-coming-next&quot;&gt;What&apos;s coming next&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#whats-coming-next&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;In future releases, expect support for additional resource types across the Cloudflare platform, tag-based access control policies for scoping user permissions to tagged resources, billing and usage attribution by tag for breaking down costs by team, project, or environment, and Terraform provider support for managing tags declaratively.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;current-limitations&quot;&gt;Current limitations&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#current-limitations&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;PUT&lt;/code&gt; replaces all tags on a resource (no partial update). Use the &lt;a href=&quot;https://developers.stormtrust.net/resource-tagging/how-to/manage-tags/#add-a-single-tag&quot;&gt;GET, merge, PUT workflow&lt;/a&gt; to modify individual tags safely.&lt;/li&gt;
&lt;li&gt;&lt;code&gt;DELETE&lt;/code&gt; removes all tags from a resource. To remove a single tag, PUT the remaining tags back.&lt;/li&gt;
&lt;li&gt;Querying tags for a resource that has never been tagged returns &lt;code&gt;500&lt;/code&gt; instead of &lt;code&gt;404&lt;/code&gt;. This is a known beta limitation.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To get started, refer to the &lt;a href=&quot;https://developers.stormtrust.net/resource-tagging/&quot;&gt;Resource Tagging documentation&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Mon, 27 Apr 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Resource Tagging</category></item><item><title>Cloudflare Fundamentals - Network Overview page in the dashboard</title><link>https://developers.stormtrust.net/changelog/post/2026-04-21-network-overview-page/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-04-21-network-overview-page/</guid><description>&lt;p&gt;A new &lt;strong&gt;Network Overview&lt;/strong&gt; page in the Cloudflare dashboard gives you a single starting point for network security and connectivity products.&lt;/p&gt;
&lt;p&gt;From the Network Overview page, you can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Connect resources with &lt;a href=&quot;https://developers.stormtrust.net/tunnel/&quot;&gt;Cloudflare Tunnel&lt;/a&gt;&lt;/strong&gt; - Create tunnels to connect your infrastructure to Cloudflare without exposing it to the public Internet.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Monitor traffic with Network Flow&lt;/strong&gt; - Get real-time visibility into traffic volume from your routers.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Configure Address Maps&lt;/strong&gt; - Map dedicated static IPs or BYOIP prefixes to specific hostnames.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Explore Magic Transit and Cloudflare WAN&lt;/strong&gt; - Set up DDoS protection for your networks and connectivity for your branch offices and data centers.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;To find it, go to &lt;a href=&quot;https://dash.cloudflare.com/?to=/:account/magic-networks/overview&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;&lt;strong&gt;Networking&lt;/strong&gt;&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; in the dashboard sidebar.&lt;/p&gt;
&lt;p&gt;If you already use &lt;a href=&quot;https://developers.stormtrust.net/magic-transit/&quot;&gt;Magic Transit&lt;/a&gt;, &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-wan/&quot;&gt;Cloudflare WAN&lt;/a&gt;, or other Cloudflare network services products, your existing experience is unchanged.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=1650,height=1362,format=webp/_astro/network-overview.4FLDtULW.png&quot; alt=&quot;Network Overview page in the Cloudflare dashboard&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1650&quot; height=&quot;1362&quot;&gt;</description><pubDate>Tue, 21 Apr 2026 12:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Workers - Introducing Billable Usage dashboard and Budget alerts</title><link>https://developers.stormtrust.net/changelog/post/2026-04-13-billable-usage-dashboard-and-budget-alerts/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-04-13-billable-usage-dashboard-and-budget-alerts/</guid><description>&lt;p&gt;Pay-as-you-go customers can now monitor usage-based costs and configure spend alerts through two new features: the Billable Usage dashboard and Budget alerts.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;billable-usage-dashboard&quot;&gt;Billable Usage dashboard&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#billable-usage-dashboard&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;The Billable Usage dashboard provides daily visibility into usage-based costs across your Cloudflare account. The data comes from the same system that generates your monthly invoice, so the figures match your bill.&lt;/p&gt;
&lt;p&gt;The dashboard displays:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;A bar chart showing daily usage charges for your billing period&lt;/li&gt;
&lt;li&gt;A sortable table breaking down usage by product, including total usage, billable usage, and cumulative costs&lt;/li&gt;
&lt;li&gt;Ability to view previous billing periods&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Usage data aligns to your billing cycle, not the calendar month. The total usage cost shown at the end of a completed billing period matches the usage overage charges on your corresponding invoice.&lt;/p&gt;
&lt;p&gt;To access the dashboard, go to &lt;strong&gt;Manage Account&lt;/strong&gt; &amp;gt; &lt;strong&gt;Billing&lt;/strong&gt; &amp;gt; &lt;strong&gt;Billable Usage&lt;/strong&gt;.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=1033,height=757,format=webp/_astro/billable-usage-dashboard.CQvMdtrp.png&quot; alt=&quot;Screenshot of the Billable Usage dashboard in the Cloudflare dashboard&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1033&quot; height=&quot;757&quot;&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;budget-alerts&quot;&gt;Budget alerts&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#budget-alerts&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Budget alerts allow you to set dollar-based thresholds for your account-level usage spend. You receive an email notification when your projected monthly spend reaches your configured threshold, giving you proactive visibility into your bill before month-end.&lt;/p&gt;
&lt;p&gt;To configure a budget alert:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Go to &lt;strong&gt;Manage Account&lt;/strong&gt; &amp;gt; &lt;strong&gt;Billing&lt;/strong&gt; &amp;gt; &lt;strong&gt;Billable Usage&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Set Budget Alert&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Enter a budget threshold amount greater than $0.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Create&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Alternatively, configure alerts via &lt;strong&gt;Notifications&lt;/strong&gt; &amp;gt; &lt;strong&gt;Add&lt;/strong&gt; &amp;gt; &lt;strong&gt;Budget Alert&lt;/strong&gt;.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=315,height=374,format=webp/_astro/budget-alert-modal.BjIzGOLV.png&quot; alt=&quot;Create Budget Alert modal in the Cloudflare dashboard&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;315&quot; height=&quot;374&quot;&gt;
&lt;p&gt;You can create multiple budget alerts at different dollar amounts. The notifications system automatically deduplicates alerts if multiple thresholds trigger at the same time. Budget alerts are calculated daily based on your usage trends and fire once per billing cycle when your projected spend first crosses your threshold.&lt;/p&gt;
&lt;p&gt;Both features are available to Pay-as-you-go accounts with usage-based products (Workers, R2, Images, etc.). Enterprise contract accounts are not supported.&lt;/p&gt;
&lt;p&gt;For more information, refer to the &lt;a href=&quot;https://developers.stormtrust.net/billing/understand/usage-based-billing/&quot;&gt;Usage based billing documentation&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Tue, 21 Apr 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Workers</category></item><item><title>Cloudflare Fundamentals - Improved OAuth experience for consent and management</title><link>https://developers.stormtrust.net/changelog/post/2026-04-14-oauth-consent-and-revoke/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-04-14-oauth-consent-and-revoke/</guid><description>&lt;p&gt;OAuth allows third-party applications to access your Cloudflare account on your behalf — like when Wrangler deploys Workers or when monitoring tools read your analytics. You now have &lt;strong&gt;granular control&lt;/strong&gt; over which accounts these applications can access, plus the ability to revoke access anytime.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;whats-new&quot;&gt;What&apos;s new&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#whats-new&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;choose-which-accounts-to-authorize&quot;&gt;Choose which accounts to authorize&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#choose-which-accounts-to-authorize&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;When authorizing an OAuth application, you can now &lt;strong&gt;select specific accounts&lt;/strong&gt; instead of granting access to all your accounts:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Account-by-account selection&lt;/strong&gt; — Choose exactly which accounts the application can access&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&quot;All accounts&quot; option&lt;/strong&gt; — Still available for trusted tools like Wrangler
This gives you precise control who can access your data.&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;clear-consent-screens&quot;&gt;Clear consent screens&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#clear-consent-screens&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;The OAuth consent screen now shows:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;What the application can access&lt;/strong&gt; — Explicit list of permissions being requested&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Who created the application&lt;/strong&gt; — Application owner and contact information&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Which accounts you&apos;re authorizing&lt;/strong&gt; — Checkboxes for account selection&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;revoke-access-anytime&quot;&gt;Revoke access anytime&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#revoke-access-anytime&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Manage authorized OAuth applications from your profile:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;See all connected apps&lt;/strong&gt; — View every OAuth application with access to your accounts&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Review permissions and scope&lt;/strong&gt; — Check what each application can do and which accounts it can access&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Revoke instantly&lt;/strong&gt; — Remove access with one click when you no longer need it
To manage your OAuth applications, navigate to &lt;strong&gt;Profile&lt;/strong&gt; &amp;gt; &lt;strong&gt;Access Management&lt;/strong&gt; &amp;gt; &lt;strong&gt;&lt;a href=&quot;https://dash.cloudflare.com/profile/access-management/authorization&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Connected Applications&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/strong&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;why-this-matters&quot;&gt;Why this matters&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#why-this-matters&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;These updates give you:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Granular control&lt;/strong&gt; — Authorize apps per-account instead of all-or-nothing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Transparency&lt;/strong&gt; — Know exactly what you&apos;re authorizing before you consent&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Security&lt;/strong&gt; — Limit blast radius by restricting access to only necessary accounts&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Easy cleanup&lt;/strong&gt; — Revoke access when applications are no longer needed&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;learn-more&quot;&gt;Learn more&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#learn-more&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Read more about these improvements in our blog post: &lt;a href=&quot;https://blog.cloudflare.com/improved-developer-security/#improving-the-oauth-consent-experience&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Improving the OAuth consent experience&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Tue, 14 Apr 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - API tokens now detectable by secret scanning tools</title><link>https://developers.stormtrust.net/changelog/post/2026-04-10-secret-scanning-support/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-04-10-secret-scanning-support/</guid><description>&lt;p&gt;Cloudflare API tokens now include &lt;strong&gt;identifiable patterns&lt;/strong&gt; that enable secret scanning tools to automatically detect them when leaked in code repositories, configuration files, or other public locations.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;what-changed&quot;&gt;What changed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#what-changed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;API tokens generated by Cloudflare now follow a standardized format that secret scanning tools can recognize. When a Cloudflare token is accidentally committed to GitHub, GitLab, or another platform with secret scanning enabled, the tool will flag it and alert you.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;why-this-matters&quot;&gt;Why this matters&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#why-this-matters&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Leaked credentials are a common security risk. By making Cloudflare tokens detectable by scanning tools, you can:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Detect leaks faster&lt;/strong&gt; — Get notified immediately when a token is exposed.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduce risk window&lt;/strong&gt; — Exposed tokens are deactivated immediately, before they can be exploited.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Automate security&lt;/strong&gt; — Leverage existing secret scanning infrastructure without additional configuration.&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;what-happens-when-a-leak-is-detected&quot;&gt;What happens when a leak is detected&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#what-happens-when-a-leak-is-detected&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;When a third-party secret scanning tool detects a leaked Cloudflare API token:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Cloudflare immediately deactivates the token&lt;/strong&gt; to prevent unauthorized access.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The token creator receives an email notification&lt;/strong&gt; alerting them to the leak.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;The token is marked as &quot;Exposed&quot;&lt;/strong&gt; in the Cloudflare dashboard.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;You can then roll or delete the token&lt;/strong&gt; from the token management pages.&lt;/li&gt;
&lt;/ol&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;supported-platforms&quot;&gt;Supported platforms&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#supported-platforms&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GitHub Secret Scanning&lt;/strong&gt; — Automatically enabled for public repositories&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For more information on token formats and secret scanning, refer to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/api/get-started/token-formats/&quot;&gt;API token formats&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Fri, 10 Apr 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Cloudflare One, Gateway, Organizations - Organizations is now in public beta for enterprises</title><link>https://developers.stormtrust.net/changelog/post/2026-04-06-organizations-public-beta/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-04-06-organizations-public-beta/</guid><description>&lt;p&gt;We&apos;re announcing the public beta of &lt;strong&gt;Organizations&lt;/strong&gt; for enterprise customers, a new top-level Cloudflare container that lets Cloudflare customers manage multiple accounts, members, analytics, and shared policies from one centralized location.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What&apos;s New&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Organizations [BETA]&lt;/strong&gt;: &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/organizations/&quot;&gt;Organizations&lt;/a&gt; are a new top-level container for centrally managing multiple accounts. Each Organization supports up to 500 accounts and 5000 zones, giving larger teams a single place to administer resources at scale.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Self-serve onboarding&lt;/strong&gt;: Enterprise customers can &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/organizations/setup/&quot;&gt;create an Organization&lt;/a&gt; in the dashboard and assign accounts where they are already Super Administrators.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Centralized Account Management&lt;/strong&gt;: At launch, every Organization member has the Organization Super Admin role. Organization Super Admins can invite other users and manage any child account under the Organization implicitly.
&lt;strong&gt;Shared policies&lt;/strong&gt;: Share &lt;a href=&quot;https://developers.stormtrust.net/waf/custom-rules/&quot;&gt;WAF&lt;/a&gt; or &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-one/traffic-policies/tiered-policies/organizations/&quot;&gt;Gateway&lt;/a&gt; policies across multiple accounts within your Organization to simplify centralized policy management.
&lt;strong&gt;Implicit access&lt;/strong&gt;: Members of an Organization automatically receive Super Administrator permissions across child accounts, removing the need for explicit membership on each account. Additional Org-level roles will be available over the course of the year.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Unified analytics&lt;/strong&gt;: View, filter, and download aggregate HTTP analytics across all Organization child accounts from a single dashboard for centralized visibility into traffic patterns and security events.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Terraform provider support&lt;/strong&gt;: Manage Organizations with infrastructure as code from day one. Provision organizations, assign accounts, and configure settings programmatically with the &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/resources/organization&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Cloudflare Terraform provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Shared policies&lt;/strong&gt;: Share &lt;a href=&quot;https://developers.stormtrust.net/waf/custom-rules/&quot;&gt;WAF&lt;/a&gt; or &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-one/traffic-policies/&quot;&gt;Gateway&lt;/a&gt; policies across multiple accounts within your Organization to simplify centralized policy management.&lt;/p&gt;
&lt;aside role=&quot;note&quot; aria-label=&quot;Note&quot; class=&quot;aside-card flex items-start gap-3 rounded-lg px-4 py-3 my-4&quot; style=&quot;--_c: var(--nb-info); --_t: var(--nb-info-muted);&quot; data-astro-cid-znle5jil&gt;&lt;span class=&quot;flex h-[1.375em] shrink-0 items-center&quot; aria-hidden=&quot;true&quot; data-astro-cid-znle5jil&gt;&lt;svg width=&quot;1em&quot; height=&quot;1em&quot; viewBox=&quot;0 0 256 256&quot; class=&quot;h-[1em] w-[1em]&quot; data-astro-cid-znle5jil=&quot;true&quot; data-icon=&quot;ph:info&quot;&gt;&lt;path fill=&quot;currentColor&quot; d=&quot;M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m0 192a88 88 0 1 1 88-88a88.1 88.1 0 0 1-88 88m16-40a8 8 0 0 1-8 8a16 16 0 0 1-16-16v-40a8 8 0 0 1 0-16a16 16 0 0 1 16 16v40a8 8 0 0 1 8 8m-32-92a12 12 0 1 1 12 12a12 12 0 0 1-12-12&quot;/&gt;&lt;/svg&gt;&lt;/span&gt;&lt;div class=&quot;flex min-w-0 flex-1 flex-col gap-0.5&quot; data-astro-cid-znle5jil&gt;&lt;p class=&quot;m-0 text-base leading-snug font-semibold&quot; data-astro-cid-znle5jil&gt;Note&lt;/p&gt;&lt;div class=&quot;aside-card-body text-sm leading-normal&quot; data-astro-cid-znle5jil&gt;&lt;p&gt;Organizations is in Public Beta. You must have an Enterprise account to create an organization, but once created, you can add accounts of any plan type where you are a Super Administrator.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;
&lt;p&gt;For more info:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/organizations/&quot;&gt;Get started with Organizations&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/organizations/setup/&quot;&gt;Set up your Organization&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/organizations/limitations/&quot;&gt;Review limitations&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Mon, 06 Apr 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Cloudflare One</category><category>Gateway</category><category>Organizations</category></item><item><title>Cloudflare Fundamentals - Service Key authentication deprecated</title><link>https://developers.stormtrust.net/changelog/post/2026-03-19-service-key-authentication-deprecated/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-03-19-service-key-authentication-deprecated/</guid><description>&lt;p&gt;Service Key authentication for the Cloudflare API is deprecated. Service Keys will stop working on September 30, 2026.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/api/get-started/create-token/&quot;&gt;API Tokens&lt;/a&gt; replace Service Keys with fine-grained permissions, expiration, and revocation.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;what-you-need-to-do&quot;&gt;What you need to do&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#what-you-need-to-do&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Replace any use of the &lt;code&gt;X-Auth-User-Service-Key&lt;/code&gt; header with an &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/api/get-started/create-token/&quot;&gt;API Token&lt;/a&gt; scoped to the permissions your integration requires.&lt;/p&gt;
&lt;p&gt;If you use &lt;code&gt;cloudflared&lt;/code&gt;, update to a version from November 2022 or later. These versions already use API Tokens.&lt;/p&gt;
&lt;p&gt;If you use &lt;a href=&quot;https://github.com/cloudflare/origin-ca-issuer&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;origin-ca-issuer&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;, update to a version that supports API Token authentication.&lt;/p&gt;
&lt;p&gt;For more information, refer to &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/api/reference/deprecations/&quot;&gt;API deprecations&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Thu, 19 Mar 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - SCIM provisioning for Authentik is now Generally Available</title><link>https://developers.stormtrust.net/changelog/post/2026-03-17-scim-authentik-support/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-03-17-scim-authentik-support/</guid><description>&lt;p&gt;Cloudflare dashboard SCIM provisioning now supports &lt;a href=&quot;https://goauthentik.io/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Authentik&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; as an identity provider, joining Okta and Microsoft Entra ID as explicitly supported providers.&lt;/p&gt;
&lt;p&gt;Customers can now sync users and group information from Authentik to Cloudflare, apply Permission Policies to those groups, and manage the lifecycle of users &amp;amp; groups directly from your Authentik Identity Provider.&lt;/p&gt;
&lt;aside role=&quot;note&quot; aria-label=&quot;Note&quot; class=&quot;aside-card flex items-start gap-3 rounded-lg px-4 py-3 my-4&quot; style=&quot;--_c: var(--nb-info); --_t: var(--nb-info-muted);&quot; data-astro-cid-znle5jil&gt;&lt;span class=&quot;flex h-[1.375em] shrink-0 items-center&quot; aria-hidden=&quot;true&quot; data-astro-cid-znle5jil&gt;&lt;svg width=&quot;1em&quot; height=&quot;1em&quot; viewBox=&quot;0 0 256 256&quot; class=&quot;h-[1em] w-[1em]&quot; data-astro-cid-znle5jil=&quot;true&quot; data-icon=&quot;ph:info&quot;&gt;&lt;path fill=&quot;currentColor&quot; d=&quot;M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m0 192a88 88 0 1 1 88-88a88.1 88.1 0 0 1-88 88m16-40a8 8 0 0 1-8 8a16 16 0 0 1-16-16v-40a8 8 0 0 1 0-16a16 16 0 0 1 16 16v40a8 8 0 0 1 8 8m-32-92a12 12 0 1 1 12 12a12 12 0 0 1-12-12&quot;/&gt;&lt;/svg&gt;&lt;/span&gt;&lt;div class=&quot;flex min-w-0 flex-1 flex-col gap-0.5&quot; data-astro-cid-znle5jil&gt;&lt;p class=&quot;m-0 text-base leading-snug font-semibold&quot; data-astro-cid-znle5jil&gt;Note&lt;/p&gt;&lt;div class=&quot;aside-card-body text-sm leading-normal&quot; data-astro-cid-znle5jil&gt;&lt;p&gt;SCIM provisioning for the Cloudflare dashboard is available to Enterprise customers. You must be a Super Administrator to complete the initial setup.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;
&lt;p&gt;For more information:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/account/account-security/scim-setup/&quot;&gt;SCIM provisioning overview&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/account/account-security/scim-setup/authentik/&quot;&gt;Provision with Authentik&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Wed, 18 Mar 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - SCIM audit logging Support</title><link>https://developers.stormtrust.net/changelog/post/2026-03-18-scim-audit-logging/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-03-18-scim-audit-logging/</guid><description>&lt;p&gt;Cloudflare dashboard SCIM provisioning operations are now captured in &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/account/account-security/audit-logs/&quot;&gt;Audit Logs v2&lt;/a&gt;, giving you visibility into user and group changes made by your identity provider.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=2556,height=1332,format=webp/_astro/2026-03-18-scim-audit-logging.DPKMiE8X.png&quot; alt=&quot;SCIM audit logging&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;2556&quot; height=&quot;1332&quot;&gt;
&lt;p&gt;&lt;strong&gt;Logged actions:&lt;/strong&gt;&lt;/p&gt;
&lt;div class=&quot;table-scroll&quot; tabindex=&quot;0&quot; role=&quot;region&quot; aria-label=&quot;Table&quot;&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Action Type&lt;/th&gt;
&lt;th&gt;Description&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Create SCIM User&lt;/td&gt;
&lt;td&gt;User provisioned from IdP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Replace SCIM User&lt;/td&gt;
&lt;td&gt;User fully replaced (PUT)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Update SCIM User&lt;/td&gt;
&lt;td&gt;User attributes modified (PATCH)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Delete SCIM User&lt;/td&gt;
&lt;td&gt;Member deprovisioned&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Create SCIM Group&lt;/td&gt;
&lt;td&gt;Group provisioned from IdP&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Update SCIM Group&lt;/td&gt;
&lt;td&gt;Group membership or attributes modified&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Delete SCIM Group&lt;/td&gt;
&lt;td&gt;Group deprovisioned&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;For more details, refer to the &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/account/account-security/audit-logs/&quot;&gt;Audit Logs v2 documentation&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Wed, 18 Mar 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Retry-After HTTP header for retryable 1xxx errors</title><link>https://developers.stormtrust.net/changelog/post/2026-03-12-retry-after-header-for-1xxx-errors/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-03-12-retry-after-header-for-1xxx-errors/</guid><description>&lt;p&gt;Cloudflare-generated 1xxx error responses now include a standard &lt;code&gt;Retry-After&lt;/code&gt; HTTP header when the error is retryable. Agents and HTTP clients can read the recommended wait time from response headers alone — no body parsing required.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Seven retryable error codes now emit &lt;code&gt;Retry-After&lt;/code&gt;:&lt;/p&gt;
&lt;div class=&quot;table-scroll&quot; tabindex=&quot;0&quot; role=&quot;region&quot; aria-label=&quot;Table&quot;&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Error code&lt;/th&gt;
&lt;th&gt;Retry-After (seconds)&lt;/th&gt;
&lt;th&gt;Error name&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;1004&lt;/td&gt;
&lt;td&gt;120&lt;/td&gt;
&lt;td&gt;DNS resolution error&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1005&lt;/td&gt;
&lt;td&gt;120&lt;/td&gt;
&lt;td&gt;Banned zone&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1015&lt;/td&gt;
&lt;td&gt;30&lt;/td&gt;
&lt;td&gt;Rate limited&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1033&lt;/td&gt;
&lt;td&gt;120&lt;/td&gt;
&lt;td&gt;Argo Tunnel error&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1038&lt;/td&gt;
&lt;td&gt;60&lt;/td&gt;
&lt;td&gt;HTTP headers limit exceeded&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1200&lt;/td&gt;
&lt;td&gt;60&lt;/td&gt;
&lt;td&gt;Cache connection limit&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;1205&lt;/td&gt;
&lt;td&gt;5&lt;/td&gt;
&lt;td&gt;Too many redirects&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;p&gt;The header value matches the existing &lt;code&gt;retry_after&lt;/code&gt; body field in JSON and Markdown responses.&lt;/p&gt;
&lt;p&gt;If a WAF rate limiting rule has already set a dynamic &lt;code&gt;Retry-After&lt;/code&gt; value on the response, that value takes precedence.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;availability&quot;&gt;Availability&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#availability&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Available for all zones on all plans.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;verify&quot;&gt;Verify&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#verify&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Check for the header on any retryable error:&lt;/p&gt;
&lt;figure class=&quot;nb-code-figure&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;pre class=&quot;astro-code astro-code-themes github-light github-dark nb-shiki-c6xiwz&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt;curl&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -s&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; --compressed&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -D&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; -&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -o&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; /dev/null&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept: application/json&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -A&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;TestAgent/1.0&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept-Encoding: gzip, deflate&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;&amp;lt;YOUR_DOMAIN&amp;gt;/cdn-cgi/error/1015&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt; |&lt;/span&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt; grep&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -i&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; retry-after&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;p&gt;References:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc9110#section-10.2.3&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;RFC 9110 section 10.2.3 - Retry-After&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/support/troubleshooting/http-status-codes/cloudflare-1xxx-errors/&quot;&gt;Cloudflare 1xxx error documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Thu, 12 Mar 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - JSON responses and RFC 9457 support for Cloudflare 1xxx errors</title><link>https://developers.stormtrust.net/changelog/post/2026-03-11-json-rfc9457-responses-for-1xxx-errors/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-03-11-json-rfc9457-responses-for-1xxx-errors/</guid><description>&lt;p&gt;Cloudflare-generated 1xxx errors now return structured JSON when clients send &lt;code&gt;Accept: application/json&lt;/code&gt; or &lt;code&gt;Accept: application/problem+json&lt;/code&gt;. JSON responses follow &lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc9457&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;RFC 9457 (Problem Details for HTTP APIs)&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;, so any HTTP client that understands Problem Details can parse the base members without Cloudflare-specific code.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;breaking-change&quot;&gt;Breaking change&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#breaking-change&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;The Markdown frontmatter field &lt;code&gt;http_status&lt;/code&gt; has been renamed to &lt;code&gt;status&lt;/code&gt;. Agents consuming Markdown frontmatter should update parsers accordingly.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;JSON format.&lt;/strong&gt; Clients sending &lt;code&gt;Accept: application/json&lt;/code&gt; or &lt;code&gt;Accept: application/problem+json&lt;/code&gt; now receive a structured JSON object with the same operational fields as Markdown frontmatter, plus RFC 9457 standard members.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;RFC 9457 standard members (JSON only):&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt; — URI pointing to Cloudflare documentation for the specific error code&lt;/li&gt;
&lt;li&gt;&lt;code&gt;status&lt;/code&gt; — HTTP status code (matching the response status)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;title&lt;/code&gt; — short, human-readable summary&lt;/li&gt;
&lt;li&gt;&lt;code&gt;detail&lt;/code&gt; — human-readable explanation specific to this occurrence&lt;/li&gt;
&lt;li&gt;&lt;code&gt;instance&lt;/code&gt; — Ray ID identifying this specific error occurrence&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Field renames:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;http_status&lt;/code&gt; -&amp;gt; &lt;code&gt;status&lt;/code&gt; (JSON and Markdown)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;what_happened&lt;/code&gt; -&amp;gt; &lt;code&gt;detail&lt;/code&gt; (JSON only — Markdown prose sections are unchanged)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Content-Type mirroring.&lt;/strong&gt; Clients sending &lt;code&gt;Accept: application/problem+json&lt;/code&gt; receive &lt;code&gt;Content-Type: application/problem+json; charset=utf-8&lt;/code&gt; back; &lt;code&gt;Accept: application/json&lt;/code&gt; receives &lt;code&gt;application/json; charset=utf-8&lt;/code&gt;. Same body in both cases.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;negotiation-behavior&quot;&gt;Negotiation behavior&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#negotiation-behavior&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div class=&quot;table-scroll&quot; tabindex=&quot;0&quot; role=&quot;region&quot; aria-label=&quot;Table&quot;&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Request header sent&lt;/th&gt;
&lt;th&gt;Response format&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: application/json&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;JSON (&lt;code&gt;application/json&lt;/code&gt; content type)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: application/problem+json&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;JSON (&lt;code&gt;application/problem+json&lt;/code&gt; content type)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: application/json, text/markdown;q=0.9&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;JSON&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: text/markdown&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Markdown&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: text/markdown, application/json&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Markdown (equal &lt;code&gt;q&lt;/code&gt;, first-listed wins)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;Accept: */*&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;HTML (default)&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;availability&quot;&gt;Availability&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#availability&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Available now for Cloudflare-generated 1xxx errors.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;get-started&quot;&gt;Get started&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#get-started&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;figure class=&quot;nb-code-figure&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;pre class=&quot;astro-code astro-code-themes github-light github-dark nb-shiki-c6xiwz&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt;curl&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -s&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; --compressed&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept: application/json&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -A&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;TestAgent/1.0&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept-Encoding: gzip, deflate&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;&amp;lt;YOUR_DOMAIN&amp;gt;/cdn-cgi/error/1015&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt; |&lt;/span&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt; jq&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; .&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;figure class=&quot;nb-code-figure&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;pre class=&quot;astro-code astro-code-themes github-light github-dark nb-shiki-c6xiwz&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt;curl&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -s&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; --compressed&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept: application/problem+json&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -A&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;TestAgent/1.0&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept-Encoding: gzip, deflate&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;&amp;lt;YOUR_DOMAIN&amp;gt;/cdn-cgi/error/1015&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt; |&lt;/span&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt; jq&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; .&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;p&gt;References:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc9457&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;RFC 9457 — Problem Details for HTTP APIs&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/support/troubleshooting/http-status-codes/cloudflare-1xxx-errors/&quot;&gt;Cloudflare 1xxx error documentation&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Wed, 11 Mar 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Markdown responses for Cloudflare 1xxx errors</title><link>https://developers.stormtrust.net/changelog/post/2026-02-26-markdown-responses-for-1xxx-errors/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-02-26-markdown-responses-for-1xxx-errors/</guid><description>&lt;p&gt;Cloudflare now returns structured Markdown responses for Cloudflare-generated 1xxx errors when clients send &lt;code&gt;Accept: text/markdown&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Each response includes YAML frontmatter plus guidance sections (&lt;code&gt;What happened&lt;/code&gt; / &lt;code&gt;What you should do&lt;/code&gt;) so agents can make deterministic retry and escalation decisions without parsing HTML.&lt;/p&gt;
&lt;p&gt;In measured 1,015 comparisons, Markdown reduced payload size and token footprint by over 98% versus HTML.&lt;/p&gt;
&lt;p&gt;Included frontmatter fields:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;error_code&lt;/code&gt;, &lt;code&gt;error_name&lt;/code&gt;, &lt;code&gt;error_category&lt;/code&gt;, &lt;code&gt;http_status&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ray_id&lt;/code&gt;, &lt;code&gt;timestamp&lt;/code&gt;, &lt;code&gt;zone&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_error&lt;/code&gt;, &lt;code&gt;retryable&lt;/code&gt;, &lt;code&gt;retry_after&lt;/code&gt; (when applicable), &lt;code&gt;owner_action_required&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Default behavior is unchanged: clients that do not explicitly request Markdown continue to receive HTML error pages.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;negotiation-behavior&quot;&gt;Negotiation behavior&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#negotiation-behavior&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Cloudflare uses standard HTTP content negotiation on the &lt;code&gt;Accept&lt;/code&gt; header.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Accept: text/markdown&lt;/code&gt; -&amp;gt; Markdown&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Accept: text/markdown, text/html;q=0.9&lt;/code&gt; -&amp;gt; Markdown&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Accept: text/*&lt;/code&gt; -&amp;gt; Markdown&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Accept: */*&lt;/code&gt; -&amp;gt; HTML (default browser behavior)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;When multiple values are present, Cloudflare selects the highest-priority supported media type using &lt;code&gt;q&lt;/code&gt; values. If Markdown is not explicitly preferred, HTML is returned.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;availability&quot;&gt;Availability&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#availability&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Available now for Cloudflare-generated 1xxx errors.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;get-started&quot;&gt;Get started&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#get-started&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;figure class=&quot;nb-code-figure&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;pre class=&quot;astro-code astro-code-themes github-light github-dark nb-shiki-c6xiwz&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt;curl&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept: text/markdown&quot;&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; https://&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt;your-domai&lt;/span&gt;&lt;span class=&quot;nb-shiki-140thh&quot;&gt;n&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt;/cdn-cgi/error/1015&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;p&gt;Reference: &lt;a href=&quot;https://developers.stormtrust.net/support/troubleshooting/http-status-codes/cloudflare-1xxx-errors/&quot;&gt;Cloudflare 1xxx error documentation&lt;/a&gt;&lt;/p&gt;</description><pubDate>Thu, 26 Feb 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Content encoding support for Markdown for Agents and other improvements</title><link>https://developers.stormtrust.net/changelog/post/2026-02-16-markdown-for-agents-improvements/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-02-16-markdown-for-agents-improvements/</guid><description>&lt;p&gt;When AI systems request pages from any website that uses Cloudflare and has &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/reference/markdown-for-agents/&quot;&gt;Markdown for Agents&lt;/a&gt; enabled, they can express the preference for &lt;code&gt;text/markdown&lt;/code&gt; in the request: our network will automatically and efficiently convert the HTML to markdown, when possible, on the fly.&lt;/p&gt;
&lt;p&gt;This release adds the following improvements:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;The origin response limit was raised from 1 MB to 2 MB (2,097,152 bytes).&lt;/li&gt;
&lt;li&gt;We no longer require the origin to send the &lt;code&gt;content-length&lt;/code&gt; header.&lt;/li&gt;
&lt;li&gt;We now support content encoded responses from the origin.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you haven’t enabled automatic Markdown conversion yet, visit the &lt;a href=&quot;https://dash.cloudflare.com/?to=/:account/:zone/ai&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;AI Crawl Control&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; section of the Cloudflare dashboard and enable &lt;strong&gt;Markdown for Agents&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Refer to our &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/reference/markdown-for-agents/&quot;&gt;developer documentation&lt;/a&gt; for more details.&lt;/p&gt;</description><pubDate>Mon, 16 Feb 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Access - Fine-grained permissions for Access policies and service tokens</title><link>https://developers.stormtrust.net/changelog/post/2026-02-13-access-policy-service-token-permissions/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-02-13-access-policy-service-token-permissions/</guid><description>&lt;p&gt;Fine-grained permissions for &lt;strong&gt;Access policies&lt;/strong&gt; and &lt;strong&gt;Access service tokens&lt;/strong&gt; are available. These new resource-scoped roles expand the existing RBAC model, enabling administrators to grant permissions scoped to individual resources.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;new-roles&quot;&gt;New roles&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#new-roles&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Cloudflare Access policy admin&lt;/strong&gt;: Can edit a specific &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-one/access-controls/policies/&quot;&gt;Access policy&lt;/a&gt; in an account.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloudflare Access service token admin&lt;/strong&gt;: Can edit a specific &lt;a href=&quot;https://developers.stormtrust.net/cloudflare-one/access-controls/service-credentials/service-tokens/&quot;&gt;Access service token&lt;/a&gt; in an account.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;These roles complement the existing resource-scoped roles for Access applications, identity providers, and infrastructure targets.&lt;/p&gt;
&lt;p&gt;For more information:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/roles/#resource-scoped-roles&quot;&gt;Resource-scoped roles&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/scope/&quot;&gt;Role scopes&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;aside role=&quot;note&quot; aria-label=&quot;Note&quot; class=&quot;aside-card flex items-start gap-3 rounded-lg px-4 py-3 my-4&quot; style=&quot;--_c: var(--nb-info); --_t: var(--nb-info-muted);&quot; data-astro-cid-znle5jil&gt;&lt;span class=&quot;flex h-[1.375em] shrink-0 items-center&quot; aria-hidden=&quot;true&quot; data-astro-cid-znle5jil&gt;&lt;svg width=&quot;1em&quot; height=&quot;1em&quot; viewBox=&quot;0 0 256 256&quot; class=&quot;h-[1em] w-[1em]&quot; data-astro-cid-znle5jil=&quot;true&quot; data-icon=&quot;ph:info&quot;&gt;&lt;path fill=&quot;currentColor&quot; d=&quot;M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m0 192a88 88 0 1 1 88-88a88.1 88.1 0 0 1-88 88m16-40a8 8 0 0 1-8 8a16 16 0 0 1-16-16v-40a8 8 0 0 1 0-16a16 16 0 0 1 16 16v40a8 8 0 0 1 8 8m-32-92a12 12 0 1 1 12 12a12 12 0 0 1-12-12&quot;/&gt;&lt;/svg&gt;&lt;/span&gt;&lt;div class=&quot;flex min-w-0 flex-1 flex-col gap-0.5&quot; data-astro-cid-znle5jil&gt;&lt;p class=&quot;m-0 text-base leading-snug font-semibold&quot; data-astro-cid-znle5jil&gt;Note&lt;/p&gt;&lt;div class=&quot;aside-card-body text-sm leading-normal&quot; data-astro-cid-znle5jil&gt;&lt;p&gt;Resource-scoped roles is currently in beta.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;</description><pubDate>Fri, 13 Feb 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Access</category></item><item><title>Cloudflare Fundamentals, SDK - Cloudflare Python SDK v5.0.0-beta.1 now available</title><link>https://developers.stormtrust.net/changelog/post/2026-02-13-cloudflare-python-v5.0.0-beta.1/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-02-13-cloudflare-python-v5.0.0-beta.1/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt; Please note that v5.0.0-beta.1 is in Beta and we are still testing it for stability.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Full Changelog: &lt;a href=&quot;https://github.com/cloudflare/cloudflare-python/compare/v4.3.1...v5.0.0-beta.1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;v4.3.1...v5.0.0-beta.1&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In this release, you&apos;ll see a large number of breaking changes. This is primarily due to a change in OpenAPI definitions,
which our libraries are based off of, and codegen updates that we rely on to read those OpenAPI definitions and produce
our SDK libraries. As the codegen is always evolving and improving, so are our code bases.&lt;/p&gt;
&lt;p&gt;There may be changes that are not captured in this changelog. Feel free to open an issue to report any inaccuracies, and we will make sure it gets into the changelog before the v5.0.0 release.&lt;/p&gt;
&lt;p&gt;Most of the breaking changes below are caused by improvements to the accuracy of the base OpenAPI schemas, which
sometimes translates to breaking changes in downstream clients that depend on those schemas.&lt;/p&gt;
&lt;p&gt;Please ensure you read through the list of changes below and the migration guide before moving to this version - this
will help you understand any down or upstream issues it may cause to your environments.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;breaking-changes&quot;&gt;Breaking Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#breaking-changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;The following resources have breaking changes. See the &lt;a href=&quot;https://github.com/cloudflare/cloudflare-python/blob/main/docs/v5-migration-guide.md&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;v5 Migration Guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; for detailed migration instructions.&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;abusereports&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;acm.totaltls&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;apigateway.configurations&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudforceone.threatevents&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;d1.database&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;intel.indicatorfeeds&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;logpush.edge&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;origintlsclientauth.hostnames&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;queues.consumers&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;radar.bgp&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;rulesets.rules&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;schemavalidation.schemas&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;snippets&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;zerotrust.dlp&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;zerotrust.networks&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#features&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;new-api-resources&quot;&gt;New API Resources&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#new-api-resources&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;abusereports&lt;/code&gt; - Abuse report management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;abusereports.mitigations&lt;/code&gt; - Abuse report mitigation actions&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ai.tomarkdown&lt;/code&gt; - AI-powered markdown conversion&lt;/li&gt;
&lt;li&gt;&lt;code&gt;aigateway.dynamicrouting&lt;/code&gt; - AI Gateway dynamic routing configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;aigateway.providerconfigs&lt;/code&gt; - AI Gateway provider configurations&lt;/li&gt;
&lt;li&gt;&lt;code&gt;aisearch&lt;/code&gt; - AI-powered search functionality&lt;/li&gt;
&lt;li&gt;&lt;code&gt;aisearch.instances&lt;/code&gt; - AI Search instance management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;aisearch.tokens&lt;/code&gt; - AI Search authentication tokens&lt;/li&gt;
&lt;li&gt;&lt;code&gt;alerting.silences&lt;/code&gt; - Alert silence management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;brandprotection.logomatches&lt;/code&gt; - Brand protection logo match detection&lt;/li&gt;
&lt;li&gt;&lt;code&gt;brandprotection.logos&lt;/code&gt; - Brand protection logo management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;brandprotection.matches&lt;/code&gt; - Brand protection match results&lt;/li&gt;
&lt;li&gt;&lt;code&gt;brandprotection.queries&lt;/code&gt; - Brand protection query management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudforceone.binarystorage&lt;/code&gt; - CloudForce One binary storage&lt;/li&gt;
&lt;li&gt;&lt;code&gt;connectivity.directory&lt;/code&gt; - Connectivity directory services&lt;/li&gt;
&lt;li&gt;&lt;code&gt;d1.database&lt;/code&gt; - D1 database management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;diagnostics.endpointhealthchecks&lt;/code&gt; - Endpoint health check diagnostics&lt;/li&gt;
&lt;li&gt;&lt;code&gt;fraud&lt;/code&gt; - Fraud detection and prevention&lt;/li&gt;
&lt;li&gt;&lt;code&gt;iam.sso&lt;/code&gt; - IAM Single Sign-On configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;loadbalancers.monitorgroups&lt;/code&gt; - Load balancer monitor groups&lt;/li&gt;
&lt;li&gt;&lt;code&gt;organizations&lt;/code&gt; - Organization management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;organizations.organizationprofile&lt;/code&gt; - Organization profile settings&lt;/li&gt;
&lt;li&gt;&lt;code&gt;origintlsclientauth.hostnamecertificates&lt;/code&gt; - Origin TLS client auth hostname certificates&lt;/li&gt;
&lt;li&gt;&lt;code&gt;origintlsclientauth.hostnames&lt;/code&gt; - Origin TLS client auth hostnames&lt;/li&gt;
&lt;li&gt;&lt;code&gt;origintlsclientauth.zonecertificates&lt;/code&gt; - Origin TLS client auth zone certificates&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pipelines&lt;/code&gt; - Data pipeline management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pipelines.sinks&lt;/code&gt; - Pipeline sink configurations&lt;/li&gt;
&lt;li&gt;&lt;code&gt;pipelines.streams&lt;/code&gt; - Pipeline stream configurations&lt;/li&gt;
&lt;li&gt;&lt;code&gt;queues.subscriptions&lt;/code&gt; - Queue subscription management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;r2datacatalog&lt;/code&gt; - R2 Data Catalog integration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;r2datacatalog.credentials&lt;/code&gt; - R2 Data Catalog credentials&lt;/li&gt;
&lt;li&gt;&lt;code&gt;r2datacatalog.maintenanceconfigs&lt;/code&gt; - R2 Data Catalog maintenance configurations&lt;/li&gt;
&lt;li&gt;&lt;code&gt;r2datacatalog.namespaces&lt;/code&gt; - R2 Data Catalog namespaces&lt;/li&gt;
&lt;li&gt;&lt;code&gt;radar.bots&lt;/code&gt; - Radar bot analytics&lt;/li&gt;
&lt;li&gt;&lt;code&gt;radar.ct&lt;/code&gt; - Radar certificate transparency data&lt;/li&gt;
&lt;li&gt;&lt;code&gt;radar.geolocations&lt;/code&gt; - Radar geolocation data&lt;/li&gt;
&lt;li&gt;&lt;code&gt;realtimekit.activesession&lt;/code&gt; - Real-time Kit active session management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;realtimekit.analytics&lt;/code&gt; - Real-time Kit analytics&lt;/li&gt;
&lt;li&gt;&lt;code&gt;realtimekit.apps&lt;/code&gt; - Real-time Kit application management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;realtimekit.livestreams&lt;/code&gt; - Real-time Kit live streaming&lt;/li&gt;
&lt;li&gt;&lt;code&gt;realtimekit.meetings&lt;/code&gt; - Real-time Kit meeting management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;realtimekit.presets&lt;/code&gt; - Real-time Kit preset configurations&lt;/li&gt;
&lt;li&gt;&lt;code&gt;realtimekit.recordings&lt;/code&gt; - Real-time Kit recording management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;realtimekit.sessions&lt;/code&gt; - Real-time Kit session management&lt;/li&gt;
&lt;li&gt;&lt;code&gt;realtimekit.webhooks&lt;/code&gt; - Real-time Kit webhook configurations&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tokenvalidation.configuration&lt;/code&gt; - Token validation configuration&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tokenvalidation.rules&lt;/code&gt; - Token validation rules&lt;/li&gt;
&lt;li&gt;&lt;code&gt;workers.beta&lt;/code&gt; - Workers beta features&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;new-endpoints-existing-resources&quot;&gt;New Endpoints (Existing Resources)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#new-endpoints-existing-resources&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;acmtotaltls&quot;&gt;&lt;code&gt;acm.totaltls&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#acmtotaltls&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;edit()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;update()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;cloudforceonethreatevents&quot;&gt;&lt;code&gt;cloudforceone.threatevents&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#cloudforceonethreatevents&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;list()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;contentscanning&quot;&gt;&lt;code&gt;contentscanning&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#contentscanning&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;create()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;get()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;update()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;dnsrecords&quot;&gt;&lt;code&gt;dns.records&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#dnsrecords&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;scan_list()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scan_review()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;scan_trigger()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;intelindicatorfeeds&quot;&gt;&lt;code&gt;intel.indicatorfeeds&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#intelindicatorfeeds&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;create()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;delete()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;list()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;leakedcredentialchecksdetections&quot;&gt;&lt;code&gt;leakedcredentialchecks.detections&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#leakedcredentialchecksdetections&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;get()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;queuesconsumers&quot;&gt;&lt;code&gt;queues.consumers&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#queuesconsumers&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;list()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;radarai&quot;&gt;&lt;code&gt;radar.ai&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#radarai&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;summary()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;timeseries()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;timeseries_groups()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;radarbgp&quot;&gt;&lt;code&gt;radar.bgp&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#radarbgp&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;changes()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;snapshot()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;workerssubdomains&quot;&gt;&lt;code&gt;workers.subdomains&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#workerssubdomains&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;delete()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zerotrustnetworks&quot;&gt;&lt;code&gt;zerotrust.networks&lt;/code&gt;&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zerotrustnetworks&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;create()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;delete()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;edit()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;get()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;list()&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;general-fixes-and-improvements&quot;&gt;General Fixes and Improvements&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#general-fixes-and-improvements&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;type-system--compatibility&quot;&gt;Type System &amp;amp; Compatibility&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#type-system--compatibility&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Type inference improvements&lt;/strong&gt;: Allow Pyright to properly infer TypedDict types within SequenceNotStr&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Type completeness&lt;/strong&gt;: Add missing types to method arguments and response models&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pydantic compatibility&lt;/strong&gt;: Ensure compatibility with Pydantic versions prior to 2.8.0 when using additional fields&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;requestresponse-handling&quot;&gt;Request/Response Handling&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#requestresponse-handling&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Multipart form data&lt;/strong&gt;: Correctly handle sending multipart/form-data requests with JSON data&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Header handling&lt;/strong&gt;: Do not send headers with default values set to omit&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;GET request headers&lt;/strong&gt;: Don&apos;t send Content-Type header on GET requests&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Response body model accuracy&lt;/strong&gt;: Broad improvements to the correctness of models&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;parsing--data-processing&quot;&gt;Parsing &amp;amp; Data Processing&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#parsing--data-processing&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Discriminated unions&lt;/strong&gt;: Correctly handle nested discriminated unions in response parsing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Extra field types&lt;/strong&gt;: Parse extra field types correctly&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Empty metadata&lt;/strong&gt;: Ignore empty metadata fields during parsing&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Singularization rules&lt;/strong&gt;: Update resource name singularization rules for better consistency&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Fri, 13 Feb 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>SDK</category></item><item><title>Cloudflare Fundamentals - Introducing Markdown for Agents</title><link>https://developers.stormtrust.net/changelog/post/2026-02-12-markdown-for-agents/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-02-12-markdown-for-agents/</guid><description>&lt;p&gt;Cloudflare&apos;s network now supports real-time content conversion at the source, for enabled zones using &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/Content_negotiation&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;content negotiation&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; headers. When AI systems request pages from any website that uses Cloudflare and has Markdown for Agents enabled, they can express the preference for &lt;code&gt;text/markdown&lt;/code&gt; in the request: our network will automatically and efficiently convert the HTML to markdown, when possible, on the fly.&lt;/p&gt;
&lt;p&gt;Here is a curl example with the &lt;code&gt;Accept&lt;/code&gt; negotiation header requesting this page from our developer documentation:&lt;/p&gt;
&lt;figure class=&quot;nb-code-figure&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;pre class=&quot;astro-code astro-code-themes github-light github-dark nb-shiki-c6xiwz&quot; tabindex=&quot;0&quot; data-language=&quot;bash&quot; data-nb-lang=&quot;bash&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt;curl&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; \&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt;  -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &quot;Accept: text/markdown&quot;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;p&gt;The response to this request is now formatted in markdown:&lt;/p&gt;
&lt;figure class=&quot;nb-code-figure&quot; data-nb-lang=&quot;http&quot;&gt;&lt;pre class=&quot;astro-code astro-code-themes github-light github-dark nb-shiki-c6xiwz&quot; tabindex=&quot;0&quot; data-language=&quot;http&quot; data-nb-lang=&quot;http&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-140thh&quot;&gt;HTTP/2 &lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt;200&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-17hn0y&quot;&gt;date&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; Wed, 11 Feb 2026 11:44:48 GMT&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-17hn0y&quot;&gt;content-type&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; text/markdown; charset=utf-8&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-17hn0y&quot;&gt;content-length&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; 2899&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-17hn0y&quot;&gt;vary&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; accept&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-17hn0y&quot;&gt;x-markdown-tokens&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; 725&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-17hn0y&quot;&gt;content-signal&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; ai-train=yes, search=yes, ai-input=yes&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-140thh&quot;&gt;---&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-17hn0y&quot;&gt;title&lt;/span&gt;&lt;span class=&quot;nb-shiki-1itgoe&quot;&gt;:&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; Markdown for Agents · Cloudflare Agents docs&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-140thh&quot;&gt;---&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-21nrsd&quot;&gt;## What is Markdown for Agents&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-140thh&quot;&gt;Markdown has quickly become the lingua franca for agents and AI systems&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-140thh&quot;&gt;as a whole. The format’s explicit structure makes it ideal for AI processing,&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-140thh&quot;&gt;ultimately resulting in better results while minimizing token waste.&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-140thh&quot;&gt;...&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;p&gt;Refer to our &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/reference/markdown-for-agents/&quot;&gt;developer documentation&lt;/a&gt; and our &lt;a href=&quot;https://blog.cloudflare.com/markdown-for-agents/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;blog announcement&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; for more details.&lt;/p&gt;</description><pubDate>Thu, 12 Feb 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.17.0 now available</title><link>https://developers.stormtrust.net/changelog/post/2026-02-12-terraform-v5.17.0-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-02-12-terraform-v5.17.0-provider/</guid><description>&lt;p&gt;In January 2025, we announced the launch of the new Terraform v5 Provider. We
greatly appreciate the proactive engagement and valuable feedback from the
Cloudflare community following the v5 release. In response, we have established
a consistent and rapid &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5774&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2-3 week cadence&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; for releasing targeted improvements,
demonstrating our commitment to stability and reliability.&lt;/p&gt;
&lt;p&gt;With the help of the community, we have a growing number of resources that we
have marked as &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;stable&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;, with that list continuing to grow with every release.
The most used &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;resources&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; are on track to be stable by the end of March 2026,
when we will also be releasing a new migration tool to help you migrate from v4
to v5 with ease.&lt;/p&gt;
&lt;p&gt;This release brings new capabilities for AI Search, enhanced Workers Script
placement controls, and numerous bug fixes based on community feedback. We also
begun laying foundational work for improving the v4 to v5 migration process.
Stay tuned for more details as we approach the March 2026 release timeline.&lt;/p&gt;
&lt;p&gt;Thank you for continuing to raise issues. They make our provider stronger and
help us build products that reflect your needs.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#features&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ai_search_instance:&lt;/strong&gt; add data source for querying AI Search instances&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ai_search_token:&lt;/strong&gt; add data source for querying AI Search tokens&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;account:&lt;/strong&gt; add support for tenant unit management with new &lt;code&gt;unit&lt;/code&gt; field&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;account:&lt;/strong&gt; add automatic mapping from &lt;code&gt;managed_by.parent_org_id&lt;/code&gt; to &lt;code&gt;unit.id&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;authenticated_origin_pulls_certificate:&lt;/strong&gt; add data source for querying authenticated origin pull certificates&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;authenticated_origin_pulls_hostname_certificate:&lt;/strong&gt; add data source for querying hostname-specific authenticated origin pull certificates&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;authenticated_origin_pulls_settings:&lt;/strong&gt; add data source for querying authenticated origin pull settings&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_kv:&lt;/strong&gt; add &lt;code&gt;value&lt;/code&gt; field to data source to retrieve KV values directly&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script:&lt;/strong&gt; add &lt;code&gt;script&lt;/code&gt; field to data source to retrieve script content&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script:&lt;/strong&gt; add support for &lt;code&gt;simple&lt;/code&gt; rate limit binding&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script:&lt;/strong&gt; add support for targeted placement mode with &lt;code&gt;placement.target&lt;/code&gt; array for specifying placement targets (region, hostname, host)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script:&lt;/strong&gt; add &lt;code&gt;placement_mode&lt;/code&gt; and &lt;code&gt;placement_status&lt;/code&gt; computed fields&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dex_test:&lt;/strong&gt; add data source with filter support for finding specific tests&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_predefined_profile:&lt;/strong&gt; add &lt;code&gt;enabled_entries&lt;/code&gt; field for flexible entry management&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;bug-fixes&quot;&gt;Bug Fixes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#bug-fixes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;account:&lt;/strong&gt; map &lt;code&gt;managed_by.parent_org_id&lt;/code&gt; to &lt;code&gt;unit.id&lt;/code&gt; in unmarshall and add acceptance tests&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;authenticated_origin_pulls_certificate:&lt;/strong&gt; add certificate normalization to prevent drift&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;authenticated_origin_pulls:&lt;/strong&gt; handle array response and implement full lifecycle&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;authenticated_origin_pulls_hostname_certificate:&lt;/strong&gt; fix resource and tests&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;cloudforce_one_request_message:&lt;/strong&gt; use correct &lt;code&gt;request_id&lt;/code&gt; field instead of &lt;code&gt;id&lt;/code&gt; in API calls&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;dns_zone_transfers_incoming:&lt;/strong&gt; use correct &lt;code&gt;zone_id&lt;/code&gt; field instead of &lt;code&gt;id&lt;/code&gt; in API calls&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;dns_zone_transfers_outgoing:&lt;/strong&gt; use correct &lt;code&gt;zone_id&lt;/code&gt; field instead of &lt;code&gt;id&lt;/code&gt; in API calls&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;email_routing_settings:&lt;/strong&gt; use correct &lt;code&gt;zone_id&lt;/code&gt; field instead of &lt;code&gt;id&lt;/code&gt; in API calls&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;hyperdrive_config:&lt;/strong&gt; add proper handling for write-only fields to prevent state drift&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;hyperdrive_config:&lt;/strong&gt; add normalization for empty &lt;code&gt;mtls&lt;/code&gt; objects to prevent unnecessary diffs&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_network_monitoring_rule:&lt;/strong&gt; use correct &lt;code&gt;account_id&lt;/code&gt; field instead of &lt;code&gt;id&lt;/code&gt; in API calls&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;mtls_certificates:&lt;/strong&gt; fix resource and test&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;pages_project:&lt;/strong&gt; revert build_config to computed optional&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;stream_key:&lt;/strong&gt; use correct &lt;code&gt;account_id&lt;/code&gt; field instead of &lt;code&gt;id&lt;/code&gt; in API calls&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;total_tls:&lt;/strong&gt; use upsert pattern for singleton zone setting&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;waiting_room_rules:&lt;/strong&gt; use correct &lt;code&gt;waiting_room_id&lt;/code&gt; field instead of &lt;code&gt;id&lt;/code&gt; in API calls&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script:&lt;/strong&gt; add support for placement mode/status&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_access_application:&lt;/strong&gt; update v4 version on migration tests&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_device_posture_rule:&lt;/strong&gt; update tests to match API&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_integration_entry:&lt;/strong&gt; use correct &lt;code&gt;entry_id&lt;/code&gt; field instead of &lt;code&gt;id&lt;/code&gt; in API calls&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_predefined_entry:&lt;/strong&gt; use correct &lt;code&gt;entry_id&lt;/code&gt; field instead of &lt;code&gt;id&lt;/code&gt; in API calls&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_organization:&lt;/strong&gt; fix plan issues&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;chores&quot;&gt;Chores&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#chores&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;add state upgraders to 95+ resources to lay the foundation for replacing Grit
(still under active development)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;certificate_pack:&lt;/strong&gt; add state migration handler for SDKv2 to Framework conversion&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;custom_hostname_fallback_origin:&lt;/strong&gt; add comprehensive lifecycle test and migration support&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;dns_record:&lt;/strong&gt; add state migration handler for SDKv2 to Framework conversion&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;leaked_credential_check:&lt;/strong&gt; add import functionality and tests&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;load_balancer_pool:&lt;/strong&gt; add state migration handler with detection for v4 vs v5 format&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;pages_project:&lt;/strong&gt; add state migration handlers&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;tiered_cache:&lt;/strong&gt; add state migration handlers&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_predefined_profile:&lt;/strong&gt; deprecate &lt;code&gt;entries&lt;/code&gt; field in favor of &lt;code&gt;enabled_entries&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform Provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/terraform/&quot;&gt;Documentation on using Terraform with Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;List of stabilized resources&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Thu, 12 Feb 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals - Added Timezone preferences settings</title><link>https://developers.stormtrust.net/changelog/post/2026-01-27-timezone-preferences/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-01-27-timezone-preferences/</guid><description>&lt;p&gt;You can now set the timezone in the Cloudflare dashboard as Coordinated Universal Time (UTC) or your browser or system&apos;s timezone.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;whats-new&quot;&gt;What&apos;s New&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#whats-new&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Unless otherwise specified in the user interface, all dates and times in the Cloudflare dashboard are now displayed in the selected timezone.&lt;/p&gt;
&lt;p&gt;You can change the timezone setting from the user profile dropdown.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=848,height=682,format=webp/_astro/2026-01-27-set-timezone.CUmMl54E.png&quot; alt=&quot;Timezone preference dropdown&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;848&quot; height=&quot;682&quot;&gt;
&lt;p&gt;The page will reload to apply the new timezone setting.&lt;/p&gt;</description><pubDate>Tue, 27 Jan 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - New 2FA Experience for Login</title><link>https://developers.stormtrust.net/changelog/post/2026-01-23-New-2FA-Experience/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-01-23-New-2FA-Experience/</guid><description>&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=2721,height=1820,format=webp/_astro/2026-01-23-2fa-interstitial.TXFGNSth.png&quot; alt=&quot;Screenshot of new 2FA enrollment experience&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;2721&quot; height=&quot;1820&quot;&gt;
&lt;p&gt;In an effort to improve overall user security, users without 2FA will be prompted upon login to enroll in email 2FA. This will improve user security posture while minimizing friction. Users without email 2FA enabled will see a prompt to secure their account with additional factors upon logging in. Enrolling in 2FA remains optional, but strongly encouraged as it is the best way to prevent account takeovers.&lt;/p&gt;
&lt;p&gt;We also made changes to existing 2FA screens to improve the user experience. Now we have distinct experiences for each 2FA factor type, reflective of the way that factor works.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/user-profiles/2fa/#configure-email-two-factor-authentication&quot;&gt;Configure Email Two Factor Authentication&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Fri, 23 Jan 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, SDK - Cloudflare Typescript SDK v6.0.0-beta.1 now available</title><link>https://developers.stormtrust.net/changelog/post/2026-01-20-cloudflare-typescript-v6.0.0-beta.1/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-01-20-cloudflare-typescript-v6.0.0-beta.1/</guid><description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Disclaimer:&lt;/strong&gt; Please note that v6.0.0-beta.1 is in Beta and we are still testing it for stability.&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Full Changelog: &lt;a href=&quot;https://github.com/cloudflare/cloudflare-typescript/compare/v5.2.0...v6.0.0-beta.1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;v5.2.0...v6.0.0-beta.1&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;In this release, you&apos;ll see a large number of breaking changes. This is primarily due to a change in OpenAPI definitions, which our libraries are based off of, and codegen updates that we rely on to read those OpenAPI definitions and produce our SDK libraries. As the codegen is always evolving and improving, so are our code bases.&lt;/p&gt;
&lt;p&gt;Some breaking changes were introduced due to bug fixes, also listed below.&lt;/p&gt;
&lt;p&gt;Please ensure you read through the list of changes below before moving to this version - this will help you understand any down or upstream issues it may cause to your environments.&lt;/p&gt;
&lt;hr&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;breaking-changes&quot;&gt;Breaking Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#breaking-changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;addressing---parameter-requirements-changed&quot;&gt;Addressing - Parameter Requirements Changed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#addressing---parameter-requirements-changed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;BGPPrefixCreateParams.cidr&lt;/code&gt;: optional → &lt;strong&gt;required&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;PrefixCreateParams.asn&lt;/code&gt;: &lt;code&gt;number | null&lt;/code&gt; → &lt;code&gt;number&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;PrefixCreateParams.loa_document_id&lt;/code&gt;: required → &lt;strong&gt;optional&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ServiceBindingCreateParams.cidr&lt;/code&gt;: optional → &lt;strong&gt;required&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ServiceBindingCreateParams.service_id&lt;/code&gt;: optional → &lt;strong&gt;required&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;api-gateway&quot;&gt;API Gateway&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#api-gateway&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ConfigurationUpdateResponse&lt;/code&gt; removed&lt;/li&gt;
&lt;li&gt;&lt;code&gt;PublicSchema&lt;/code&gt; → &lt;code&gt;OldPublicSchema&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;SchemaUpload&lt;/code&gt; → &lt;code&gt;UserSchemaCreateResponse&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ConfigurationUpdateParams.properties&lt;/code&gt; removed; use &lt;code&gt;normalize&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;cloudforceone---response-type-changes&quot;&gt;CloudforceOne - Response Type Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#cloudforceone---response-type-changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ThreatEventBulkCreateResponse&lt;/code&gt;: &lt;code&gt;number&lt;/code&gt; → complex object with counts and errors&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;d1-database---query-parameters&quot;&gt;D1 Database - Query Parameters&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#d1-database---query-parameters&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;DatabaseQueryParams&lt;/code&gt;: simple interface → union type (&lt;code&gt;D1SingleQuery | MultipleQueries&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;DatabaseRawParams&lt;/code&gt;: same change&lt;/li&gt;
&lt;li&gt;Supports batch queries via &lt;code&gt;batch&lt;/code&gt; array&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;dns-records---type-renames-21-types&quot;&gt;DNS Records - Type Renames (21 types)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#dns-records---type-renames-21-types&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;All record type interfaces renamed from &lt;code&gt;*Record&lt;/code&gt; to short names:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.ARecord&lt;/code&gt; → &lt;code&gt;RecordResponse.A&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.AAAARecord&lt;/code&gt; → &lt;code&gt;RecordResponse.AAAA&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.CNAMERecord&lt;/code&gt; → &lt;code&gt;RecordResponse.CNAME&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.MXRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.MX&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.NSRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.NS&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.PTRRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.PTR&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.TXTRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.TXT&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.CAARecord&lt;/code&gt; → &lt;code&gt;RecordResponse.CAA&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.CERTRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.CERT&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.DNSKEYRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.DNSKEY&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.DSRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.DS&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.HTTPSRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.HTTPS&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.LOCRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.LOC&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.NAPTRRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.NAPTR&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.SMIMEARecord&lt;/code&gt; → &lt;code&gt;RecordResponse.SMIMEA&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.SRVRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.SRV&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.SSHFPRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.SSHFP&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.SVCBRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.SVCB&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.TLSARecord&lt;/code&gt; → &lt;code&gt;RecordResponse.TLSA&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.URIRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.URI&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;RecordResponse.OpenpgpkeyRecord&lt;/code&gt; → &lt;code&gt;RecordResponse.Openpgpkey&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;iam-resource-groups&quot;&gt;IAM Resource Groups&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#iam-resource-groups&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ResourceGroupCreateResponse.scope&lt;/code&gt;: optional single → &lt;strong&gt;required array&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ResourceGroupCreateResponse.id&lt;/code&gt;: optional → &lt;strong&gt;required&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;origin-ca-certificates---parameter-requirements-changed&quot;&gt;Origin CA Certificates - Parameter Requirements Changed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#origin-ca-certificates---parameter-requirements-changed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;OriginCACertificateCreateParams.csr&lt;/code&gt;: optional → &lt;strong&gt;required&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;OriginCACertificateCreateParams.hostnames&lt;/code&gt;: optional → &lt;strong&gt;required&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;OriginCACertificateCreateParams.request_type&lt;/code&gt;: optional → &lt;strong&gt;required&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;pages&quot;&gt;Pages&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#pages&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Renamed: &lt;code&gt;DeploymentsSinglePage&lt;/code&gt; → &lt;code&gt;DeploymentListResponsesV4PagePaginationArray&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Domain response fields: many optional → &lt;strong&gt;required&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;pipelines---v0-to-v1-migration&quot;&gt;Pipelines - v0 to v1 Migration&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#pipelines---v0-to-v1-migration&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Entire v0 API deprecated; use v1 methods (&lt;code&gt;createV1&lt;/code&gt;, &lt;code&gt;listV1&lt;/code&gt;, etc.)&lt;/li&gt;
&lt;li&gt;New sub-resources: &lt;code&gt;Sinks&lt;/code&gt;, &lt;code&gt;Streams&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;r2&quot;&gt;R2&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#r2&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;EventNotificationUpdateParams.rules&lt;/code&gt;: optional → &lt;strong&gt;required&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;Super Slurper: &lt;code&gt;bucket&lt;/code&gt;, &lt;code&gt;secret&lt;/code&gt; now required in source params&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;radar&quot;&gt;Radar&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#radar&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;dataSource&lt;/code&gt;: &lt;code&gt;string&lt;/code&gt; → typed enum (23 values)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;eventType&lt;/code&gt;: &lt;code&gt;string&lt;/code&gt; → typed enum (6 values)&lt;/li&gt;
&lt;li&gt;V2 methods require &lt;code&gt;dimension&lt;/code&gt; parameter (breaking signature change)&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;resource-sharing&quot;&gt;Resource Sharing&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#resource-sharing&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Removed: &lt;code&gt;status_message&lt;/code&gt; field from all recipient response types&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;schema-validation&quot;&gt;Schema Validation&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#schema-validation&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Consolidated &lt;code&gt;SchemaCreateResponse&lt;/code&gt;, &lt;code&gt;SchemaListResponse&lt;/code&gt;, &lt;code&gt;SchemaEditResponse&lt;/code&gt;, &lt;code&gt;SchemaGetResponse&lt;/code&gt; → &lt;code&gt;PublicSchema&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Renamed: &lt;code&gt;SchemaListResponsesV4PagePaginationArray&lt;/code&gt; → &lt;code&gt;PublicSchemasV4PagePaginationArray&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;spectrum&quot;&gt;Spectrum&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#spectrum&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Renamed union members: &lt;code&gt;AppListResponse.UnionMember0&lt;/code&gt; → &lt;code&gt;SpectrumConfigAppConfig&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Renamed union members: &lt;code&gt;AppListResponse.UnionMember1&lt;/code&gt; → &lt;code&gt;SpectrumConfigPaygoAppConfig&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;workers&quot;&gt;Workers&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#workers&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Removed: &lt;code&gt;WorkersBindingKindTailConsumer&lt;/code&gt; type (all occurrences)&lt;/li&gt;
&lt;li&gt;Renamed: &lt;code&gt;ScriptsSinglePage&lt;/code&gt; → &lt;code&gt;ScriptListResponsesSinglePage&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Removed: &lt;code&gt;DeploymentsSinglePage&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zero-trust-dlp&quot;&gt;Zero-Trust DLP&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zero-trust-dlp&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;datasets.create()&lt;/code&gt;, &lt;code&gt;update()&lt;/code&gt;, &lt;code&gt;get()&lt;/code&gt; return types changed&lt;/li&gt;
&lt;li&gt;&lt;code&gt;PredefinedGetResponse&lt;/code&gt; union members renamed to &lt;code&gt;UnionMember0-5&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zero-trust-tunnels&quot;&gt;Zero-Trust Tunnels&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zero-trust-tunnels&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Removed: &lt;code&gt;CloudflaredCreateResponse&lt;/code&gt;, &lt;code&gt;CloudflaredListResponse&lt;/code&gt;, &lt;code&gt;CloudflaredDeleteResponse&lt;/code&gt;, &lt;code&gt;CloudflaredEditResponse&lt;/code&gt;, &lt;code&gt;CloudflaredGetResponse&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Removed: &lt;code&gt;CloudflaredListResponsesV4PagePaginationArray&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#features&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;abuse-reports-clientabusereports&quot;&gt;Abuse Reports (&lt;code&gt;client.abuseReports&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#abuse-reports-clientabusereports&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Reports&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Mitigations&lt;/strong&gt;: sub-resource for abuse mitigations&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;ai-search-clientaisearch&quot;&gt;AI Search (&lt;code&gt;client.aisearch&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#ai-search-clientaisearch&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Instances&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;read&lt;/code&gt;, &lt;code&gt;stats&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Items&lt;/strong&gt;: &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Jobs&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;, &lt;code&gt;logs&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tokens&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;read&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;connectivity-clientconnectivity&quot;&gt;Connectivity (&lt;code&gt;client.connectivity&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#connectivity-clientconnectivity&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Directory Services&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Supports IPv4, IPv6, dual-stack, and hostname configurations&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;organizations-clientorganizations&quot;&gt;Organizations (&lt;code&gt;client.organizations&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#organizations-clientorganizations&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Organizations&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;OrganizationProfile&lt;/strong&gt;: &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Hierarchical organization support with parent/child relationships&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;r2-data-catalog-clientr2datacatalog&quot;&gt;R2 Data Catalog (&lt;code&gt;client.r2DataCatalog&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#r2-data-catalog-clientr2datacatalog&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Catalog&lt;/strong&gt;: &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;enable&lt;/code&gt;, &lt;code&gt;disable&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Credentials&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;MaintenanceConfigs&lt;/strong&gt;: &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Namespaces&lt;/strong&gt;: &lt;code&gt;list&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Tables&lt;/strong&gt;: &lt;code&gt;list&lt;/code&gt;, maintenance config management&lt;/li&gt;
&lt;li&gt;Apache Iceberg integration&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;realtime-kit-clientrealtimekit&quot;&gt;Realtime Kit (&lt;code&gt;client.realtimeKit&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#realtime-kit-clientrealtimekit&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Apps&lt;/strong&gt;: &lt;code&gt;get&lt;/code&gt;, &lt;code&gt;post&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Meetings&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;, participant management&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Livestreams&lt;/strong&gt;: 10+ methods for streaming&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Recordings&lt;/strong&gt;: start, pause, stop, get&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sessions&lt;/strong&gt;: transcripts, summaries, chat&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Webhooks&lt;/strong&gt;: full CRUD&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ActiveSession&lt;/strong&gt;: polls, kick participants&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Analytics&lt;/strong&gt;: organization analytics&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;token-validation-clienttokenvalidation&quot;&gt;Token Validation (&lt;code&gt;client.tokenValidation&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#token-validation-clienttokenvalidation&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Configuration&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;edit&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Credentials&lt;/strong&gt;: &lt;code&gt;update&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rules&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;bulkCreate&lt;/code&gt;, &lt;code&gt;bulkEdit&lt;/code&gt;, &lt;code&gt;edit&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;JWT validation with RS256/384/512, PS256/384/512, ES256, ES384&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;alerting-silences-clientalertingsilences&quot;&gt;Alerting Silences (&lt;code&gt;client.alerting.silences&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#alerting-silences-clientalertingsilences&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;create&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;iam-sso-clientiamsso&quot;&gt;IAM SSO (&lt;code&gt;client.iam.sso&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#iam-sso-clientiamsso&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;create&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;, &lt;code&gt;beginVerification&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;pipelines-v1-clientpipelines&quot;&gt;Pipelines v1 (&lt;code&gt;client.pipelines&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#pipelines-v1-clientpipelines&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Sinks&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Streams&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;get&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zero-trust-ai-controls--mcp-clientzerotrustaccessaicontrolsmcp&quot;&gt;Zero-Trust AI Controls / MCP (&lt;code&gt;client.zeroTrust.access.aiControls.mcp&lt;/code&gt;)&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zero-trust-ai-controls--mcp-clientzerotrustaccessaicontrolsmcp&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Portals&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;read&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Servers&lt;/strong&gt;: &lt;code&gt;create&lt;/code&gt;, &lt;code&gt;update&lt;/code&gt;, &lt;code&gt;list&lt;/code&gt;, &lt;code&gt;delete&lt;/code&gt;, &lt;code&gt;read&lt;/code&gt;, &lt;code&gt;sync&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;accounts&quot;&gt;Accounts&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#accounts&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;managed_by&lt;/code&gt; field with &lt;code&gt;parent_org_id&lt;/code&gt;, &lt;code&gt;parent_org_name&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;addressing-loa-documents&quot;&gt;Addressing LOA Documents&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#addressing-loa-documents&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;auto_generated&lt;/code&gt; field on &lt;code&gt;LOADocumentCreateResponse&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;addressing-prefixes&quot;&gt;Addressing Prefixes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#addressing-prefixes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;delegate_loa_creation&lt;/code&gt;, &lt;code&gt;irr_validation_state&lt;/code&gt;, &lt;code&gt;ownership_validation_state&lt;/code&gt;, &lt;code&gt;ownership_validation_token&lt;/code&gt;, &lt;code&gt;rpki_validation_state&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;ai&quot;&gt;AI&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#ai&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;toMarkdown.supported()&lt;/code&gt; method to get all supported conversion formats&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;ai-gateway&quot;&gt;AI Gateway&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#ai-gateway&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;zdr&lt;/code&gt; field added to all responses and params&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;alerting&quot;&gt;Alerting&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#alerting&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New alert type: &lt;code&gt;abuse_report_alert&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;type&lt;/code&gt; field added to PolicyFilter&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;browser-rendering&quot;&gt;Browser Rendering&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#browser-rendering&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ContentCreateParams&lt;/code&gt;: refined to discriminated union (&lt;code&gt;Variant0 | Variant1&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Split into URL-based and HTML-based parameter variants for better type safety&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;client-certificates&quot;&gt;Client Certificates&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#client-certificates&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;reactivate&lt;/code&gt; parameter in edit&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;cloudforceone&quot;&gt;CloudforceOne&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#cloudforceone&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ThreatEventCreateParams.indicatorType&lt;/code&gt;: required → optional&lt;/li&gt;
&lt;li&gt;&lt;code&gt;hasChildren&lt;/code&gt; field added to all threat event response types&lt;/li&gt;
&lt;li&gt;&lt;code&gt;datasetIds&lt;/code&gt; query parameter on &lt;code&gt;AttackerListParams&lt;/code&gt;, &lt;code&gt;CategoryListParams&lt;/code&gt;, &lt;code&gt;TargetIndustryListParams&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;categoryUuid&lt;/code&gt; field on &lt;code&gt;TagCreateResponse&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;indicators&lt;/code&gt; array for multi-indicator support per event&lt;/li&gt;
&lt;li&gt;&lt;code&gt;uuid&lt;/code&gt; and &lt;code&gt;preserveUuid&lt;/code&gt; fields for UUID preservation in bulk create&lt;/li&gt;
&lt;li&gt;&lt;code&gt;format&lt;/code&gt; query parameter (&lt;code&gt;&apos;json&apos; | &apos;stix2&apos;&lt;/code&gt;) on &lt;code&gt;ThreatEventListParams&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;createdAt&lt;/code&gt;, &lt;code&gt;datasetId&lt;/code&gt; fields on &lt;code&gt;ThreatEventEditParams&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;content-scanning&quot;&gt;Content Scanning&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#content-scanning&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;create()&lt;/code&gt;, &lt;code&gt;update()&lt;/code&gt;, &lt;code&gt;get()&lt;/code&gt; methods&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;custom-pages&quot;&gt;Custom Pages&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#custom-pages&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New page types: &lt;code&gt;basic_challenge&lt;/code&gt;, &lt;code&gt;under_attack&lt;/code&gt;, &lt;code&gt;waf_challenge&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;d1&quot;&gt;D1&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#d1&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;served_by_colo&lt;/code&gt; - colo that handled query&lt;/li&gt;
&lt;li&gt;&lt;code&gt;jurisdiction&lt;/code&gt; - &lt;code&gt;&apos;eu&apos; | &apos;fedramp&apos;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Time Travel&lt;/strong&gt; (&lt;code&gt;client.d1.database.timeTravel&lt;/code&gt;): &lt;code&gt;getBookmark()&lt;/code&gt;, &lt;code&gt;restore()&lt;/code&gt; - point-in-time recovery&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;email-security&quot;&gt;Email Security&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#email-security&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New fields on &lt;code&gt;InvestigateListResponse&lt;/code&gt;/&lt;code&gt;InvestigateGetResponse&lt;/code&gt;: &lt;code&gt;envelope_from&lt;/code&gt;, &lt;code&gt;envelope_to&lt;/code&gt;, &lt;code&gt;postfix_id_outbound&lt;/code&gt;, &lt;code&gt;replyto&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;New detection classification: &lt;code&gt;&apos;outbound_ndr&apos;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Enhanced &lt;code&gt;Finding&lt;/code&gt; interface with &lt;code&gt;attachment&lt;/code&gt;, &lt;code&gt;detection&lt;/code&gt;, &lt;code&gt;field&lt;/code&gt;, &lt;code&gt;portion&lt;/code&gt;, &lt;code&gt;reason&lt;/code&gt;, &lt;code&gt;score&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;cursor&lt;/code&gt; query parameter to &lt;code&gt;InvestigateListParams&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;gateway-lists&quot;&gt;Gateway Lists&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#gateway-lists&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New list types: &lt;code&gt;CATEGORY&lt;/code&gt;, &lt;code&gt;LOCATION&lt;/code&gt;, &lt;code&gt;DEVICE&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;intel&quot;&gt;Intel&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#intel&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New issue type: &lt;code&gt;&apos;configuration_suggestion&apos;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;payload&lt;/code&gt; field: &lt;code&gt;unknown&lt;/code&gt; → typed &lt;code&gt;Payload&lt;/code&gt; interface with &lt;code&gt;detection_method&lt;/code&gt;, &lt;code&gt;zone_tag&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;leaked-credential-checks&quot;&gt;Leaked Credential Checks&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#leaked-credential-checks&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;detections.get()&lt;/code&gt; method&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;logpush&quot;&gt;Logpush&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#logpush&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New datasets: &lt;code&gt;dex_application_tests&lt;/code&gt;, &lt;code&gt;dex_device_state_events&lt;/code&gt;, &lt;code&gt;ipsec_logs&lt;/code&gt;, &lt;code&gt;warp_config_changes&lt;/code&gt;, &lt;code&gt;warp_toggle_changes&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;load-balancers&quot;&gt;Load Balancers&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#load-balancers&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Monitor.port&lt;/code&gt;: &lt;code&gt;number&lt;/code&gt; → &lt;code&gt;number | null&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Pool.load_shedding&lt;/code&gt;: &lt;code&gt;LoadShedding&lt;/code&gt; → &lt;code&gt;LoadShedding | null&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Pool.origin_steering&lt;/code&gt;: &lt;code&gt;OriginSteering&lt;/code&gt; → &lt;code&gt;OriginSteering | null&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;magic-transit&quot;&gt;Magic Transit&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#magic-transit&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;license_key&lt;/code&gt; field on connectors&lt;/li&gt;
&lt;li&gt;&lt;code&gt;provision_license&lt;/code&gt; parameter for auto-provisioning&lt;/li&gt;
&lt;li&gt;IPSec: &lt;code&gt;custom_remote_identities&lt;/code&gt; with FQDN support&lt;/li&gt;
&lt;li&gt;Snapshots: Bond interface, &lt;code&gt;probed_mtu&lt;/code&gt; field&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;pages-1&quot;&gt;Pages&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#pages-1&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New response types: &lt;code&gt;ProjectCreateResponse&lt;/code&gt;, &lt;code&gt;ProjectListResponse&lt;/code&gt;, &lt;code&gt;ProjectEditResponse&lt;/code&gt;, &lt;code&gt;ProjectGetResponse&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Deployment methods return specific response types instead of generic &lt;code&gt;Deployment&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;queues&quot;&gt;Queues&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#queues&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;subscriptions.get()&lt;/code&gt; method&lt;/li&gt;
&lt;li&gt;Enhanced &lt;code&gt;SubscriptionGetResponse&lt;/code&gt; with typed event source interfaces&lt;/li&gt;
&lt;li&gt;New event source types: Images, KV, R2, Vectorize, Workers AI, Workers Builds, Workflows&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;r2-1&quot;&gt;R2&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#r2-1&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Sippy: new provider &lt;code&gt;s3&lt;/code&gt; (S3-compatible endpoints)&lt;/li&gt;
&lt;li&gt;Sippy: &lt;code&gt;bucketUrl&lt;/code&gt; field for S3-compatible sources&lt;/li&gt;
&lt;li&gt;Super Slurper: &lt;code&gt;keys&lt;/code&gt; field on source response schemas (specify specific keys to migrate)&lt;/li&gt;
&lt;li&gt;Super Slurper: &lt;code&gt;pathPrefix&lt;/code&gt; field on source schemas&lt;/li&gt;
&lt;li&gt;Super Slurper: &lt;code&gt;region&lt;/code&gt; field on S3 source params&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;radar-1&quot;&gt;Radar&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#radar-1&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;geolocations.list()&lt;/code&gt;, &lt;code&gt;geolocations.get()&lt;/code&gt; methods&lt;/li&gt;
&lt;li&gt;Added V2 dimension-based methods (&lt;code&gt;summaryV2&lt;/code&gt;, &lt;code&gt;timeseriesGroupsV2&lt;/code&gt;) to radar sub-resources&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;resource-sharing-1&quot;&gt;Resource Sharing&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#resource-sharing-1&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;terminal&lt;/code&gt; boolean field to Resource Error interfaces&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;rules&quot;&gt;Rules&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#rules&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;id&lt;/code&gt; field to &lt;code&gt;ItemDeleteParams.Item&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;rulesets&quot;&gt;Rulesets&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#rulesets&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New buffering fields on &lt;code&gt;SetConfigRule&lt;/code&gt;: &lt;code&gt;request_body_buffering&lt;/code&gt;, &lt;code&gt;response_body_buffering&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;secrets-store&quot;&gt;Secrets Store&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#secrets-store&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New scopes: &lt;code&gt;&apos;dex&apos;&lt;/code&gt;, &lt;code&gt;&apos;access&apos;&lt;/code&gt; (in addition to &lt;code&gt;&apos;workers&apos;&lt;/code&gt;, &lt;code&gt;&apos;ai_gateway&apos;&lt;/code&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;ssl-certificate-packs&quot;&gt;SSL Certificate Packs&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#ssl-certificate-packs&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Response types now proper interfaces (was &lt;code&gt;unknown&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;Fields now required: &lt;code&gt;id&lt;/code&gt;, &lt;code&gt;certificates&lt;/code&gt;, &lt;code&gt;hosts&lt;/code&gt;, &lt;code&gt;status&lt;/code&gt;, &lt;code&gt;type&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;security-center&quot;&gt;Security Center&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#security-center&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;payload&lt;/code&gt; field: &lt;code&gt;unknown&lt;/code&gt; → typed &lt;code&gt;Payload&lt;/code&gt; interface with &lt;code&gt;detection_method&lt;/code&gt;, &lt;code&gt;zone_tag&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;shared-types&quot;&gt;Shared Types&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#shared-types&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added: &lt;code&gt;CloudflareTunnelsV4PagePaginationArray&lt;/code&gt; pagination class&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;workers-1&quot;&gt;Workers&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#workers-1&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;subdomains.delete()&lt;/code&gt; method&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Worker.references&lt;/code&gt; - track external dependencies (domains, Durable Objects, queues)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Worker.startup_time_ms&lt;/code&gt; - startup timing&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Script.observability&lt;/code&gt; - observability settings with logging&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Script.tag&lt;/code&gt;, &lt;code&gt;Script.tags&lt;/code&gt; - immutable ID and tags&lt;/li&gt;
&lt;li&gt;Placement: support for region, hostname, host-based placement&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tags&lt;/code&gt;, &lt;code&gt;tail_consumers&lt;/code&gt; now accept &lt;code&gt;| null&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Telemetry: &lt;code&gt;traces&lt;/code&gt; field, &lt;code&gt;$containers&lt;/code&gt; event info, &lt;code&gt;durableObjectId&lt;/code&gt;, &lt;code&gt;transactionName&lt;/code&gt;, &lt;code&gt;abr_level&lt;/code&gt; fields&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;workers-for-platforms&quot;&gt;Workers for Platforms&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#workers-for-platforms&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ScriptUpdateResponse&lt;/code&gt;: new fields &lt;code&gt;entry_point&lt;/code&gt;, &lt;code&gt;observability&lt;/code&gt;, &lt;code&gt;tag&lt;/code&gt;, &lt;code&gt;tags&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;placement&lt;/code&gt; field now union of 4 variants (smart mode, region, hostname, host)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tags&lt;/code&gt;, &lt;code&gt;tail_consumers&lt;/code&gt; now nullable&lt;/li&gt;
&lt;li&gt;&lt;code&gt;TagUpdateParams.body&lt;/code&gt; now accepts &lt;code&gt;null&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;workflows&quot;&gt;Workflows&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#workflows&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;instance_retention&lt;/code&gt;: &lt;code&gt;unknown&lt;/code&gt; → typed &lt;code&gt;InstanceRetention&lt;/code&gt; interface with &lt;code&gt;error_retention&lt;/code&gt;, &lt;code&gt;success_retention&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;New status option: &lt;code&gt;&apos;restart&apos;&lt;/code&gt; added to &lt;code&gt;StatusEditParams.status&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zero-trust-devices&quot;&gt;Zero-Trust Devices&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zero-trust-devices&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;External emergency disconnect settings (4 new fields)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;antivirus&lt;/code&gt; device posture check type&lt;/li&gt;
&lt;li&gt;&lt;code&gt;os_version_extra&lt;/code&gt; documentation improvements&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zones&quot;&gt;Zones&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zones&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New response types: &lt;code&gt;SubscriptionCreateResponse&lt;/code&gt;, &lt;code&gt;SubscriptionUpdateResponse&lt;/code&gt;, &lt;code&gt;SubscriptionGetResponse&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zero-trust-access-applications&quot;&gt;Zero-Trust Access Applications&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zero-trust-access-applications&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;New &lt;code&gt;ApplicationType&lt;/code&gt; values: &lt;code&gt;&apos;mcp&apos;&lt;/code&gt;, &lt;code&gt;&apos;mcp_portal&apos;&lt;/code&gt;, &lt;code&gt;&apos;proxy_endpoint&apos;&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;New destination type: &lt;code&gt;ViaMcpServerPortalDestination&lt;/code&gt; for MCP server access&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zero-trust-gateway&quot;&gt;Zero-Trust Gateway&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zero-trust-gateway&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added &lt;code&gt;rules.listTenant()&lt;/code&gt; method&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zero-trust-gateway---proxy-endpoints&quot;&gt;Zero-Trust Gateway - Proxy Endpoints&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zero-trust-gateway---proxy-endpoints&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;ProxyEndpoint&lt;/code&gt;: interface → discriminated union (&lt;code&gt;ZeroTrustGatewayProxyEndpointIP | ZeroTrustGatewayProxyEndpointIdentity&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;code&gt;ProxyEndpointCreateParams&lt;/code&gt;: interface → union type&lt;/li&gt;
&lt;li&gt;Added &lt;code&gt;kind&lt;/code&gt; field: &lt;code&gt;&apos;ip&apos; | &apos;identity&apos;&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;zero-trust-tunnels-1&quot;&gt;Zero-Trust Tunnels&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#zero-trust-tunnels-1&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;WARPConnector*Response&lt;/code&gt;: union type → interface&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;deprecations&quot;&gt;Deprecations&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#deprecations&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;API Gateway&lt;/strong&gt;: &lt;code&gt;UserSchemas&lt;/code&gt;, &lt;code&gt;Settings&lt;/code&gt;, &lt;code&gt;SchemaValidation&lt;/code&gt; resources&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Audit Logs&lt;/strong&gt;: &lt;code&gt;auditLogId.not&lt;/code&gt; (use &lt;code&gt;id.not&lt;/code&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;CloudforceOne&lt;/strong&gt;: &lt;code&gt;ThreatEvents.get()&lt;/code&gt;, &lt;code&gt;IndicatorTypes.list()&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Devices&lt;/strong&gt;: &lt;code&gt;public_ip&lt;/code&gt; field (use DEX API)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Email Security&lt;/strong&gt;: &lt;code&gt;item_count&lt;/code&gt; field in Move responses&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pipelines&lt;/strong&gt;: v0 methods (use v1)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Radar&lt;/strong&gt;: old &lt;code&gt;summary()&lt;/code&gt; and &lt;code&gt;timeseriesGroups()&lt;/code&gt; methods (use V2)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rulesets&lt;/strong&gt;: &lt;code&gt;disable_apps&lt;/code&gt;, &lt;code&gt;mirage&lt;/code&gt; fields&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;WARP Connector&lt;/strong&gt;: &lt;code&gt;connections&lt;/code&gt; field&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Workers&lt;/strong&gt;: &lt;code&gt;environment&lt;/code&gt; parameter in Domains&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Zones&lt;/strong&gt;: &lt;code&gt;ResponseBuffering&lt;/code&gt; page rule&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;bug-fixes&quot;&gt;Bug Fixes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#bug-fixes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;mcp:&lt;/strong&gt; correct code tool API endpoint (&lt;a href=&quot;https://github.com/cloudflare/cloudflare-typescript/commit/599703c45672dc899455d74b124018efd4b75095&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;599703c&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;mcp:&lt;/strong&gt; return correct lines on typescript errors (&lt;a href=&quot;https://github.com/cloudflare/cloudflare-typescript/commit/5d6f9998ed9999aaa95e1bda8cf50929f3555cf1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;5d6f999&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;organization_profile:&lt;/strong&gt; fix bad reference (&lt;a href=&quot;https://github.com/cloudflare/cloudflare-typescript/commit/d84ea77094400055c06554812b84c2f0c8d00cc4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;d84ea77&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;schema_validation:&lt;/strong&gt; correctly reflect model to openapi mapping (&lt;a href=&quot;https://github.com/cloudflare/cloudflare-typescript/commit/bb861516774b159d80e0f46a5f3abc5a4c9f9d49&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;bb86151&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers:&lt;/strong&gt; fix tests (&lt;a href=&quot;https://github.com/cloudflare/cloudflare-typescript/commit/2ee37f7adf5a4637d65f61fc225e135eec2579fc&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2ee37f7&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;documentation&quot;&gt;Documentation&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#documentation&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Added deprecation notices with migration paths&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;api_gateway:&lt;/strong&gt; deprecate API Shield Schema Validation resources (&lt;a href=&quot;https://github.com/cloudflare/cloudflare-typescript/commit/8a4b20f7a572422f74179fbdb4f1c4fb555e3e40&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;8a4b20f&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Improved JSDoc examples across all resources&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers:&lt;/strong&gt; expose subdomain delete documentation (&lt;a href=&quot;https://github.com/cloudflare/cloudflare-typescript/commit/4f7cc1f2b8861a5b8abc193d287f78264a425062&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;4f7cc1f&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Tue, 20 Jan 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>SDK</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.16.0 now available</title><link>https://developers.stormtrust.net/changelog/post/2026-01-20-terraform-v5.16.0-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-01-20-terraform-v5.16.0-provider/</guid><description>&lt;p&gt;In January 2025, we announced the launch of the new Terraform v5 Provider. We greatly appreciate the proactive engagement and valuable feedback from the Cloudflare community following the v5 release. In response, we&apos;ve established a consistent and rapid &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5774&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2-3 week cadence&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; for releasing targeted improvements, demonstrating our commitment to stability and reliability.&lt;/p&gt;
&lt;p&gt;With the help of the community, we have a growing number of resources that we have marked as &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;stable&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;, with that list continuing to grow with every release. The most used &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;resources&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; are on track to be stable by the end of March 2026, when we will also be releasing a new migration tool to you migrate from v4 to v5 with ease.&lt;/p&gt;
&lt;p&gt;Thank you for continuing to raise issues. They make our provider stronger and help us build products that reflect your needs.&lt;/p&gt;
&lt;p&gt;This release includes bug fixes, the stabilization of even more popular resources, and more.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#features&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;custom_pages:&lt;/strong&gt; add &quot;waf_challenge&quot; as new supported error page type identifier in both resource and data source schemas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;list:&lt;/strong&gt; enhance CIDR validator to check for normalized CIDR notation requiring network address for IPv4 and IPv6&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_wan_gre_tunnel:&lt;/strong&gt; add automatic_return_routing attribute for automatic routing control&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_wan_gre_tunnel:&lt;/strong&gt; add BGP configuration support with new BGP model attribute&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_wan_gre_tunnel:&lt;/strong&gt; add bgp_status computed attribute for BGP connection status information&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_wan_gre_tunnel:&lt;/strong&gt; enhance schema with BGP-related attributes and validators&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_wan_ipsec_tunnel:&lt;/strong&gt; add automatic_return_routing attribute for automatic routing control&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_wan_ipsec_tunnel:&lt;/strong&gt; add BGP configuration support with new BGP model attribute&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_wan_ipsec_tunnel:&lt;/strong&gt; add bgp_status computed attribute for BGP connection status information&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_wan_ipsec_tunnel:&lt;/strong&gt; add custom_remote_identities attribute for custom identity configuration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_wan_ipsec_tunnel:&lt;/strong&gt; enhance schema with BGP and identity-related attributes&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ruleset:&lt;/strong&gt; add request body buffering support&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;ruleset:&lt;/strong&gt; enhance ruleset data source with additional configuration options&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script:&lt;/strong&gt; add observability logs attributes to list data source model&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script:&lt;/strong&gt; enhance list data source schema with additional configuration options&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;bug-fixes&quot;&gt;Bug Fixes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#bug-fixes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;account_member&lt;/strong&gt;: fix resource importability issues&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;dns_record:&lt;/strong&gt; remove unnecessary fmt.Sprintf wrapper around LoadTestCase call in test configuration helper function&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;load_balancer:&lt;/strong&gt; fix session_affinity_ttl type expectations to match Float64 in initial creation and Int64 after migration&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_kv:&lt;/strong&gt; handle special characters correctly in URL encoding&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;documentation&quot;&gt;Documentation&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#documentation&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;account_subscription:&lt;/strong&gt; update schema description for rate_plan.sets attribute to clarify it returns an array of strings&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;api_shield:&lt;/strong&gt; add resource-level description for API Shield management of auth ID characteristics&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;api_shield:&lt;/strong&gt; enhance auth_id_characteristics.name attribute description to include JWT token configuration format requirements&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;api_shield:&lt;/strong&gt; specify JSONPath expression format for JWT claim locations&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;hyperdrive_config:&lt;/strong&gt; add description attribute to name attribute explaining its purpose in dashboard and API identification&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;hyperdrive_config:&lt;/strong&gt; apply description improvements across resource, data source, and list data source schemas&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;hyperdrive_config:&lt;/strong&gt; improve schema descriptions for cache settings to clarify default values&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;hyperdrive_config:&lt;/strong&gt; update port description to clarify defaults for different database types&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform Provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/terraform/&quot;&gt;Documentation on using Terraform with Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;List of stabilized resources&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Tue, 20 Jan 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals - Enhanced HTTP/3 request cancellation visibility</title><link>https://developers.stormtrust.net/changelog/post/2026-01-19-http3-499-reporting-improvement/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2026-01-19-http3-499-reporting-improvement/</guid><description>&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;enhanced-http3-request-cancellation-visibility&quot;&gt;Enhanced HTTP/3 request cancellation visibility&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#enhanced-http3-request-cancellation-visibility&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Cloudflare now provides more accurate visibility into HTTP/3 client request cancellations, giving you better insight into real client behavior and reducing unnecessary load on your origins.&lt;/p&gt;
&lt;p&gt;Previously, when an HTTP/3 client cancelled a request, the cancellation was not always actioned immediately. This meant requests could continue through the CDN — potentially all the way to your origin — even after the client had abandoned them. In these cases, logs would show the upstream response status (such as &lt;code&gt;200&lt;/code&gt; or a timeout-related code) rather than reflecting the client cancellation.&lt;/p&gt;
&lt;p&gt;Now, Cloudflare terminates cancelled HTTP/3 requests immediately and accurately logs them with a &lt;code&gt;499&lt;/code&gt; status code.&lt;/p&gt;
&lt;hr&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;better-observability-for-client-behavior&quot;&gt;Better observability for client behavior&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#better-observability-for-client-behavior&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;When HTTP/3 clients cancel requests, Cloudflare now immediately reflects this in your logs with a &lt;code&gt;499&lt;/code&gt; status code. This gives you:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;More accurate traffic analysis&lt;/strong&gt;: Understand exactly when and how often clients cancel requests.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Clearer debugging&lt;/strong&gt;: Distinguish between true errors and intentional client cancellations.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Better availability metrics&lt;/strong&gt;: Separate client-initiated cancellations from server-side issues.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;reduced-origin-load&quot;&gt;Reduced origin load&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#reduced-origin-load&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Cloudflare now terminates cancelled requests faster, which means:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Less wasted compute&lt;/strong&gt;: Your origin no longer processes requests that clients have already abandoned.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Lower bandwidth usage&lt;/strong&gt;: Responses are no longer generated and transmitted for cancelled requests.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Improved efficiency&lt;/strong&gt;: Resources are freed up to handle active requests.&lt;/li&gt;
&lt;/ul&gt;
&lt;hr&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;what-to-expect-in-your-logs&quot;&gt;What to expect in your logs&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#what-to-expect-in-your-logs&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;You may notice an increase in &lt;code&gt;499&lt;/code&gt; status codes for HTTP/3 traffic. For HTTP/3, a &lt;code&gt;499&lt;/code&gt; indicates the client &lt;a href=&quot;https://datatracker.ietf.org/doc/html/rfc9114#section-4.1.1&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;cancelled the request stream&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; before receiving a complete response — the underlying connection may remain open. This is a normal part of web traffic.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Tip&lt;/strong&gt;: If you use &lt;code&gt;499&lt;/code&gt; codes in availability calculations, consider whether client-initiated cancellations should be excluded from error rates. These typically represent normal user behavior — such as closing a browser, navigating away from a page, mobile network drops, or cancelling a download — rather than service issues.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;For more information, refer to &lt;a href=&quot;https://developers.stormtrust.net/support/troubleshooting/http-status-codes/4xx-client-error/error-499/&quot;&gt;Error 499&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Mon, 19 Jan 2026 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.15.0 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-12-19-terraform-v5.15.0-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-12-19-terraform-v5.15.0-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new Terraform v5 Provider. We are aware of the high number of issues reported by the Cloudflare community related to the v5 release. We have committed to releasing improvements on a &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5774&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2-3 week cadence&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; to ensure its stability and reliability, including the v5.15 release. We have also pivoted from an &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issue-to-issue approach to a resource-per-resource approach&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; - we will be focusing on specific resources to not only stabilize the resource but also ensure it is migration-friendly for those migrating from v4 to v5.&lt;/p&gt;
&lt;p&gt;Thank you for continuing to raise issues. They make our provider stronger and help us build products that reflect your needs.&lt;/p&gt;
&lt;p&gt;This release includes bug fixes, the stabilization of even more popular resources, and more.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#features&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;ai_search:&lt;/strong&gt; Add AI Search endpoints (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/6f02adb420e872457f71f95b49cb527663388915&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;6f02adb&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;certificate_pack:&lt;/strong&gt; Ensure proper Terraform resource ID handling for path parameters in API calls (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/081f32acab4ce9a194a7ff51c8e9fcabd349895a&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;081f32a&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;worker_version:&lt;/strong&gt; Support &lt;code&gt;startup_time_ms&lt;/code&gt; (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/286ab55bea8d5be0faa5a2b5b8b157e4a2214eba&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;286ab55&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_custom_entry:&lt;/strong&gt; Support &lt;code&gt;upload_status&lt;/code&gt; (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/7dc0fe3b23726ead8dc075f86728a0540846d90c&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;7dc0fe3&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_entry:&lt;/strong&gt; Support &lt;code&gt;upload_status&lt;/code&gt; (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/7dc0fe3b23726ead8dc075f86728a0540846d90c&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;7dc0fe3&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_integration_entry:&lt;/strong&gt; Support &lt;code&gt;upload_status&lt;/code&gt; (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/7dc0fe3b23726ead8dc075f86728a0540846d90c&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;7dc0fe3&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_predefined_entry:&lt;/strong&gt; Support &lt;code&gt;upload_status&lt;/code&gt; (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/7dc0fe3b23726ead8dc075f86728a0540846d90c&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;7dc0fe3&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_gateway_policy:&lt;/strong&gt; Support &lt;code&gt;forensic_copy&lt;/code&gt; (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/5741fd0ed9f7270d20731cc47ec45eb0403a628b&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;5741fd0&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_list:&lt;/strong&gt; Support additional types (category, location, device) (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/5741fd0ed9f7270d20731cc47ec45eb0403a628b&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;5741fd0&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;bug-fixes&quot;&gt;Bug fixes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#bug-fixes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;access_rules:&lt;/strong&gt; Add validation to prevent state drift. Ideally, we&apos;d use Semantic Equality but since that isn&apos;t an option, this will remove a foot-gun. (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/44577911b3cbe45de6279aefa657bdee73c0794d&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;4457791&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;cloudflare_pages_project:&lt;/strong&gt; Addressing drift issues (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/6edffcfcf187fdc9b10b624b9a9b90aed2fb2b2e&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;6edffcf&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;) (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/3db318e747423bf10ce587d9149e90edcd8a77b0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;3db318e&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;cloudflare_worker:&lt;/strong&gt; Can be cleanly imported (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/4859b52968bb25570b680df9813f8e07fd50728f&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;4859b52&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;cloudflare_worker:&lt;/strong&gt; Ensure clean imports (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/5b525bc478a4e2c9c0d4fd659b92cc7f7c18016a&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;5b525bc&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;list_items:&lt;/strong&gt; Add validation for IP List items to avoid inconsistent state (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/b6733dc4be909a5ab35895a88e519fc2582ccada&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;b6733dc&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_access_application:&lt;/strong&gt; Remove all conditions from sweeper (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/3197f1aed61be326d507d9e9e3b795b9f1d18fd7&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;3197f1a&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;spectrum_application:&lt;/strong&gt; Map missing fields during spectrum resource import (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6495&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6495&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;) (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/commit/ddb4e722b82c735825a549d651a9da219c142efa&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;ddb4e72&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrade-to-newer-version&quot;&gt;Upgrade to newer version&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrade-to-newer-version&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;We suggest waiting to migrate to v5 while we work on stabilization. This helps with avoiding any blocking issues while the Terraform resources are actively being &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;stabilized&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. We will be releasing a new migration tool in March 2026 to help support v4 to v5 transitions for our most popular resources.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform Provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/terraform/&quot;&gt;Documentation on using Terraform with Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Fri, 19 Dec 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.14.0 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-12-05-terraform-v5.14.0-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-12-05-terraform-v5.14.0-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new Terraform v5 Provider. We are aware of the high number of issues reported by the Cloudflare community related to the v5 release. We have committed to releasing improvements on a &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5774&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2-3 week cadence&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; to ensure its stability and reliability, including the v5.14 release. We have also pivoted from an &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issue-to-issue approach to a resource-per-resource approach&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; - we will be focusing on specific resources to not only stabilize the resource but also ensure it is migration-friendly for those migrating from v4 to v5.&lt;/p&gt;
&lt;p&gt;Thank you for continuing to raise issues. They make our provider stronger and help us build products that reflect your needs.&lt;/p&gt;
&lt;p&gt;This release includes bug fixes, the stabilization of even more popular resources, and more.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;deprecation-notice&quot;&gt;Deprecation notice&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#deprecation-notice&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Resource affected: &lt;code&gt;api_shield_discovery_operation&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Cloudflare continuously discovers and updates API endpoints and web assets of your web applications. To improve the maintainability of these dynamic resources, we are working on reducing the need to actively engage with discovered operations.&lt;/p&gt;
&lt;p&gt;The corresponding public API endpoint of &lt;a href=&quot;https://developers.cloudflare.com/api/resources/api_gateway/subresources/discovery/subresources/operations/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;discovered operations&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; is not affected and will continue to be supported.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#features&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;pages_project&lt;/strong&gt;: Add v4 -&amp;gt; v5 migration tests (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/pull/6506&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6506&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;bug-fixes&quot;&gt;Bug fixes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#bug-fixes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;account_members&lt;/strong&gt;: Makes member policies a set (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6488&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6488&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;pages_project&lt;/strong&gt;: Ensures non empty refresh plans (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6515&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6515&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;R2&lt;/strong&gt;: Improves sweeper (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6512&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6512&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_kv&lt;/strong&gt;: Ignores value import state for verify (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6521&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6521&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script&lt;/strong&gt;: No longer treats the migrations attribute as WriteOnly (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6489&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6489&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script&lt;/strong&gt;: Resolves resource drift when worker has unmanaged secret (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6504&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6504&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_device_posture_rule&lt;/strong&gt;: Preserves input.version and other fields (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6500&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6500&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;) and (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6503&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6503&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_custom_profile&lt;/strong&gt;: Adds sweepers for &lt;code&gt;dlp_custom_profile&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zone_subscription|account_subscription&lt;/strong&gt;: Adds &lt;code&gt;partners_ent&lt;/code&gt; as valid enum for &lt;code&gt;rate_plan.id&lt;/code&gt; (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6505&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6505&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zone&lt;/strong&gt;: Ensures datasource model schema parity (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6487&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6487&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;subscription&lt;/strong&gt;: Updates import signature to accept account_id/subscription_id to import account subscription (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6510&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6510&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrade-to-newer-version&quot;&gt;Upgrade to newer version&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrade-to-newer-version&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;We suggest waiting to migrate to v5 while we work on stabilization. This helps with avoiding any blocking issues while the Terraform resources are actively being &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;stabilized&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. We will be releasing a new migration tool in March 2026 to help support v4 to v5 transitions for our most popular resources.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform Provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.cloudflare.com/terraform/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Documentation on using Terraform with Cloudflare&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Fri, 05 Dec 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.13.0 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-11-20-terraform-v5.13.0-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-11-20-terraform-v5.13.0-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new Terraform v5 Provider. We are aware of the high number of issues reported by the Cloudflare community related to the v5 release. We have committed to releasing improvements on a &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5774&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;2-3 week cadence&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; to ensure its stability and reliability, including the v5.13 release. We have also pivoted from an &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6237&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issue-to-issue approach to a resource-per-resource approach&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; - we will be focusing on specific resources to not only stabilize the resource but also ensure it is migration-friendly for those migrating from v4 to v5.&lt;/p&gt;
&lt;p&gt;Thank you for continuing to raise issues. They make our provider stronger and help us build products that reflect your needs.&lt;/p&gt;
&lt;p&gt;This release includes new features, new resources and data sources, bug fixes, updates to our Developer Documentation, and more.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;breaking-change&quot;&gt;Breaking Change&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#breaking-change&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Please be aware that there are breaking changes for the &lt;code&gt;cloudflare_api_token&lt;/code&gt; and &lt;code&gt;cloudflare_account_token&lt;/code&gt; resources. These changes eliminate configuration drift caused by policy ordering differences in the Cloudflare API.&lt;/p&gt;
&lt;p&gt;For more specific information about the changes or the actions required, please see the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/releases/tag/v5.13.0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;detailed Repository changelog&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;features&quot;&gt;Features&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#features&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;New resources and data sources added&lt;/strong&gt;
&lt;ul&gt;
&lt;li&gt;cloudflare_connectivity_directory&lt;/li&gt;
&lt;li&gt;cloudflare_sso_connector&lt;/li&gt;
&lt;li&gt;cloudflare_universal_ssl_setting&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;api_token+account_tokens:&lt;/strong&gt; state upgrader and schema bump (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6472&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6472&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;docs:&lt;/strong&gt; make docs explicit when a resource does not have import support&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;magic_transit_connector:&lt;/strong&gt; support self-serve license key (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6398&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6398&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;worker_version:&lt;/strong&gt; add content_base64 support&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;worker_version:&lt;/strong&gt; boolean support for run_worker_first (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6407&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6407&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script_subdomains:&lt;/strong&gt; add import support  (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6375&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6375&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_access_application:&lt;/strong&gt; add proxy_endpoint for ZT Access Application (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6453&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6453&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dlp_predefined_profile:&lt;/strong&gt; Switch DLP Predefined Profile endpoints, introduce enabled_entries attribute&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;bug-fixes&quot;&gt;Bug Fixes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#bug-fixes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;account_token:&lt;/strong&gt; token policy order and nested resources (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6440&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6440&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;allow r2_bucket_event_notification to be applied twice without failing (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6419&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6419&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;cloudflare_worker+cloudflare_worker_version:&lt;/strong&gt; import for the resources (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6357&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6357&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;dns_record:&lt;/strong&gt; inconsistent apply error (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6452&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6452&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;pages_domain:&lt;/strong&gt; resource tests (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6338&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6338&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;pages_project:&lt;/strong&gt; unintended resource state drift (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6377&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6377&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;queue_consumer:&lt;/strong&gt; id population (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6181&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6181&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_kv:&lt;/strong&gt; multipart request  (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6367&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6367&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_kv:&lt;/strong&gt; updating workers metadata attribute to be read from endpoint (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6386&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6386&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script_subdomain:&lt;/strong&gt; add note to cloudflare_workers_script_subdomain about redundancy with cloudflare_worker (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6383&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6383&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;workers_script:&lt;/strong&gt; allow config.run_worker_first to accept list input&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_device_custom_profile_local_domain_fallback:&lt;/strong&gt; drift issues (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6365&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6365&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_device_custom_profile:&lt;/strong&gt; resolve drift issues (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6364&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6364&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_dex_test:&lt;/strong&gt; correct configurability for &apos;targeted&apos; attribute to fix drift&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;zero_trust_tunnel_cloudflared_config:&lt;/strong&gt; remove warp_routing from cloudflared_config (&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/6471&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#6471&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;)&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrading&quot;&gt;Upgrading&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrading&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;We suggest holding off on migration to v5 while we work on stabilization. This help will you avoid any blocking issues while the Terraform resources are actively being stabilized. We will be releasing a new migration tool in March 2026 to help support v4 to v5 transitions for our most popular resources.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-info&quot;&gt;For more info&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-info&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform Provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.cloudflare.com/terraform/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Documentation on using Terraform with Cloudflare&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Thu, 20 Nov 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals - Introducing email two-factor authentication</title><link>https://developers.stormtrust.net/changelog/post/2025-10-30-email-2FA/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-10-30-email-2FA/</guid><description>&lt;p&gt;Two-factor authentication (2FA) is one of the best ways to protect your account from the risk of account takeover. Cloudflare has offered phishing resistant 2FA options including hardware based keys (for example, a Yubikey) and app based TOTP (time-based one-time password) options which use apps like Google or Microsoft&apos;s Authenticator app. Unfortunately, while these solutions are very secure, they can be lost if you misplace the hardware based key, or lose the phone which includes that app. The result is that users sometimes get locked out of their accounts and need to contact support.&lt;/p&gt;
&lt;p&gt;Today, we are announcing the addition of email as a 2FA factor for all Cloudflare accounts. Email 2FA is in wide use across the industry as a least common denominator for 2FA because it is low friction, loss resistant, and still improves security over username/password login only. We also know that most commercial email providers already require 2FA, so your email address is usually well protected already.&lt;/p&gt;
&lt;p&gt;You can now enable email 2FA on the Cloudflare dashboard:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Go to &lt;strong&gt;Profile&lt;/strong&gt; at the top right corner.&lt;/li&gt;
&lt;li&gt;Select &lt;strong&gt;Authentication&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Under &lt;strong&gt;Two-Factor Authentication&lt;/strong&gt;, select &lt;strong&gt;Set up&lt;/strong&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;sign-in-security-best-practices&quot;&gt;Sign-in security best practices&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#sign-in-security-best-practices&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Cloudflare is critical infrastructure, and you should protect it as such. Review the following best practices and make sure you are doing your part to secure your account:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Use a unique password for every website, including Cloudflare, and store it in a password manager like 1Password or Keeper. These services are cross-platform and simplify the process of managing secure passwords.&lt;/li&gt;
&lt;li&gt;Use 2FA to make it harder for an attacker to get into your account in the event your password is leaked.&lt;/li&gt;
&lt;li&gt;Store your backup codes securely. A password manager is the best place since it keeps the backup codes encrypted, but you can also print them and put them somewhere safe in your home.&lt;/li&gt;
&lt;li&gt;If you use an app to manage your 2FA keys, enable cloud backup, so that you don&apos;t lose your keys in the event you lose your phone.&lt;/li&gt;
&lt;li&gt;If you use a custom email domain to sign in, &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/dashboard-sso/&quot;&gt;configure SSO&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;If you use a public email domain like Gmail or Hotmail, you can also use social login with Apple, GitHub, or Google to sign in.&lt;/li&gt;
&lt;li&gt;If you manage a Cloudflare account for work:
&lt;ul&gt;
&lt;li&gt;Have at least two administrators in case one of them unexpectedly leaves your company.&lt;/li&gt;
&lt;li&gt;Use SCIM to automate permissions management for members in your Cloudflare account.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Thu, 30 Oct 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Revamped Member Management UI</title><link>https://developers.stormtrust.net/changelog/post/2025-10-30-member-management-improvements/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-10-30-member-management-improvements/</guid><description>&lt;p&gt;As Cloudflare&apos;s platform has grown, so has the need for precise, role-based access control. We’ve redesigned the Member Management experience in the Dashboard to help administrators more easily discover, assign, and refine permissions for specific principals.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;whats-new&quot;&gt;What&apos;s New&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#whats-new&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Refreshed member invite flow&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We overhauled the Invite Members UI to simplify inviting users and assigning permissions.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=800,height=435,format=webp/_astro/2025-10-30-invite-experience.B7F3VQ_y.gif&quot; alt=&quot;Updated Invite Flow UX&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;435&quot;&gt;
&lt;p&gt;&lt;strong&gt;Refreshed Members Overview Page&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We&apos;ve updated the Members Overview Page to clearly display:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Member 2FA status&lt;/li&gt;
&lt;li&gt;Which members hold Super Admin privileges&lt;/li&gt;
&lt;li&gt;API access settings per member&lt;/li&gt;
&lt;li&gt;Member onboarding state (accepted vs pending invite)&lt;/li&gt;
&lt;/ul&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=3016,height=1424,format=webp/_astro/2025-10-30-member-management-screen.BLc2lx98.png&quot; alt=&quot;Updated Member Management Overview&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;3016&quot; height=&quot;1424&quot;&gt;
&lt;p&gt;&lt;strong&gt;New Member Permission Policies Details View&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We&apos;ve created a new member details screen that shows all permission policies associated with a member; including policies inherited from group associations to make it easier for members to understand the effective permissions they have.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=800,height=435,format=webp/_astro/2025-10-30-permission-policies-screen.pMj53si2.gif&quot; alt=&quot;Updated Permission Policies Details Screen&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;435&quot;&gt;
&lt;p&gt;&lt;strong&gt;Improved Member Permission Workflow&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;We redesigned the permission management experience to make it faster and easier for administrators to review roles and grant access.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=800,height=435,format=webp/_astro/2025-10-30-permission-policies-screen.pMj53si2.gif&quot; alt=&quot;Updated Member Permission Management UX&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;800&quot; height=&quot;435&quot;&gt;
&lt;p&gt;&lt;strong&gt;Account-scoped Policies Restrictions Relaxed&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Previously, customers could only associate a single account-scoped policy with a member. We&apos;ve relaxed this restriction, and now Administrators can now assign multiple account-scoped policies to the same member; bringing policy assignment behavior in-line with user-groups and providing greater flexibility in managing member permissions.&lt;/p&gt;</description><pubDate>Thu, 30 Oct 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Increased HTTP header size limit to 128 KB</title><link>https://developers.stormtrust.net/changelog/post/2025-10-16-header-limit-increase/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-10-16-header-limit-increase/</guid><description>&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;cdn-now-supports-128-kb-request-and-response-headers-&quot;&gt;CDN now supports 128 KB request and response headers 🚀&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#cdn-now-supports-128-kb-request-and-response-headers-&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;We&apos;re excited to announce a significant increase in the maximum header size supported by Cloudflare&apos;s Content Delivery Network (CDN). Cloudflare now supports up to &lt;strong&gt;128 KB&lt;/strong&gt; for both &lt;strong&gt;request and response headers&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Previously, customers were limited to a total of 32 KB for request or response headers, with a maximum of 16 KB per individual header. Larger headers could cause requests to fail with &lt;code&gt;HTTP 413&lt;/code&gt; (Request Header Fields Too Large) errors.&lt;/p&gt;
&lt;hr&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;whats-new&quot;&gt;What&apos;s new?&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#whats-new&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Support for large headers:&lt;/strong&gt; You can now utilize much larger headers, whether as a single large header up to 128 KB or split over multiple headers.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Reduces &lt;code&gt;413&lt;/code&gt; and &lt;code&gt;520&lt;/code&gt; HTTP errors:&lt;/strong&gt; This change drastically reduces the likelihood of customers encountering &lt;code&gt;HTTP 413&lt;/code&gt; errors from large request headers or &lt;code&gt;HTTP 520&lt;/code&gt; errors caused by oversized response headers, improving the overall reliability of your web applications.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Enhanced functionality:&lt;/strong&gt; This is especially beneficial for applications that rely on:
&lt;ul&gt;
&lt;li&gt;A large number of cookies.&lt;/li&gt;
&lt;li&gt;Large Content-Security-Policy (CSP) response headers.&lt;/li&gt;
&lt;li&gt;Advanced use cases with Cloudflare Workers that generate large response headers.&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;This enhancement improves compatibility with Cloudflare&apos;s CDN, enabling more use cases that previously failed due to header size limits.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;To learn more and get started, refer to the &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/reference/connection-limits/#request-limits&quot;&gt;Cloudflare Fundamentals documentation&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Thu, 16 Oct 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Single sign-on now manageable in the user experience</title><link>https://developers.stormtrust.net/changelog/post/2025-10-14-sso-self-service-ux/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-10-14-sso-self-service-ux/</guid><description>&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=1378,height=877,format=webp/_astro/2025-10-14-sso-configuration-ux.DLkIKSax.png&quot; alt=&quot;Screenshot of new user experience for managing SSO&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1378&quot; height=&quot;877&quot;&gt;
&lt;p&gt;During Birthday Week, we announced that &lt;a href=&quot;https://blog.cloudflare.com/enterprise-grade-features-for-all/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;single sign-on (SSO) is available for free&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; to everyone who signs in with a custom email domain and maintains a compatible &lt;a href=&quot;https://developers.cloudflare.com/cloudflare-one/integrations/identity-providers/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;identity provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. SSO minimizes user friction around login and provides the strongest security posture available. At the time, this could only be configured using the API.&lt;/p&gt;
&lt;p&gt;Today, we are launching a new user experience which allows users to manage their SSO configuration from within the Cloudflare dashboard. You can access this by going to &lt;strong&gt;Manage account&lt;/strong&gt; &amp;gt; &lt;strong&gt;Members&lt;/strong&gt; &amp;gt; &lt;strong&gt;Settings&lt;/strong&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/dashboard-sso/&quot;&gt;Cloudflare dashboard SSO&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Tue, 14 Oct 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Automated reminders for backup codes</title><link>https://developers.stormtrust.net/changelog/post/2025-10-07-recovery-codes/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-10-07-recovery-codes/</guid><description>&lt;p&gt;The most common reason users contact Cloudflare support is lost two-factor authentication (2FA) credentials. Cloudflare supports both app-based and hardware keys for 2FA, but you could lose access to your account if you lose these. Over the past few weeks, we have been rolling out email and in-product reminders that remind you to also download backup codes (sometimes called recovery keys) that can get you back into your account in the event you lose your 2FA credentials. Download your backup codes now by logging into Cloudflare, then navigating to &lt;strong&gt;Profile&lt;/strong&gt; &amp;gt; &lt;strong&gt;Security &amp;amp; Authentication&lt;/strong&gt; &amp;gt; &lt;strong&gt;Backup codes&lt;/strong&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;sign-in-security-best-practices&quot;&gt;Sign-in security best practices&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#sign-in-security-best-practices&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;Cloudflare is critical infrastructure, and you should protect it as such. Please review the following best practices and make sure you are doing your part to secure your account.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Use a unique password for every website, including Cloudflare, and store it in a password manager like 1Password or Keeper. These services are cross-platform and simplify the process of managing secure passwords.&lt;/li&gt;
&lt;li&gt;Use 2FA to make it harder for an attacker to get into your account in the event your password is leaked&lt;/li&gt;
&lt;li&gt;Store your backup codes securely. A password manager is the best place since it keeps the backup codes encrypted, but you can also print them and put them somewhere safe in your home.&lt;/li&gt;
&lt;li&gt;If you use an app to manage your 2FA keys, enable cloud backup, so that you don&apos;t lose your keys in the event you lose your phone.&lt;/li&gt;
&lt;li&gt;If you use a custom email domain to sign in, &lt;a href=&quot;https://developers.cloudflare.com/fundamentals/manage-members/dashboard-sso/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;configure SSO&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;If you use a public email domain like Gmail or Hotmail, you can also use social login with Apple, GitHub, or Google to sign in.&lt;/li&gt;
&lt;li&gt;If you manage a Cloudflare account for work:
&lt;ul&gt;
&lt;li&gt;Have at least two administrators in case one of them unexpectedly leaves your company&lt;/li&gt;
&lt;li&gt;Use SCIM to automate permissions management for members in your Cloudflare account&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Tue, 07 Oct 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Access - Fine-grained Permissioning for Access for Apps, IdPs, &amp; Targets now in Public Beta</title><link>https://developers.stormtrust.net/changelog/post/2025-10-01-fine-grained-permissioning-beta/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-10-01-fine-grained-permissioning-beta/</guid><description>
&lt;p&gt;Fine-grained permissions for &lt;strong&gt;Access Applications, Identity Providers (IdPs), and Targets&lt;/strong&gt; is now available in Public Beta. This expands our RBAC model beyond account &amp;amp; zone-scoped roles, enabling administrators to grant permissions scoped to individual resources.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;whats-new&quot;&gt;What&apos;s New&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#whats-new&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://developers.cloudflare.com/cloudflare-one/access-controls/applications/http-apps/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Access Applications&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/strong&gt;: Grant admin permissions to specific Access Applications.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://developers.cloudflare.com/cloudflare-one/integrations/identity-providers/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Identity Providers&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/strong&gt;: Grant admin permissions to individual Identity Providers.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href=&quot;https://developers.cloudflare.com/cloudflare-one/access-controls/applications/non-http/infrastructure-apps/#1-add-a-target&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Targets&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/strong&gt;: Grant admin rights to specific Targets&lt;/li&gt;
&lt;/ul&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=3004,height=1410,format=webp/_astro/2025-10-01-fine-grained-permissioning-ux.BWVmQsVF.png&quot; alt=&quot;Updated Permissions Policy UX&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;3004&quot; height=&quot;1410&quot;&gt;&lt;aside role=&quot;note&quot; aria-label=&quot;Note&quot; class=&quot;aside-card flex items-start gap-3 rounded-lg px-4 py-3 my-4&quot; style=&quot;--_c: var(--nb-info); --_t: var(--nb-info-muted);&quot; data-astro-cid-znle5jil&gt;&lt;span class=&quot;flex h-[1.375em] shrink-0 items-center&quot; aria-hidden=&quot;true&quot; data-astro-cid-znle5jil&gt;&lt;svg width=&quot;1em&quot; height=&quot;1em&quot; viewBox=&quot;0 0 256 256&quot; class=&quot;h-[1em] w-[1em]&quot; data-astro-cid-znle5jil=&quot;true&quot; data-icon=&quot;ph:info&quot;&gt;&lt;path fill=&quot;currentColor&quot; d=&quot;M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m0 192a88 88 0 1 1 88-88a88.1 88.1 0 0 1-88 88m16-40a8 8 0 0 1-8 8a16 16 0 0 1-16-16v-40a8 8 0 0 1 0-16a16 16 0 0 1 16 16v40a8 8 0 0 1 8 8m-32-92a12 12 0 1 1 12 12a12 12 0 0 1-12-12&quot;/&gt;&lt;/svg&gt;&lt;/span&gt;&lt;div class=&quot;flex min-w-0 flex-1 flex-col gap-0.5&quot; data-astro-cid-znle5jil&gt;&lt;p class=&quot;m-0 text-base leading-snug font-semibold&quot; data-astro-cid-znle5jil&gt;Note&lt;/p&gt;&lt;div class=&quot;aside-card-body text-sm leading-normal&quot; data-astro-cid-znle5jil&gt;&lt;p&gt;During the public beta, members must also be assigned an account-scoped, read only role to view resources in the dashboard. This restriction will be lifted in a future release.&lt;/p&gt;&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Account Read Only&lt;/strong&gt; plus a fine-grained permission for a specific App, IdP, or Target&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Cloudflare Zero Trust Read Only&lt;/strong&gt; plus fine-grained permission for a specific App, IdP, or Target&lt;/li&gt;
&lt;/ul&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;
&lt;p&gt;For more info:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/roles/&quot;&gt;Get started with Cloudflare Permissioning&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/manage&quot;&gt;Manage Member Permissioning via the UI &amp;amp; API&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Thu, 02 Oct 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Access</category></item><item><title>Cloudflare Fundamentals - Return markdown</title><link>https://developers.stormtrust.net/changelog/post/2025-10-01-md-returned/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-10-01-md-returned/</guid><description>&lt;p&gt;Users can now specify that they want to retrieve Cloudflare documentation as markdown rather than the previous HTML default. This can significantly reduce token consumption when used alongside Large Language Model (LLM) tools.&lt;/p&gt;
&lt;figure class=&quot;nb-code-figure&quot; data-nb-lang=&quot;sh&quot;&gt;&lt;pre class=&quot;astro-code astro-code-themes github-light github-dark nb-shiki-c6xiwz&quot; tabindex=&quot;0&quot; data-language=&quot;sh&quot; data-nb-lang=&quot;sh&quot;&gt;&lt;code&gt;&lt;span class=&quot;line&quot;&gt;&lt;span class=&quot;nb-shiki-1t8gfj&quot;&gt;curl&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; https://developers.cloudflare.com/workers/&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt; -H&lt;/span&gt;&lt;span class=&quot;nb-shiki-mdbnqw&quot;&gt; &apos;Accept: text/markdown&apos;&lt;/span&gt;&lt;span class=&quot;nb-shiki-dzsirb&quot;&gt;  -v&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;
&lt;p&gt;If you maintain your own site and want to adopt this practice using Cloudflare Workers for your own users you can follow the example &lt;a href=&quot;https://github.com/cloudflare/cloudflare-docs/pull/25493&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;here&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;</description><pubDate>Wed, 01 Oct 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Sign in with GitHub</title><link>https://developers.stormtrust.net/changelog/post/2025-09-25-sign-in-with-github/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-09-25-sign-in-with-github/</guid><description>&lt;p&gt;Cloudflare has launched sign in with GitHub as a log in option. This feature is available to all users with a verified email address who are not using SSO. To use it, simply click on the &lt;code&gt;Sign in with GitHub&lt;/code&gt; button on the dashboard login page. You will be logged in with your primary GitHub email address.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/user-profiles/login/&quot;&gt;Log in to Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Thu, 25 Sep 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - SSO for all</title><link>https://developers.stormtrust.net/changelog/post/2025-09-25-sso-for-all/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-09-25-sso-for-all/</guid><description>&lt;p&gt;Single sign-on (SSO) streamlines the process of logging into Cloudflare for Enterprise customers who manage a custom email domain and manage their own identity provider. Instead of managing a password and two-factor authentication credentials directly for Cloudflare, SSO lets you reuse your existing login infrastructure to seamlessly log in. SSO also provides additional security opportunities such as device health checks which are not available natively within Cloudflare.&lt;/p&gt;
&lt;p&gt;Historically, SSO was only available for Enterprise accounts. Today, we are announcing that we are making SSO available to all users for free. We have also added the ability to directly manage SSO configurations using the API. This removes the previous requirement to contact support to configure SSO.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://blog.cloudflare.com/enterprise-grade-features-for-all/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Every Cloudflare feature, available to all&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/dashboard-sso/&quot;&gt;Configure Dashboard SSO&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Thu, 25 Sep 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Reminders about two-factor authentication backup codes</title><link>https://developers.stormtrust.net/changelog/post/2025-09-08-reminders-about-two-factor-authentication-backup-codes/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-09-08-reminders-about-two-factor-authentication-backup-codes/</guid><description>&lt;p&gt;Two-factor authentication is the best way to help protect your account from account takeovers, but if you lose your second factor, you could be locked out of your account. Lock outs are one of the top reasons customers contact Cloudflare support, and our policies often don&apos;t allow us to bypass two-factor authentication for customers that are locked out. Today we are releasing an improvement where Cloudflare will periodically remind you to securely save your backup codes so you don&apos;t get locked out in the future.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/user-profiles/2fa/&quot;&gt;Two-factor authentication&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Mon, 08 Sep 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals - Introducing new headers for rate limiting on Cloudflare&apos;s API</title><link>https://developers.stormtrust.net/changelog/post/2025-09-03-rate-limiting-improvement/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-09-03-rate-limiting-improvement/</guid><description>&lt;p&gt;Cloudflare&apos;s API now supports rate limiting headers using the pattern developed by the &lt;a href=&quot;https://ietf-wg-httpapi.github.io/ratelimit-headers/draft-ietf-httpapi-ratelimit-headers.html&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;IETF draft on rate limiting&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. This allows API consumers to know how many more calls are left until the rate limit is reached, as well as how long you will need to wait until more capacity is available.&lt;/p&gt;
&lt;p&gt;Our SDKs automatically work with these new headers, backing off when rate limits are approached. There is no action required for users of the latest Cloudflare SDKs to take advantage of this.&lt;/p&gt;
&lt;p&gt;As always, if you need any help with rate limits, please contact Support.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;new-headers&quot;&gt;New Headers&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#new-headers&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Headers that are always returned:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;Ratelimit&lt;/code&gt;: List of service limit items, composed of the limit name, the remaining quota (&lt;code&gt;r&lt;/code&gt;) and the time next window resets (&lt;code&gt;t&lt;/code&gt;). For example: &lt;code&gt;&quot;default&quot;;r=50;t=30&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;Ratelimit-Policy&lt;/code&gt;: List of quota policy items, composed of the policy name, the total quota (&lt;code&gt;q&lt;/code&gt;) and the time window the quota applies to (&lt;code&gt;w&lt;/code&gt;). For example: &lt;code&gt;&quot;burst&quot;;q=100;w=60&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Returned only when a rate limit has been reached (error code: 429):&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Retry-After: Number of Seconds until more capacity is available, rounded up&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;sdk-back-offs&quot;&gt;SDK Back offs&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#sdk-back-offs&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;All of Cloudflare&apos;s latest SDKs will automatically respond to the headers, instituting a backoff when limits are approached.&lt;/li&gt;
&lt;/ul&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;graphql-and-edge-apis&quot;&gt;GraphQL and Edge APIs&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#graphql-and-edge-apis&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;These new headers and back offs are only available for Cloudflare REST APIs, and will not affect GraphQL.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-information&quot;&gt;For more information&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-information&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.cloudflare.com/fundamentals/api/reference/limits/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Rate limits at Cloudflare&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Wed, 03 Sep 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.9 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-08-29-terrform-v5.9-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-08-29-terrform-v5.9-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new &lt;a href=&quot;https://developers.stormtrust.net/changelog/2025-02-03-terraform-v5-provider/&quot;&gt;Terraform v5 Provider&lt;/a&gt;. We are aware of the high number of &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; reported by the Cloudflare community related to the v5 release. We have committed to releasing improvements on a 2 week cadence to ensure its stability and reliability, including the v5.9 release. We have also pivoted from an issue-to-issue approach to a resource-per-resource approach - we will be focusing on specific resources for every release, stabilizing the release, and closing all associated bugs with that resource before moving onto resolving migration issues.&lt;/p&gt;
&lt;p&gt;Thank you for continuing to raise issues. We triage them weekly and they help make our products stronger.&lt;/p&gt;
&lt;p&gt;This release includes a new resource, &lt;code&gt;cloudflare_snippet&lt;/code&gt;, which replaces &lt;code&gt;cloudflare_snippets&lt;/code&gt;. &lt;code&gt;cloudflare_snippet&lt;/code&gt; is now considered deprecated but can still be used. Please utilize &lt;code&gt;cloudflare_snippet&lt;/code&gt; as soon as possible.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Resources stabilized:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zone_setting&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_worker_script&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_worker_route&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;tiered_cache&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;NEW&lt;/strong&gt; resource &lt;code&gt;cloudflare_snippet&lt;/code&gt; which should be used in place of &lt;code&gt;cloudflare_snippets&lt;/code&gt;. &lt;code&gt;cloudflare_snippets&lt;/code&gt; is now deprecated. This enables the management of Cloudflare&apos;s snippet functionality through Terraform.&lt;/li&gt;
&lt;li&gt;DNS Record Improvements: Enhanced handling of DNS record drift detection&lt;/li&gt;
&lt;li&gt;Load Balancer Fixes: Resolved &lt;code&gt;created_on&lt;/code&gt; field inconsistencies and improved pool configuration handling&lt;/li&gt;
&lt;li&gt;Bot Management: Enhanced auto-update model state consistency and fight mode configurations&lt;/li&gt;
&lt;li&gt;Other bug fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For a more detailed look at all of the changes, refer to the
&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/releases/tag/v5.9.0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;changelog&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; in GitHub.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;issues-closed&quot;&gt;Issues Closed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#issues-closed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5921&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5921: In cloudflare_ruleset removing an existing rule causes recreation of later rules&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5904&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5904: cloudflare_zero_trust_access_application is not idempotent&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5898&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5898: (cloudflare_workers_script) Durable Object migrations not applied&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5892&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5892: cloudflare_workers_script secret_text environment variable gets replaced on every deploy&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5891&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5891: cloudflare_zone suddenly started showing drift&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5882&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5882: cloudflare_zero_trust_list always marked for change due to read only attributes&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5879&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5879: cloudflare_zero_trust_gateway_certificate unable to manage resource (cant mark as active/inactive)&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5858&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5858: cloudflare_dns_records is always updated in-place&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5839&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5839: Recurring change on cloudflare_zero_trust_gateway_policy after upgrade to V5 provider &amp;amp; also setting expiration fails&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5811&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5811: Reusable policies are imported as inline type for cloudflare_zero_trust_access_application&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5795&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5795: cloudflare_zone_setting inconsistent value of &quot;editable&quot; upon apply&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5789&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5789: Pagination issue fetching all policies in &quot;cloudflare_zero_trust_access_policies&quot; data source&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5770&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5770: cloudflare_zero_trust_access_application type warp diff on every apply&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5765&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5765: V5 / cloudflare_zone_dnssec fails with HTTP/400 &quot;Malformed request body&quot;&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5755&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5755: Unable to manage Cloudflare managed WAF rules via Terraform&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5738&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5738: v4 to v5 upgrade failing Error: no schema available AND Unable to Read Previously Saved State for UpgradeResourceState&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5727&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5727: cloudflare_ruleset http_request_cache_settings bypass mismatch between dashboard and terraform&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5700&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5700: cloudflare_account_member invalid type &apos;string&apos; for field &apos;roles&apos;&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you have an unaddressed issue with the provider, we encourage you to check the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;open issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; and open a new issue if one does not already exist for what you are experiencing.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrading&quot;&gt;Upgrading&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrading&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;We suggest holding off on migration to v5 while we work on stabilization. This help will you avoid any blocking issues while the Terraform resources are actively being stabilized.&lt;/p&gt;
&lt;p&gt;If you&apos;d like more information on migrating from v4 to v5, please make use of the &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;migration guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. We have provided automated migration scripts using Grit which simplify the transition. These do not support implementations which use Terraform modules, so customers making use of modules need to migrate manually. Please make use of &lt;code&gt;terraform plan&lt;/code&gt; to test
your changes before applying, and let us know if you encounter any additional issues by reporting to our &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;GitHub repository&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-info&quot;&gt;For more info&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-info&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/terraform/&quot;&gt;Documentation on using Terraform with Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;GitHub Repository&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Fri, 29 Aug 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.8.4 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-08-15-terraform-v5.8.4-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-08-15-terraform-v5.8.4-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new &lt;a href=&quot;https://developers.stormtrust.net/changelog/2025-02-03-terraform-v5-provider/&quot;&gt;Terraform v5 Provider&lt;/a&gt;. We are aware of the high number of &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; reported by the Cloudflare Community related to the v5 release. We have committed to releasing improvements on a two week cadence to ensure stability and reliability.&lt;/p&gt;
&lt;p&gt;One key change we adopted in recent weeks is a pivot to more comprehensive, test-driven development. We are still evaluating individual issues, but are also investing in much deeper testing to drive our stabilization efforts. We will subsequently be investing in comprehensive migration scripts. As a result, you will see several of the highest traffic APIs have been stabilized in the most recent release, and are supported by comprehensive acceptance tests.&lt;/p&gt;
&lt;p&gt;Thank you for continuing to raise issues. We triage them weekly and they help make our products stronger.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Resources stabilized:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cloudflare_argo_smart_routing&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_bot_management&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_list&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_list_item&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_load_balancer&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_load_balancer_monitor&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_load_balancer_pool&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_spectrum_application&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_managed_transforms&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_url_normalization_settings&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_snippet&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_snippet_rules&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_application&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_group&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_identity_provider&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_mtls_certificate&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_mtls_hostname_settings&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_policy&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zone&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Multipart handling restored for &lt;code&gt;cloudflare_snippet&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_bot_management&lt;/code&gt; diff issues resolves when running &lt;code&gt;terraform plan&lt;/code&gt; and &lt;code&gt;terraform apply&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Other bug fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For a more detailed look at all of the changes, refer to the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/releases/tag/v5.8.4&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;changelog&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; in GitHub.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;issues-closed&quot;&gt;Issues Closed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#issues-closed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5017&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5017: &apos;Uncaught Error: No such module&apos; using cloudflare_snippets&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5701&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5701: cloudflare_workers_script migrations for Durable Objects not recorded in tfstate; cannot be upgraded between versions&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5640&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5640: cloudflare_argo_smart_routing importing doesn&apos;t read the actual value&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you have an unaddressed issue with the provider, we encourage you to check the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;open issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; and open a new one if one does not already exist for what you are experiencing.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrading&quot;&gt;Upgrading&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrading&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;We suggest holding off on migration to v5 while we work on stabilization. This will help you avoid any blocking issues while the Terraform resources are actively being stabilized.&lt;/p&gt;
&lt;p&gt;If you&apos;d like more information on migrating to v5, please make use of the &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;migration guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. We have provided automated migration scripts using Grit which simplify the transition. These migration scripts do not support implementations which use Terraform modules, so customers making use of modules need to migrate manually. Please make use of &lt;code&gt;terraform plan&lt;/code&gt; to test your changes before applying, and let us know if you encounter any additional issues by reporting to our &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;GitHub repository&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-info&quot;&gt;For more info&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-info&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/terraform/&quot;&gt;Documentation on using Terraform with Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Fri, 15 Aug 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.8.2 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-08-01-terraform-v5.8.2-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-08-01-terraform-v5.8.2-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new &lt;a href=&quot;https://developers.stormtrust.net/changelog/2025-02-03-terraform-v5-provider/&quot;&gt;Terraform v5 Provider&lt;/a&gt;. We are aware of the high number of &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; reported by the Cloudflare community related to the v5 release. We have committed to releasing improvements on a 2 week cadeance to ensure it&apos;s stability and reliability. We have also pivoted from an issue-to-issue approach to a resource-per-resource approach - we will be focusing on specific resources for every release, stabilizing the release and closing all associated bugs with that resource before moving onto resolving migration issues.&lt;/p&gt;
&lt;p&gt;Thank you for continuing to raise issues. We triage them weekly and they help make our products stronger.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Resources stabilized:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cloudflare_custom_pages&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_page_rule&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_dns_record&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_argo_tiered_caching&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Addressed chronic drift issues in &lt;code&gt;cloudflare_logpush_job&lt;/code&gt;, &lt;code&gt;cloudflare_zero_trust_dns_location&lt;/code&gt;, &lt;code&gt;cloudflare_ruleset&lt;/code&gt; &amp;amp; &lt;code&gt;cloudflare_api_token&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zone_subscription&lt;/code&gt; returns expected values &lt;code&gt;rate_plan.id&lt;/code&gt; from former versions&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_workers_script&lt;/code&gt; can now successfully be destroyed with bindings &amp;amp; migration for Durable Objects now recorded in tfstate&lt;/li&gt;
&lt;li&gt;Ability to configure &lt;code&gt;add_headers&lt;/code&gt; under &lt;code&gt;cloudflare_zero_trust_gateway_policy&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Other bug fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For a more detailed look at all of the changes, see the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/releases/tag/v5.8.2&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;changelog&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; in GitHub.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;issues-closed&quot;&gt;Issues Closed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#issues-closed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5666&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5666: cloudflare_ruleset example lists id which is a read-only field&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5578&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5578: cloudflare_logpush_job plan always suggests changes&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5552&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5552: 5.4.0: Since provider update, existing cloudflare_list_item would be recreated &quot;created&quot; state&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5670&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5670: cloudflare_zone_subscription: uses wrong ID field in Read/Update&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5548&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5548: cloudflare_api_token resource always shows changes (drift)&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5634&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5634: cloudflare_workers_script with bindings fails to be destroyed&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5616&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5616: cloudflare_workers_script Unable to deploy worker assets&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5331&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5331: cloudflare_workers_script 500 internal server error when uploading python&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5701&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5701: cloudflare_workers_script migrations for Durable Objects not recorded in tfstate; cannot be upgraded between versions&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5704&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5704: cloudflare_workers_script randomly fails to deploy when changing compatibility_date&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5439&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5439: cloudflare_workers_script (v5.2.0) ignoring content and bindings properties&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5522&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5522: cloudflare_workers_script always detects changes after apply&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5693&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5693: cloudflare_zero_trust_access_identity_provider gives recurring change on OTP pin login&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5567&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5567: cloudflare_r2_custom_domain doesn&apos;t roundtrip jurisdiction properly&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5179&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5179: Bad request with when creating cloudflare_api_shield_schema resource&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you have an unaddressed issue with the provider, we encourage you to check the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;open issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; and open a new one if one does not already exist for what you are experiencing.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrading&quot;&gt;Upgrading&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrading&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;We suggest holding off on migration to v5 while we work on stabilization. This help will you avoid any blocking issues while the Terraform resources are actively being stabilized.&lt;/p&gt;
&lt;p&gt;If you&apos;d like more information on migrating from v4 to v5, please make use of the &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;migration guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. We have provided automated migration scripts using Grit which simplify the transition, although these do not support implementations which use Terraform modules, so customers making use of modules need to migrate manually. Please make use of &lt;code&gt;terraform plan&lt;/code&gt; to test your changes before applying, and let us know if you encounter any additional issues by reporting to our &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;GitHub repository&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-info&quot;&gt;For more info&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-info&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/terraform/&quot;&gt;Documentation on using Terraform with Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Fri, 01 Aug 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.7.0 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-07-11-terraform-v5.7.0-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-07-11-terraform-v5.7.0-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new &lt;a href=&quot;https://developers.stormtrust.net/changelog/2025-02-03-terraform-v5-provider/&quot;&gt;Terraform v5 Provider&lt;/a&gt;. We are aware of the high number of &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; reported by the Cloudflare community related to the v5 release, with 13.5% of resources impacted. We have committed to releasing improvements on a 2 week cadeance to ensure it&apos;s stability and relability, including the v5.7 release.&lt;/p&gt;
&lt;p&gt;Thank you for continuing to raise issues and please keep an eye on this changelog for more information about upcoming releases.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Addressed permanent diff bug on Cloudflare Tunnel config&lt;/li&gt;
&lt;li&gt;State is now saved correctly for Zero Trust Access applications&lt;/li&gt;
&lt;li&gt;Exact match is now working as expected within &lt;code&gt;data.cloudflare_zero_trust_access_applications&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_policy&lt;/code&gt; now supports OIDC claims &amp;amp; diff issues resolved&lt;/li&gt;
&lt;li&gt;Self hosted applications with private IPs no longer require a public domain for &lt;code&gt;cloudflare_zero_trust_access_application&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;New resource:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_tunnel_warp_connector&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Other bug fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For a more detailed look at all of the changes, see the
&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/releases/tag/v5.7.0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;changelog&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; in GitHub.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;issues-closed&quot;&gt;Issues Closed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#issues-closed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5563&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5563: cloudflare_logpull_retention is missing import&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5608&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5608: cloudflare_zero_trust_access_policy in 5.5.0 provider gives error upon apply unexpected new value: .app_count: was cty.NumberIntVal(0), but now cty.NumberIntVal(1)&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5612&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5612: data.cloudflare_zero_trust_access_applications does not exact match&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5532&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5532: cloudflare_zero_trust_access_identity_provider detects changes on every plan&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5662&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5662: cloudflare_zero_trust_access_policy does not support OIDC claims&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5565&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5565: Running Terraform with the cloudflare_zero_trust_access_policy resource results in updates on every apply, even when no changes are made - breaks idempotency&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5529&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5529: cloudflare_zero_trust_access_application: self hosted applications with private ips require public domain &lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you have an unaddressed issue with the provider, we encourage you to check the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;open issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; and open a new one if one does not already exist for what you are experiencing.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrading&quot;&gt;Upgrading&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrading&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;We suggest holding on migration to v5 while we work on stabilization of the v5 provider. This will ensure Cloudflare can work ahead and avoid any blocking issues.&lt;/p&gt;
&lt;p&gt;If you&apos;d like more information on migrating from v4 to v5, please make use of the
&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;migration guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. We have
provided automated migration scripts using Grit which simplify the transition, although these do not support implementations which
use Terraform modules, so customers making use of modules need to migrate manually. Please make use of &lt;code&gt;terraform plan&lt;/code&gt; to test
your changes before applying, and let us know if you encounter any additional issues by reporting to our
&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;GitHub repository&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-info&quot;&gt;For more info&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-info&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/terraform/&quot;&gt;Documentation on using Terraform with Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Mon, 14 Jul 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals - Cloudflare User Groups &amp; SCIM User Groups are now in GA</title><link>https://developers.stormtrust.net/changelog/post/2025-06-23-user-groups-ga/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-06-23-user-groups-ga/</guid><description>&lt;p&gt;We&apos;re announcing the GA of &lt;strong&gt;User Groups for Cloudflare Dashboard&lt;/strong&gt; and &lt;strong&gt;System for Cross Domain Identity Management (SCIM) User Groups&lt;/strong&gt;, strengthening our RBAC capabilities with stable, production-ready primitives for managing access at scale.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What&apos;s New&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;User Groups [GA]&lt;/strong&gt;: &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/user-groups/&quot;&gt;User Groups&lt;/a&gt; are a new Cloudflare IAM primitive that enable administrators to create collections of account members that are treated equally from an access control perspective. User Groups can be assigned permission policies, with individual members in the group inheriting all permissions granted to the User Group. User Groups can be created manually or via our APIs.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;SCIM User Groups [GA]&lt;/strong&gt;: Centralize &amp;amp; simplify your user and group management at scale by syncing memberships directly from your upstream identity provider (like Okta or Entra ID) to the Cloudflare Platform. This ensures Cloudflare stays in sync with your identity provider, letting you apply Permission Policies to those synced groups directly within the Cloudflare Dashboard.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Stability &amp;amp; Scale&lt;/strong&gt;:
These features have undergone extensive testing during the Public Beta period and are now ready for production use across enterprises of all sizes.&lt;/p&gt;
&lt;aside role=&quot;note&quot; aria-label=&quot;Note&quot; class=&quot;aside-card flex items-start gap-3 rounded-lg px-4 py-3 my-4&quot; style=&quot;--_c: var(--nb-info); --_t: var(--nb-info-muted);&quot; data-astro-cid-znle5jil&gt;&lt;span class=&quot;flex h-[1.375em] shrink-0 items-center&quot; aria-hidden=&quot;true&quot; data-astro-cid-znle5jil&gt;&lt;svg width=&quot;1em&quot; height=&quot;1em&quot; viewBox=&quot;0 0 256 256&quot; class=&quot;h-[1em] w-[1em]&quot; data-astro-cid-znle5jil=&quot;true&quot; data-icon=&quot;ph:info&quot;&gt;&lt;path fill=&quot;currentColor&quot; d=&quot;M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m0 192a88 88 0 1 1 88-88a88.1 88.1 0 0 1-88 88m16-40a8 8 0 0 1-8 8a16 16 0 0 1-16-16v-40a8 8 0 0 1 0-16a16 16 0 0 1 16 16v40a8 8 0 0 1 8 8m-32-92a12 12 0 1 1 12 12a12 12 0 0 1-12-12&quot;/&gt;&lt;/svg&gt;&lt;/span&gt;&lt;div class=&quot;flex min-w-0 flex-1 flex-col gap-0.5&quot; data-astro-cid-znle5jil&gt;&lt;p class=&quot;m-0 text-base leading-snug font-semibold&quot; data-astro-cid-znle5jil&gt;Note&lt;/p&gt;&lt;div class=&quot;aside-card-body text-sm leading-normal&quot; data-astro-cid-znle5jil&gt;&lt;p&gt;SCIM Virtual Groups  (identified by the pattern &lt;code&gt;CF-&amp;lt;accountID&amp;gt;-&amp;lt;Role Name&amp;gt;&lt;/code&gt; in your IdP) are now officially deprecated as of June 2, 2025. SCIM Virtual Groups end-of-life will take effect on December 2, 2025. We strongly recommend migrating to SCIM User Groups to ensure continued support for SCIM synchronization to the Cloudflare Dashboard. If you haven’t used Virtual Groups, no action is required.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;
&lt;p&gt;For more info:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/user-groups/&quot;&gt;Get started with User Groups&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/account/account-security/scim-setup/&quot;&gt;Explore our SCIM integration guide&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Mon, 23 Jun 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.6.0 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-06-17-terraform-v5.6.0-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-06-17-terraform-v5.6.0-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new &lt;a href=&quot;https://developers.stormtrust.net/changelog/2025-02-03-terraform-v5-provider/&quot;&gt;Terraform v5 Provider&lt;/a&gt;.
Unlike the earlier Terraform providers, v5 is automatically generated based on the OpenAPI Schemas for our REST APIs. Since
launch, we have seen an unexpectedly high number of &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;
reported by customers. These issues currently impact about 15% of resources. We have been working diligently to address
these issues across the company, and have released the v5.6.0 release which includes a number of bug fixes. Please keep an
eye on this changelog for more information about upcoming releases.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Broad fixes across resources with recurring diffs, including, but not limited to:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_identity_provider&lt;/code&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zone&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_page_rules&lt;/code&gt; runtime panic when setting &lt;code&gt;cache_level&lt;/code&gt; to &lt;code&gt;cache_ttl_by_status&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Failure to serialize requests in &lt;code&gt;cloudflare_zero_trust_tunnel_cloudflared_config&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Undocumented field &apos;priority&apos; on &lt;code&gt;zone_lockdown&lt;/code&gt; resource&lt;/li&gt;
&lt;li&gt;Missing importability for &lt;code&gt;cloudflare_zero_trust_device_default_profile_local_domain_fallback&lt;/code&gt; and &lt;code&gt;cloudflare_account_subscription&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;New resources:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cloudflare_schema_validation_operation_settings&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_schema_validation_schemas&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_schema_validation_settings&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_device_settings&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Other bug fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For a more detailed look at all of the changes, see the
&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/releases/tag/v5.6.0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;changelog&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; in GitHub.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;issues-closed&quot;&gt;Issues Closed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#issues-closed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5098&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5098: 500 Server Error on updating &apos;zero_trust_tunnel_cloudflared_virtual_network&apos; Terraform resource&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5148&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5148: cloudflare_user_agent_blocking_rule doesn’t actually support user agents&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5472&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5472: cloudflare_zone showing changes in plan after following upgrade steps&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5508&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5508: cloudflare_zero_trust_tunnel_cloudflared_config failed to serialize http request&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5509&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5509: cloudflare_zone: Problematic Terraform behaviour with paused zones&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5520&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5520: Resource &apos;cloudflare_magic_wan_static_route&apos; is not working&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5524&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5524: Optional fields cause crash in cloudflare_zero_trust_tunnel_cloudflared(s) when left null&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5526&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5526: Provider v5 migration issue: no import method for cloudflare_zero_trust_device_default_profile_local_domain_fallback&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5532&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5532: cloudflare_zero_trust_access_identity_provider detects changes on every plan&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5561&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5561: cloudflare_zero_trust_tunnel_cloudflared: cannot rotate tunnel secret&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5569&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5569: cloudflare_zero_trust_device_custom_profile_local_domain_fallback not allowing multiple DNS Server entries&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5577&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5577: Panic modifying page_rule resource&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5653&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5653: cloudflare_zone_setting resource schema confusion in 5.5.0: value vs enabled&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you have an unaddressed issue with the provider, we encourage you to check the
&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;open issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; and open a new one if one does not already
exist for what you are experiencing.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrading&quot;&gt;Upgrading&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrading&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;If you are evaluating a move from v4 to v5, please make use of the
&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;migration guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. We have
provided automated migration scripts using Grit which simplify the transition, although these do not support implementations which
use Terraform modules, so customers making use of modules need to migrate manually. Please make use of &lt;code&gt;terraform plan&lt;/code&gt; to test
your changes before applying, and let us know if you encounter any additional issues by reporting to our
&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;GitHub repository&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-info&quot;&gt;For more info&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-info&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/terraform/&quot;&gt;Documentation on using Terraform with Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Tue, 17 Jun 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals - Cloudflare User Groups &amp; Enhanced Permission Policies are now in Beta</title><link>https://developers.stormtrust.net/changelog/post/2025-06-02-user-groups-beta/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-06-02-user-groups-beta/</guid><description>&lt;p&gt;We&apos;re excited to announce the Public Beta launch of &lt;strong&gt;User Groups for Cloudflare Dashboard&lt;/strong&gt; and &lt;strong&gt;System for Cross Domain Identity Management (SCIM) User Groups&lt;/strong&gt;, expanding our RBAC capabilities to simplify user and group management at scale.&lt;/p&gt;
&lt;p&gt;We&apos;ve also visually overhauled the &lt;strong&gt;Permission Policies UI&lt;/strong&gt; to make defining permissions more intuitive.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;What&apos;s New&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;User Groups [BETA]&lt;/strong&gt;: &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/user-groups/&quot;&gt;User Groups&lt;/a&gt; are a new Cloudflare IAM primitive that enable administrators to create collections of account members that are treated equally from an access control perspective. User Groups can be assigned permission policies, with individual members in the group inheriting all permissions granted to the User Group. User Groups can be created manually or via our APIs.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;SCIM User Groups [BETA]&lt;/strong&gt;: Centralize &amp;amp; simplify your user and group management at scale by syncing memberships directly from your upstream identity provider (like Okta or Entra ID) to the Cloudflare Platform. This ensures Cloudflare stays in sync with your identity provider, letting you apply Permission Policies to those synced groups directly within the Cloudflare Dashboard.&lt;/p&gt;
&lt;aside role=&quot;note&quot; aria-label=&quot;Note&quot; class=&quot;aside-card flex items-start gap-3 rounded-lg px-4 py-3 my-4&quot; style=&quot;--_c: var(--nb-info); --_t: var(--nb-info-muted);&quot; data-astro-cid-znle5jil&gt;&lt;span class=&quot;flex h-[1.375em] shrink-0 items-center&quot; aria-hidden=&quot;true&quot; data-astro-cid-znle5jil&gt;&lt;svg width=&quot;1em&quot; height=&quot;1em&quot; viewBox=&quot;0 0 256 256&quot; class=&quot;h-[1em] w-[1em]&quot; data-astro-cid-znle5jil=&quot;true&quot; data-icon=&quot;ph:info&quot;&gt;&lt;path fill=&quot;currentColor&quot; d=&quot;M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m0 192a88 88 0 1 1 88-88a88.1 88.1 0 0 1-88 88m16-40a8 8 0 0 1-8 8a16 16 0 0 1-16-16v-40a8 8 0 0 1 0-16a16 16 0 0 1 16 16v40a8 8 0 0 1 8 8m-32-92a12 12 0 1 1 12 12a12 12 0 0 1-12-12&quot;/&gt;&lt;/svg&gt;&lt;/span&gt;&lt;div class=&quot;flex min-w-0 flex-1 flex-col gap-0.5&quot; data-astro-cid-znle5jil&gt;&lt;p class=&quot;m-0 text-base leading-snug font-semibold&quot; data-astro-cid-znle5jil&gt;Note&lt;/p&gt;&lt;div class=&quot;aside-card-body text-sm leading-normal&quot; data-astro-cid-znle5jil&gt;&lt;p&gt;SCIM Virtual Groups (identified by the pattern &lt;code&gt;CF-&amp;lt;accountID&amp;gt;-&amp;lt;Role Name&amp;gt;&lt;/code&gt; in your IdP) are deprecated as of 06/02/25. We recommend migrating SCIM Virtual Groups implementations to use &lt;a href=&quot;https://developers.stormtrust.net/fundamentals/account/account-security/scim-setup/&quot;&gt;SCIM User Groups&lt;/a&gt;. If you did not use Virtual Groups, no action is needed.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;
&lt;p&gt;&lt;strong&gt;Revamped Permission Policies UI [BETA]&lt;/strong&gt;: As Cloudflare&apos;s services have grown, so has the need for precise, role-based access control. We&apos;ve given the Permission Policies builder a visual overhaul to make it much easier for administrators to find and define the exact permissions they want for specific principals.&lt;/p&gt;
&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=2872,height=1884,format=webp/_astro/2025-06-02-permissions-policy-ux.2wLEPgVX.png&quot; alt=&quot;Updated Permissions Policy UX&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;2872&quot; height=&quot;1884&quot;&gt;&lt;aside role=&quot;note&quot; aria-label=&quot;Note&quot; class=&quot;aside-card flex items-start gap-3 rounded-lg px-4 py-3 my-4&quot; style=&quot;--_c: var(--nb-info); --_t: var(--nb-info-muted);&quot; data-astro-cid-znle5jil&gt;&lt;span class=&quot;flex h-[1.375em] shrink-0 items-center&quot; aria-hidden=&quot;true&quot; data-astro-cid-znle5jil&gt;&lt;svg width=&quot;1em&quot; height=&quot;1em&quot; viewBox=&quot;0 0 256 256&quot; class=&quot;h-[1em] w-[1em]&quot; data-astro-cid-znle5jil=&quot;true&quot; data-icon=&quot;ph:info&quot;&gt;&lt;path fill=&quot;currentColor&quot; d=&quot;M128 24a104 104 0 1 0 104 104A104.11 104.11 0 0 0 128 24m0 192a88 88 0 1 1 88-88a88.1 88.1 0 0 1-88 88m16-40a8 8 0 0 1-8 8a16 16 0 0 1-16-16v-40a8 8 0 0 1 0-16a16 16 0 0 1 16 16v40a8 8 0 0 1 8 8m-32-92a12 12 0 1 1 12 12a12 12 0 0 1-12-12&quot;/&gt;&lt;/svg&gt;&lt;/span&gt;&lt;div class=&quot;flex min-w-0 flex-1 flex-col gap-0.5&quot; data-astro-cid-znle5jil&gt;&lt;p class=&quot;m-0 text-base leading-snug font-semibold&quot; data-astro-cid-znle5jil&gt;Note&lt;/p&gt;&lt;div class=&quot;aside-card-body text-sm leading-normal&quot; data-astro-cid-znle5jil&gt;&lt;p&gt;When opting into the Beta for User Groups and Permission Policies, you&apos;ll be transitioning to a new experience. Please be aware that opting out isn&apos;t currently available.&lt;/p&gt;&lt;/div&gt;&lt;/div&gt;&lt;/aside&gt;
&lt;p&gt;For more info:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-members/user-groups/&quot;&gt;Get started with User Groups&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/account/account-security/scim-setup/&quot;&gt;Explore our SCIM integration guide&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Mon, 02 Jun 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.5.0 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-05-19-terraform-v5.5.0-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-05-19-terraform-v5.5.0-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new &lt;a href=&quot;https://developers.stormtrust.net/changelog/2025-02-03-terraform-v5-provider/&quot;&gt;Terraform v5 Provider&lt;/a&gt;. Unlike the earlier Terraform providers, v5 is automatically generated based on the OpenAPI Schemas for our REST APIs. Since launch, we have seen an unexpectedly high number of &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; reported by customers. These issues currently impact about 15% of resources. We have been working diligently to address these issues across the company, and have released the v5.5.0 release which includes a number of bug fixes. Please keep an eye on this changelog for more information about upcoming releases.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Broad fixes across resources with recurring diffs, including, but not limited to:
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_gateway_policy&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_application&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_tunnel_cloudflared_route&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_zone_setting&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_ruleset&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;cloudflare_page_rule&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Zone settings can be re-applied without client errors&lt;/li&gt;
&lt;li&gt;Page rules conversion errors are fixed&lt;/li&gt;
&lt;li&gt;Failure to apply changes to &lt;code&gt;cloudflare_zero_trust_tunnel_cloudflared_route&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Other bug fixes&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;For a more detailed look at all of the changes, see the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/releases/tag/v5.5.0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;changelog&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; in GitHub.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;issues-closed&quot;&gt;Issues Closed&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#issues-closed&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5304&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5304: Importing cloudflare_zero_trust_gateway_policy invalid attribute filter value&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5303&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5303: cloudflare_page_rule import does not set values for all of the fields in terraform state&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5178&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5178: cloudflare_page_rule Page rule creation with redirect fails&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5336&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5336: cloudflare_turnstile_wwidget not able to update&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5418&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5418: cloudflare_cloud_connector_rules: Provider returned invalid result object after apply&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5423&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5423: cloudflare_zone_setting: &quot;Invalid value for zone setting always_use_https&quot;&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;If you have an unaddressed issue with the provider, we encourage you to check the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;open issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; and open a new one if one does not already exist for what you are experiencing.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrading&quot;&gt;Upgrading&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrading&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;If you are evaluating a move from v4 to v5, please make use of the &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;migration guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. We have provided automated migration scripts using Grit which simplify the transition, although these do not support implementations which use Terraform modules, so customers making use of modules need to migrate manually. Please make use of &lt;code&gt;terraform plan&lt;/code&gt; to test your changes before applying, and let us know if you encounter any additional issues by reporting to our &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;GitHub repository&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-info&quot;&gt;For more info&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-info&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/terraform/&quot;&gt;Documentation on using Terraform with Cloudflare&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Mon, 19 May 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5.4.0 now available</title><link>https://developers.stormtrust.net/changelog/post/2025-05-06-terraform-v5.4.0-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-05-06-terraform-v5.4.0-provider/</guid><description>&lt;p&gt;Earlier this year, we announced the launch of the new &lt;a href=&quot;https://developers.stormtrust.net/changelog/2025-02-03-terraform-v5-provider/&quot;&gt;Terraform v5 Provider&lt;/a&gt;. Unlike the earlier Terraform providers, v5 is automatically generated based on the OpenAPI Schemas for our REST APIs. Since launch, we have seen an unexpectedly high number of &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;issues&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; reported by customers. These issues currently impact about 15% of resources. We have been working diligently to address these issues across the company, and have released the v5.4.0 release which includes a number of bug fixes. Please keep an eye on this changelog for more information about upcoming releases.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;changes&quot;&gt;Changes&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#changes&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;Removes the &lt;code&gt;worker_platforms_script_secret&lt;/code&gt; resource from the provider (see &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade#cloudflare_worker_secret&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;migration guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; for alternatives—applicable to both Workers and Workers for Platforms)&lt;/li&gt;
&lt;li&gt;Removes duplicated fields in &lt;code&gt;cloudflare_cloud_connector_rules&lt;/code&gt; resource&lt;/li&gt;
&lt;li&gt;Fixes &lt;code&gt;cloudflare_workers_route&lt;/code&gt; id issues &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5134&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5134&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/issues/5501&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;#5501&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Fixes issue around refreshing resources that have unsupported response types
&lt;details&gt;&lt;summary&gt;Affected resources&lt;/summary&gt;&lt;ul&gt;&lt;li&gt;&lt;code&gt;cloudflare_certificate_pack&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_registrar_domain&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_stream_download&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_stream_webhook&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_user&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_workers_kv&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_workers_script&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/details&gt;
&lt;/li&gt;
&lt;li&gt;Fixes &lt;code&gt;cloudflare_workers_kv&lt;/code&gt; state refresh issues&lt;/li&gt;
&lt;li&gt;Fixes issues around configurability of nested properties without computed values for the following resources
&lt;details&gt;&lt;summary&gt;Affected resources&lt;/summary&gt;&lt;ul&gt;&lt;li&gt;&lt;code&gt;cloudflare_account&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_account_dns_settings&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_account_token&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_api_token&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_cloud_connector_rules&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_custom_ssl&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_d1_database&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_dns_record&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;email_security_trusted_domains&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_hyperdrive_config&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_keyless_certificate&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_list_item&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_load_balancer&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_logpush_dataset_job&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_magic_network_monitoring_configuration&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_magic_transit_site&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_magic_transit_site_lan&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_magic_transit_site_wan&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_magic_wan_static_route&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_notification_policy&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_pages_project&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_queue&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_queue_consumer&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_r2_bucket_cors&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_r2_bucket_event_notification&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_r2_bucket_lifecycle&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_r2_bucket_lock&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_r2_bucket_sippy&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_ruleset&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_snippet_rules&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_snippets&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_spectrum_application&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_workers_deployment&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_application&lt;/code&gt;&lt;/li&gt;&lt;li&gt;&lt;code&gt;cloudflare_zero_trust_access_group&lt;/code&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/details&gt;
&lt;/li&gt;
&lt;li&gt;Fixed defaults that made &lt;code&gt;cloudflare_workers_script&lt;/code&gt; fail when using Assets&lt;/li&gt;
&lt;li&gt;Fixed Workers Logpush setting in &lt;code&gt;cloudflare_workers_script&lt;/code&gt; mistakenly being readonly&lt;/li&gt;
&lt;li&gt;Fixed &lt;code&gt;cloudflare_pages_project&lt;/code&gt; broken when using &quot;source&quot;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The detailed &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare/releases/tag/v5.4.0&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;changelog&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; is available on GitHub.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;upgrading&quot;&gt;Upgrading&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#upgrading&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;If you are evaluating a move from v4 to v5, please make use of the &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;migration guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;. We have provided automated migration scripts using Grit which simplify the transition, although these do not support implementations which use Terraform modules, so customers making use of modules need to migrate manually. Please make use of &lt;code&gt;terraform plan&lt;/code&gt; to test your changes before applying, and let us know if you encounter any additional issues either by reporting to our &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;GitHub repository&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;, or by opening a &lt;a href=&quot;https://www.support.cloudflare.com/s/?language=en_US&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;support ticket&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;div tabindex=&quot;-1&quot; class=&quot;heading-wrapper level-h4&quot;&gt;&lt;h4 id=&quot;for-more-info&quot;&gt;For more info&lt;/h4&gt;&lt;a class=&quot;anchor-link&quot; href=&quot;#for-more-info&quot;&gt;&lt;span aria-hidden=&quot;true&quot; class=&quot;anchor-icon&quot;&gt;&lt;svg width=&quot;16&quot; height=&quot;16&quot; viewBox=&quot;0 0 24 24&quot;&gt;&lt;path fill=&quot;currentcolor&quot; d=&quot;m12.11 15.39-3.88 3.88a2.52 2.52 0 0 1-3.5 0 2.47 2.47 0 0 1 0-3.5l3.88-3.88a1 1 0 0 0-1.42-1.42l-3.88 3.89a4.48 4.48 0 0 0 6.33 6.33l3.89-3.88a1 1 0 1 0-1.42-1.42Zm8.58-12.08a4.49 4.49 0 0 0-6.33 0l-3.89 3.88a1 1 0 0 0 1.42 1.42l3.88-3.88a2.52 2.52 0 0 1 3.5 0 2.47 2.47 0 0 1 0 3.5l-3.88 3.88a1 1 0 1 0 1.42 1.42l3.88-3.89a4.49 4.49 0 0 0 0-6.33ZM8.83 15.17a1 1 0 0 0 1.1.22 1 1 0 0 0 .32-.22l4.92-4.92a1 1 0 0 0-1.42-1.42l-4.92 4.92a1 1 0 0 0 0 1.42Z&quot;&gt;&lt;/path&gt;&lt;/svg&gt;&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.cloudflare.com/terraform/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Documentation on using Terraform with Cloudflare&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Tue, 06 May 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals - Updates to Account Home - Quick actions, traffic insights, Workers projects, and more</title><link>https://developers.stormtrust.net/changelog/post/2025-03-26-account-home-updates/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-03-26-account-home-updates/</guid><description>&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=2574,height=982,format=webp/_astro/2025-03-26-account-home-updates.CcOsD1dD.png&quot; alt=&quot;Updated Account Home&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;2574&quot; height=&quot;982&quot;&gt;
&lt;p&gt;Recently, Account Home has been updated to streamline your workflows:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Recent Workers projects&lt;/strong&gt;: You&apos;ll now find your projects readily accessible from a new &lt;code&gt;Developer Platform&lt;/code&gt; tab on Account Home. See recently-modified projects and explore what you can work our developer-focused products.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Traffic and security insights&lt;/strong&gt;: Get a snapshot of domain performance at a glance with key metrics and trends.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Quick actions&lt;/strong&gt;: You can now perform common actions for your account, domains, and even Workers in just 1-2 clicks from the 3-dot menu.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Keep starred domains front and center&lt;/strong&gt;: Now, when you filter for starred domains on Account Home, we&apos;ll save your preference so you&apos;ll continue to only see starred domains by default.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;We can&apos;t wait for you to take the new Account Home for a spin.&lt;/p&gt;
&lt;p&gt;For more info:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://dash.cloudflare.com/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Try the updated Account Home&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.stormtrust.net/fundamentals/manage-domains/star-zones/&quot;&gt;Documentation on starred domains&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Wed, 26 Mar 2025 06:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category></item><item><title>Cloudflare Fundamentals, Terraform - Dozens of Cloudflare Terraform Provider resources now have proper drift detection</title><link>https://developers.stormtrust.net/changelog/post/2025-03-21-resource-force-replacement-bug/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-03-21-resource-force-replacement-bug/</guid><description>&lt;p&gt;In &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Cloudflare Terraform Provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; versions 5.2.0 and above, dozens of resources now have proper drift detection. Before this fix, these resources would indicate they needed to be updated or replaced — even if there was no real change. Now, you can rely on your &lt;code&gt;terraform plan&lt;/code&gt; to only show what resources are expected to change.&lt;/p&gt;
&lt;p&gt;This issue affected &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;resources&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; related to these products and features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;API Shield&lt;/li&gt;
&lt;li&gt;Argo Smart Routing&lt;/li&gt;
&lt;li&gt;Argo Tiered Caching&lt;/li&gt;
&lt;li&gt;Bot Management&lt;/li&gt;
&lt;li&gt;BYOIP&lt;/li&gt;
&lt;li&gt;D1&lt;/li&gt;
&lt;li&gt;DNS&lt;/li&gt;
&lt;li&gt;Email Routing&lt;/li&gt;
&lt;li&gt;Hyperdrive&lt;/li&gt;
&lt;li&gt;Observatory&lt;/li&gt;
&lt;li&gt;Pages&lt;/li&gt;
&lt;li&gt;R2&lt;/li&gt;
&lt;li&gt;Rules&lt;/li&gt;
&lt;li&gt;SSL/TLS&lt;/li&gt;
&lt;li&gt;Waiting Room&lt;/li&gt;
&lt;li&gt;Workers&lt;/li&gt;
&lt;li&gt;Zero Trust&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Fri, 21 Mar 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals, Terraform - Cloudflare Terraform Provider now properly redacts sensitive values</title><link>https://developers.stormtrust.net/changelog/post/2025-03-21-sensitive-values-redacted/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-03-21-sensitive-values-redacted/</guid><description>&lt;p&gt;In the &lt;a href=&quot;https://github.com/cloudflare/terraform-provider-cloudflare&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Cloudflare Terraform Provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; versions 5.2.0 and above, sensitive properties of resources are redacted in logs. Sensitive properties in &lt;a href=&quot;https://raw.githubusercontent.com/cloudflare/api-schemas/refs/heads/main/openapi.yaml&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Cloudflare&apos;s OpenAPI Schema&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; are now annotated with &lt;code&gt;x-sensitive: true&lt;/code&gt;. This results in proper auto-generation of the corresponding Terraform resources, and prevents sensitive values from being shown when you run Terraform commands.&lt;/p&gt;
&lt;p&gt;This issue affected &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;resources&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; related to these products and features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Alerts and Audit Logs&lt;/li&gt;
&lt;li&gt;Device API&lt;/li&gt;
&lt;li&gt;DLP&lt;/li&gt;
&lt;li&gt;DNS&lt;/li&gt;
&lt;li&gt;Magic Visibility&lt;/li&gt;
&lt;li&gt;Magic WAN&lt;/li&gt;
&lt;li&gt;TLS Certs and Hostnames&lt;/li&gt;
&lt;li&gt;Tunnels&lt;/li&gt;
&lt;li&gt;Turnstile&lt;/li&gt;
&lt;li&gt;Workers&lt;/li&gt;
&lt;li&gt;Zaraz&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Fri, 21 Mar 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item><item><title>Cloudflare Fundamentals, Terraform - Terraform v5 Provider is now generally available</title><link>https://developers.stormtrust.net/changelog/post/2025-02-03-terraform-v5-provider/</link><guid isPermaLink="true">https://developers.stormtrust.net/changelog/post/2025-02-03-terraform-v5-provider/</guid><description>&lt;img src=&quot;https://developers.stormtrust.net/cdn-cgi/image/onerror=redirect,width=1330,height=296,format=webp/_astro/2024-02-03-terraform-v5-screenshot.mW8OaFoS.png&quot; alt=&quot;Screenshot of Terraform defining a Zone&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; width=&quot;1330&quot; height=&quot;296&quot;&gt;
&lt;p&gt;Cloudflare&apos;s v5 Terraform Provider is now generally available. With this release, Terraform resources are now automatically generated based on OpenAPI Schemas. This change brings alignment across our SDKs, API documentation, and now Terraform Provider. The new provider boosts coverage by increasing support for API properties to 100%, adding 25% more resources, and more than 200 additional data sources. Going forward, this will also reduce the barriers to bringing more resources into Terraform across the broader Cloudflare API. This is a small, but important step to making more of our platform manageable through GitOps, making it easier for you to manage Cloudflare just like you do your other infrastructure.&lt;/p&gt;
&lt;p&gt;The Cloudflare Terraform Provider v5 is a ground-up rewrite of the provider and introduces breaking changes for some resource types. Please refer to the &lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs/guides/version-5-upgrade&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;upgrade guide&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; for best practices, or the &lt;a href=&quot;https://blog.cloudflare.com/automatically-generating-cloudflares-terraform-provider/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;blog post on automatically generating Cloudflare&apos;s Terraform Provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt; for more information about the approach.&lt;/p&gt;
&lt;p&gt;For more info&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Terraform provider&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;https://developers.cloudflare.com/terraform/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;Documentation on using Terraform with Cloudflare&lt;span class=&quot;external-link&quot;&gt; ↗&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description><pubDate>Mon, 03 Feb 2025 00:00:00 GMT</pubDate><product>Cloudflare Fundamentals</product><category>Cloudflare Fundamentals</category><category>Terraform</category></item></channel></rss>