# Settings ## Domain Types ### Settings - `Settings` - `validation_default_mitigation_action?: "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?: "none" | null` 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 `client.apiGateway.settings.schemaValidation.get(SchemaValidationGetParamsparams, RequestOptionsoptions?): Settings` **get** `/zones/{zone_id}/api_gateway/settings/schema_validation` Retrieves zone level schema validation settings currently set on the zone ### Parameters - `params: SchemaValidationGetParams` - `zone_id: string` Identifier. ### Returns - `Settings` - `validation_default_mitigation_action?: "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?: "none" | null` 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 ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const settings = await client.apiGateway.settings.schemaValidation.get({ zone_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(settings.validation_default_mitigation_action); ``` #### Response ```json { "validation_default_mitigation_action": "block", "validation_override_mitigation_action": "none" } ``` ## Update zone level schema validation settings `client.apiGateway.settings.schemaValidation.update(SchemaValidationUpdateParamsparams, RequestOptionsoptions?): Settings` **put** `/zones/{zone_id}/api_gateway/settings/schema_validation` Updates zone level schema validation settings on the zone ### Parameters - `params: SchemaValidationUpdateParams` - `zone_id: string` Path param: Identifier. - `validation_default_mitigation_action: "none" | "log" | "block"` Body param: 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?: "none" | "disable_override" | null` Body param: 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 - `Settings` - `validation_default_mitigation_action?: "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?: "none" | null` 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 ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const settings = await client.apiGateway.settings.schemaValidation.update({ zone_id: '023e105f4ecef8ad9ca31a8372d0c353', validation_default_mitigation_action: 'block', }); console.log(settings.validation_default_mitigation_action); ``` #### Response ```json { "validation_default_mitigation_action": "block", "validation_override_mitigation_action": "none" } ``` ## Update zone level schema validation settings `client.apiGateway.settings.schemaValidation.edit(SchemaValidationEditParamsparams, RequestOptionsoptions?): Settings` **patch** `/zones/{zone_id}/api_gateway/settings/schema_validation` Updates zone level schema validation settings on the zone ### Parameters - `params: SchemaValidationEditParams` - `zone_id: string` Path param: Identifier. - `validation_default_mitigation_action?: "none" | "log" | "block" | null` Body param: 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?: "none" | "disable_override" | null` Body param: 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 - `Settings` - `validation_default_mitigation_action?: "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?: "none" | null` 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 ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const settings = await client.apiGateway.settings.schemaValidation.edit({ zone_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(settings.validation_default_mitigation_action); ``` #### Response ```json { "validation_default_mitigation_action": "block", "validation_override_mitigation_action": "none" } ```