hostname-coverage-match-target-get-200

Contains the hostname coverage API and website match targets defined in the security configuration version.

API DiscoveryAPI SecurityCloud SecurityPosture ManagementRuntime ProtectionThreat Protection

Properties

Name Type Description
matchTargets object Contains the API and website match targets defined in the security configuration version.
View JSON Schema on GitHub

JSON Schema

api-security-hostname-coverage-match-target-get-200-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/akamai-api-security/refs/heads/main/json-schema/api-security-hostname-coverage-match-target-get-200-schema.json",
  "title": "hostname-coverage-match-target-get-200",
  "description": "Contains the hostname coverage API and website match targets defined in the security configuration version.",
  "type": "object",
  "properties": {
    "matchTargets": {
      "additionalProperties": false,
      "description": "Contains the API and website match targets defined in the security configuration version.",
      "properties": {
        "apiTargets": {
          "description": "The list of `api` match targets.",
          "items": {
            "additionalProperties": false,
            "description": "Contains details about a hostname coverage match target.",
            "properties": {
              "apis": {
                "description": "The list of API endpoint identifiers and names. This applies only for `api` match targets.",
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "id": {
                      "description": "Uniquely identifies the API endpoint.",
                      "type": "integer"
                    },
                    "name": {
                      "description": "The API endpoint name.",
                      "type": "string"
                    }
                  },
                  "required": [
                    "id"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "bypassNetworkLists": {
                "description": "The network lists' identifiers and names in the match target.",
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "id": {
                      "description": "Uniquely identifies the network list.",
                      "type": "string"
                    },
                    "name": {
                      "description": "The name you assigned to the network list.",
                      "type": "string"
                    }
                  },
                  "required": [
                    "id"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "defaultFile": {
                "default": "NO_MATCH",
                "description": "Describes the rule to match on paths. Either `NO_MATCH` not to match on the default file, `BASE_MATCH` to match only requests for top-level hostnames ending in a trailing slash, or `RECURSIVE_MATCH` to match all requests for paths that end in a trailing slash. The default value is `NO_MATCH`.",
                "enum": [
                  "NO_MATCH",
                  "BASE_MATCH",
                  "RECURSIVE_MATCH"
                ],
                "type": "string"
              },
              "effectiveSecurityControls": {
                "additionalProperties": false,
                "description": "__Read-only__ The security controls to apply. For a security control to be effectively turned on, you must enable it in both the match target and the security policy.",
                "properties": {
                  "applyApiConstraints": {
                    "description": "Whether you enabled API constraints.",
                    "type": "boolean"
                  },
                  "applyApplicationLayerControls": {
                    "description": "Whether you enabled application layer controls.",
                    "type": "boolean"
                  },
                  "applyBotmanControls": {
                    "description": "Whether you enabled Bot Manager controls.",
                    "type": "boolean"
                  },
                  "applyNetworkLayerControls": {
                    "description": "Whether you enabled network layer controls.",
                    "type": "boolean"
                  },
                  "applyRateControls": {
                    "description": "Whether you enabled rate controls.",
                    "type": "boolean"
                  },
                  "applyReputationControls": {
                    "description": "Whether you enabled reputation controls.",
                    "type": "boolean"
                  },
                  "applySlowPostControls": {
                    "description": "Whether you enabled slow post controls.",
                    "type": "boolean"
                  }
                },
                "readOnly": true,
                "required": [
                  "applyApplicationLayerControls",
                  "applyNetworkLayerControls",
                  "applyRateControls",
                  "applyReputationControls",
                  "applyBotmanControls",
                  "applyApiConstraints",
                  "applySlowPostControls"
                ],
                "type": "object",
                "x-akamai": {
                  "file-path": "schemas/security-controls.yaml"
                }
              },
              "fileExtensions": {
                "description": "The list of file extensions to apply the match target to.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "filePaths": {
                "description": "The list of file paths to apply the match target to.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "hostnames": {
                "description": "The list of hostnames to protect.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "isNegativeFileExtensionMatch": {
                "description": "Whether the match target applies when a match is found in the specified `fileExtensions` or when a match isn't found.",
                "type": "boolean"
              },
              "isNegativePathMatch": {
                "description": "Whether the match target applies when a match is found in the specified `filePaths` or when a match isn't found.",
                "type": "boolean"
              },
              "securityPolicy": {
                "additionalProperties": false,
                "description": "The security policy associated with the match target.",
                "properties": {
                  "policyId": {
                    "description": "Uniquely identifies the security policy.",
                    "type": "string"
                  }
                },
                "required": [
                  "policyId"
                ],
                "type": "object"
              },
              "sequence": {
                "description": "The match target's position in the sequence of match targets.",
                "type": "integer"
              },
              "targetId": {
                "description": "Uniquely identifies the match target.",
                "type": "integer"
              },
              "type": {
                "description": "The type of match target. Either `website` or `api`.",
                "enum": [
                  "website",
                  "api"
                ],
                "type": "string"
              },
              "validations": {
                "additionalProperties": false,
                "description": "__Read-only__ Contains details about warnings, errors, or notices determined by a validation of this resource.",
                "properties": {
                  "errors": {
                    "description": "The list of errors.",
                    "items": {
                      "additionalProperties": false,
                      "description": "Contains feedback on validation.",
                      "properties": {
                        "detail": {
                          "description": "The explanation of the error message.",
                          "type": "string"
                        },
                        "fieldName": {
                          "description": "The name of the field causing the validation problem.",
                          "type": "string"
                        },
                        "jsonReference": {
                          "description": "The JSON reference to the field in the resource.",
                          "type": "string"
                        },
                        "title": {
                          "description": "The title for the error.",
                          "example": "Not Found",
                          "type": "string"
                        },
                        "type": {
                          "description": "The URL for the error type.",
                          "example": "/appsec/problem-types/INCOMPATIBLE-FIELD",
                          "type": "string"
                        }
                      },
                      "required": [
                        "title",
                        "type"
                      ],
                      "type": "object",
                      "x-akamai": {
                        "file-path": "schemas/validation.yaml"
                      }
                    },
                    "type": "array"
                  },
                  "notices": {
                    "description": "The list of notices.",
                    "items": {
                      "additionalProperties": false,
                      "description": "Contains feedback on validation.",
                      "properties": {
                        "detail": {
                          "description": "The explanation of the error message.",
                          "type": "string"
                        },
                        "fieldName": {
                          "description": "The name of the field causing the validation problem.",
                          "type": "string"
                        },
                        "jsonReference": {
                          "description": "The JSON reference to the field in the resource.",
                          "type": "string"
                        },
                        "title": {
                          "description": "The title for the error.",
                          "example": "Not Found",
                          "type": "string"
                        },
                        "type": {
                          "description": "The URL for the error type.",
                          "example": "/appsec/problem-types/INCOMPATIBLE-FIELD",
                          "type": "string"
                        }
                      },
                      "required": [
                        "title",
                        "type"
                      ],
                      "type": "object",
                      "x-akamai": {
                        "file-path": "schemas/validation.yaml"
                      }
                    },
                    "type": "array"
                  },
                  "warnings": {
                    "description": "The list of warnings.",
                    "items": {
                      "additionalProperties": false,
                      "description": "Contains feedback on validation.",
                      "properties": {
                        "detail": {
                          "description": "The explanation of the error message.",
                          "type": "string"
                        },
                        "fieldName": {
                          "description": "The name of the field causing the validation problem.",
                          "type": "string"
                        },
                        "jsonReference": {
                          "description": "The JSON reference to the field in the resource.",
                          "type": "string"
                        },
                        "title": {
                          "description": "The title for the error.",
                          "example": "Not Found",
                          "type": "string"
                        },
                        "type": {
                          "description": "The URL for the error type.",
                          "example": "/appsec/problem-types/INCOMPATIBLE-FIELD",
                          "type": "string"
                        }
                      },
                      "required": [
                        "title",
                        "type"
                      ],
                      "type": "object",
                      "x-akamai": {
                        "file-path": "schemas/validation.yaml"
                      }
                    },
                    "type": "array"
                  }
                },
                "readOnly": true,
                "required": [
                  "notices",
                  "errors",
                  "warnings"
                ],
                "type": "object",
                "x-akamai": {
                  "file-path": "schemas/validations.yaml"
                }
              }
            },
            "required": [
              "type",
              "securityPolicy"
            ],
            "type": "object",
            "x-akamai": {
              "file-path": "schemas/hostname-coverage-match-target.yaml"
            }
          },
          "type": "array"
        },
        "websiteTargets": {
          "description": "The list of `website` match targets.",
          "items": {
            "additionalProperties": false,
            "description": "Contains details about a hostname coverage match target.",
            "properties": {
              "apis": {
                "description": "The list of API endpoint identifiers and names. This applies only for `api` match targets.",
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "id": {
                      "description": "Uniquely identifies the API endpoint.",
                      "type": "integer"
                    },
                    "name": {
                      "description": "The API endpoint name.",
                      "type": "string"
                    }
                  },
                  "required": [
                    "id"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "bypassNetworkLists": {
                "description": "The network lists' identifiers and names in the match target.",
                "items": {
                  "additionalProperties": false,
                  "properties": {
                    "id": {
                      "description": "Uniquely identifies the network list.",
                      "type": "string"
                    },
                    "name": {
                      "description": "The name you assigned to the network list.",
                      "type": "string"
                    }
                  },
                  "required": [
                    "id"
                  ],
                  "type": "object"
                },
                "type": "array"
              },
              "defaultFile": {
                "default": "NO_MATCH",
                "description": "Describes the rule to match on paths. Either `NO_MATCH` not to match on the default file, `BASE_MATCH` to match only requests for top-level hostnames ending in a trailing slash, or `RECURSIVE_MATCH` to match all requests for paths that end in a trailing slash. The default value is `NO_MATCH`.",
                "enum": [
                  "NO_MATCH",
                  "BASE_MATCH",
                  "RECURSIVE_MATCH"
                ],
                "type": "string"
              },
              "effectiveSecurityControls": {
                "additionalProperties": false,
                "description": "__Read-only__ The security controls to apply. For a security control to be effectively turned on, you must enable it in both the match target and the security policy.",
                "properties": {
                  "applyApiConstraints": {
                    "description": "Whether you enabled API constraints.",
                    "type": "boolean"
                  },
                  "applyApplicationLayerControls": {
                    "description": "Whether you enabled application layer controls.",
                    "type": "boolean"
                  },
                  "applyBotmanControls": {
                    "description": "Whether you enabled Bot Manager controls.",
                    "type": "boolean"
                  },
                  "applyNetworkLayerControls": {
                    "description": "Whether you enabled network layer controls.",
                    "type": "boolean"
                  },
                  "applyRateControls": {
                    "description": "Whether you enabled rate controls.",
                    "type": "boolean"
                  },
                  "applyReputationControls": {
                    "description": "Whether you enabled reputation controls.",
                    "type": "boolean"
                  },
                  "applySlowPostControls": {
                    "description": "Whether you enabled slow post controls.",
                    "type": "boolean"
                  }
                },
                "readOnly": true,
                "required": [
                  "applyApplicationLayerControls",
                  "applyNetworkLayerControls",
                  "applyRateControls",
                  "applyReputationControls",
                  "applyBotmanControls",
                  "applyApiConstraints",
                  "applySlowPostControls"
                ],
                "type": "object",
                "x-akamai": {
                  "file-path": "schemas/security-controls.yaml"
                }
              },
              "fileExtensions": {
                "description": "The list of file extensions to apply the match target to.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "filePaths": {
                "description": "The list of file paths to apply the match target to.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "hostnames": {
                "description": "The list of hostnames to protect.",
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              "isNegativeFileExtensionMatch": {
                "description": "Whether the match target applies when a match is found in the specified `fileExtensions` or when a match isn't found.",
                "type": "boolean"
              },
              "isNegativePathMatch": {
                "description": "Whether the match target applies when a match is found in the specified `filePaths` or when a match isn't found.",
                "type": "boolean"
              },
              "securityPolicy": {
                "additionalProperties": false,
                "description": "The security policy associated with the match target.",
                "properties": {
                  "policyId": {
                    "description": "Uniquely identifies the security policy.",
                    "type": "string"
                  }
                },
                "required": [
                  "policyId"
                ],
                "type": "object"
              },
              "sequence": {
                "description": "The match target's position in the sequence of match targets.",
                "type": "integer"
              },
              "targetId": {
                "description": "Uniquely identifies the match target.",
                "type": "integer"
              },
              "type": {
                "description": "The type of match target. Either `website` or `api`.",
                "enum": [
                  "website",
                  "api"
                ],
                "type": "string"
              },
              "validations": {
                "additionalProperties": false,
                "description": "__Read-only__ Contains details about warnings, errors, or notices determined by a validation of this resource.",
                "properties": {
                  "errors": {
                    "description": "The list of errors.",
                    "items": {
                      "additionalProperties": false,
                      "description": "Contains feedback on validation.",
                      "properties": {
                        "detail": {
                          "description": "The explanation of the error message.",
                          "type": "string"
                        },
                        "fieldName": {
                          "description": "The name of the field causing the validation problem.",
                          "type": "string"
                        },
                        "jsonReference": {
                          "description": "The JSON reference to the field in the resource.",
                          "type": "string"
                        },
                        "title": {
                          "description": "The title for the error.",
                          "example": "Not Found",
                          "type": "string"
                        },
                        "type": {
                          "description": "The URL for the error type.",
                          "example": "/appsec/problem-types/INCOMPATIBLE-FIELD",
                          "type": "string"
                        }
                      },
                      "required": [
                        "title",
                        "type"
                      ],
                      "type": "object",
                      "x-akamai": {
                        "file-path": "schemas/validation.yaml"
                      }
                    },
                    "type": "array"
                  },
                  "notices": {
                    "description": "The list of notices.",
                    "items": {
                      "additionalProperties": false,
                      "description": "Contains feedback on validation.",
                      "properties": {
                        "detail": {
                          "description": "The explanation of the error message.",
                          "type": "string"
                        },
                        "fieldName": {
                          "description": "The name of the field causing the validation problem.",
                          "type": "string"
                        },
                        "jsonReference": {
                          "description": "The JSON reference to the field in the resource.",
                          "type": "string"
                        },
                        "title": {
                          "description": "The title for the error.",
                          "example": "Not Found",
                          "type": "string"
                        },
                        "type": {
                          "description": "The URL for the error type.",
                          "example": "/appsec/problem-types/INCOMPATIBLE-FIELD",
                          "type": "string"
                        }
                      },
                      "required": [
                        "title",
                        "type"
                      ],
                      "type": "object",
                      "x-akamai": {
                        "file-path": "schemas/validation.yaml"
                      }
                    },
                    "type": "array"
                  },
                  "warnings": {
                    "description": "The list of warnings.",
                    "items": {
                      "additionalProperties": false,
                      "description": "Contains feedback on validation.",
                      "properties": {
                        "detail": {
                          "description": "The explanation of the error message.",
                          "type": "string"
                        },
                        "fieldName": {
                          "description": "The name of the field causing the validation problem.",
                          "type": "string"
                        },
                        "jsonReference": {
                          "description": "The JSON reference to the field in the resource.",
                          "type": "string"
                        },
                        "title": {
                          "description": "The title for the error.",
                          "example": "Not Found",
                          "type": "string"
                        },
                        "type": {
                          "description": "The URL for the error type.",
                          "example": "/appsec/problem-types/INCOMPATIBLE-FIELD",
                          "type": "string"
                        }
                      },
                      "required": [
                        "title",
                        "type"
                      ],
                      "type": "object",
                      "x-akamai": {
                        "file-path": "schemas/validation.yaml"
                      }
                    },
                    "type": "array"
                  }
                },
                "readOnly": true,
                "required": [
                  "notices",
                  "errors",
                  "warnings"
                ],
                "type": "object",
                "x-akamai": {
                  "file-path": "schemas/validations.yaml"
                }
              }
            },
            "required": [
              "type",
              "securityPolicy"
            ],
            "type": "object",
            "x-akamai": {
              "file-path": "schemas/hostname-coverage-match-target.yaml"
            }
          },
          "type": "array"
        }
      },
      "required": [
        "apiTargets",
        "websiteTargets"
      ],
      "type": "object"
    }
  },
  "required": [
    "matchTargets"
  ],
  "additionalProperties": false
}