# Settings ## Domain Types ### Settings - `class Settings: …` - `validation_default_mitigation_action: Optional[Literal["none", "log", "block"]]` The default mitigation action used when there is no mitigation action defined on the operation 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 A special value of of `none` will skip running schema validation entirely for the request when there is no mitigation action defined on the operation - `"none"` - `"log"` - `"block"` - `validation_override_mitigation_action: Optional[Literal["none"]]` When set, this overrides both zone level and operation level mitigation actions. - `none` will skip running schema validation entirely for the request - `null` indicates that no override is in place - `"none"` # Schema Validation ## Retrieve zone level schema validation settings `api_gateway.settings.schema_validation.get(SchemaValidationGetParams**kwargs) -> Settings` **get** `/zones/{zone_id}/api_gateway/settings/schema_validation` Retrieves zone level schema validation settings currently set on the zone ### Parameters - `zone_id: str` Identifier. ### Returns - `class Settings: …` - `validation_default_mitigation_action: Optional[Literal["none", "log", "block"]]` The default mitigation action used when there is no mitigation action defined on the operation 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 A special value of of `none` will skip running schema validation entirely for the request when there is no mitigation action defined on the operation - `"none"` - `"log"` - `"block"` - `validation_override_mitigation_action: Optional[Literal["none"]]` When set, this overrides both zone level and operation level mitigation actions. - `none` will skip running schema validation entirely for the request - `null` indicates that no override is in place - `"none"` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) settings = client.api_gateway.settings.schema_validation.get( zone_id="023e105f4ecef8ad9ca31a8372d0c353", ) print(settings.validation_default_mitigation_action) ``` #### Response ```json { "validation_default_mitigation_action": "block", "validation_override_mitigation_action": "none" } ``` ## Update zone level schema validation settings `api_gateway.settings.schema_validation.update(SchemaValidationUpdateParams**kwargs) -> Settings` **put** `/zones/{zone_id}/api_gateway/settings/schema_validation` Updates zone level schema validation settings on the zone ### Parameters - `zone_id: str` Identifier. - `validation_default_mitigation_action: Literal["none", "log", "block"]` The default mitigation action used when there is no mitigation action defined on the operation 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 A special value of of `none` will skip running schema validation entirely for the request when there is no mitigation action defined on the operation - `"none"` - `"log"` - `"block"` - `validation_override_mitigation_action: Optional[Literal["none", "disable_override"]]` When set, this overrides both zone level and operation level mitigation actions. - `none` will skip running schema validation entirely for the request - `null` indicates that no override is in place To clear any override, use the special value `disable_override` or `null` - `"none"` - `"disable_override"` ### Returns - `class Settings: …` - `validation_default_mitigation_action: Optional[Literal["none", "log", "block"]]` The default mitigation action used when there is no mitigation action defined on the operation 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 A special value of of `none` will skip running schema validation entirely for the request when there is no mitigation action defined on the operation - `"none"` - `"log"` - `"block"` - `validation_override_mitigation_action: Optional[Literal["none"]]` When set, this overrides both zone level and operation level mitigation actions. - `none` will skip running schema validation entirely for the request - `null` indicates that no override is in place - `"none"` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) settings = client.api_gateway.settings.schema_validation.update( zone_id="023e105f4ecef8ad9ca31a8372d0c353", validation_default_mitigation_action="block", ) print(settings.validation_default_mitigation_action) ``` #### Response ```json { "validation_default_mitigation_action": "block", "validation_override_mitigation_action": "none" } ``` ## Update zone level schema validation settings `api_gateway.settings.schema_validation.edit(SchemaValidationEditParams**kwargs) -> Settings` **patch** `/zones/{zone_id}/api_gateway/settings/schema_validation` Updates zone level schema validation settings on the zone ### Parameters - `zone_id: str` Identifier. - `validation_default_mitigation_action: Optional[Literal["none", "log", "block"]]` The default mitigation action used when there is no mitigation action defined on the operation 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 A special value of of `none` will skip running schema validation entirely for the request when there is no mitigation action defined on the operation `null` will have no effect. - `"none"` - `"log"` - `"block"` - `validation_override_mitigation_action: Optional[Literal["none", "disable_override"]]` When set, this overrides both zone level and operation level mitigation actions. - `none` will skip running schema validation entirely for the request To clear any override, use the special value `disable_override` `null` will have no effect. - `"none"` - `"disable_override"` ### Returns - `class Settings: …` - `validation_default_mitigation_action: Optional[Literal["none", "log", "block"]]` The default mitigation action used when there is no mitigation action defined on the operation 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 A special value of of `none` will skip running schema validation entirely for the request when there is no mitigation action defined on the operation - `"none"` - `"log"` - `"block"` - `validation_override_mitigation_action: Optional[Literal["none"]]` When set, this overrides both zone level and operation level mitigation actions. - `none` will skip running schema validation entirely for the request - `null` indicates that no override is in place - `"none"` ### Example ```python import os from cloudflare import Cloudflare client = Cloudflare( api_token=os.environ.get("CLOUDFLARE_API_TOKEN"), # This is the default and can be omitted ) settings = client.api_gateway.settings.schema_validation.edit( zone_id="023e105f4ecef8ad9ca31a8372d0c353", ) print(settings.validation_default_mitigation_action) ``` #### Response ```json { "validation_default_mitigation_action": "block", "validation_override_mitigation_action": "none" } ```