{
  "$id": "https://schemas.sand.binaryedge.io/minion/modules/cassandra",
  "title": "Cassandra Module Output Body",
  "type": "object",
  "properties": {
    "cluster": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/cluster"
      }
    },
    "info": {
      "$ref": "#/$defs/info"
    },
    "keyspaces": {
      "$comment": "The module doesn't populate specific keys, it only relays what is returned from the server.",
      "type": "object"
    }
  },
  "required": [
    "cluster",
    "info",
    "keyspaces"
  ],
  "additionalProperties": false,
  "$defs": {
    "cluster": {
      "type": "object",
      "properties": {
        "address": {
          "type": "string"
        },
        "cassandra_version": {
          "type": "string"
        },
        "data_center": {
          "type": "string"
        },
        "rack": {
          "type": "string"
        }
      },
      "required": [
        "address",
        "cassandra_version",
        "data_center",
        "rack"
      ],
      "additionalProperties": false
    },
    "info": {
      "type": "object",
      "properties": {
        "broadcast_address": {
          "type": "string"
        },
        "broadcast_port": {
          "type": "integer"
        },
        "cluster_name": {
          "type": "string"
        },
        "cql_version": {
          "type": "string"
        },
        "data_center": {
          "type": "string"
        },
        "dse_version": {
          "type": "string"
        },
        "host_id": {
          "type": "string"
        },
        "key": {
          "type": "string"
        },
        "listen_address": {
          "type": "string"
        },
        "listen_port": {
          "type": "integer"
        },
        "native_protocol_version": {
          "type": "string"
        },
        "rack": {
          "type": "string"
        },
        "release_version": {
          "type": "string"
        },
        "rpc_address": {
          "type": "string"
        },
        "rpc_port": {
          "type": "integer"
        },
        "thrift_version": {
          "type": "string"
        }
      },
      "additionalProperties": false
    }
  }
}
