{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/google-cloud-security-command-center/json-schema/google-cloud-security-command-center-google-cloud-securitycenter-v1-security-health-analytics-custom-module-schema.json",
  "title": "GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule",
  "x-generated": "2026-11-11",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/google-cloud-security-command-center-securitycenter-folders-api-openapi.yml#/components/schemas/GoogleCloudSecuritycenterV1SecurityHealthAnalyticsCustomModule",
  "properties": {
    "lastEditor": {
      "readOnly": true,
      "type": "string"
    },
    "updateTime": {
      "type": "string",
      "readOnly": true,
      "format": "google-datetime"
    },
    "ancestorModule": {
      "readOnly": true,
      "type": "string"
    },
    "enablementState": {
      "type": "string",
      "enum": [
        "ENABLEMENT_STATE_UNSPECIFIED",
        "ENABLED",
        "DISABLED",
        "INHERITED"
      ]
    },
    "name": {
      "type": "string"
    },
    "customConfig": {
      "$ref": "#/$defs/GoogleCloudSecuritycenterV1CustomConfig"
    },
    "displayName": {
      "type": "string"
    },
    "cloudProvider": {
      "type": "string",
      "enum": [
        "CLOUD_PROVIDER_UNSPECIFIED",
        "GOOGLE_CLOUD_PLATFORM",
        "AMAZON_WEB_SERVICES",
        "MICROSOFT_AZURE"
      ]
    }
  },
  "type": "object",
  "$defs": {
    "Expr": {
      "type": "object",
      "properties": {
        "description": {
          "type": "string"
        },
        "expression": {
          "type": "string"
        },
        "title": {
          "type": "string"
        },
        "location": {
          "type": "string"
        }
      }
    },
    "GoogleCloudSecuritycenterV1CustomConfig": {
      "properties": {
        "recommendation": {
          "type": "string"
        },
        "resourceSelector": {
          "$ref": "#/$defs/GoogleCloudSecuritycenterV1ResourceSelector"
        },
        "description": {
          "type": "string"
        },
        "severity": {
          "enum": [
            "SEVERITY_UNSPECIFIED",
            "CRITICAL",
            "HIGH",
            "MEDIUM",
            "LOW"
          ],
          "type": "string"
        },
        "predicate": {
          "$ref": "#/$defs/Expr"
        },
        "customOutput": {
          "$ref": "#/$defs/GoogleCloudSecuritycenterV1CustomOutputSpec"
        }
      },
      "type": "object"
    },
    "GoogleCloudSecuritycenterV1CustomOutputSpec": {
      "properties": {
        "properties": {
          "items": {
            "$ref": "#/$defs/GoogleCloudSecuritycenterV1Property"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GoogleCloudSecuritycenterV1Property": {
      "properties": {
        "name": {
          "type": "string"
        },
        "valueExpression": {
          "$ref": "#/$defs/Expr"
        }
      },
      "type": "object"
    },
    "GoogleCloudSecuritycenterV1ResourceSelector": {
      "properties": {
        "resourceTypes": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      },
      "type": "object"
    }
  }
}