{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/cloudflare/main/json-schema/cloudflare-zones-setting-schema.json", "title": "zones_setting", "x-generated": "2026-10-03", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/cloudflare-zones-api-openapi.yml#/components/schemas/zones_setting", "oneOf": [ { "$ref": "#/$defs/zones_0rtt" }, { "$ref": "#/$defs/zones_advanced_ddos" }, { "$ref": "#/$defs/zones_always_online" }, { "$ref": "#/$defs/zones_always_use_https" }, { "$ref": "#/$defs/zones_automatic_https_rewrites" }, { "$ref": "#/$defs/zones_brotli" }, { "$ref": "#/$defs/zones_browser_cache_ttl" }, { "$ref": "#/$defs/zones_browser_check" }, { "$ref": "#/$defs/zones_cache_level" }, { "$ref": "#/$defs/zones_challenge_ttl" }, { "$ref": "#/$defs/zones_ciphers" }, { "$ref": "#/$defs/zones_cname_flattening" }, { "$ref": "#/$defs/zones_development_mode" }, { "$ref": "#/$defs/zones_early_hints" }, { "$ref": "#/$defs/zones_edge_cache_ttl" }, { "$ref": "#/$defs/zones_email_obfuscation" }, { "$ref": "#/$defs/zones_h2_prioritization" }, { "$ref": "#/$defs/zones_hotlink_protection" }, { "$ref": "#/$defs/zones_http2" }, { "$ref": "#/$defs/zones_http3" }, { "$ref": "#/$defs/zones_image_resizing" }, { "$ref": "#/$defs/zones_ip_geolocation" }, { "$ref": "#/$defs/zones_ipv6" }, { "$ref": "#/$defs/zones_max_upload" }, { "$ref": "#/$defs/zones_min_tls_version" }, { "$ref": "#/$defs/zones_minify" }, { "$ref": "#/$defs/zones_mirage" }, { "$ref": "#/$defs/zones_mobile_redirect" }, { "$ref": "#/$defs/zones_nel" }, { "$ref": "#/$defs/zones_opportunistic_encryption" }, { "$ref": "#/$defs/zones_opportunistic_onion" }, { "$ref": "#/$defs/zones_orange_to_orange" }, { "$ref": "#/$defs/zones_origin_error_page_pass_thru" }, { "$ref": "#/$defs/zones_polish" }, { "$ref": "#/$defs/zones_prefetch_preload" }, { "$ref": "#/$defs/zones_proxy_read_timeout" }, { "$ref": "#/$defs/zones_pseudo_ipv4" }, { "$ref": "#/$defs/zones_response_buffering" }, { "$ref": "#/$defs/zones_rocket_loader" }, { "$ref": "#/$defs/zones_schemas-automatic_platform_optimization" }, { "$ref": "#/$defs/zones_security_header" }, { "$ref": "#/$defs/zones_security_level" }, { "$ref": "#/$defs/zones_server_side_exclude" }, { "$ref": "#/$defs/zones_sha1_support" }, { "$ref": "#/$defs/zones_sort_query_string_for_cache" }, { "$ref": "#/$defs/zones_ssl" }, { "$ref": "#/$defs/zones_ssl_recommender" }, { "$ref": "#/$defs/zones_tls_1_2_only" }, { "$ref": "#/$defs/zones_tls_1_3" }, { "$ref": "#/$defs/zones_tls_client_auth" }, { "$ref": "#/$defs/zones_true_client_ip_header" }, { "$ref": "#/$defs/zones_waf" }, { "$ref": "#/$defs/zones_webp" }, { "$ref": "#/$defs/zones_websockets" } ], "type": "object", "$defs": { "zones_0rtt": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "0rtt" ] }, "value": { "$ref": "#/$defs/zones_0rtt_value" } } } ], "title": "0-RTT Value", "description": "0-RTT session resumption enabled for this zone." }, "zones_0rtt_value": { "type": "string", "description": "Value of the 0-RTT setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_advanced_ddos": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "advanced_ddos" ] }, "value": { "$ref": "#/$defs/zones_advanced_ddos_value" } } } ], "title": "Advanced DDoS Protection", "description": "Advanced protection from Distributed Denial of Service (DDoS) attacks on your website. This is an uneditable value that is 'on' in the case of Business and Enterprise zones." }, "zones_advanced_ddos_value": { "type": "string", "description": "Value of the zone setting.\nNotes: Defaults to on for Business+ plans", "enum": [ "on", "off" ], "default": "off" }, "zones_always_online": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "always_online" ] }, "value": { "$ref": "#/$defs/zones_always_online_value" } } } ], "title": "Always Online Mode", "description": "When enabled, Cloudflare serves limited copies of web pages available from the [Internet Archive's Wayback Machine](https://archive.org/web/) if your server is offline. Refer to [Always Online](https://developers.cloudflare.com/cache/about/always-online) for more information." }, "zones_always_online_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "on" }, "zones_always_use_https": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "always_use_https" ] }, "value": { "$ref": "#/$defs/zones_always_use_https_value" } } } ], "title": "Zone Enable Always Use HTTPS", "description": "Reply to all requests for URLs that use \"http\" with a 301 redirect to the equivalent \"https\" URL. If you only want to redirect for a subset of requests, consider creating an \"Always use HTTPS\" page rule.", "default": "off" }, "zones_always_use_https_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_automatic_https_rewrites": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "automatic_https_rewrites" ] }, "value": { "$ref": "#/$defs/zones_automatic_https_rewrites_value" } } } ], "title": "Zone Enable Automatic HTTPS Rewrites", "description": "Enable the Automatic HTTPS Rewrites feature for this zone.", "default": "off" }, "zones_automatic_https_rewrites_value": { "type": "string", "description": "Value of the zone setting.\nNotes: Default value depends on the zone's plan level.", "enum": [ "on", "off" ], "default": "on" }, "zones_automatic_platform_optimization": { "type": "object", "required": [ "enabled", "cf", "wordpress", "wp_plugin", "hostnames", "cache_by_device_type" ], "properties": { "cache_by_device_type": { "type": "boolean", "description": "Indicates whether or not [cache by device type](https://developers.cloudflare.com/automatic-platform-optimization/reference/cache-device-type/) is enabled." }, "cf": { "type": "boolean", "description": "Indicates whether or not Cloudflare proxy is enabled.", "default": false }, "enabled": { "type": "boolean", "description": "Indicates whether or not Automatic Platform Optimization is enabled.", "default": false }, "hostnames": { "type": "array", "description": "An array of hostnames where Automatic Platform Optimization for WordPress is activated.", "items": { "type": "string", "format": "hostname" } }, "wordpress": { "type": "boolean", "description": "Indicates whether or not site is powered by WordPress.", "default": false }, "wp_plugin": { "type": "boolean", "description": "Indicates whether or not [Cloudflare for WordPress plugin](https://wordpress.org/plugins/cloudflare/) is installed.", "default": false } } }, "zones_base": { "required": [ "id", "value" ], "properties": { "editable": { "type": "boolean", "description": "Whether or not this setting can be modified for this zone (based on your Cloudflare plan level).", "enum": [ true, false ], "default": true, "readOnly": true }, "id": { "type": "string", "description": "Identifier of the zone setting." }, "modified_on": { "type": [ "string", "null" ], "format": "date-time", "description": "last time this setting was modified.", "readOnly": true }, "value": { "description": "Current value of the zone setting." } } }, "zones_brotli": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "brotli" ] }, "value": { "$ref": "#/$defs/zones_brotli_value" } } } ], "title": "Brotli Compression", "description": "When the client requesting an asset supports the Brotli compression algorithm, Cloudflare will serve a Brotli compressed version of the asset." }, "zones_brotli_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "off", "on" ], "default": "off" }, "zones_browser_cache_ttl": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "browser_cache_ttl" ] }, "value": { "$ref": "#/$defs/zones_browser_cache_ttl_value" } } } ], "title": "Browser Cache TTL", "description": "Browser Cache TTL (in seconds) specifies how long Cloudflare-cached resources will remain on your visitors' computers. Cloudflare will honor any larger times specified by your server. (https://support.cloudflare.com/hc/en-us/articles/200168276)." }, "zones_browser_cache_ttl_value": { "type": "number", "description": "Value of the zone setting.\nNotes: Setting a TTL of 0 is equivalent to selecting `Respect Existing Headers`", "enum": [ 0, 30, 60, 120, 300, 1200, 1800, 3600, 7200, 10800, 14400, 18000, 28800, 43200, 57600, 72000, 86400, 172800, 259200, 345600, 432000, 691200, 1382400, 2073600, 2678400, 5356800, 16070400, 31536000 ], "default": 14400 }, "zones_browser_check": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "browser_check" ] }, "value": { "$ref": "#/$defs/zones_browser_check_value" } } } ], "title": "Browser Check", "description": "Browser Integrity Check is similar to Bad Behavior and looks for common HTTP headers abused most commonly by spammers and denies access to your page. It will also challenge visitors that do not have a user agent or a non standard user agent (also commonly used by abuse bots, crawlers or visitors). (https://support.cloudflare.com/hc/en-us/articles/200170086)." }, "zones_browser_check_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "on" }, "zones_cache_level": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "cache_level" ] }, "value": { "$ref": "#/$defs/zones_cache_level_value" } } } ], "title": "Cloudflare Cache Level", "description": "Cache Level functions based off the setting level. The basic setting will cache most static resources (i.e., css, images, and JavaScript). The simplified setting will ignore the query string when delivering a cached resource. The aggressive setting will cache all static resources, including ones with a query string. (https://support.cloudflare.com/hc/en-us/articles/200168256)." }, "zones_cache_level_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "aggressive", "basic", "simplified" ], "default": "aggressive" }, "zones_challenge_ttl": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "challenge_ttl" ] }, "value": { "$ref": "#/$defs/zones_challenge_ttl_value" } } } ], "title": "Challenge Page TTL", "description": "Specify how long a visitor is allowed access to your site after successfully completing a challenge (such as a CAPTCHA). After the TTL has expired the visitor will have to complete a new challenge. We recommend a 15 - 45 minute setting and will attempt to honor any setting above 45 minutes. (https://support.cloudflare.com/hc/en-us/articles/200170136)." }, "zones_challenge_ttl_value": { "type": "number", "description": "Value of the zone setting.", "enum": [ 300, 900, 1800, 2700, 3600, 7200, 10800, 14400, 28800, 57600, 86400, 604800, 2592000, 31536000 ], "default": 1800 }, "zones_ciphers": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "ciphers" ] }, "value": { "$ref": "#/$defs/zones_ciphers_value" } } } ], "title": "Zone ciphers allowed for TLS termination", "description": "An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.", "default": [] }, "zones_ciphers_value": { "type": "array", "description": "Value of the zone setting.", "default": [], "uniqueItems": true, "items": { "type": "string" } }, "zones_cname_flattening": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "How to flatten the cname destination.", "enum": [ "cname_flattening" ] }, "value": { "$ref": "#/$defs/zones_cname_flattening_value" } } } ], "title": "Cloudflare CNAME Flattening", "description": "Whether or not cname flattening is on." }, "zones_cname_flattening_value": { "type": "string", "description": "Value of the cname flattening setting.", "enum": [ "flatten_at_root", "flatten_all" ], "default": "flatten_at_root" }, "zones_development_mode": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "development_mode" ] }, "time_remaining": { "type": "number", "description": "Value of the zone setting.\nNotes: The interval (in seconds) from when development mode expires (positive integer) or last expired (negative integer) for the domain. If development mode has never been enabled, this value is false.", "readOnly": true }, "value": { "$ref": "#/$defs/zones_development_mode_value" } } } ], "title": "Development Mode", "description": "Development Mode temporarily allows you to enter development mode for your websites if you need to make changes to your site. This will bypass Cloudflare's accelerated cache and slow down your site, but is useful if you are making changes to cacheable content (like images, css, or JavaScript) and would like to see those changes right away. Once entered, development mode will last for 3 hours and then automatically toggle off." }, "zones_development_mode_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_early_hints": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "early_hints" ] }, "value": { "$ref": "#/$defs/zones_early_hints_value" } } } ], "title": "Early Hints", "description": "When enabled, Cloudflare will attempt to speed up overall page loads by serving `103` responses with `Link` headers from the final response. Refer to [Early Hints](https://developers.cloudflare.com/cache/about/early-hints) for more information." }, "zones_early_hints_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_edge_cache_ttl": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "edge_cache_ttl" ] }, "value": { "$ref": "#/$defs/zones_edge_cache_ttl_value" } } } ], "title": "Edge Cache TTL", "description": "Time (in seconds) that a resource will be ensured to remain on Cloudflare's cache servers." }, "zones_edge_cache_ttl_value": { "type": "number", "description": "Value of the zone setting.\nNotes: The minimum TTL available depends on the plan level of the zone. (Enterprise = 30, Business = 1800, Pro = 3600, Free = 7200)", "enum": [ 30, 60, 300, 1200, 1800, 3600, 7200, 10800, 14400, 18000, 28800, 43200, 57600, 72000, 86400, 172800, 259200, 345600, 432000, 518400, 604800 ], "default": 7200 }, "zones_email_obfuscation": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "email_obfuscation" ] }, "value": { "$ref": "#/$defs/zones_email_obfuscation_value" } } } ], "title": "Email Obfuscation", "description": "Encrypt email adresses on your web page from bots, while keeping them visible to humans. (https://support.cloudflare.com/hc/en-us/articles/200170016)." }, "zones_email_obfuscation_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "on" }, "zones_h2_prioritization": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "h2_prioritization" ] }, "value": { "$ref": "#/$defs/zones_h2_prioritization_value" } } } ], "title": "HTTP/2 Edge Prioritization", "description": "HTTP/2 Edge Prioritization optimises the delivery of resources served through HTTP/2 to improve page load performance. It also supports fine control of content delivery when used in conjunction with Workers." }, "zones_h2_prioritization_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off", "custom" ], "default": "off" }, "zones_hotlink_protection": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "hotlink_protection" ] }, "value": { "$ref": "#/$defs/zones_hotlink_protection_value" } } } ], "title": "Hotlink Protection", "description": "When enabled, the Hotlink Protection option ensures that other sites cannot suck up your bandwidth by building pages that use images hosted on your site. Anytime a request for an image on your site hits Cloudflare, we check to ensure that it's not another site requesting them. People will still be able to download and view images from your page, but other sites won't be able to steal them for use on their own pages. (https://support.cloudflare.com/hc/en-us/articles/200170026)." }, "zones_hotlink_protection_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_http2": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "http2" ] }, "value": { "$ref": "#/$defs/zones_http2_value" } } } ], "title": "HTTP2 Value", "description": "HTTP2 enabled for this zone." }, "zones_http2_value": { "type": "string", "description": "Value of the HTTP2 setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_http3": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "http3" ] }, "value": { "$ref": "#/$defs/zones_http3_value" } } } ], "title": "HTTP3 Value", "description": "HTTP3 enabled for this zone." }, "zones_http3_value": { "type": "string", "description": "Value of the HTTP3 setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_image_resizing": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "image_resizing" ] }, "value": { "$ref": "#/$defs/zones_image_resizing_value" } } } ], "title": "Image Resizing", "description": "Image Resizing provides on-demand resizing, conversion and optimisation for images served through Cloudflare's network. Refer to the [Image Resizing documentation](https://developers.cloudflare.com/images/) for more information." }, "zones_image_resizing_value": { "type": "string", "description": "Whether the feature is enabled, disabled, or enabled in `open proxy` mode.", "enum": [ "on", "off", "open" ], "default": "off" }, "zones_ip_geolocation": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "ip_geolocation" ] }, "value": { "$ref": "#/$defs/zones_ip_geolocation_value" } } } ], "title": "IP Geolocation", "description": "Enable IP Geolocation to have Cloudflare geolocate visitors to your website and pass the country code to you. (https://support.cloudflare.com/hc/en-us/articles/200168236)." }, "zones_ip_geolocation_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "on" }, "zones_ipv6": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "ipv6" ] }, "value": { "$ref": "#/$defs/zones_ipv6_value" } } } ], "title": "IPv6", "description": "Enable IPv6 on all subdomains that are Cloudflare enabled. (https://support.cloudflare.com/hc/en-us/articles/200168586)." }, "zones_ipv6_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "off", "on" ], "default": "off" }, "zones_max_upload": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "identifier of the zone setting.", "enum": [ "max_upload" ] }, "value": { "$ref": "#/$defs/zones_max_upload_value" } } } ], "title": "Max Upload", "description": "Maximum size of an allowable upload." }, "zones_max_upload_value": { "type": "number", "description": "Value of the zone setting.\nNotes: The size depends on the plan level of the zone. (Enterprise = 500, Business = 200, Pro = 100, Free = 100)", "enum": [ 100, 200, 500 ], "default": 100 }, "zones_min_tls_version": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "min_tls_version" ] }, "value": { "$ref": "#/$defs/zones_min_tls_version_value" } } } ], "title": "Zone Minimum TLS Version value", "description": "Only accepts HTTPS requests that use at least the TLS protocol version specified. For example, if TLS 1.1 is selected, TLS 1.0 connections will be rejected, while 1.1, 1.2, and 1.3 (if enabled) will be permitted.", "default": "1.0" }, "zones_min_tls_version_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "1.0", "1.1", "1.2", "1.3" ], "default": "1.0" }, "zones_minify": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "Zone setting identifier.", "enum": [ "minify" ] }, "value": { "$ref": "#/$defs/zones_minify_value" } } } ], "title": "Auto-Minify Assets", "description": "Automatically minify certain assets for your website. Refer to [Using Cloudflare Auto Minify](https://support.cloudflare.com/hc/en-us/articles/200168196) for more information." }, "zones_minify_value": { "type": "object", "description": "Value of the zone setting.", "default": { "css": "off", "html": "off", "js": "off" }, "properties": { "css": { "description": "Automatically minify all CSS files for your website.", "enum": [ "on", "off" ], "default": "off" }, "html": { "description": "Automatically minify all HTML files for your website.", "enum": [ "on", "off" ], "default": "off" }, "js": { "description": "Automatically minify all JavaScript files for your website.", "enum": [ "on", "off" ], "default": "off" } } }, "zones_mirage": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "mirage" ] }, "value": { "$ref": "#/$defs/zones_mirage_value" } } } ], "title": "Mirage Image Optimization", "description": "Automatically optimize image loading for website visitors on mobile\ndevices. Refer to [our blog post](http://blog.cloudflare.com/mirage2-solving-mobile-speed)\nfor more information.\n" }, "zones_mirage_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_mobile_redirect": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "Identifier of the zone setting.", "enum": [ "mobile_redirect" ] }, "value": { "$ref": "#/$defs/zones_mobile_redirect_value" } } } ], "title": "Mobile Redirect", "description": "Automatically redirect visitors on mobile devices to a mobile-optimized subdomain. Refer to [Understanding Cloudflare Mobile Redirect](https://support.cloudflare.com/hc/articles/200168336) for more information." }, "zones_mobile_redirect_value": { "type": "object", "description": "Value of the zone setting.", "default": { "mobile_subdomain": null, "status": "off", "strip_uri": false }, "properties": { "mobile_subdomain": { "type": [ "string", "null" ], "description": "Which subdomain prefix you wish to redirect visitors on mobile devices to (subdomain must already exist).", "minLength": 1 }, "status": { "description": "Whether or not mobile redirect is enabled.", "enum": [ "on", "off" ], "default": "off" }, "strip_uri": { "type": "boolean", "description": "Whether to drop the current page path and redirect to the mobile subdomain URL root, or keep the path and redirect to the same page on the mobile subdomain.", "default": false } } }, "zones_nel": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "Zone setting identifier.", "enum": [ "nel" ] }, "value": { "$ref": "#/$defs/zones_nel_value" } } } ], "title": "Network Error Logging", "description": "Enable Network Error Logging reporting on your zone. (Beta) " }, "zones_nel_value": { "type": "object", "description": "Value of the zone setting.", "default": { "enabled": false }, "properties": { "enabled": { "type": "boolean", "default": false } } }, "zones_opportunistic_encryption": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "opportunistic_encryption" ] }, "value": { "$ref": "#/$defs/zones_opportunistic_encryption_value" } } } ], "title": "Enable Opportunistic Encryption for a zone", "description": "Enables the Opportunistic Encryption feature for a zone." }, "zones_opportunistic_encryption_value": { "type": "string", "description": "Value of the zone setting.\nNotes: Default value depends on the zone's plan level.", "enum": [ "on", "off" ], "default": "on" }, "zones_opportunistic_onion": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "opportunistic_onion" ] }, "value": { "$ref": "#/$defs/zones_opportunistic_onion_value" } } } ], "title": "Zone Enable Onion Routing", "description": "Add an Alt-Svc header to all legitimate requests from Tor, allowing the connection to use our onion services instead of exit nodes.", "default": "off" }, "zones_opportunistic_onion_value": { "type": "string", "description": "Value of the zone setting.\nNotes: Default value depends on the zone's plan level.", "enum": [ "on", "off" ], "default": "off" }, "zones_orange_to_orange": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "orange_to_orange" ] }, "value": { "$ref": "#/$defs/zones_orange_to_orange_value" } } } ], "title": "Orange to Orange", "description": "Orange to Orange (O2O) allows zones on Cloudflare to CNAME to other zones also on Cloudflare." }, "zones_orange_to_orange_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "on" }, "zones_origin_error_page_pass_thru": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "origin_error_page_pass_thru" ] }, "value": { "$ref": "#/$defs/zones_origin_error_page_pass_thru_value" } } } ], "title": "Error Pages On", "description": "Cloudflare will proxy customer error pages on any 502,504 errors on origin server instead of showing a default Cloudflare error page. This does not apply to 522 errors and is limited to Enterprise Zones.", "default": "off" }, "zones_origin_error_page_pass_thru_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_polish": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "polish" ] }, "value": { "$ref": "#/$defs/zones_polish_value" } } } ], "title": "Polish Image Optimization", "description": "Removes metadata and compresses your images for faster page load times. Basic (Lossless): Reduce the size of PNG, JPEG, and GIF files - no impact on visual quality. Basic + JPEG (Lossy): Further reduce the size of JPEG files for faster image loading. Larger JPEGs are converted to progressive images, loading a lower-resolution image first and ending in a higher-resolution version. Not recommended for hi-res photography sites." }, "zones_polish_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "off", "lossless", "lossy" ], "default": "off" }, "zones_prefetch_preload": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "prefetch_preload" ] }, "value": { "$ref": "#/$defs/zones_prefetch_preload_value" } } } ], "title": "Prefetch preload", "description": "Cloudflare will prefetch any URLs that are included in the response headers. This is limited to Enterprise Zones.", "default": "off" }, "zones_prefetch_preload_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_proxy_read_timeout": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "proxy_read_timeout" ] }, "value": { "$ref": "#/$defs/zones_proxy_read_timeout_value" } } } ], "title": "Proxy Read Timeout", "description": "Maximum time between two read operations from origin." }, "zones_proxy_read_timeout_value": { "type": "number", "description": "Value of the zone setting.\nNotes: Value must be between 1 and 6000", "default": 100 }, "zones_pseudo_ipv4": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "Value of the Pseudo IPv4 setting.", "enum": [ "pseudo_ipv4" ], "default": "pseudo_ipv4" }, "value": { "$ref": "#/$defs/zones_pseudo_ipv4_value" } } } ], "title": "Pseudo IPv4 Value", "description": "The value set for the Pseudo IPv4 setting." }, "zones_pseudo_ipv4_value": { "type": "string", "description": "Value of the Pseudo IPv4 setting.", "enum": [ "off", "add_header", "overwrite_header" ], "default": "off" }, "zones_response_buffering": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "response_buffering" ] }, "value": { "$ref": "#/$defs/zones_response_buffering_value" } } } ], "title": "Response Buffering", "description": "Enables or disables buffering of responses from the proxied server. Cloudflare may buffer the whole payload to deliver it at once to the client versus allowing it to be delivered in chunks. By default, the proxied server streams directly and is not buffered by Cloudflare. This is limited to Enterprise Zones.", "default": "off" }, "zones_response_buffering_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_rocket_loader": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "rocket_loader" ] }, "value": { "$ref": "#/$defs/zones_rocket_loader_value" } } } ], "title": "Rocket Loader", "description": "Rocket Loader is a general-purpose asynchronous JavaScript optimisation that prioritises rendering your content while loading your site's Javascript asynchronously. Turning on Rocket Loader will immediately improve a web page's rendering time sometimes measured as Time to First Paint (TTFP), and also the `window.onload` time (assuming there is JavaScript on the page). This can have a positive impact on your Google search ranking. When turned on, Rocket Loader will automatically defer the loading of all Javascript referenced in your HTML, with no configuration required. Refer to [Understanding Rocket Loader](https://support.cloudflare.com/hc/articles/200168056) for more information." }, "zones_rocket_loader_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_schemas-automatic_platform_optimization": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "automatic_platform_optimization" ] }, "value": { "$ref": "#/$defs/zones_automatic_platform_optimization" } } } ], "title": "Automatic Platform Optimization for WordPress", "description": "[Automatic Platform Optimization for WordPress](https://developers.cloudflare.com/automatic-platform-optimization/) serves your WordPress site from Cloudflare's edge network and caches third-party fonts." }, "zones_security_header": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone's security header.", "enum": [ "security_header" ] }, "value": { "$ref": "#/$defs/zones_security_header_value" } } } ], "title": "Security Header", "description": "Cloudflare security header for a zone." }, "zones_security_header_value": { "type": "object", "default": { "strict_transport_security": { "enabled": true, "include_subdomains": true, "max_age": 86400, "nosniff": true } }, "properties": { "strict_transport_security": { "type": "object", "description": "Strict Transport Security.", "properties": { "enabled": { "type": "boolean", "description": "Whether or not strict transport security is enabled." }, "include_subdomains": { "type": "boolean", "description": "Include all subdomains for strict transport security." }, "max_age": { "type": "number", "description": "Max age in seconds of the strict transport security." }, "nosniff": { "type": "boolean", "description": "Whether or not to include 'X-Content-Type-Options: nosniff' header." } } } } }, "zones_security_level": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "security_level" ] }, "value": { "$ref": "#/$defs/zones_security_level_value" } } } ], "title": "Security Level", "description": "Choose the appropriate security profile for your website, which will automatically adjust each of the security settings. If you choose to customize an individual security setting, the profile will become Custom. (https://support.cloudflare.com/hc/en-us/articles/200170056)." }, "zones_security_level_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "off", "essentially_off", "low", "medium", "high", "under_attack" ], "default": "medium" }, "zones_server_side_exclude": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "server_side_exclude" ] }, "value": { "$ref": "#/$defs/zones_server_side_exclude_value" } } } ], "title": "Server Side Exclude", "description": "If there is sensitive content on your website that you want visible to real visitors, but that you want to hide from suspicious visitors, all you have to do is wrap the content with Cloudflare SSE tags. Wrap any content that you want to be excluded from suspicious visitors in the following SSE tags: . For example: Bad visitors won't see my phone number, 555-555-5555 . Note: SSE only will work with HTML. If you have HTML minification enabled, you won't see the SSE tags in your HTML source when it's served through Cloudflare. SSE will still function in this case, as Cloudflare's HTML minification and SSE functionality occur on-the-fly as the resource moves through our network to the visitor's computer. (https://support.cloudflare.com/hc/en-us/articles/200170036)." }, "zones_server_side_exclude_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "on" }, "zones_sha1_support": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "Zone setting identifier.", "enum": [ "sha1_support" ] }, "value": { "$ref": "#/$defs/zones_sha1_support_value" } } } ], "title": "Toggle SHA1 support", "description": "Allow SHA1 support." }, "zones_sha1_support_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "off", "on" ], "default": "off" }, "zones_sort_query_string_for_cache": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "sort_query_string_for_cache" ] }, "value": { "$ref": "#/$defs/zones_sort_query_string_for_cache_value" } } } ], "title": "Get String Sort", "description": "Cloudflare will treat files with the same query strings as the same file in cache, regardless of the order of the query strings. This is limited to Enterprise Zones.", "default": "off" }, "zones_sort_query_string_for_cache_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_ssl": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "ssl" ] }, "value": { "$ref": "#/$defs/zones_ssl_value" } } } ], "title": "SSL", "description": "SSL encrypts your visitor's connection and safeguards credit card numbers and other personal data to and from your website. SSL can take up to 5 minutes to fully activate. Requires Cloudflare active on your root domain or www domain. Off: no SSL between the visitor and Cloudflare, and no SSL between Cloudflare and your web server (all HTTP traffic). Flexible: SSL between the visitor and Cloudflare -- visitor sees HTTPS on your site, but no SSL between Cloudflare and your web server. You don't need to have an SSL cert on your web server, but your vistors will still see the site as being HTTPS enabled. Full: SSL between the visitor and Cloudflare -- visitor sees HTTPS on your site, and SSL between Cloudflare and your web server. You'll need to have your own SSL cert or self-signed cert at the very least. Full (Strict): SSL between the visitor and Cloudflare -- visitor sees HTTPS on your site, and SSL between Cloudflare and your web server. You'll need to have a valid SSL certificate installed on your web server. This certificate must be signed by a certificate authority, have an expiration date in the future, and respond for the request domain name (hostname). (https://support.cloudflare.com/hc/en-us/articles/200170416)." }, "zones_ssl_recommender": { "allOf": [ { "properties": { "enabled": { "$ref": "#/$defs/zones_ssl_recommender_enabled" }, "id": { "description": "Enrollment value for SSL/TLS Recommender.", "enum": [ "ssl_recommender" ] } } } ], "title": "SSL/TLS Recommender", "description": "Enrollment in the SSL/TLS Recommender service which tries to detect and recommend (by sending periodic emails) the most secure SSL/TLS setting your origin servers support." }, "zones_ssl_recommender_enabled": { "type": "boolean", "description": "ssl-recommender enrollment setting.", "default": false }, "zones_ssl_value": { "type": "string", "description": "Value of the zone setting.\nNotes: Depends on the zone's plan level", "enum": [ "off", "flexible", "full", "strict" ], "default": "off" }, "zones_tls_1_2_only": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "Zone setting identifier.", "enum": [ "tls_1_2_only" ] }, "value": { "$ref": "#/$defs/zones_tls_1_2_only_value" } } } ], "title": "TLS1.2 only", "description": "Only allows TLS1.2." }, "zones_tls_1_2_only_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "off", "on" ], "default": "off" }, "zones_tls_1_3": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "tls_1_3" ] }, "value": { "$ref": "#/$defs/zones_tls_1_3_value" } } } ], "title": "Enable TLS 1.3 value for a zone", "description": "Enables Crypto TLS 1.3 feature for a zone.", "default": "off" }, "zones_tls_1_3_value": { "type": "string", "description": "Value of the zone setting.\nNotes: Default value depends on the zone's plan level.", "enum": [ "on", "off", "zrt" ], "default": "off" }, "zones_tls_client_auth": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "tls_client_auth" ] }, "value": { "$ref": "#/$defs/zones_tls_client_auth_value" } } } ], "title": "TLS Client Authentication", "description": "TLS Client Auth requires Cloudflare to connect to your origin server using a client certificate (Enterprise Only)." }, "zones_tls_client_auth_value": { "type": "string", "description": "value of the zone setting.", "enum": [ "on", "off" ], "default": "on" }, "zones_true_client_ip_header": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "true_client_ip_header" ] }, "value": { "$ref": "#/$defs/zones_true_client_ip_header_value" } } } ], "title": "True Client IP Header", "description": "Allows customer to continue to use True Client IP (Akamai feature) in the headers we send to the origin. This is limited to Enterprise Zones.", "default": "off" }, "zones_true_client_ip_header_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_waf": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "waf" ] }, "value": { "$ref": "#/$defs/zones_waf_value" } } } ], "title": "Web Application Firewall", "description": "The WAF examines HTTP requests to your website. It inspects both GET and POST requests and applies rules to help filter out illegitimate traffic from legitimate website visitors. The Cloudflare WAF inspects website addresses or URLs to detect anything out of the ordinary. If the Cloudflare WAF determines suspicious user behavior, then the WAF will 'challenge' the web visitor with a page that asks them to submit a CAPTCHA successfully to continue their action. If the challenge is failed, the action will be stopped. What this means is that Cloudflare's WAF will block any traffic identified as illegitimate before it reaches your origin web server. (https://support.cloudflare.com/hc/en-us/articles/200172016)." }, "zones_waf_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "on", "off" ], "default": "off" }, "zones_webp": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "webp" ] }, "value": { "$ref": "#/$defs/zones_webp_value" } } } ], "title": "Polish WebP Conversion", "description": "When the client requesting the image supports the WebP image codec, and WebP offers a performance advantage over the original image format, Cloudflare will serve a WebP version of the original image." }, "zones_webp_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "off", "on" ], "default": "off" }, "zones_websockets": { "allOf": [ { "$ref": "#/$defs/zones_base" }, { "properties": { "id": { "description": "ID of the zone setting.", "enum": [ "websockets" ] }, "value": { "$ref": "#/$defs/zones_websockets_value" } } } ], "title": "WebSockets", "description": "WebSockets are open connections sustained between the client and the origin server. Inside a WebSockets connection, the client and the origin can pass data back and forth without having to reestablish sessions. This makes exchanging data within a WebSockets connection fast. WebSockets are often used for real-time applications such as live chat and gaming. For more information refer to [Can I use Cloudflare with Websockets](https://support.cloudflare.com/hc/en-us/articles/200169466-Can-I-use-Cloudflare-with-WebSockets-)." }, "zones_websockets_value": { "type": "string", "description": "Value of the zone setting.", "enum": [ "off", "on" ], "default": "off" } } }