Cloudflare Deprecates the Zone Settings Batch API

A terminal window showing the real Cloudflare changelog entry: the Zone Settings Batch API endpoints, which read and edit multiple zone settings in a single request, are deprecated
On this page

What’s actually changing

Cloudflare’s own changelog states the change plainly:

“The Zone Settings Batch API endpoints, which read and edit multiple zone settings in a single request, are deprecated”

Unlike most of the other deprecations in this wave, this isn’t a URL path swap with the same request/response shape. The batch endpoint’s whole value was reading or writing several settings (SSL mode, always-use-HTTPS, minify, and so on) in one call. The per-setting endpoints Cloudflare points to instead follow the pattern /zones/{zone_id}/settings/{setting_name}, confirmed elsewhere in Cloudflare’s own API deprecations data for individual settings like cname_flattening. Migrating means genuinely restructuring any code that built one batched request into a loop, or a series, of per-setting requests.

Structural Comparison Matrix

Operational AspectBatch API (deprecated)Per-setting API
Requests to configure N settings1N
Endpoint shape/zones/{zone_id}/settings/zones/{zone_id}/settings/{setting_name}
Available after 2027-03-31RemovedActive

Fix it: loop over per-setting calls

before: one batched request
curl -X PATCH \
  "https://api.cloudflare.com/client/v4/zones/<zone_id>/settings" \
  -H "Authorization: Bearer <api_token>" \
  -H "Content-Type: application/json" \
  --data '{"items":[{"id":"ssl","value":"full"},{"id":"always_use_https","value":"on"}]}'
after: one request per setting
curl -X PATCH \
  "https://api.cloudflare.com/client/v4/zones/<zone_id>/settings/ssl" \
  -H "Authorization: Bearer <api_token>" \
  -H "Content-Type: application/json" \
  --data '{"value":"full"}'

curl -X PATCH \
  "https://api.cloudflare.com/client/v4/zones/<zone_id>/settings/always_use_https" \
  -H "Authorization: Bearer <api_token>" \
  -H "Content-Type: application/json" \
  --data '{"value":"on"}'

This changes request volume, not just syntax

A pipeline configuring many zones with many settings each goes from one request per zone to one request per setting per zone. If the automation runs against API rate limits or is billed per request anywhere in its stack, this is a real capacity-planning change, not a drop-in fix.

Confirmed version

Sourced from Cloudflare’s own API deprecations reference, re-checked 2026-08-13. That page now states the end-of-life date “has been extended to March 31, 2027 (previously September 15, 2026)”: this post originally used the earlier date, corrected here to match Cloudflare’s current published timeline. Migrate before the current 2027-03-31 date rather than the original one. Browse more posts like this in the Data Automation archive.

Frequently asked

Does this affect the Cloudflare dashboard, or only the API?

Only automation calling the batch API endpoint directly (GET/PATCH /zones/{zone_id}/settings) is affected. The Cloudflare dashboard's settings pages don't rely on this specific batch endpoint the same way, and changing settings by hand through the dashboard is unaffected.

Is there a bulk-edit alternative, or is this genuinely one call per setting?

Cloudflare's own guidance is to migrate to per-setting endpoints, one call per zone setting. There's no batch replacement announced alongside this deprecation, so a pipeline that used to configure a zone in one request now needs one request per setting it touches.

Emitted as FAQPage JSON-LD from the same frontmatter — one source, no duplicated prose.

Recent posts

Full-text search via Pagefind · ↑↓ to navigate · ↵ to open