{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/zoho/main/json-schema/zoho-get-all-rule-groups-response-schema.json",
  "title": "GetAllRuleGroupsResponse",
  "x-generated": "2026-10-04",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/zoho-rulegroup-api-openapi.yml#/components/schemas/GetAllRuleGroupsResponse",
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/RuleGroup"
      }
    }
  },
  "$defs": {
    "Agent": {
      "type": "object",
      "properties": {
        "photoURL": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "id": {
          "type": "string"
        }
      }
    },
    "Cluster": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "nodes": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Node"
          }
        }
      }
    },
    "DepartmentProperty": {
      "type": "object",
      "properties": {
        "ruleGroupStatus": {
          "type": "string"
        },
        "ruleGroupOrder": {
          "type": "string"
        },
        "id": {
          "type": "string"
        },
        "ruleGroupExecutionType": {
          "type": "string"
        }
      }
    },
    "Engine": {
      "type": "object",
      "properties": {
        "systemName": {
          "type": "string"
        },
        "id": {
          "type": "string"
        }
      }
    },
    "Module": {
      "type": "object",
      "properties": {
        "displayLabel": {
          "type": "string"
        },
        "apiName": {
          "type": "string"
        },
        "id": {
          "type": "string"
        }
      }
    },
    "Node": {
      "type": "object",
      "properties": {
        "id": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "executionType": {
          "type": "string"
        },
        "type": {
          "type": "string"
        },
        "propertyType": {
          "type": "string"
        },
        "propertyId": {
          "type": "string"
        },
        "entityInfo": {
          "type": [
            "object",
            "null"
          ]
        },
        "childNodes": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Node"
          }
        }
      }
    },
    "Rule": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "order": {
          "type": "integer"
        },
        "criteria": {
          "type": [
            "object",
            "null"
          ]
        },
        "clusters": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Cluster"
          }
        }
      }
    },
    "RuleGroup": {
      "type": "object",
      "properties": {
        "modifiedTime": {
          "type": "string",
          "format": "date-time"
        },
        "departmentProperties": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/DepartmentProperty"
          }
        },
        "createdBy": {
          "$ref": "#/$defs/Agent"
        },
        "engine": {
          "$ref": "#/$defs/Engine"
        },
        "module": {
          "$ref": "#/$defs/Module"
        },
        "name": {
          "type": "string"
        },
        "createdTime": {
          "type": "string",
          "format": "date-time"
        },
        "description": {
          "type": "string"
        },
        "modifiedBy": {
          "$ref": "#/$defs/Agent"
        },
        "id": {
          "type": "string"
        },
        "events": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/RuleGroupEvent"
          }
        },
        "rules": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/Rule"
          }
        }
      }
    },
    "RuleGroupEvent": {
      "type": "object",
      "properties": {
        "displayLabel": {
          "type": "string"
        },
        "module": {
          "$ref": "#/$defs/Module"
        },
        "baseEvent": {
          "type": "string"
        },
        "sysName": {
          "type": "string"
        },
        "userCriteria": {
          "type": [
            "object",
            "null"
          ]
        }
      }
    }
  }
}