{
  "description": "BackupVolume is where Longhorn stores backup volume object.",
  "properties": {
    "apiVersion": {
      "description": "APIVersion defines the versioned schema of this representation of an object.\nServers should convert recognized schemas to the latest internal value, and\nmay reject unrecognized values.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources",
      "type": [
        "string",
        "null"
      ]
    },
    "kind": {
      "description": "Kind is a string value representing the REST resource this object represents.\nServers may infer this from the endpoint the client submits requests to.\nCannot be updated.\nIn CamelCase.\nMore info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds",
      "type": [
        "string",
        "null"
      ]
    },
    "metadata": {
      "type": [
        "object",
        "null"
      ]
    },
    "spec": {
      "additionalProperties": false,
      "description": "BackupVolumeSpec defines the desired state of the Longhorn backup volume",
      "properties": {
        "backupTargetName": {
          "description": "The backup target name that the backup volume was synced.",
          "nullable": true,
          "type": [
            "string",
            "null"
          ]
        },
        "syncRequestedAt": {
          "description": "The time to request run sync the remote backup volume.",
          "format": "date-time",
          "nullable": true,
          "type": [
            "string",
            "null"
          ]
        },
        "volumeName": {
          "description": "The volume name that the backup volume was used to backup.",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "type": [
        "object",
        "null"
      ]
    },
    "status": {
      "additionalProperties": false,
      "description": "BackupVolumeStatus defines the observed state of the Longhorn backup volume",
      "properties": {
        "backingImageChecksum": {
          "description": "the backing image checksum.",
          "type": [
            "string",
            "null"
          ]
        },
        "backingImageName": {
          "description": "The backing image name.",
          "type": [
            "string",
            "null"
          ]
        },
        "createdAt": {
          "description": "The backup volume creation time.",
          "type": [
            "string",
            "null"
          ]
        },
        "dataStored": {
          "description": "The backup volume block count.",
          "type": [
            "string",
            "null"
          ]
        },
        "labels": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The backup volume labels.",
          "nullable": true,
          "type": [
            "object",
            "null"
          ]
        },
        "lastBackupAt": {
          "description": "The latest volume backup time.",
          "type": [
            "string",
            "null"
          ]
        },
        "lastBackupName": {
          "description": "The latest volume backup name.",
          "type": [
            "string",
            "null"
          ]
        },
        "lastModificationTime": {
          "description": "The backup volume config last modification time.",
          "format": "date-time",
          "nullable": true,
          "type": [
            "string",
            "null"
          ]
        },
        "lastSyncedAt": {
          "description": "The last time that the backup volume was synced into the cluster.",
          "format": "date-time",
          "nullable": true,
          "type": [
            "string",
            "null"
          ]
        },
        "messages": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "The error messages when call longhorn engine on list or inspect backup volumes.",
          "nullable": true,
          "type": [
            "object",
            "null"
          ]
        },
        "ownerID": {
          "description": "The node ID on which the controller is responsible to reconcile this backup volume CR.",
          "type": [
            "string",
            "null"
          ]
        },
        "size": {
          "description": "The backup volume size.",
          "type": [
            "string",
            "null"
          ]
        },
        "storageClassName": {
          "description": "the storage class name of pv/pvc binding with the volume.",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "type": [
        "object",
        "null"
      ]
    }
  },
  "type": "object"
}