components: examples: cache-rules_cache_reserve_clear_completed: value: errors: [] messages: [] result: end_ts: "2023-10-02T12:00:00.12345Z" id: cache_reserve_clear start_ts: "2023-10-02T10:00:00.12345Z" state: Completed success: true cache-rules_cache_reserve_clear_in_progress: value: errors: [] messages: [] result: id: cache_reserve_clear start_ts: "2023-10-02T10:00:00.12345Z" state: In-progress success: true cache-rules_cache_reserve_clear_not_found: value: errors: - code: 1142 message: Unable to retrieve cache_reserve_clear setting value. The zone setting does not exist because you never performed a Cache Reserve Clear operation. messages: [] result: null success: false cache-rules_cache_reserve_clear_rejected_cr_on: value: errors: - code: 1152 message: Turn off Cache Reserve sync to proceed with deletion. messages: [] result: null success: false cache-rules_cache_reserve_denied_clearing: value: errors: - code: 1153 message: Cache Reserve cannot be enabled because a deletion is already in progress. messages: [] result: null success: false cache-rules_cache_reserve_off: value: errors: [] messages: [] result: editable: true id: cache_reserve value: "off" success: true cache-rules_cache_reserve_on: value: errors: [] messages: [] result: editable: true id: cache_reserve value: "on" success: true cache-rules_dummy_error_response: value: errors: - code: 12345 message: Some error message messages: [] result: null success: false cache-rules_origin_h2_max_streams_50: value: errors: [] messages: [] result: editable: true id: origin_h2_max_streams value: 50 success: true cache-rules_origin_max_http_version_2: value: errors: [] messages: [] result: editable: true id: origin_max_http_version value: "2" success: true cache_dummy_automatic_upgrader_disabled_response: value: errors: [] messages: [] result: editable: true id: ssl_automatic_mode modified_on: "2014-01-01T05:20:00.12345Z" value: custom success: true cache_dummy_automatic_upgrader_enabled_response: value: errors: [] messages: [] result: editable: true id: ssl_automatic_mode modified_on: "2014-01-01T05:20:00.12345Z" next_scheduled_scan: "2014-02-01T05:20:00.12345Z" value: auto success: true cache_dummy_error_response: value: errors: - code: 1008 message: Invalid SSL/TLS encryption configuration value, only auto or custom accepted messages: [] result: null success: false parameters: api-shield_api_discovery_origin_parameter: description: | Filter results to only include discovery results sourced from a particular discovery engine * `ML` - Discovered operations that were sourced using ML API Discovery * `SessionIdentifier` - Discovered operations that were sourced using Session Identifier API Discovery in: query name: origin schema: $ref: '#/components/schemas/api-shield_api_discovery_origin' api-shield_api_discovery_state_parameter: description: | Filter results to only include discovery results in a particular state. States are as follows * `review` - Discovered operations that are not saved into API Shield Endpoint Management * `saved` - Discovered operations that are already saved into API Shield Endpoint Management * `ignored` - Discovered operations that have been marked as ignored in: query name: state schema: $ref: '#/components/schemas/api-shield_api_discovery_state' api-shield_diff_parameter: in: query name: diff schema: description: When `true`, only return API Discovery results that are not saved into API Shield Endpoint Management type: boolean api-shield_direction_parameter: in: query name: direction schema: description: Direction to order results. enum: - asc - desc example: desc type: string api-shield_endpoint_parameter: in: query name: endpoint schema: description: Filter results to only include endpoints containing this pattern. example: /api/v1 type: string api-shield_host_parameter: in: query name: host schema: description: Filter results to only include the specified hosts. items: example: api.cloudflare.com type: string type: array uniqueItems: true api-shield_method_parameter: in: query name: method schema: description: Filter results to only include the specified HTTP methods. items: example: GET type: string type: array uniqueItems: true api-shield_omit_source: description: Omit the source-files of schemas and only retrieve their meta-data. in: query name: omit_source schema: default: false type: boolean api-shield_omit_source_query: description: Omit the source-files of schemas and only retrieve their meta-data. in: query name: omit_source schema: default: false type: boolean api-shield_operation_feature_parameter: description: Add feature(s) to the results. The feature name that is given here corresponds to the resulting feature object. Have a look at the top-level object description for more details on the specific meaning. in: query name: feature schema: example: - thresholds items: enum: - thresholds - parameter_schemas - schema_info example: thresholds type: string type: array uniqueItems: true api-shield_operation_id: description: Identifier for the operation example: f174e90a-fafe-4643-bbbc-4a0ed4fc8415 in: path name: operation_id required: true schema: $ref: '#/components/schemas/api-shield_uuid' api-shield_order_parameter: in: query name: order schema: description: Field to order by enum: - host - method - endpoint - traffic_stats.requests - traffic_stats.last_updated example: method type: string api-shield_page: description: Page number of paginated results. in: query name: page schema: default: 1 minimum: 1 type: integer api-shield_parameters-operation_id: description: Identifier for the discovered operation in: path name: operation_id required: true schema: $ref: '#/components/schemas/api-shield_schemas-uuid' api-shield_per_page: description: Maximum number of results per page. in: query name: per_page schema: default: 20 maximum: 50 minimum: 5 type: integer api-shield_schema_id: description: Identifier for the schema-ID example: f174e90a-fafe-4643-bbbc-4a0ed4fc8415 in: path name: schema_id required: true schema: format: uuid maxLength: 36 readOnly: true type: string api-shield_schema_id_path: description: The unique identifier of the schema in: path name: schema_id required: true schema: allOf: - $ref: '#/components/schemas/api-shield_schemas-uuid' - format: uuid readOnly: true type: string type: string api-shield_zone_id: in: path name: zone_id required: true schema: $ref: '#/components/schemas/api-shield_schemas-identifier' healthchecks_page: description: Page number of paginated results. in: query name: page schema: default: 1 minimum: 1 type: number healthchecks_per_page: description: Maximum number of results per page. Must be a multiple of 5. in: query name: per_page schema: default: 25 maximum: 1000 minimum: 5 type: number resource-sharing_direction: description: Direction to sort objects. in: query name: direction schema: default: asc enum: - asc - desc type: string resource-sharing_order: description: Order shares by values in the given field. in: query name: order schema: default: created enum: - name - created type: string resource-sharing_page: description: Page number. in: query name: page schema: example: 2 minimum: 0 multipleOf: 1 type: integer resource-sharing_per_page: description: Number of objects to return per page. in: query name: per_page schema: example: 20 maximum: 100 minimum: 0 multipleOf: 1 type: integer secrets-store_direction: description: Direction to sort objects in: query name: direction schema: default: desc enum: - asc - desc type: string secrets-store_order: description: Order secrets by values in the given field in: query name: order schema: default: created enum: - name - comment - created - modified - status type: string secrets-store_page: description: Page number in: query name: page schema: example: 2 minimum: 0 multipleOf: 1 type: integer secrets-store_per_page: description: Number of objects to return per page in: query name: per_page schema: example: 20 maximum: 100 minimum: 0 multipleOf: 1 type: integer secrets-store_search: description: Search secrets using a filter string, filtering across name and comment in: query name: search schema: type: string teams-devices_devices_list_devices_param_active_registrations: description: Include or exclude devices with active registrations. The default is "only" - return only devices with active registrations. explode: false in: query name: active_registrations schema: enum: - include - only - exclude type: string teams-devices_devices_list_devices_param_cursor: description: Opaque token indicating the starting position when requesting the next set of records. A cursor value can be obtained from the result_info.cursor field in the response. explode: false in: query name: cursor schema: type: string teams-devices_devices_list_devices_param_id: description: Filter by a one or more device IDs. explode: true in: query name: id schema: items: type: string type: array teams-devices_devices_list_devices_param_include: in: query name: include schema: type: string teams-devices_devices_list_devices_param_last_seen_user_email: description: Filter by the last seen user's email. explode: false in: query name: last_seen_user.email schema: type: string teams-devices_devices_list_devices_param_per_page: description: The maximum number of devices to return in a single response. explode: false in: query name: per_page schema: format: uint64 type: integer teams-devices_devices_list_devices_param_search: description: Search by device details. explode: false in: query name: search schema: type: string teams-devices_devices_list_devices_param_seen_after: description: Filters by the last_seen timestamp - returns only devices last seen after this timestamp. explode: false in: query name: seen_after schema: type: string teams-devices_devices_list_devices_param_seen_before: description: Filter by the last_seen timestamp - returns only devices last seen before this timestamp. explode: false in: query name: seen_before schema: type: string teams-devices_devices_list_devices_param_sort_by: description: The device field to order results by. explode: false in: query name: sort_by schema: enum: - name - id - client_version - last_seen_user.email - last_seen_at - active_registrations - created_at type: string teams-devices_devices_list_devices_param_sort_order: description: Sort direction. explode: false in: query name: sort_order schema: enum: - asc - desc type: string teams-devices_devices_list_registrations_param_cursor: description: Opaque token indicating the starting position when requesting the next set of records. A cursor value can be obtained from the result_info.cursor field in the response. explode: false in: query name: cursor schema: type: string teams-devices_devices_list_registrations_param_device_id: description: Filter by WARP device ID. explode: false in: query name: device.id schema: type: string teams-devices_devices_list_registrations_param_id: description: Filter by registration ID. explode: true in: query name: id schema: items: type: string type: array teams-devices_devices_list_registrations_param_include: in: query name: include schema: type: string teams-devices_devices_list_registrations_param_per_page: description: The maximum number of devices to return in a single response. explode: false in: query name: per_page schema: format: uint64 type: integer teams-devices_devices_list_registrations_param_search: description: Filter by registration details. explode: false in: query name: search schema: type: string teams-devices_devices_list_registrations_param_seen_after: description: Filters by the last_seen timestamp - returns only registrations last seen after this timestamp. explode: false in: query name: seen_after schema: type: string teams-devices_devices_list_registrations_param_seen_before: description: Filters by the last_seen timestamp - returns only registrations last seen before this timestamp. explode: false in: query name: seen_before schema: type: string teams-devices_devices_list_registrations_param_sort_by: description: The registration field to order results by. explode: false in: query name: sort_by schema: enum: - id - user.name - user.email - last_seen_at - created_at type: string teams-devices_devices_list_registrations_param_sort_order: description: Sort direction. explode: false in: query name: sort_order schema: enum: - asc - desc type: string teams-devices_devices_list_registrations_param_status: description: Filter by registration status. Defaults to 'active'. explode: false in: query name: status schema: enum: - active - all - revoked type: string teams-devices_devices_list_registrations_param_user_id: description: Filter by Access user ID. explode: true in: query name: user.id schema: items: type: string type: array waitingroom_page: description: Page number of paginated results. in: query name: page schema: default: 1 minimum: 1 type: number waitingroom_per_page: description: Maximum number of results per page. Must be a multiple of 5. in: query name: per_page schema: default: 25 maximum: 1000 minimum: 5 type: number requestBodies: api-shield_global_settings_edit: content: application/json: schema: $ref: '#/components/schemas/api-shield_global_setting_change_base' required: true api-shield_global_settings_update: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_global_setting_change_base' - required: - validation_default_mitigation_action type: object type: object required: true api-shield_per_operation_setting_update: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_per_operation_setting_change_base' - required: - mitigation_action type: object type: object required: true api-shield_per_operation_settings_bulk_edit: content: application/json: schema: additionalProperties: description: Operation ID to mitigation action mappings properties: mitigation_action: description: | Mitigation actions are as follows: * `log` - log request when request does not conform to schema * `block` - deny access to the site when request does not conform to schema * `none` - skip running schema validation * null - clears any existing per-operation setting enum: - none - log - block - null example: block nullable: true type: string type: object example: 3818d821-5901-4147-a474-f5f5aec1d54e: mitigation_action: log b17c8043-99a0-4202-b7d9-8f7cdbee02cd: mitigation_action: block type: object required: true api-shield_schema_create: content: application/json: schema: properties: kind: description: The kind of the schema enum: - openapi_v3 example: openapi_v3 type: string name: description: A human-readable name for the schema example: petstore schema type: string source: description: The raw schema, e.g., the OpenAPI schema, either as JSON or YAML example: type: string validation_enabled: description: An indicator if this schema is enabled type: boolean required: - name - kind - source type: object required: true api-shield_schema_edit: content: application/json: schema: properties: validation_enabled: description: Flag whether schema is enabled for validation. type: boolean type: object required: true responses: api-shield_generic_failure: content: application/json: schema: $ref: '#/components/schemas/api-shield_api-response-common-failure' description: Failure api-shield_global_settings_edit_success: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_api-response-single' - properties: result: $ref: '#/components/schemas/api-shield_global_settings' required: - result type: object type: object description: Success api-shield_global_settings_get_success: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_api-response-single' - properties: result: $ref: '#/components/schemas/api-shield_global_settings' required: - result type: object type: object description: Success api-shield_global_settings_update_success: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_api-response-single' - properties: result: $ref: '#/components/schemas/api-shield_global_settings' required: - result type: object type: object description: Success api-shield_per_operation_setting_get_success: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_api-response-common' - properties: result: $ref: '#/components/schemas/api-shield_per_operation_setting' required: - result type: object type: object description: Success api-shield_per_operation_setting_update_success: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_api-response-common' - properties: result: $ref: '#/components/schemas/api-shield_per_operation_setting' required: - result type: object type: object description: Successfully updated api-shield_per_operation_settings_bulk_edit_success: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_api-response-common' - properties: result: $ref: '#/components/schemas/api-shield_per_operation_bulk_settings' required: - result type: object type: object description: Update multiple operation-level schema validation settings response api-shield_per_operation_settings_delete_success: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_api-response-common' - properties: result: properties: operation_id: $ref: '#/components/schemas/api-shield_schemas-uuid' type: object required: - result type: object type: object description: Successfully delet api-shield_schema_create_failure: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_api-response-common-failure' - properties: errors: description: Describes errors in the schema that prohibited accepting the schema. items: $ref: '#/components/schemas/api-shield_schema_issue_notification' type: array messages: description: Describes issues in the schema and how they were resolved to accept the schema. items: $ref: '#/components/schemas/api-shield_schema_issue_notification' type: array required: - errors type: object type: object description: Failed uploaded the schema api-shield_schema_create_success: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_public_schema_success_result' - properties: errors: description: Describes errors in the schema that prohibited accepting the schema. items: $ref: '#/components/schemas/api-shield_schema_issue_notification' type: array messages: description: Describes issues in the schema and how they were resolved to accept the schema. items: $ref: '#/components/schemas/api-shield_schema_issue_notification' type: array required: - messages type: object type: object description: Successfully uploaded the schema api-shield_schema_delete_success: content: application/json: schema: allOf: - $ref: '#/components/schemas/api-shield_api-response-single' - properties: result: properties: schema_id: description: The ID of the schema that was just deleted format: uuid type: string x-auditable: true required: - schema_id type: object required: - result type: object description: Success api-shield_schema_edit_success: content: application/json: schema: $ref: '#/components/schemas/api-shield_public_schema_success_result' description: Success api-shield_schema_get_success: content: application/json: schema: $ref: '#/components/schemas/api-shield_public_schema_success_result' description: Success rulesets_Empty: description: An empty response. schemas: ActivationResponse: type: object required: - success - result properties: success: type: boolean example: true error: type: array items: {} example: [] messages: type: array items: {} example: [] result: $ref: '#/components/schemas/ActivationResult' ActivationResult: type: object properties: id: type: string example: "0c6fe6340b9a42bfaa42baa97cee125c" zone: type: object properties: id: type: string example: "b9166730806810ef88e0a20342836d48" name: type: string example: "davidtestcustomer.co.za" intent: type: string example: "PARTNERS_ENT" security_access: $ref: '#/components/schemas/activation_security' created_date: type: string format: date-time example: "2026-02-12T15:43:13Z" activation_security: type: object properties: id: type: string example: "business" scope: type: string example: "zone" public_name: type: string example: "Cloudflare Business Plan" externally_managed: type: boolean example: false is_contract: type: boolean example: true ApiMessage: type: object properties: code: type: integer message: type: string error: type: 'object' title: 'Error' required: - 'status' - 'message' properties: timestamp: type: 'string' format: 'date-time' description: 'Time stamp of the error' status: type: 'string' description: 'Status code returned by provider system' error: type: 'string' description: 'Status description' message: type: 'string' description: 'More error details and corrective measures' path: type: 'string' description: 'The path that caused the error' transactionId: type: string description: Transaction id returned by the provider system. api-shield_api-response-common: properties: errors: $ref: '#/components/schemas/api-shield_messages' messages: $ref: '#/components/schemas/api-shield_messages' success: description: Whether the API call was successful. enum: - true example: true type: boolean required: - success - errors - messages type: object activate_security: properties: id: type: string api-shield_api-response-common-failure: properties: errors: allOf: - $ref: '#/components/schemas/api-shield_messages' example: - code: 7003 message: No route for the URI minLength: 1 messages: allOf: - $ref: '#/components/schemas/api-shield_messages' example: [] result: enum: - null nullable: true type: object success: description: Whether the API call was successful. enum: - false example: false type: boolean required: - success - errors - messages - result type: object api-shield_api-response-single: allOf: - $ref: '#/components/schemas/api-shield_api-response-common' type: object api-shield_api_discovery_origin: description: | * `ML` - Discovered operation was sourced using ML API Discovery * `SessionIdentifier` - Discovered operation was sourced using Session Identifier API Discovery * `LabelDiscovery` - Discovered operation was identified to have a specific label enum: - ML - SessionIdentifier - LabelDiscovery type: string x-auditable: true api-shield_api_discovery_state: description: | State of operation in API Discovery * `review` - Operation is not saved into API Shield Endpoint Management * `saved` - Operation is saved into API Shield Endpoint Management * `ignored` - Operation is marked as ignored enum: - review - saved - ignored type: string x-auditable: true api-shield_global_setting_change_base: properties: validation_default_mitigation_action: description: | The default mitigation action used Mitigation actions are as follows: - `"log"` - log request when request does not conform to schema - `"block"` - deny access to the site when request does not conform to schema - `"none"` - skip running schema validation enum: - none - log - block example: block type: string x-auditable: true validation_override_mitigation_action: description: | When set, this overrides both zone level and operation level mitigation actions. - `"none"` - skip running schema validation entirely for the request - `null` - clears any existing override enum: - none - null nullable: true type: string x-auditable: true type: object api-shield_global_settings: properties: validation_default_mitigation_action: description: | The default mitigation action used Mitigation actions are as follows: - `log` - log request when request does not conform to schema - `block` - deny access to the site when request does not conform to schema - `none` - skip running schema validation enum: - none - log - block example: block type: string x-auditable: true validation_override_mitigation_action: description: | When not null, this overrides global both zone level and operation level mitigation actions. This can serve as a quick way to disable schema validation for the whole zone. - `"none"` will skip running schema validation entirely for the request enum: - none type: string x-auditable: true required: - validation_default_mitigation_action type: object api-shield_identifier: description: Identifier. example: 023e105f4ecef8ad9ca31a8372d0c353 maxLength: 32 type: string x-auditable: true api-shield_messages: example: [] items: properties: code: minimum: 1000 type: integer documentation_url: type: string message: type: string source: properties: pointer: type: string type: object required: - code - message type: object uniqueItems: true type: array api-shield_per_operation_bulk_settings: additionalProperties: $ref: '#/components/schemas/api-shield_per_operation_setting' description: Operation ID to per operation setting mapping example: 3818d821-5901-4147-a474-f5f5aec1d54e: mitigation_action: log b17c8043-99a0-4202-b7d9-8f7cdbee02cd: mitigation_action: block type: object api-shield_per_operation_setting: properties: mitigation_action: description: | When set, this applies a mitigation action to this operation which supersedes a global schema validation setting just for this operation - `"log"` - log request when request does not conform to schema for this operation - `"block"` - deny access to the site when request does not conform to schema for this operation - `"none"` - will skip mitigation for this operation enum: - log - block - none example: block type: string x-auditable: true operation_id: $ref: '#/components/schemas/api-shield_schemas-uuid' required: - operation_id - mitigation_action type: object api-shield_per_operation_setting_change_base: properties: mitigation_action: description: | When set, this applies a mitigation action to this operation - `"log"` - log request when request does not conform to schema for this operation - `"block"` - deny access to the site when request does not conform to schema for this operation - `"none"` - will skip mitigation for this operation - `null` - clears any mitigation action enum: - log - block - none - null example: block nullable: true type: string x-auditable: true type: object api-shield_public_schema_success_result: allOf: - $ref: '#/components/schemas/api-shield_api-response-common' - properties: result: $ref: '#/components/schemas/api-shield_schemas-public_schema' required: - result type: object type: object api-shield_schema_issue_notification: properties: code: description: A unique error code that describes the kind of issue with the schema minimum: 1000 type: integer message: description: A short text explaining the issue with the schema type: string source: nullable: true properties: locations: description: A list of JSON path expression(s) that describe the location(s) of the issue within the provided resource. See [https://goessner.net/articles/JsonPath/](https://goessner.net/articles/JsonPath/) for JSONPath specification. items: example: .paths["/user/{username}"].put type: string type: array type: object required: - code - message type: object api-shield_schemas-identifier: allOf: - $ref: '#/components/schemas/api-shield_identifier' - readOnly: true type: string x-auditable: true api-shield_schemas-public_schema: description: A schema used in schema validation properties: created_at: $ref: '#/components/schemas/api-shield_schemas-timestamp' kind: description: The kind of the schema enum: - openapi_v3 example: openapi_v3 readOnly: true type: string x-auditable: true name: description: A human-readable name for the schema example: petstore schema readOnly: true type: string x-auditable: true schema_id: allOf: - $ref: '#/components/schemas/api-shield_schemas-uuid' - description: A unique identifier of this schema format: uuid readOnly: true type: string type: string x-auditable: true source: description: The raw schema, e.g., the OpenAPI schema, either as JSON or YAML example: readOnly: true type: string x-auditable: true validation_enabled: description: An indicator if this schema is enabled type: boolean x-auditable: true required: - schema_id - name - kind - source - created_at type: object api-shield_schemas-timestamp: allOf: - $ref: '#/components/schemas/api-shield_timestamp' - readOnly: true type: string x-auditable: true api-shield_schemas-uuid: allOf: - minLength: 36 type: string x-auditable: true - $ref: '#/components/schemas/api-shield_uuid' api-shield_timestamp: example: "2014-01-01T05:20:00.12345Z" format: date-time type: string x-auditable: true api-shield_uuid: description: UUID. example: f174e90a-fafe-4643-bbbc-4a0ed4fc8415 maxLength: 36 type: string x-auditable: true cache-purge_Everything: properties: purge_everything: description: For more information, please refer to [purge everything documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-everything/). example: true type: boolean x-auditable: true title: Purge everything type: object cache-purge_FlexPurgeByHostnames: properties: hosts: description: For more information purging by hostnames, please refer to [purge by hostname documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-by-hostname/). example: - www.example.com - images.example.com items: type: string x-auditable: true type: array title: Purge by hostnames type: object cache-purge_FlexPurgeByPrefixes: properties: prefixes: description: For more information on purging by prefixes, please refer to [purge by prefix documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge_by_prefix/). example: - www.example.com/foo - images.example.com/bar/baz items: type: string x-auditable: true type: array title: Purge by prefixes type: object cache-purge_FlexPurgeByTags: properties: tags: description: For more information on cache tags and purging by tags, please refer to [purge by cache-tags documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-by-tags/). example: - a-cache-tag - another-cache-tag items: type: string x-auditable: true type: array title: Purge by tags type: object cache-purge_SingleFile: properties: files: description: For more information on purging files, please refer to [purge by single-file documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-by-single-file/). example: - http://www.example.com/css/styles.css - http://www.example.com/js/index.js items: type: string x-auditable: true type: array title: Purge files type: object cache-purge_SingleFileWithUrlAndHeaders: properties: files: description: For more information on purging files with URL and headers, please refer to [purge by single-file documentation page](https://developers.cloudflare.com/cache/how-to/purge-cache/purge-by-single-file/). example: - headers: Accept-Language: zh-CN CF-Device-Type: desktop CF-IPCountry: US url: http://www.example.com/cat_picture.jpg - headers: Accept-Language: en-US CF-Device-Type: mobile CF-IPCountry: EU url: http://www.example.com/dog_picture.jpg items: properties: headers: additionalProperties: type: string x-auditable: true example: type: object url: example: http://www.example.com/cat_picture.jpg type: string x-auditable: true type: object type: array title: Purge files with URL and headers type: object cache-purge_api-response-common: properties: errors: $ref: '#/components/schemas/cache-purge_messages' messages: $ref: '#/components/schemas/cache-purge_messages' success: description: Whether the API call was successful. enum: - true example: true type: boolean required: - success - errors - messages type: object cache-purge_api-response-common-failure: properties: errors: allOf: - $ref: '#/components/schemas/cache-purge_messages' example: - code: 7003 message: No route for the URI minLength: 1 messages: allOf: - $ref: '#/components/schemas/cache-purge_messages' example: [] result: enum: - null nullable: true type: object success: description: Whether the API call was successful. enum: - false example: false type: boolean required: - success - errors - messages - result type: object cache-purge_api-response-single-id: allOf: - $ref: '#/components/schemas/cache-purge_api-response-common' - properties: result: nullable: true properties: id: $ref: '#/components/schemas/cache-purge_schemas-identifier' required: - id type: object type: object cache-purge_identifier: type: string cache-purge_messages: example: [] items: properties: code: minimum: 1000 type: integer documentation_url: type: string message: type: string source: properties: pointer: type: string type: object required: - code - message type: object uniqueItems: true type: array cache-purge_schemas-identifier: description: Identifier. example: 023e105f4ecef8ad9ca31a8372d0c353 maxLength: 32 type: string zone-activation_api-response-common: properties: errors: $ref: '#/components/schemas/zone-activation_messages' messages: $ref: '#/components/schemas/zone-activation_messages' success: description: Whether the API call was successful. enum: - true example: true type: boolean required: - success - errors - messages type: object zone-activation_api-response-common-failure: properties: errors: allOf: - $ref: '#/components/schemas/zone-activation_messages' example: - code: 7003 message: No route for the URI minLength: 1 messages: allOf: - $ref: '#/components/schemas/zone-activation_messages' example: [] result: enum: - null nullable: true type: object success: description: Whether the API call was successful. enum: - false example: false type: boolean required: - success - errors - messages - result type: object zone-activation_api-response-single: allOf: - $ref: '#/components/schemas/zone-activation_api-response-common' type: object zone-activation_identifier: description: Identifier. example: 023e105f4ecef8ad9ca31a8372d0c353 maxLength: 32 type: string x-auditable: true zone-activation_messages: example: [] items: properties: code: minimum: 1000 type: integer documentation_url: type: string message: type: string source: properties: pointer: type: string type: object required: - code - message type: object uniqueItems: true type: array zones_api-response-common: properties: errors: $ref: '#/components/schemas/zones_messages' messages: $ref: '#/components/schemas/zones_messages' success: description: Whether the API call was successful example: true type: boolean required: - success - errors - messages type: object zones_api-response-common-failure: properties: errors: allOf: - $ref: '#/components/schemas/zones_messages' example: - code: 7003 message: No route for the URI minLength: 1 messages: allOf: - $ref: '#/components/schemas/zones_messages' example: [] result: nullable: true type: object success: description: Whether the API call was successful example: false type: boolean required: - success - errors - messages - result type: object zones_api-response-single-id: allOf: - $ref: '#/components/schemas/zones_api-response-common' - properties: result: nullable: true properties: id: $ref: '#/components/schemas/zones_identifier' required: - id type: object type: object zones_base: properties: editable: default: true description: Whether or not this setting can be modified for this zone (based on your Cloudflare plan level). enum: - true - false readOnly: true type: boolean id: description: Identifier of the zone setting. example: development_mode type: string modified_on: description: last time this setting was modified. example: "2014-01-01T05:20:00.12345Z" format: date-time nullable: true readOnly: true type: string value: description: Current value of the zone setting. example: "on" required: - id - value zones_identifier: description: Identifier example: 023e105f4ecef8ad9ca31a8372d0c353 maxLength: 32 type: string zones_messages: example: [] items: properties: code: minimum: 1000 type: integer message: type: string required: - code - message type: object uniqueItems: true type: array zones_name: description: The domain name example: example.com maxLength: 253 pattern: ^([a-zA-Z0-9][\-a-zA-Z0-9]*\.)+[\-a-zA-Z0-9]{2,20}$ type: string zones_paused: default: false description: | Indicates whether the zone is only using Cloudflare DNS services. A true value means the zone will not receive security or performance benefits. type: boolean zones_result_info: properties: count: description: Total number of results for the requested service example: 1 type: number page: description: Current page within paginated list of results example: 1 type: number per_page: description: Number of results per page of results example: 20 type: number total_count: description: Total results available without any search parameters example: 2000 type: number type: object zones_type: default: full description: | A full zone implies that DNS is hosted with Cloudflare. A partial zone is typically a partner-hosted zone or a CNAME setup. enum: - full - partial - secondary - internal example: full type: string zones_vanity_name_servers: default: [] description: |- An array of domains used for custom name servers. This is only available for Business and Enterprise plans. example: - ns1.example.com - ns2.example.com items: format: hostname maxLength: 253 type: string type: array zones_zone: properties: account: description: The account the zone belongs to properties: id: $ref: '#/components/schemas/zones_identifier' name: description: The name of the account example: Example Account Name type: string type: object activated_on: description: |- The last time proof of ownership was detected and the zone was made active example: "2014-01-02T00:01:00.12345Z" format: date-time nullable: true readOnly: true type: string cname_suffix: description: |- Allows the customer to use a custom apex. *Tenants Only Configuration*. example: cdn.cloudflare.com type: string created_on: description: When the zone was created example: "2014-01-01T05:20:00.12345Z" format: date-time readOnly: true type: string development_mode: description: |- 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 0. example: 7200 readOnly: true type: number id: $ref: '#/components/schemas/zones_identifier' meta: description: Metadata about the zone properties: cdn_only: description: The zone is only configured for CDN example: true type: boolean custom_certificate_quota: description: Number of Custom Certificates the zone can have example: 1 type: integer dns_only: description: The zone is only configured for DNS example: true type: boolean foundation_dns: description: The zone is setup with Foundation DNS example: true type: boolean page_rule_quota: description: Number of Page Rules a zone can have example: 100 type: integer phishing_detected: description: The zone has been flagged for phishing example: false type: boolean step: example: 2 type: integer type: object modified_on: description: When the zone was last modified example: "2014-01-01T05:20:00.12345Z" format: date-time readOnly: true type: string name: description: The domain name example: example.com maxLength: 253 pattern: ^([a-zA-Z0-9][\-a-zA-Z0-9]*\.)+[\-a-zA-Z0-9]{2,20}$ type: string name_servers: description: The name servers Cloudflare assigns to a zone example: - bob.ns.cloudflare.com - lola.ns.cloudflare.com items: format: hostname type: string readOnly: true type: array original_dnshost: description: DNS host at the time of switching to Cloudflare example: NameCheap maxLength: 50 nullable: true readOnly: true type: string original_name_servers: description: Original name servers before moving to Cloudflare example: - ns1.originaldnshost.com - ns2.originaldnshost.com items: format: hostname type: string nullable: true readOnly: true type: array original_registrar: description: Registrar for the domain at the time of switching to Cloudflare example: GoDaddy nullable: true readOnly: true type: string owner: description: The owner of the zone properties: id: $ref: '#/components/schemas/zones_identifier' name: description: Name of the owner example: Example Org type: string type: description: The type of owner example: organization type: string type: object paused: $ref: '#/components/schemas/zones_paused' permissions: deprecated: true description: Legacy permissions based on legacy user membership information. items: example: '#worker:read' type: string type: array x-stainless-message: This has been replaced by Account memberships. plan: deprecated: true description: A Zones subscription information. properties: can_subscribe: description: States if the subscription can be activated. example: false type: boolean currency: description: The denomination of the customer. example: USD type: string externally_managed: description: If this Zone is managed by another company. example: false type: boolean frequency: description: How often the customer is billed. example: monthly type: string id: $ref: '#/components/schemas/zones_identifier' is_subscribed: description: States if the subscription active. example: false type: boolean legacy_discount: description: If the legacy discount applies to this Zone. example: false type: boolean legacy_id: description: The legacy name of the plan. example: free type: string name: description: Name of the owner example: Example Org type: string price: description: How much the customer is paying. example: 10.99 type: number x-stainless-message: |- Please use the `/zones/{zone_id}/subscription` API to update a zone's plan. Changing this value will create/cancel associated subscriptions. To view available plans for this zone, see [Zone Plans](https://developers.cloudflare.com/api/resources/zones/subresources/plans/). status: description: The zone status on Cloudflare. enum: - initializing - pending - active - moved example: active readOnly: true type: string tenant: description: The root organizational unit that this zone belongs to (such as a tenant or organization). properties: id: $ref: '#/components/schemas/zones_identifier' name: description: The name of the Tenant account. example: Example Account Name type: string tenant_unit: description: The immediate parent organizational unit that this zone belongs to (such as under a tenant or sub-organization). properties: id: $ref: '#/components/schemas/zones_identifier' type: $ref: '#/components/schemas/zones_type' vanity_name_servers: default: [] description: An array of domains used for custom name servers. This is only available for Business and Enterprise plans. example: - ns1.example.com - ns2.example.com items: format: hostname maxLength: 253 type: string type: array verification_key: description: Verification key for partial zone setup. example: 284344499-1084221259 readOnly: true type: string required: - id - name - development_mode - owner - account - meta - name_servers - original_name_servers - original_registrar - original_dnshost - created_on - modified_on - activated_on - plan type: object securitySchemes: api_email: in: header name: X-Auth-Email type: apiKey api_key: in: header name: X-Auth-Key type: apiKey api_token: scheme: bearer type: http user_service_key: in: header name: X-Auth-User-Service-Key type: apiKey info: description: |- In Cloudflare, a zone refers to a domain or subdomain that has been added to Cloudflare for management. Zones are a core concept in the Cloudflare ecosystem and are used to organize and apply settings, services, and configurations specific to a particular domain or subdomain. When a domain is added to Cloudflare, it becomes a zone, allowing you to manage its security, performance, and DNS settings. Each zone operates independently, meaning changes or configurations applied to one zone do not affect other zones, even if they belong to the same account. license: name: MADAPI url: https://developers.mtn.com/ title: Zones API version: 4.0. servers: - url: https://api.mtn.com/zoneManagement/v1 description: HTTPS openapi: 3.0.3 paths: /zones: get: description: | It is used for getting your zones based on different filters, seraches, sorts and lists. Listing zones across more than 500 accounts is currently not allowed. operationId: zones-get parameters: - examples: Basic Query: summary: Simple Query value: example.com Contains Query: summary: Contains Query value: contains:.org Ends With Query: summary: Ends With Query value: ends_with:arpa Starts With Query: summary: Starts With Query value: starts_with:dev in: query name: name schema: maxLength: 253 type: string - in: query name: status schema: description: A zone status enum: - initializing - pending - active - moved type: string - in: query name: account.id schema: description: An account ID type: string - examples: Basic Query: summary: Simple Query value: Dev Account Contains Query: summary: Contains Query value: contains:Test in: query name: account.name schema: maxLength: 253 type: string - in: query name: page schema: default: 1 description: Page number of paginated results. minimum: 1 type: number - in: query name: per_page schema: default: 20 description: Number of zones per page. maximum: 50 minimum: 5 type: number - in: query name: order schema: description: Field to order zones by. enum: - name - status - account.id - account.name - plan.id example: status type: string - in: query name: direction schema: description: Direction to order zones. enum: - asc - desc example: desc type: string - in: query name: match schema: default: all description: Whether to match all search requirements or at least one (any). enum: - any - all type: string responses: "400": description: 'Bad Request' content: application/json: schema: $ref: '#/components/schemas/error' '401': description: 'Unauthorized' content: application/json: schema: $ref: '#/components/schemas/error' '403': description: 'Forbidden' content: application/json: schema: $ref: '#/components/schemas/error' '404': description: 'Not found' content: application/json: schema: $ref: '#/components/schemas/error' '405': description: 'Method Not allowed' content: application/json: schema: $ref: '#/components/schemas/error' '500': description: 'Internal Server Error' content: application/json: schema: $ref: '#/components/schemas/error' "200": content: application/json: schema: allOf: - $ref: '#/components/schemas/zones_api-response-common' - properties: result_info: $ref: '#/components/schemas/zones_result_info' - properties: result: items: $ref: '#/components/schemas/zones_zone' type: array description: List Zones response security: - api_token: [] - api_email: [] api_key: [] summary: Gets List of Zones tags: - Zone post: description: | It is used to create the zone. A full zone implies that DNS is hosted with Cloudflare. A partial zone is typically a partner-hosted zone or a CNAME setup. operationId: zones-post requestBody: content: application/json: schema: properties: account: properties: id: $ref: '#/components/schemas/zones_identifier' type: object name: $ref: '#/components/schemas/zones_name' type: $ref: '#/components/schemas/zones_type' required: - name - account type: object required: true responses: "400": description: 'Bad Request' content: application/json: schema: $ref: '#/components/schemas/error' '401': description: 'Unauthorized' content: application/json: schema: $ref: '#/components/schemas/error' '403': description: 'Forbidden' content: application/json: schema: $ref: '#/components/schemas/error' '404': description: 'Not found' content: application/json: schema: $ref: '#/components/schemas/error' '405': description: 'Method Not allowed' content: application/json: schema: $ref: '#/components/schemas/error' '500': description: 'Internal Server Error' content: application/json: schema: $ref: '#/components/schemas/error' "200": content: application/json: schema: allOf: - $ref: '#/components/schemas/zones_api-response-common' - properties: result: $ref: '#/components/schemas/zones_zone' type: object description: Create Zone response security: - api_token: [] - api_email: [] api_key: [] summary: Create New Zone tags: - Zone /zones/{zone_id}: delete: description: It deletes the existing zone. operationId: zones-0-delete parameters: - in: path name: zone_id required: true schema: $ref: '#/components/schemas/zones_identifier' responses: "400": description: 'Bad Request' content: application/json: schema: $ref: '#/components/schemas/error' '401': description: 'Unauthorized' content: application/json: schema: $ref: '#/components/schemas/error' '403': description: 'Forbidden' content: application/json: schema: $ref: '#/components/schemas/error' '404': description: 'Not found' content: application/json: schema: $ref: '#/components/schemas/error' '405': description: 'Method Not allowed' content: application/json: schema: $ref: '#/components/schemas/error' '500': description: 'Internal Server Error' content: application/json: schema: $ref: '#/components/schemas/error' "200": content: application/json: schema: $ref: '#/components/schemas/zones_api-response-single-id' description: Delete Zone response security: - api_token: [] - api_email: [] api_key: [] summary: Deletes the existing Zone tags: - Zone x-api-token-group: - Zone Write x-cfPermissionsRequired: enum: - '#zone:edit' x-cfPlanAvailability: business: true enterprise: true free: true pro: true get: description: | It is used to getting the zone details by zone id operationId: zones-0-get parameters: - in: path name: zone_id required: true schema: $ref: '#/components/schemas/zones_identifier' responses: "400": description: 'Bad Request' content: application/json: schema: $ref: '#/components/schemas/error' '401': description: 'Unauthorized' content: application/json: schema: $ref: '#/components/schemas/error' '403': description: 'Forbidden' content: application/json: schema: $ref: '#/components/schemas/error' '404': description: 'Not found' content: application/json: schema: $ref: '#/components/schemas/error' '405': description: 'Method Not allowed' content: application/json: schema: $ref: '#/components/schemas/error' '500': description: 'Internal Server Error' content: application/json: schema: $ref: '#/components/schemas/error' "200": content: application/json: schema: allOf: - $ref: '#/components/schemas/zones_api-response-common' - properties: result: $ref: '#/components/schemas/zones_zone' type: object description: Zone Details response security: - api_token: [] - api_email: [] api_key: [] summary: Gets the Zone Details tags: - Zone x-api-token-group: - Trust and Safety Write - Trust and Safety Read - 'Zero Trust: PII Read' - Zaraz Edit - Zaraz Read - Zaraz Admin - 'Access: Apps and Policies Revoke' - 'Access: Apps and Policies Write' - 'Access: Apps and Policies Read' - 'Access: Apps and Policies Revoke' - 'Access: Mutual TLS Certificates Write' - 'Access: Organizations, Identity Providers, and Groups Write' - Zone Settings Write - Zone Settings Read - Zone Read - DNS Read - Workers Scripts Write - Workers Scripts Read - Zone Write - Workers Routes Write - Workers Routes Read - Stream Write - Stream Read - SSL and Certificates Write - SSL and Certificates Read - Logs Write - Logs Read - Cache Purge - Page Rules Write - Page Rules Read - Load Balancers Write - Load Balancers Read - Firewall Services Write - Firewall Services Read - DNS Write - Apps Write - Analytics Read - 'Access: Apps and Policies Write' - 'Access: Apps and Policies Read' x-cfPermissionsRequired: enum: - '#zone:read' x-cfPlanAvailability: business: true enterprise: true free: true pro: true patch: description: It edits a zone. Only one zone property can be changed at a time. operationId: zones-0-patch parameters: - in: path name: zone_id required: true schema: $ref: '#/components/schemas/zones_identifier' requestBody: content: application/json: schema: example: paused: true properties: paused: $ref: '#/components/schemas/zones_paused' plan: description: | (Deprecated) Please use the `/zones/{zone_id}/subscription` API to update a zone's plan. Changing this value will create/cancel associated subscriptions. To view available plans for this zone, see Zone Plans. properties: id: $ref: '#/components/schemas/zones_identifier' type: object type: description: | A full zone implies that DNS is hosted with Cloudflare. A partial zone is typically a partner-hosted zone or a CNAME setup. This parameter is only available to Enterprise customers or if it has been explicitly enabled on a zone. enum: - full - partial - secondary - internal example: full type: string vanity_name_servers: $ref: '#/components/schemas/zones_vanity_name_servers' type: object required: true responses: "400": description: 'Bad Request' content: application/json: schema: $ref: '#/components/schemas/error' '401': description: 'Unauthorized' content: application/json: schema: $ref: '#/components/schemas/error' '403': description: 'Forbidden' content: application/json: schema: $ref: '#/components/schemas/error' '404': description: 'Not found' content: application/json: schema: $ref: '#/components/schemas/error' '405': description: 'Method Not allowed' content: application/json: schema: $ref: '#/components/schemas/error' '500': description: 'Internal Server Error' content: application/json: schema: $ref: '#/components/schemas/error' "200": content: application/json: schema: allOf: - $ref: '#/components/schemas/zones_api-response-common' - properties: result: $ref: '#/components/schemas/zones_zone' type: object description: Edit Zone response security: - api_token: [] - api_email: [] api_key: [] summary: Edits Zone Details tags: - Zone x-api-token-group: - Zone Write x-cfPlanAvailability: business: true enterprise: true free: true pro: true /zones/{zone_id}/activate_security: post: parameters: - description: Zone ID in: path name: zone_id required: true schema: $ref: '#/components/schemas/zone-activation_identifier' requestBody: content: application/json: schema: properties: security_access: properties: id: type: string type: object responses: "400": description: 'Bad Request' content: application/json: schema: $ref: '#/components/schemas/error' '401': description: 'Unauthorized' content: application/json: schema: $ref: '#/components/schemas/error' '403': description: 'Forbidden' content: application/json: schema: $ref: '#/components/schemas/error' '404': description: 'Not found' content: application/json: schema: $ref: '#/components/schemas/error' '405': description: 'Method Not allowed' content: application/json: schema: $ref: '#/components/schemas/error' '500': description: 'Internal Server Error' content: application/json: schema: $ref: '#/components/schemas/error' "200": description: "Activation Security" content: application/json: schema: $ref: '#/components/schemas/ActivationResponse' security: - api_token: [] - api_email: [] - api_key: [] summary: Activation security tags: - Zone x-api-token-group: - Zone Write /zones/{zone_id}/activation: put: description: |- Triggeres a new activation check for a PENDING Zone. This can beidentifier triggered every 5 min for paygo/ent customers, every hour for FREE Zones. operationId: put-zones-zone_id-activation_check parameters: - description: Zone ID in: path name: zone_id required: true schema: $ref: '#/components/schemas/zone-activation_identifier' responses: "400": description: 'Bad Request' content: application/json: schema: $ref: '#/components/schemas/error' '401': description: 'Unauthorized' content: application/json: schema: $ref: '#/components/schemas/error' '403': description: 'Forbidden' content: application/json: schema: $ref: '#/components/schemas/error' '404': description: 'Not found' content: application/json: schema: $ref: '#/components/schemas/error' '405': description: 'Method Not allowed' content: application/json: schema: $ref: '#/components/schemas/error' '500': description: 'Internal Server Error' content: application/json: schema: $ref: '#/components/schemas/error' "200": content: application/json: schema: allOf: - $ref: '#/components/schemas/zone-activation_api-response-single' - properties: result: properties: id: $ref: '#/components/schemas/zone-activation_identifier' type: object type: object description: Successful Response security: - api_token: [] - api_email: [] api_key: [] summary: Rerun the Activation Check tags: - Zone x-api-token-group: - Zone Write /zones/{zone_id}/purge_cache: post: description: |- It removes ALL files from Cloudflare's cache. All tiers can purge everything. operationId: zone-purge parameters: - in: path name: zone_id required: true schema: $ref: '#/components/schemas/cache-purge_identifier' requestBody: content: application/json: examples: Flex Purge with Hosts: summary: Flex purge example with hosts list value: hosts: - www.example.com - images.example.com Flex Purge with Prefixes: summary: Flex purge example with prefixes list value: prefixes: - www.example.com/foo - images.example.com/bar/baz Flex Purge with Tags: summary: Flex purge example with tags list value: tags: - a-cache-tag - another-cache-tag Purge Everything: summary: Purge everything example value: purge_everything: true Single File Purge: summary: Single file purge example with files list value: files: - http://www.example.com/css/styles.css - http://www.example.com/js/index.js Single File Purge with UrlAndHeaders: summary: Single file purge example with url and headers list value: files: - headers: Accept-Language: zh-CN CF-Device-Type: desktop CF-IPCountry: US url: http://www.example.com/cat_picture.jpg - headers: Accept-Language: en-US CF-Device-Type: mobile CF-IPCountry: EU url: http://www.example.com/dog_picture.jpg schema: anyOf: - $ref: '#/components/schemas/cache-purge_FlexPurgeByTags' - $ref: '#/components/schemas/cache-purge_FlexPurgeByHostnames' - $ref: '#/components/schemas/cache-purge_FlexPurgeByPrefixes' - $ref: '#/components/schemas/cache-purge_Everything' - $ref: '#/components/schemas/cache-purge_SingleFile' - $ref: '#/components/schemas/cache-purge_SingleFileWithUrlAndHeaders' required: true responses: "400": description: 'Bad Request' content: application/json: schema: $ref: '#/components/schemas/error' '401': description: 'Unauthorized' content: application/json: schema: $ref: '#/components/schemas/error' '403': description: 'Forbidden' content: application/json: schema: $ref: '#/components/schemas/error' '404': description: 'Not found' content: application/json: schema: $ref: '#/components/schemas/error' '405': description: 'Method Not allowed' content: application/json: schema: $ref: '#/components/schemas/error' '500': description: 'Internal Server Error' content: application/json: schema: $ref: '#/components/schemas/error' "200": content: application/json: schema: $ref: '#/components/schemas/cache-purge_api-response-single-id' description: Purge Cached Content security: - api_email: [] api_key: [] summary: Purge Cached Content tags: - Zone x-api-token-group: - Cache Purge x-cfPermissionsRequired: enum: - '#cache_purge:edit' security: - api_email: [] api_key: [] - api_token: [] - user_service_key: []