{
  "$schema": "https://json-schema.org/draft/2019-09/schema",
  "$id": "https://creativeprojects.github.io/resticprofile/jsonschema/config-1.json",
  "$defs": {
    "id-03550d33226c03f7e7c8a6a6fc971333": {
      "title": "snapshot",
      "description": "snapshot id to search in",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "snapshot...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-040cdbfb985915c1376d7d7a1fa0d38a": {
      "title": "host",
      "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.10.0]",
      "anyOf": [
        {
          "title": "host",
          "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.10.0]",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "host"
              ],
              "minLength": 0,
              "format": "hostname"
            }
          ]
        },
        {
          "title": "host...",
          "type": "array",
          "examples": [
            true,
            false,
            "host"
          ],
          "items": {
            "title": "host",
            "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.10.0]",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "host"
                ],
                "minLength": 0,
                "format": "hostname"
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-069c0c672104098e9e41d7ac3841fd0c": {
      "title": "host",
      "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.16.0]",
      "anyOf": [
        {
          "title": "host",
          "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.16.0]",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "host"
              ],
              "minLength": 0,
              "format": "hostname"
            }
          ]
        },
        {
          "title": "host...",
          "type": "array",
          "examples": [
            true,
            false,
            "host"
          ],
          "items": {
            "title": "host",
            "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.16.0]",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "host"
                ],
                "minLength": 0,
                "format": "hostname"
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-06bbc4cdada9fbb2f0e5aff8aa18b8a5": {
      "title": "tag",
      "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". Defaults to true for config version 2 in \"retention\".",
      "anyOf": [
        {
          "title": "tag",
          "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". Defaults to true for config version 2 in \"retention\".",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "tag"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "tag...",
          "type": "array",
          "examples": [
            true,
            false,
            "tag"
          ],
          "items": {
            "title": "tag",
            "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". Defaults to true for config version 2 in \"retention\".",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "tag"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-07122d0553bd2888fbf7616a676047d5": {
      "title": "tag",
      "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\".",
      "anyOf": [
        {
          "title": "tag",
          "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\".",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "tag"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "tag...",
          "type": "array",
          "examples": [
            true,
            false,
            "tag"
          ],
          "items": {
            "title": "tag",
            "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\".",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "tag"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-0dd6bafe51f2901fa7f446e31a3b881d": {
      "title": "path",
      "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\".",
      "anyOf": [
        {
          "title": "path",
          "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\".",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "path"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "path...",
          "type": "array",
          "examples": [
            true,
            false,
            "path"
          ],
          "items": {
            "title": "path",
            "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\".",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "path"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-0ec8ec07c5d04919d4d678a5ae0105b4": {
      "title": "set",
      "description": "tags which will replace the existing tags in the format tag[,tag,...]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "set...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-101e02d74df828a834df2fb1ebb6fec0": {
      "title": "send-timeout",
      "description": "Timeout when sending messages to a webhook - see https://creativeprojects.github.io/resticprofile/configuration/http_hooks/",
      "oneOf": [
        {
          "type": "integer"
        },
        {
          "default": "30s",
          "type": "string",
          "examples": [
            "15s",
            "30s",
            "2m30s"
          ],
          "minLength": 2,
          "pattern": "^(\\d+(h|m|s|ms))+$"
        }
      ]
    },
    "id-1372d6a4f6961e5e86fd694445a39721": {
      "title": "iexclude-file",
      "description": "same as --exclude-file but ignores casing of filenames in patterns [restic \u003e= 0.17.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "iexclude-file...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-16c9eb2748710a28f337f217f2e337da": {
      "title": "send-after-fail",
      "description": "Send HTTP request(s) after failed restic or shell commands",
      "anyOf": [
        {
          "$ref": "#/$defs/id-23512646a37d89783d831f3f819a55f4"
        },
        {
          "title": "send-after-fail...",
          "type": "array",
          "items": {
            "$ref": "#/$defs/id-23512646a37d89783d831f3f819a55f4"
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-17df0ca3125f1db72ebb01d0ff902111": {
      "title": "exclude-file",
      "description": "read exclude patterns from a file [restic \u003e= 0.15.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "exclude-file...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-1b525c9f6a0698293ca268ea3866afa4": {
      "title": "include",
      "description": "include a pattern",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "include...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-1e3e4f194a26f596cf3db367ea81cd15": {
      "title": "path",
      "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". [restic \u003e= 0.10.0]",
      "anyOf": [
        {
          "title": "path",
          "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". [restic \u003e= 0.10.0]",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "path"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "path...",
          "type": "array",
          "examples": [
            true,
            false,
            "path"
          ],
          "items": {
            "title": "path",
            "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". [restic \u003e= 0.10.0]",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "path"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-1f33e5af642ab1e472fcd28edcf102e5": {
      "title": "tag",
      "description": "add tags for the new snapshot in the format tag[,tag,...].\nBoolean true is unsupported in section \"backup\".",
      "anyOf": [
        {
          "title": "tag",
          "description": "add tags for the new snapshot in the format tag[,tag,...].\nBoolean true is unsupported in section \"backup\".",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                false,
                "tag"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "tag...",
          "type": "array",
          "examples": [
            false,
            "tag"
          ],
          "items": {
            "title": "tag",
            "description": "add tags for the new snapshot in the format tag[,tag,...].\nBoolean true is unsupported in section \"backup\".",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  false,
                  "tag"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-20cb912e946a794f54e5e7cd6faeb133": {
      "title": "stdin-command",
      "description": "Shell command(s) that generate content to redirect into the stdin of restic. When set, the flag \"stdin\" is always set to \"true\".",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "stdin-command...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-228c0688714ab2ef9eeccf2b322df2d8": {
      "title": "host",
      "description": "only consider snapshots for this host, when snapshot ID \"latest\" is given (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system.",
      "anyOf": [
        {
          "title": "host",
          "description": "only consider snapshots for this host, when snapshot ID \"latest\" is given (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system.",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "host"
              ],
              "minLength": 0,
              "format": "hostname"
            }
          ]
        },
        {
          "title": "host...",
          "type": "array",
          "examples": [
            true,
            false,
            "host"
          ],
          "items": {
            "title": "host",
            "description": "only consider snapshots for this host, when snapshot ID \"latest\" is given (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system.",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "host"
                ],
                "minLength": 0,
                "format": "hostname"
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-23512646a37d89783d831f3f819a55f4": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "body": {
          "title": "body",
          "description": "Request body, overrides \"body-template\"",
          "type": "string",
          "minLength": 0
        },
        "body-template": {
          "title": "body-template",
          "description": "Path to a file containing the request body (go template). See https://creativeprojects.github.io/resticprofile/configuration/http_hooks/#body-template",
          "type": "string",
          "minLength": 0
        },
        "headers": {
          "title": "headers",
          "description": "Additional HTTP headers to send with the request",
          "anyOf": [
            {
              "type": "object",
              "additionalProperties": false,
              "properties": {
                "name": {
                  "title": "name",
                  "description": "Name of the HTTP header",
                  "type": "string",
                  "examples": [
                    "Authorization",
                    "Cache-Control",
                    "Content-Disposition",
                    "Content-Type"
                  ],
                  "minLength": 0
                },
                "value": {
                  "title": "value",
                  "description": "Value of the header",
                  "type": "string",
                  "examples": [
                    "Bearer ...",
                    "Basic ...",
                    "no-cache",
                    "attachment; filename=stats.txt",
                    "application/json",
                    "text/plain",
                    "text/xml"
                  ],
                  "minLength": 0
                }
              }
            },
            {
              "title": "headers...",
              "type": "array",
              "items": {
                "type": "object",
                "additionalProperties": false,
                "properties": {
                  "name": {
                    "title": "name",
                    "description": "Name of the HTTP header",
                    "type": "string",
                    "examples": [
                      "Authorization",
                      "Cache-Control",
                      "Content-Disposition",
                      "Content-Type"
                    ],
                    "minLength": 0
                  },
                  "value": {
                    "title": "value",
                    "description": "Value of the header",
                    "type": "string",
                    "examples": [
                      "Bearer ...",
                      "Basic ...",
                      "no-cache",
                      "attachment; filename=stats.txt",
                      "application/json",
                      "text/plain",
                      "text/xml"
                    ],
                    "minLength": 0
                  }
                }
              },
              "minItems": 0,
              "uniqueItems": false
            }
          ]
        },
        "method": {
          "title": "method",
          "default": "GET",
          "description": "HTTP method of the request",
          "type": "string",
          "enum": [
            "GET",
            "DELETE",
            "HEAD",
            "OPTIONS",
            "PATCH",
            "POST",
            "PUT",
            "TRACE"
          ],
          "minLength": 0
        },
        "skip-tls-verification": {
          "title": "skip-tls-verification",
          "description": "Enables insecure TLS (without verification), see also \"global.ca-certificates\"",
          "type": "boolean"
        },
        "url": {
          "title": "url",
          "description": "URL of the target to send to",
          "type": "string",
          "minLength": 0,
          "format": "uri"
        }
      }
    },
    "id-259684dfd75be3116fd75f377c8f9866": {
      "title": "run-before",
      "description": "Run shell command(s) before a restic command",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "run-before...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-2abe3a6ae2ea65720f26903b318892d6": {
      "title": "send-before",
      "description": "Send HTTP request(s) before a restic command",
      "anyOf": [
        {
          "$ref": "#/$defs/id-23512646a37d89783d831f3f819a55f4"
        },
        {
          "title": "send-before...",
          "type": "array",
          "items": {
            "$ref": "#/$defs/id-23512646a37d89783d831f3f819a55f4"
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-2ca6a44f0bb5aa131cb5f092c9e98d10": {
      "deprecated": true,
      "type": "string",
      "examples": [
        "hourly",
        "daily",
        "weekly",
        "monthly",
        "10:00,14:00,18:00,22:00",
        "Wed,Fri 17:48",
        "*-*-15 02:45",
        "Mon..Fri 00:30"
      ],
      "minLength": 0
    },
    "id-2cf445a83219358bee3423eaa7242c4d": {
      "title": "run-after-fail",
      "description": "Run shell command(s) after failed restic or shell commands",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "run-after-fail...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-2d60f10a68497fa9d7d4f3312e7454b4": {
      "title": "stream-error",
      "description": "Run shell command(s) when a pattern matches the stderr of restic",
      "anyOf": [
        {
          "$ref": "#/$defs/id-c74ea9cfd0cf38b4f051386e08ea0eab"
        },
        {
          "title": "stream-error...",
          "type": "array",
          "items": {
            "$ref": "#/$defs/id-c74ea9cfd0cf38b4f051386e08ea0eab"
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-31b76762391db3e4e7e8275c1490db64": {
      "title": "iexclude",
      "description": "same as --exclude pattern but ignores the casing of filenames [restic \u003e= 0.10.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "iexclude...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-35e9a66d22a93b5cfbcebc1b8d53c231": {
      "title": "iinclude-file",
      "description": "same as --include-file but ignores casing of filenames in patterns [restic \u003e= 0.17.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "iinclude-file...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-3b78ee34ba5fc91fdf9fa51c39062f53": {
      "title": "path",
      "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". [restic \u003e= 0.16.0]",
      "anyOf": [
        {
          "title": "path",
          "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". [restic \u003e= 0.16.0]",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "path"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "path...",
          "type": "array",
          "examples": [
            true,
            false,
            "path"
          ],
          "items": {
            "title": "path",
            "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". [restic \u003e= 0.16.0]",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "path"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-3bbb79a4f5c75f9cf014fa4e5190ae85": {
      "title": "shell",
      "description": "The shell that is used to run commands (default is OS specific)",
      "anyOf": [
        {
          "default": "auto",
          "type": "string",
          "examples": [
            "sh",
            "bash",
            "pwsh",
            "powershell",
            "cmd"
          ],
          "minLength": 0
        },
        {
          "title": "shell...",
          "default": "auto",
          "type": "array",
          "examples": [
            "sh",
            "bash",
            "pwsh",
            "powershell",
            "cmd"
          ],
          "items": {
            "default": "auto",
            "type": "string",
            "examples": [
              "sh",
              "bash",
              "pwsh",
              "powershell",
              "cmd"
            ],
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-43751bb98b8f27a3043a5cf8114dcc42": {
      "title": "files-from",
      "description": "read the files to backup from file (can be combined with file args)",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "files-from...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-4d5c283f98d0925082ab484d3bdd4d16": {
      "title": "path",
      "description": "only consider snapshots including this (absolute) path, when snapshot ID \"latest\" is given (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\".",
      "anyOf": [
        {
          "title": "path",
          "description": "only consider snapshots including this (absolute) path, when snapshot ID \"latest\" is given (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\".",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "path"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "path...",
          "type": "array",
          "examples": [
            true,
            false,
            "path"
          ],
          "items": {
            "title": "path",
            "description": "only consider snapshots including this (absolute) path, when snapshot ID \"latest\" is given (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\".",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "path"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-523a82de7dda2cf9932a4ec54a0f6b57": {
      "title": "restic-lock-retry-after",
      "description": "Time to wait before trying to get a lock on a restic repository - see https://creativeprojects.github.io/resticprofile/usage/locks/",
      "oneOf": [
        {
          "type": "integer"
        },
        {
          "default": "1m",
          "type": "string",
          "minLength": 2,
          "pattern": "^(\\d+(h|m|s|ms))+$"
        }
      ]
    },
    "id-58bf71d644870ee03285502006c5f9ba": {
      "title": "schedule-capture-environment",
      "description": "Set names (or glob expressions) of environment variables to capture during schedule creation. The captured environment is applied prior to \"profile.env\" when running the schedule. Whether capturing is supported depends on the type of scheduler being used (supported in \"systemd\" and \"launchd\")",
      "anyOf": [
        {
          "default": "RESTIC_*",
          "type": "string",
          "minLength": 0
        },
        {
          "title": "schedule-capture-environment...",
          "default": "RESTIC_*",
          "type": "array",
          "items": {
            "default": "RESTIC_*",
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-5a30ba75410604c90422365278a6a8c2": {
      "title": "iexclude-file",
      "description": "same as --exclude-file but ignores casing of filenames in patterns [restic \u003e= 0.10.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "iexclude-file...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-5a6e7b23808067f4ea3cd8627e7434be": {
      "title": "tag",
      "description": "only consider snapshots including tag[,tag,...], when snapshot ID \"latest\" is given.\nBoolean true is replaced with the tags from section \"backup\".",
      "anyOf": [
        {
          "title": "tag",
          "description": "only consider snapshots including tag[,tag,...], when snapshot ID \"latest\" is given.\nBoolean true is replaced with the tags from section \"backup\".",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "tag"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "tag...",
          "type": "array",
          "examples": [
            true,
            false,
            "tag"
          ],
          "items": {
            "title": "tag",
            "description": "only consider snapshots including tag[,tag,...], when snapshot ID \"latest\" is given.\nBoolean true is replaced with the tags from section \"backup\".",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "tag"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-5a7604cd62739bf6b90cc25decf3beb6": {
      "title": "host",
      "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system.",
      "anyOf": [
        {
          "title": "host",
          "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system.",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "host"
              ],
              "minLength": 0,
              "format": "hostname"
            }
          ]
        },
        {
          "title": "host...",
          "type": "array",
          "examples": [
            true,
            false,
            "host"
          ],
          "items": {
            "title": "host",
            "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system.",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "host"
                ],
                "minLength": 0,
                "format": "hostname"
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-5ad549b9f26107194acb0d599b5435a0": {
      "title": "send-after",
      "description": "Send HTTP request(s) after a successful restic command",
      "anyOf": [
        {
          "$ref": "#/$defs/id-23512646a37d89783d831f3f819a55f4"
        },
        {
          "title": "send-after...",
          "type": "array",
          "items": {
            "$ref": "#/$defs/id-23512646a37d89783d831f3f819a55f4"
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-61ab36a2634e460797e4da5a82c379df": {
      "title": "tag",
      "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". [restic \u003e= 0.16.0]",
      "anyOf": [
        {
          "title": "tag",
          "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". [restic \u003e= 0.16.0]",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "tag"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "tag...",
          "type": "array",
          "examples": [
            true,
            false,
            "tag"
          ],
          "items": {
            "title": "tag",
            "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". [restic \u003e= 0.16.0]",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "tag"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-65f906f27a87d15f551fa4dc5250b520": {
      "title": "path",
      "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". Defaults to true in \"retention\".",
      "anyOf": [
        {
          "title": "path",
          "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". Defaults to true in \"retention\".",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "path"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "path...",
          "type": "array",
          "examples": [
            true,
            false,
            "path"
          ],
          "items": {
            "title": "path",
            "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". Defaults to true in \"retention\".",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "path"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-6b767374afe44ab7caa0ae97e251c4ed": {
      "title": "verbose",
      "description": "be verbose (true for level 1 or a number for increased verbosity, max level is 2)",
      "oneOf": [
        {
          "type": "boolean"
        },
        {
          "type": "integer"
        }
      ]
    },
    "id-703d64899271340b197b461a1da954f0": {
      "title": "exclude-file",
      "description": "read exclude patterns from a file [restic \u003e= 0.17.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "exclude-file...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-71d4c72a873617fc9b373bf506f9606d": {
      "title": "env-file",
      "description": "Additional dotenv files to load and set as environment in any child process",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "env-file...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-754cd1d064baa6520e3f6b581da6308b": {
      "title": "path",
      "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". [restic \u003e= 0.15.0]",
      "anyOf": [
        {
          "title": "path",
          "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". [restic \u003e= 0.15.0]",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "path"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "path...",
          "type": "array",
          "examples": [
            true,
            false,
            "path"
          ],
          "items": {
            "title": "path",
            "description": "only consider snapshots including this (absolute) path (can be specified multiple times, snapshots must include all specified paths).\nBoolean true is replaced with the paths from section \"backup\". [restic \u003e= 0.15.0]",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "path"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-783b5260d9a5f4eba741f6448d3a73a0": {
      "title": "exclude",
      "description": "exclude a pattern [restic \u003e= 0.15.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "exclude...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-78782b807ee477a77d0f7f917d8308d0": {
      "title": "schedule",
      "description": "Configures the scheduled execution of this profile section. Can be times in systemd timer format or a config structure",
      "anyOf": [
        {
          "description": "Schedule configuration structure. Can be used to define schedules in profiles and groups.",
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "after-network-online": {
              "title": "after-network-online",
              "description": "Don't start this schedule when the network is offline (supported in \"systemd\")",
              "type": "boolean"
            },
            "at": {
              "title": "at",
              "description": "Set the times at which the scheduled command is run (times are specified in systemd timer format)",
              "anyOf": [
                {
                  "$ref": "#/$defs/id-c20492a9908e894b76ed0102f27c38dc"
                },
                {
                  "title": "at...",
                  "type": "array",
                  "examples": [
                    "hourly",
                    "daily",
                    "weekly",
                    "monthly",
                    "10:00,14:00,18:00,22:00",
                    "Wed,Fri 17:48",
                    "*-*-15 02:45",
                    "Mon..Fri 00:30"
                  ],
                  "items": {
                    "$ref": "#/$defs/id-c20492a9908e894b76ed0102f27c38dc"
                  },
                  "minItems": 0,
                  "uniqueItems": false
                }
              ]
            },
            "capture-environment": {
              "title": "capture-environment",
              "description": "Set names (or glob expressions) of environment variables to capture during schedule creation. The captured environment is applied prior to \"profile.env\" when running the schedule. Whether capturing is supported depends on the type of scheduler being used (supported in \"systemd\" and \"launchd\")",
              "anyOf": [
                {
                  "default": "RESTIC_*",
                  "type": "string",
                  "minLength": 0
                },
                {
                  "title": "capture-environment...",
                  "default": "RESTIC_*",
                  "type": "array",
                  "items": {
                    "default": "RESTIC_*",
                    "type": "string",
                    "minLength": 0
                  },
                  "minItems": 0,
                  "uniqueItems": false
                }
              ]
            },
            "command-output": {
              "title": "command-output",
              "default": "auto",
              "description": "Sets the destination for command output (stderr/stdout). \"log\" sends output to the log file (if specified), \"console\" sends it to the console instead. \"auto\" sends it to \"both\" if console is a terminal otherwise to \"log\" only - see https://creativeprojects.github.io/resticprofile/configuration/logs/",
              "type": "string",
              "enum": [
                "auto",
                "log",
                "console",
                "all"
              ],
              "minLength": 0
            },
            "ignore-on-battery": {
              "title": "ignore-on-battery",
              "description": "Don't start this schedule when running on battery",
              "type": "boolean"
            },
            "ignore-on-battery-less-than": {
              "title": "ignore-on-battery-less-than",
              "description": "Don't start this schedule when running on battery and the state of charge is less than this percentage",
              "type": "integer",
              "examples": [
                20,
                33,
                50,
                75
              ]
            },
            "lock-mode": {
              "title": "lock-mode",
              "default": "default",
              "description": "Specify how locks are used when running on schedule - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
              "type": "string",
              "enum": [
                "default",
                "fail",
                "ignore"
              ],
              "minLength": 0
            },
            "lock-wait": {
              "title": "lock-wait",
              "description": "Set the maximum time to wait for acquiring locks when running on schedule",
              "oneOf": [
                {
                  "type": "integer"
                },
                {
                  "type": "string",
                  "examples": [
                    "150s",
                    "15m",
                    "30m",
                    "45m",
                    "1h",
                    "2h30m"
                  ],
                  "minLength": 2,
                  "pattern": "^(\\d+(h|m|s|ms))+$"
                }
              ]
            },
            "log": {
              "title": "log",
              "description": "Redirect the output into a log file or to syslog when running on schedule - see https://creativeprojects.github.io/resticprofile/configuration/logs/",
              "type": "string",
              "examples": [
                "/resticprofile.log",
                "syslog-tcp://syslog-server:514",
                "syslog:server",
                "syslog:"
              ],
              "minLength": 0
            },
            "permission": {
              "title": "permission",
              "default": "auto",
              "description": "Specify whether the schedule runs with system or user privileges - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
              "type": "string",
              "enum": [
                "auto",
                "system",
                "user",
                "user_logged_on"
              ],
              "minLength": 0
            },
            "priority": {
              "title": "priority",
              "default": "standard",
              "description": "Set the priority at which the schedule is run",
              "type": "string",
              "enum": [
                "background",
                "standard"
              ],
              "minLength": 0
            },
            "systemd-drop-in-files": {
              "title": "systemd-drop-in-files",
              "description": "Files containing systemd drop-in (override) files - see https://creativeprojects.github.io/resticprofile/schedules/systemd/",
              "anyOf": [
                {
                  "type": "string",
                  "minLength": 0
                },
                {
                  "title": "systemd-drop-in-files...",
                  "type": "array",
                  "items": {
                    "type": "string",
                    "minLength": 0
                  },
                  "minItems": 0,
                  "uniqueItems": false
                }
              ]
            }
          }
        },
        {
          "title": "schedule",
          "description": "Configures the scheduled execution of this profile section. Can be times in systemd timer format or a config structure",
          "anyOf": [
            {
              "$ref": "#/$defs/id-c20492a9908e894b76ed0102f27c38dc"
            },
            {
              "title": "schedule...",
              "type": "array",
              "examples": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "10:00,14:00,18:00,22:00",
                "Wed,Fri 17:48",
                "*-*-15 02:45",
                "Mon..Fri 00:30"
              ],
              "items": {
                "$ref": "#/$defs/id-c20492a9908e894b76ed0102f27c38dc"
              },
              "minItems": 0,
              "uniqueItems": false
            }
          ]
        }
      ]
    },
    "id-7d3654de0d890ce874dc332214970cad": {
      "title": "keep-tag",
      "description": "keep snapshots with this taglist",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "keep-tag...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-808e4aea01f0d8d12832b2f870006421": {
      "title": "schedule-lock-wait",
      "description": "Set the maximum time to wait for acquiring locks when running on schedule [deprecated]",
      "oneOf": [
        {
          "deprecated": true,
          "type": "integer"
        },
        {
          "deprecated": true,
          "type": "string",
          "examples": [
            "150s",
            "15m",
            "30m",
            "45m",
            "1h",
            "2h30m"
          ],
          "minLength": 2,
          "pattern": "^(\\d+(h|m|s|ms))+$"
        }
      ]
    },
    "id-85358e042a22a5203782eeed4fbf5b88": {
      "title": "include-xattr",
      "description": "include xattr by pattern [restic \u003e= 0.18.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "include-xattr...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-8f92d25a48bde1bd1b2cfa82b4b7e95b": {
      "title": "exclude-xattr",
      "description": "exclude xattr by pattern [restic \u003e= 0.18.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "exclude-xattr...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-92a8b0a93ca24cd3de9ae56a4dcb9ec6": {
      "title": "exclude-if-present",
      "description": "takes filename[:header], exclude contents of directories containing filename (except filename itself) if header of that file is as provided",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "exclude-if-present...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-931c146f741a9fec3d98e7a08865a530": {
      "title": "ca-certificates",
      "description": "Path to PEM encoded certificates to trust in addition to system certificates when resticprofile sends to a webhook - see https://creativeprojects.github.io/resticprofile/configuration/http_hooks/",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "ca-certificates...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-9358229151687377a80daf4c8fbe8ca2": {
      "title": "iexclude",
      "description": "same as --exclude pattern but ignores the casing of filenames [restic \u003e= 0.15.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "iexclude...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-997692924136270ec7fee7ea4d04a8d6": {
      "title": "files-from-verbatim",
      "description": "read the files to backup from file (can be combined with file args) [restic \u003e= 0.12.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "files-from-verbatim...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-9a7b3b717f2437d91402fddb86ef22b7": {
      "title": "schedule",
      "description": "Configures the scheduled execution of this profile section. Can be times in systemd timer format or a config structure [deprecated]",
      "anyOf": [
        {
          "description": "Schedule configuration structure. Can be used to define schedules in profiles and groups.",
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "after-network-online": {
              "title": "after-network-online",
              "description": "Don't start this schedule when the network is offline (supported in \"systemd\")",
              "type": "boolean"
            },
            "at": {
              "title": "at",
              "description": "Set the times at which the scheduled command is run (times are specified in systemd timer format)",
              "anyOf": [
                {
                  "$ref": "#/$defs/id-c20492a9908e894b76ed0102f27c38dc"
                },
                {
                  "title": "at...",
                  "type": "array",
                  "examples": [
                    "hourly",
                    "daily",
                    "weekly",
                    "monthly",
                    "10:00,14:00,18:00,22:00",
                    "Wed,Fri 17:48",
                    "*-*-15 02:45",
                    "Mon..Fri 00:30"
                  ],
                  "items": {
                    "$ref": "#/$defs/id-c20492a9908e894b76ed0102f27c38dc"
                  },
                  "minItems": 0,
                  "uniqueItems": false
                }
              ]
            },
            "capture-environment": {
              "title": "capture-environment",
              "description": "Set names (or glob expressions) of environment variables to capture during schedule creation. The captured environment is applied prior to \"profile.env\" when running the schedule. Whether capturing is supported depends on the type of scheduler being used (supported in \"systemd\" and \"launchd\")",
              "anyOf": [
                {
                  "default": "RESTIC_*",
                  "type": "string",
                  "minLength": 0
                },
                {
                  "title": "capture-environment...",
                  "default": "RESTIC_*",
                  "type": "array",
                  "items": {
                    "default": "RESTIC_*",
                    "type": "string",
                    "minLength": 0
                  },
                  "minItems": 0,
                  "uniqueItems": false
                }
              ]
            },
            "command-output": {
              "title": "command-output",
              "default": "auto",
              "description": "Sets the destination for command output (stderr/stdout). \"log\" sends output to the log file (if specified), \"console\" sends it to the console instead. \"auto\" sends it to \"both\" if console is a terminal otherwise to \"log\" only - see https://creativeprojects.github.io/resticprofile/configuration/logs/",
              "type": "string",
              "enum": [
                "auto",
                "log",
                "console",
                "all"
              ],
              "minLength": 0
            },
            "ignore-on-battery": {
              "title": "ignore-on-battery",
              "description": "Don't start this schedule when running on battery",
              "type": "boolean"
            },
            "ignore-on-battery-less-than": {
              "title": "ignore-on-battery-less-than",
              "description": "Don't start this schedule when running on battery and the state of charge is less than this percentage",
              "type": "integer",
              "examples": [
                20,
                33,
                50,
                75
              ]
            },
            "lock-mode": {
              "title": "lock-mode",
              "default": "default",
              "description": "Specify how locks are used when running on schedule - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
              "type": "string",
              "enum": [
                "default",
                "fail",
                "ignore"
              ],
              "minLength": 0
            },
            "lock-wait": {
              "title": "lock-wait",
              "description": "Set the maximum time to wait for acquiring locks when running on schedule",
              "oneOf": [
                {
                  "type": "integer"
                },
                {
                  "type": "string",
                  "examples": [
                    "150s",
                    "15m",
                    "30m",
                    "45m",
                    "1h",
                    "2h30m"
                  ],
                  "minLength": 2,
                  "pattern": "^(\\d+(h|m|s|ms))+$"
                }
              ]
            },
            "log": {
              "title": "log",
              "description": "Redirect the output into a log file or to syslog when running on schedule - see https://creativeprojects.github.io/resticprofile/configuration/logs/",
              "type": "string",
              "examples": [
                "/resticprofile.log",
                "syslog-tcp://syslog-server:514",
                "syslog:server",
                "syslog:"
              ],
              "minLength": 0
            },
            "permission": {
              "title": "permission",
              "default": "auto",
              "description": "Specify whether the schedule runs with system or user privileges - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
              "type": "string",
              "enum": [
                "auto",
                "system",
                "user",
                "user_logged_on"
              ],
              "minLength": 0
            },
            "priority": {
              "title": "priority",
              "default": "standard",
              "description": "Set the priority at which the schedule is run",
              "type": "string",
              "enum": [
                "background",
                "standard"
              ],
              "minLength": 0
            },
            "systemd-drop-in-files": {
              "title": "systemd-drop-in-files",
              "description": "Files containing systemd drop-in (override) files - see https://creativeprojects.github.io/resticprofile/schedules/systemd/",
              "anyOf": [
                {
                  "type": "string",
                  "minLength": 0
                },
                {
                  "title": "systemd-drop-in-files...",
                  "type": "array",
                  "items": {
                    "type": "string",
                    "minLength": 0
                  },
                  "minItems": 0,
                  "uniqueItems": false
                }
              ]
            }
          }
        },
        {
          "title": "schedule",
          "description": "Configures the scheduled execution of this profile section. Can be times in systemd timer format or a config structure [deprecated]",
          "anyOf": [
            {
              "$ref": "#/$defs/id-2ca6a44f0bb5aa131cb5f092c9e98d10"
            },
            {
              "title": "schedule...",
              "deprecated": true,
              "type": "array",
              "examples": [
                "hourly",
                "daily",
                "weekly",
                "monthly",
                "10:00,14:00,18:00,22:00",
                "Wed,Fri 17:48",
                "*-*-15 02:45",
                "Mon..Fri 00:30"
              ],
              "items": {
                "$ref": "#/$defs/id-2ca6a44f0bb5aa131cb5f092c9e98d10"
              },
              "minItems": 0,
              "uniqueItems": false
            }
          ]
        }
      ]
    },
    "id-9cfa481f3803a7b12fe7275be73cfc24": {
      "title": "host",
      "description": "the hostname for new key.\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.17.0]",
      "oneOf": [
        {
          "type": "boolean",
          "examples": [
            true,
            false
          ]
        },
        {
          "type": "string",
          "examples": [
            true,
            false,
            "host"
          ],
          "minLength": 0,
          "format": "hostname"
        }
      ]
    },
    "id-9e1013a6d9d54bc7974f9c0ff9c0ea3e": {
      "title": "includes",
      "description": "glob patterns of configuration files to include",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "includes...",
          "type": "array",
          "items": {
            "title": "includes",
            "description": "glob patterns of configuration files to include",
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-9eb097550c08524117d0906abd0d2a05": {
      "title": "host",
      "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname that applies in section \"backup\". Defaults to true for config version 2 in \"retention\".",
      "anyOf": [
        {
          "title": "host",
          "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname that applies in section \"backup\". Defaults to true for config version 2 in \"retention\".",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "host"
              ],
              "minLength": 0,
              "format": "hostname"
            }
          ]
        },
        {
          "title": "host...",
          "type": "array",
          "examples": [
            true,
            false,
            "host"
          ],
          "items": {
            "title": "host",
            "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname that applies in section \"backup\". Defaults to true for config version 2 in \"retention\".",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "host"
                ],
                "minLength": 0,
                "format": "hostname"
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-9fc99e529e5753db5850c6ad0fe6e769": {
      "title": "exclude",
      "description": "exclude a pattern",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "exclude...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-a009c428eabb1a0bbd5a6afe6ac4816a": {
      "title": "include-file",
      "description": "read include patterns from a file [restic \u003e= 0.17.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "include-file...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-a09c499e58e4610808213948c41e1c54": {
      "title": "lock-wait",
      "description": "Set the maximum time to wait for acquiring locks when running on schedule",
      "oneOf": [
        {
          "type": "integer"
        },
        {
          "type": "string",
          "examples": [
            "150s",
            "15m",
            "30m",
            "45m",
            "1h",
            "2h30m"
          ],
          "minLength": 2,
          "pattern": "^(\\d+(h|m|s|ms))+$"
        }
      ]
    },
    "id-a0a0f94f7b67bcfce0325495ae74a8f5": {
      "title": "snapshot",
      "description": "Snapshot IDs to copy (if empty, all snapshots are copied)",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "snapshot...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-a4563b5e7b4aa37bac3a57c09ef530f3": {
      "title": "remove",
      "description": "tags which will be removed from the existing tags in the format tag[,tag,...]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "remove...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-ab33db804be740834fedb738aff28469": {
      "title": "tag",
      "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". [restic \u003e= 0.15.0]",
      "anyOf": [
        {
          "title": "tag",
          "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". [restic \u003e= 0.15.0]",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "tag"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "tag...",
          "type": "array",
          "examples": [
            true,
            false,
            "tag"
          ],
          "items": {
            "title": "tag",
            "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". [restic \u003e= 0.15.0]",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "tag"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-af6c00e035cdb6af35a7de31dc26023d": {
      "title": "iexclude-file",
      "description": "same as --exclude-file but ignores casing of filenames in patterns [restic \u003e= 0.15.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "iexclude-file...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-b0370690ac6a8a0301e000cc1e13dd04": {
      "title": "source",
      "description": "The paths to backup",
      "anyOf": [
        {
          "type": "string",
          "examples": [
            "/opt/",
            "/home/user/",
            "C:\\Users\\User\\Documents"
          ],
          "minLength": 0
        },
        {
          "title": "source...",
          "type": "array",
          "examples": [
            "/opt/",
            "/home/user/",
            "C:\\Users\\User\\Documents"
          ],
          "items": {
            "type": "string",
            "examples": [
              "/opt/",
              "/home/user/",
              "C:\\Users\\User\\Documents"
            ],
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-b0a6986d36a1bde1ef46f576cf24783c": {
      "title": "send-finally",
      "description": "Send HTTP request(s) always, after all other commands",
      "anyOf": [
        {
          "$ref": "#/$defs/id-23512646a37d89783d831f3f819a55f4"
        },
        {
          "title": "send-finally...",
          "type": "array",
          "items": {
            "$ref": "#/$defs/id-23512646a37d89783d831f3f819a55f4"
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-b62c2f035a52f9e65b5a80c3895ee6bb": {
      "title": "restic-stale-lock-age",
      "description": "The age an unused lock on a restic repository must have at least before resticprofile attempts to unlock - see https://creativeprojects.github.io/resticprofile/usage/locks/",
      "oneOf": [
        {
          "type": "integer"
        },
        {
          "default": "1h",
          "type": "string",
          "minLength": 2,
          "pattern": "^(\\d+(h|m|s|ms))+$"
        }
      ]
    },
    "id-bcda8b199ef5b0659a200468e2517a9f": {
      "title": "host",
      "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.15.0]",
      "anyOf": [
        {
          "title": "host",
          "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.15.0]",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "host"
              ],
              "minLength": 0,
              "format": "hostname"
            }
          ]
        },
        {
          "title": "host...",
          "type": "array",
          "examples": [
            true,
            false,
            "host"
          ],
          "items": {
            "title": "host",
            "description": "only consider snapshots for this host (can be specified multiple times) (default: $RESTIC_HOST).\nBoolean true is replaced with the hostname of the system. [restic \u003e= 0.15.0]",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "host"
                ],
                "minLength": 0,
                "format": "hostname"
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-bdebeefb786b97126bbaf65dcffdb112": {
      "title": "cacert",
      "description": "file to load root certificates from (default: use system certificates or $RESTIC_CACERT)",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "cacert...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-c20492a9908e894b76ed0102f27c38dc": {
      "type": "string",
      "examples": [
        "hourly",
        "daily",
        "weekly",
        "monthly",
        "10:00,14:00,18:00,22:00",
        "Wed,Fri 17:48",
        "*-*-15 02:45",
        "Mon..Fri 00:30"
      ],
      "minLength": 0
    },
    "id-c74ea9cfd0cf38b4f051386e08ea0eab": {
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "max-runs": {
          "title": "max-runs",
          "description": "Maximum amount of times that \"run\" is started ; 0 for no limit",
          "type": "integer",
          "minimum": 0
        },
        "min-matches": {
          "title": "min-matches",
          "description": "Minimum amount of times the \"pattern\" must match before \"run\" is started ; 0 for no limit",
          "type": "integer",
          "minimum": 0
        },
        "pattern": {
          "title": "pattern",
          "description": "A regular expression pattern that is tested against stderr of a running restic command",
          "type": "string",
          "minLength": 0,
          "format": "regex"
        },
        "run": {
          "title": "run",
          "description": "The shell command to run when the pattern matches",
          "type": "string",
          "minLength": 0
        }
      }
    },
    "id-d00dfc211f97db13bd5f14ea3a21e8e6": {
      "title": "path-template",
      "description": "set template for path names [restic \u003e= 0.14.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "path-template...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-d07a19e23ce110495e29bd4c07d194b8": {
      "title": "tag",
      "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". [restic \u003e= 0.10.0]",
      "anyOf": [
        {
          "title": "tag",
          "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". [restic \u003e= 0.10.0]",
          "anyOf": [
            {
              "type": "boolean",
              "examples": [
                true,
                false
              ]
            },
            {
              "type": "string",
              "examples": [
                true,
                false,
                "tag"
              ],
              "minLength": 0
            }
          ]
        },
        {
          "title": "tag...",
          "type": "array",
          "examples": [
            true,
            false,
            "tag"
          ],
          "items": {
            "title": "tag",
            "description": "only consider snapshots including tag[,tag,...].\nBoolean true is replaced with the tags from section \"backup\". [restic \u003e= 0.10.0]",
            "anyOf": [
              {
                "type": "boolean",
                "examples": [
                  true,
                  false
                ]
              },
              {
                "type": "string",
                "examples": [
                  true,
                  false,
                  "tag"
                ],
                "minLength": 0
              }
            ]
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-d0cb8938e8c33723a0a629c3376aecc5": {
      "title": "run-after",
      "description": "Run shell command(s) after a successful restic command",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "run-after...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-d7af7929542f414971eae9ea31c9fbe3": {
      "title": "host",
      "description": "set the hostname for the snapshot manually (default: $RESTIC_HOST). To prevent an expensive rescan use the \"parent\" flag.\nBoolean true is replaced with the hostname of the system. Defaults to true for config version 2 in \"backup\".",
      "oneOf": [
        {
          "type": "boolean",
          "examples": [
            true,
            false
          ]
        },
        {
          "type": "string",
          "examples": [
            true,
            false,
            "host"
          ],
          "minLength": 0,
          "format": "hostname"
        }
      ]
    },
    "id-d7f8fecbb230b837e9062334f594f0b5": {
      "title": "exclude-file",
      "description": "read exclude patterns from a file",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "exclude-file...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-db71520355d2a9baae090ca906a4bd4f": {
      "title": "add",
      "description": "tags which will be added to the existing tags in the format tag[,tag,...]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "add...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-e53da3b88d470edbc47a4cdd4160ff3f": {
      "title": "option",
      "description": "set extended option (key=value)",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "option...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-e7d98f4cbe6d87f1d7bdcfe27e13ce05": {
      "title": "capture-environment",
      "description": "Set names (or glob expressions) of environment variables to capture during schedule creation. The captured environment is applied prior to \"profile.env\" when running the schedule. Whether capturing is supported depends on the type of scheduler being used (supported in \"systemd\" and \"launchd\")",
      "anyOf": [
        {
          "default": "RESTIC_*",
          "type": "string",
          "minLength": 0
        },
        {
          "title": "capture-environment...",
          "default": "RESTIC_*",
          "type": "array",
          "items": {
            "default": "RESTIC_*",
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-e85b383c5fe5f267b43cb2035308e933": {
      "title": "iinclude",
      "description": "same as --include pattern but ignores the casing of filenames [restic \u003e= 0.10.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "iinclude...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-e9dcb0415621db931adaa34883b6880b": {
      "title": "schedule-capture-environment",
      "description": "Set names (or glob expressions) of environment variables to capture during schedule creation. The captured environment is applied prior to \"profile.env\" when running the schedule. Whether capturing is supported depends on the type of scheduler being used (supported in \"systemd\" and \"launchd\") [deprecated]",
      "anyOf": [
        {
          "deprecated": true,
          "type": "string",
          "minLength": 0
        },
        {
          "title": "schedule-capture-environment...",
          "deprecated": true,
          "type": "array",
          "items": {
            "deprecated": true,
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-ec2677e78c4ab68f0084eda8fac2205c": {
      "title": "files-from-raw",
      "description": "read the files to backup from file (can be combined with file args) [restic \u003e= 0.12.0]",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "files-from-raw...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-ef4cd05741e7f69941250f6f7121853f": {
      "title": "run-finally",
      "description": "Run shell command(s) always, after all other commands",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "run-finally...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-efc256c6055c563ef627167bef02d66c": {
      "title": "systemd-drop-in-files",
      "description": "Files containing systemd drop-in (override) files - see https://creativeprojects.github.io/resticprofile/schedules/systemd/",
      "anyOf": [
        {
          "type": "string",
          "minLength": 0
        },
        {
          "title": "systemd-drop-in-files...",
          "type": "array",
          "items": {
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      ]
    },
    "id-f7bc4372460aefc0a1ecf448de19d0c8": {
      "title": "schedule-lock-wait",
      "description": "Set the maximum time to wait for acquiring locks when running on schedule",
      "oneOf": [
        {
          "type": "integer"
        },
        {
          "type": "string",
          "examples": [
            "150s",
            "15m",
            "30m",
            "45m",
            "1h",
            "2h30m"
          ],
          "minLength": 2,
          "pattern": "^(\\d+(h|m|s|ms))+$"
        }
      ]
    },
    "id-ff0dfd3fabc9eefcc415fbef01071197": {
      "title": "host",
      "description": "the hostname for new keys.\nBoolean true is replaced with the hostname of the system. [deprecated, removed in 0.17.0, restic \u003e= 0.10.0]",
      "oneOf": [
        {
          "deprecated": true,
          "type": "boolean",
          "examples": [
            true,
            false
          ]
        },
        {
          "deprecated": true,
          "type": "string",
          "examples": [
            true,
            false,
            "host"
          ],
          "minLength": 0,
          "format": "hostname"
        }
      ]
    }
  },
  "description": "resticprofile configuration v1",
  "type": "object",
  "additionalProperties": {
    "description": "single profile",
    "type": "object",
    "additionalProperties": true,
    "properties": {
      "backup": {
        "title": "backup",
        "description": "The \"backup\" command creates a new snapshot and saves the files and directories\ngiven as the arguments.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "check-after": {
            "title": "check-after",
            "description": "Check the repository after the backup command succeeded",
            "type": "boolean"
          },
          "check-before": {
            "title": "check-before",
            "description": "Check the repository before starting the backup command",
            "type": "boolean"
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "dry-run": {
            "title": "dry-run",
            "description": "do not upload or write any data, just show what would be done [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "exclude": {
            "$ref": "#/$defs/id-9fc99e529e5753db5850c6ad0fe6e769"
          },
          "exclude-caches": {
            "title": "exclude-caches",
            "description": "excludes cache directories that are marked with a CACHEDIR.TAG file. See https://bford.info/cachedir/ for the Cache Directory Tagging Standard",
            "type": "boolean"
          },
          "exclude-cloud-files": {
            "title": "exclude-cloud-files",
            "description": "excludes online-only cloud files (such as OneDrive Files On-Demand) [restic \u003e= 0.18.0]",
            "type": "boolean"
          },
          "exclude-file": {
            "$ref": "#/$defs/id-d7f8fecbb230b837e9062334f594f0b5"
          },
          "exclude-if-present": {
            "$ref": "#/$defs/id-92a8b0a93ca24cd3de9ae56a4dcb9ec6"
          },
          "exclude-larger-than": {
            "title": "exclude-larger-than",
            "description": "max size of the files to be backed up (allowed suffixes: k/K, m/M, g/G, t/T) [restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "files-from": {
            "$ref": "#/$defs/id-43751bb98b8f27a3043a5cf8114dcc42"
          },
          "files-from-raw": {
            "$ref": "#/$defs/id-ec2677e78c4ab68f0084eda8fac2205c"
          },
          "files-from-verbatim": {
            "$ref": "#/$defs/id-997692924136270ec7fee7ea4d04a8d6"
          },
          "force": {
            "title": "force",
            "description": "force re-reading the source files/directories (overrides the \"parent\" flag)",
            "type": "boolean"
          },
          "group-by": {
            "title": "group-by",
            "default": "host,paths",
            "description": "group snapshots by host, paths and/or tags, separated by comma (disable grouping with '') [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "host": {
            "$ref": "#/$defs/id-d7af7929542f414971eae9ea31c9fbe3"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "iexclude": {
            "$ref": "#/$defs/id-31b76762391db3e4e7e8275c1490db64"
          },
          "iexclude-file": {
            "$ref": "#/$defs/id-5a30ba75410604c90422365278a6a8c2"
          },
          "ignore-ctime": {
            "title": "ignore-ctime",
            "description": "ignore ctime changes when checking for modified files [restic \u003e= 0.12.0]",
            "type": "boolean"
          },
          "ignore-inode": {
            "title": "ignore-inode",
            "description": "ignore inode number and ctime changes when checking for modified files [restic \u003e= 0.10.0]",
            "type": "boolean"
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-error-on-warning": {
            "title": "no-error-on-warning",
            "description": "Do not fail the backup when some files could not be read",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "no-scan": {
            "title": "no-scan",
            "description": "do not run scanner to estimate size of backup [restic \u003e= 0.15.0]",
            "type": "boolean"
          },
          "one-file-system": {
            "title": "one-file-system",
            "description": "exclude other file systems, don't cross filesystem boundaries and subvolumes",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "parent": {
            "title": "parent",
            "description": "use this parent snapshot (default: latest snapshot in the group determined by --group-by and not newer than the timestamp determined by --time)",
            "type": "string",
            "minLength": 0
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "read-concurrency": {
            "title": "read-concurrency",
            "description": "read n files concurrently (default: $RESTIC_READ_CONCURRENCY or 2) [restic \u003e= 0.15.0]",
            "type": "integer"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "schedule": {
            "$ref": "#/$defs/id-78782b807ee477a77d0f7f917d8308d0"
          },
          "schedule-after-network-online": {
            "title": "schedule-after-network-online",
            "description": "Don't start this schedule when the network is offline (supported in \"systemd\")",
            "type": "boolean"
          },
          "schedule-capture-environment": {
            "$ref": "#/$defs/id-58bf71d644870ee03285502006c5f9ba"
          },
          "schedule-ignore-on-battery": {
            "title": "schedule-ignore-on-battery",
            "description": "Don't start this schedule when running on battery",
            "type": "boolean"
          },
          "schedule-ignore-on-battery-less-than": {
            "title": "schedule-ignore-on-battery-less-than",
            "description": "Don't start this schedule when running on battery and the state of charge is less than this percentage",
            "type": "integer",
            "examples": [
              20,
              33,
              50,
              75
            ]
          },
          "schedule-lock-mode": {
            "title": "schedule-lock-mode",
            "default": "default",
            "description": "Specify how locks are used when running on schedule - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "default",
              "fail",
              "ignore"
            ],
            "minLength": 0
          },
          "schedule-lock-wait": {
            "$ref": "#/$defs/id-f7bc4372460aefc0a1ecf448de19d0c8"
          },
          "schedule-log": {
            "title": "schedule-log",
            "description": "Redirect the output into a log file or to syslog when running on schedule",
            "type": "string",
            "examples": [
              "/resticprofile.log",
              "syslog-tcp://syslog-server:514",
              "syslog:server",
              "syslog:"
            ],
            "minLength": 0
          },
          "schedule-permission": {
            "title": "schedule-permission",
            "default": "auto",
            "description": "Specify whether the schedule runs with system or user privileges - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "auto",
              "system",
              "user",
              "user_logged_on"
            ],
            "minLength": 0
          },
          "schedule-priority": {
            "title": "schedule-priority",
            "default": "standard",
            "description": "Set the priority at which the schedule is run",
            "type": "string",
            "enum": [
              "background",
              "standard"
            ],
            "minLength": 0
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "skip-if-unchanged": {
            "title": "skip-if-unchanged",
            "description": "skip snapshot creation if identical to parent snapshot [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "source": {
            "$ref": "#/$defs/id-b0370690ac6a8a0301e000cc1e13dd04"
          },
          "source-base": {
            "title": "source-base",
            "description": "The base path to resolve relative backup paths against. Defaults to current directory if unset or empty (see also \"base-dir\" in profile)",
            "type": "string",
            "examples": [
              "/",
              "$PWD",
              "C:\\",
              "%cd%"
            ],
            "minLength": 0
          },
          "source-relative": {
            "title": "source-relative",
            "description": "Enable backup with relative source paths. This will change the working directory of the \"restic backup\" command to \"source-base\", and will not expand \"source\" to an absolute path.",
            "type": "boolean"
          },
          "stdin": {
            "title": "stdin",
            "description": "read backup from stdin",
            "type": "boolean"
          },
          "stdin-command": {
            "$ref": "#/$defs/id-20cb912e946a794f54e5e7cd6faeb133"
          },
          "stdin-filename": {
            "title": "stdin-filename",
            "default": "stdin",
            "description": "filename to use when reading from stdin",
            "type": "string",
            "minLength": 0
          },
          "stdin-from-command": {
            "title": "stdin-from-command",
            "description": "interpret arguments as command to execute and store its stdout [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-1f33e5af642ab1e472fcd28edcf102e5"
          },
          "time": {
            "title": "time",
            "description": "time of the backup (ex. '2012-11-01 22:08:41') (default: now)",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "use-fs-snapshot": {
            "title": "use-fs-snapshot",
            "description": "use filesystem snapshot where possible (currently only Windows VSS) [restic \u003e= 0.12.0]",
            "type": "boolean"
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          },
          "with-atime": {
            "title": "with-atime",
            "description": "store the atime for all files and directories",
            "type": "boolean"
          }
        }
      },
      "base-dir": {
        "title": "base-dir",
        "description": "Sets the working directory for this profile. The profile will fail when the working directory cannot be changed. Leave empty to use the current directory instead",
        "type": "string",
        "minLength": 0
      },
      "cacert": {
        "title": "cacert",
        "description": "file to load root certificates from (default: use system certificates or $RESTIC_CACERT)",
        "type": "string",
        "minLength": 0
      },
      "cache": {
        "title": "cache",
        "description": "The \"cache\" command allows listing and cleaning local cache directories.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup": {
            "title": "cleanup",
            "description": "remove old cache directories",
            "type": "boolean"
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "max-age": {
            "title": "max-age",
            "default": 30,
            "description": "max age in days for cache directories to be considered old",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "no-size": {
            "title": "no-size",
            "description": "do not output the size of the cache directories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "cache-dir": {
        "title": "cache-dir",
        "description": "set the cache directory. (default: use system default cache directory)",
        "type": "string",
        "minLength": 0
      },
      "cat": {
        "title": "cat",
        "description": "The \"cat\" command is used to print internal objects to stdout.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "check": {
        "title": "check",
        "description": "The \"check\" command tests the repository for errors and reports any errors it\nfinds. It can also be used to read all data and therefore simulate a restore.\n\nBy default, the \"check\" command will always load all data directly from the\nrepository and not use a local cache.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "check-unused": {
            "title": "check-unused",
            "deprecated": true,
            "description": "find unused blobs [deprecated, removed in 0.14.0]",
            "type": "boolean"
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "read-data": {
            "title": "read-data",
            "description": "read all data blobs",
            "type": "boolean"
          },
          "read-data-subset": {
            "title": "read-data-subset",
            "description": "read a subset of data packs, specified as 'n/t' for specific part, or either 'x%' or 'x.y%' or a size in bytes with suffixes k/K, m/M, g/G, t/T for a random subset",
            "type": "string",
            "minLength": 0
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "schedule": {
            "$ref": "#/$defs/id-78782b807ee477a77d0f7f917d8308d0"
          },
          "schedule-after-network-online": {
            "title": "schedule-after-network-online",
            "description": "Don't start this schedule when the network is offline (supported in \"systemd\")",
            "type": "boolean"
          },
          "schedule-capture-environment": {
            "$ref": "#/$defs/id-58bf71d644870ee03285502006c5f9ba"
          },
          "schedule-ignore-on-battery": {
            "title": "schedule-ignore-on-battery",
            "description": "Don't start this schedule when running on battery",
            "type": "boolean"
          },
          "schedule-ignore-on-battery-less-than": {
            "title": "schedule-ignore-on-battery-less-than",
            "description": "Don't start this schedule when running on battery and the state of charge is less than this percentage",
            "type": "integer",
            "examples": [
              20,
              33,
              50,
              75
            ]
          },
          "schedule-lock-mode": {
            "title": "schedule-lock-mode",
            "default": "default",
            "description": "Specify how locks are used when running on schedule - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "default",
              "fail",
              "ignore"
            ],
            "minLength": 0
          },
          "schedule-lock-wait": {
            "$ref": "#/$defs/id-f7bc4372460aefc0a1ecf448de19d0c8"
          },
          "schedule-log": {
            "title": "schedule-log",
            "description": "Redirect the output into a log file or to syslog when running on schedule",
            "type": "string",
            "examples": [
              "/resticprofile.log",
              "syslog-tcp://syslog-server:514",
              "syslog:server",
              "syslog:"
            ],
            "minLength": 0
          },
          "schedule-permission": {
            "title": "schedule-permission",
            "default": "auto",
            "description": "Specify whether the schedule runs with system or user privileges - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "auto",
              "system",
              "user",
              "user_logged_on"
            ],
            "minLength": 0
          },
          "schedule-priority": {
            "title": "schedule-priority",
            "default": "standard",
            "description": "Set the priority at which the schedule is run",
            "type": "string",
            "enum": [
              "background",
              "standard"
            ],
            "minLength": 0
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          },
          "with-cache": {
            "title": "with-cache",
            "description": "use existing cache, only read uncached data from repository",
            "type": "boolean"
          }
        }
      },
      "cleanup-cache": {
        "title": "cleanup-cache",
        "description": "auto remove old cache directories",
        "type": "boolean"
      },
      "compression": {
        "title": "compression",
        "default": "auto",
        "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
        "type": "string",
        "minLength": 0
      },
      "copy": {
        "title": "copy",
        "description": "The \"copy\" command copies one or more snapshots from one repository to another.\n\nNOTE: This process will have to both download (read) and upload (write) the\nentire snapshot(s) due to the different encryption keys used in the source and\ndestination repositories. This /may incur higher bandwidth usage and costs/ than\nexpected during normal backup runs.\n\nNOTE: The copying process does not re-chunk files, which may break deduplication\nbetween the files copied and files already stored in the destination repository.\nThis means that copied files, which existed in both the source and destination\nrepository, /may occupy up to twice their space/ in the destination repository.\nThis can be mitigated by the \"--copy-chunker-params\" option when initializing a\nnew destination repository using the \"init\" command.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "from-insecure-no-password": {
            "title": "from-insecure-no-password",
            "description": "use an empty password for the source repository (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "from-key-hint": {
            "title": "from-key-hint",
            "description": "key ID of key to try decrypting the source repository first (default: $RESTIC_FROM_KEY_HINT) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "from-password-command": {
            "title": "from-password-command",
            "description": "shell command to obtain the source repository password from (default: $RESTIC_FROM_PASSWORD_COMMAND) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "from-password-file": {
            "title": "from-password-file",
            "description": "file to read the source repository password from (default: $RESTIC_FROM_PASSWORD_FILE) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "from-repo": {
            "title": "from-repo",
            "description": "source repository to copy snapshots from (default: $RESTIC_FROM_REPOSITORY) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "from-repository-file": {
            "title": "from-repository-file",
            "description": "file from which to read the source repository location to copy snapshots from (default: $RESTIC_FROM_REPOSITORY_FILE) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "host": {
            "$ref": "#/$defs/id-040cdbfb985915c1376d7d7a1fa0d38a"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "initialize": {
            "title": "initialize",
            "description": "Initialize the secondary repository if missing",
            "type": "boolean"
          },
          "initialize-copy-chunker-params": {
            "title": "initialize-copy-chunker-params",
            "default": true,
            "description": "Copy chunker parameters when initializing the secondary repository",
            "type": "boolean"
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "Key ID of key to try decrypting the destination repository first",
            "type": "string",
            "minLength": 0
          },
          "key-hint2": {
            "title": "key-hint2",
            "deprecated": true,
            "description": "key ID of key to try decrypting the destination repository first (default: $RESTIC_KEY_HINT2) [deprecated, removed in 0.14.0, restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "Shell command to obtain the destination repository password from",
            "type": "string",
            "minLength": 0
          },
          "password-command2": {
            "title": "password-command2",
            "deprecated": true,
            "description": "shell command to obtain the destination repository password from (default: $RESTIC_PASSWORD_COMMAND2) [deprecated, removed in 0.14.0, restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "File to read the destination repository password from",
            "type": "string",
            "minLength": 0
          },
          "password-file2": {
            "title": "password-file2",
            "deprecated": true,
            "description": "file to read the destination repository password from (default: $RESTIC_PASSWORD_FILE2) [deprecated, removed in 0.14.0, restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-1e3e4f194a26f596cf3db367ea81cd15"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repo2": {
            "title": "repo2",
            "deprecated": true,
            "description": "destination repository to copy snapshots to (default: $RESTIC_REPOSITORY2) [deprecated, removed in 0.14.0, restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "repository": {
            "title": "repository",
            "description": "Destination repository to copy snapshots to",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "File from which to read the destination repository location to copy snapshots to",
            "type": "string",
            "minLength": 0
          },
          "repository-file2": {
            "title": "repository-file2",
            "deprecated": true,
            "description": "file from which to read the destination repository location to copy snapshots to (default: $RESTIC_REPOSITORY_FILE2) [deprecated, removed in 0.14.0, restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "schedule": {
            "$ref": "#/$defs/id-78782b807ee477a77d0f7f917d8308d0"
          },
          "schedule-after-network-online": {
            "title": "schedule-after-network-online",
            "description": "Don't start this schedule when the network is offline (supported in \"systemd\")",
            "type": "boolean"
          },
          "schedule-capture-environment": {
            "$ref": "#/$defs/id-58bf71d644870ee03285502006c5f9ba"
          },
          "schedule-ignore-on-battery": {
            "title": "schedule-ignore-on-battery",
            "description": "Don't start this schedule when running on battery",
            "type": "boolean"
          },
          "schedule-ignore-on-battery-less-than": {
            "title": "schedule-ignore-on-battery-less-than",
            "description": "Don't start this schedule when running on battery and the state of charge is less than this percentage",
            "type": "integer",
            "examples": [
              20,
              33,
              50,
              75
            ]
          },
          "schedule-lock-mode": {
            "title": "schedule-lock-mode",
            "default": "default",
            "description": "Specify how locks are used when running on schedule - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "default",
              "fail",
              "ignore"
            ],
            "minLength": 0
          },
          "schedule-lock-wait": {
            "$ref": "#/$defs/id-f7bc4372460aefc0a1ecf448de19d0c8"
          },
          "schedule-log": {
            "title": "schedule-log",
            "description": "Redirect the output into a log file or to syslog when running on schedule",
            "type": "string",
            "examples": [
              "/resticprofile.log",
              "syslog-tcp://syslog-server:514",
              "syslog:server",
              "syslog:"
            ],
            "minLength": 0
          },
          "schedule-permission": {
            "title": "schedule-permission",
            "default": "auto",
            "description": "Specify whether the schedule runs with system or user privileges - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "auto",
              "system",
              "user",
              "user_logged_on"
            ],
            "minLength": 0
          },
          "schedule-priority": {
            "title": "schedule-priority",
            "default": "standard",
            "description": "Set the priority at which the schedule is run",
            "type": "string",
            "enum": [
              "background",
              "standard"
            ],
            "minLength": 0
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "snapshot": {
            "$ref": "#/$defs/id-a0a0f94f7b67bcfce0325495ae74a8f5"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-d07a19e23ce110495e29bd4c07d194b8"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "description": {
        "title": "description",
        "description": "Describes the profile",
        "type": "string",
        "minLength": 0
      },
      "diff": {
        "title": "diff",
        "description": "The \"diff\" command shows differences from the first to the second snapshot. The\nfirst characters in each line display what has happened to a particular file or\ndirectory:\n\n* `+` The item was added\n* `-` The item was removed\n* `U` The metadata (access mode, timestamps, ...) for the item was updated\n* `M` The file's content was modified\n* `T` The type was changed, e.g. a file was made a symlink\n* `?` Bitrot detected: The file's content has changed but all metadata is the same\n\n\nMetadata comparison will likely not work if a backup was created using the\n'--ignore-inode' or '--ignore-ctime' option.\n\nTo only compare files in specific subfolders, you can use the\n\"snapshotID:subfolder\" syntax, where \"subfolder\" is a path within the\nsnapshot.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "metadata": {
            "title": "metadata",
            "description": "print changes in metadata",
            "type": "boolean"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "dump": {
        "title": "dump",
        "description": "The \"dump\" command extracts files from a snapshot from the repository. If a\nsingle file is selected, it prints its contents to stdout. Folders are output\nas a tar (default) or zip file containing the contents of the specified folder.\nPass \"/\" as file name to dump the whole snapshot as an archive file.\n\nThe special snapshotID \"latest\" can be used to use the latest snapshot in the\nrepository.\n\nTo include the folder content at the root of the archive, you can use the\n\"snapshotID:subfolder\" syntax, where \"subfolder\" is a path within the\nsnapshot.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "archive": {
            "title": "archive",
            "default": "tar",
            "description": "set archive format as \"tar\" or \"zip\" [restic \u003e= 0.12.0]",
            "type": "string",
            "minLength": 0
          },
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "host": {
            "$ref": "#/$defs/id-228c0688714ab2ef9eeccf2b322df2d8"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-4d5c283f98d0925082ab484d3bdd4d16"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-5a6e7b23808067f4ea3cd8627e7434be"
          },
          "target": {
            "title": "target",
            "description": "write the output to target path [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "env": {
        "title": "env",
        "type": "object",
        "additionalProperties": true
      },
      "env-file": {
        "$ref": "#/$defs/id-71d4c72a873617fc9b373bf506f9606d"
      },
      "extended-status": {
        "title": "extended-status",
        "description": "set output mode to JSON for commands that support it",
        "type": "boolean"
      },
      "features": {
        "title": "features",
        "description": "The \"features\" command prints a list of supported feature flags.\n\nTo pass feature flags to restic, set the RESTIC_FEATURES environment variable\nto \"featureA=true,featureB=false\". Specifying an unknown feature flag is an error.\n\nA feature can either be in alpha, beta, stable or deprecated state.\nAn alpha feature is disabled by default and may change in arbitrary ways between restic versions or be removed.\nA beta feature is enabled by default, but still can change in minor ways or be removed.\nA stable feature is always enabled and cannot be disabled. The flag will be removed in a future restic version.\nA deprecated feature is always disabled and cannot be enabled. The flag will be removed in a future restic version.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "find": {
        "title": "find",
        "description": "The \"find\" command searches for files or directories in snapshots stored in the\nrepo.\nIt can also be used to search for restic blobs or trees for troubleshooting.\nThe default sort option for the snapshots is youngest to oldest. To sort the\noutput from oldest to youngest specify --reverse.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "blob": {
            "title": "blob",
            "description": "pattern is a blob-ID",
            "type": "boolean"
          },
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "host": {
            "$ref": "#/$defs/id-5a7604cd62739bf6b90cc25decf3beb6"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "human-readable": {
            "title": "human-readable",
            "description": "print sizes in human readable format [restic \u003e= 0.16.0]",
            "type": "boolean"
          },
          "ignore-case": {
            "title": "ignore-case",
            "description": "ignore case for pattern",
            "type": "boolean"
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "long": {
            "title": "long",
            "description": "use a long listing format showing size and mode",
            "type": "boolean"
          },
          "newest": {
            "title": "newest",
            "description": "newest modification date/time",
            "type": "string",
            "minLength": 0
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "oldest": {
            "title": "oldest",
            "description": "oldest modification date/time",
            "type": "string",
            "minLength": 0
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack": {
            "title": "pack",
            "description": "pattern is a pack-ID",
            "type": "boolean"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-0dd6bafe51f2901fa7f446e31a3b881d"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "reverse": {
            "title": "reverse",
            "description": "reverse sort order oldest to newest [restic \u003e= 0.18.0]",
            "type": "boolean"
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "show-pack-id": {
            "title": "show-pack-id",
            "description": "display the pack-ID the blobs belong to (with --blob or --tree)",
            "type": "boolean"
          },
          "snapshot": {
            "$ref": "#/$defs/id-03550d33226c03f7e7c8a6a6fc971333"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-07122d0553bd2888fbf7616a676047d5"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "tree": {
            "title": "tree",
            "description": "pattern is a tree-ID",
            "type": "boolean"
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "force-inactive-lock": {
        "title": "force-inactive-lock",
        "description": "Allows to lock when the existing lock is considered stale",
        "type": "boolean"
      },
      "forget": {
        "title": "forget",
        "description": "The \"forget\" command removes snapshots according to a policy. All snapshots are\nfirst divided into groups according to \"--group-by\", and after that the policy\nspecified by the \"--keep-\" options is applied to each group individually.\nIf there are not enough snapshots to keep one for each duration related\n\"--keep-{within-,}\" option, the oldest snapshot in the group is kept\nadditionally.\n\nPlease note that this command really only deletes the snapshot object in the\nrepository, which is a reference to data stored there. In order to remove the\nunreferenced data after \"forget\" was run successfully, see the \"prune\" command.\n\nPlease also read the documentation for \"forget\" to learn about some important\nsecurity considerations.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compact": {
            "title": "compact",
            "description": "use compact output format",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "dry-run": {
            "title": "dry-run",
            "description": "do not delete anything, just print what would be done",
            "type": "boolean"
          },
          "group-by": {
            "title": "group-by",
            "default": "host,paths",
            "description": "group snapshots by host, paths and/or tags, separated by comma (disable grouping with '')",
            "type": "string",
            "minLength": 0
          },
          "host": {
            "$ref": "#/$defs/id-5a7604cd62739bf6b90cc25decf3beb6"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "keep-daily": {
            "title": "keep-daily",
            "description": "keep the last n daily snapshots (use 'unlimited' to keep all daily snapshots)",
            "type": "integer"
          },
          "keep-hourly": {
            "title": "keep-hourly",
            "description": "keep the last n hourly snapshots (use 'unlimited' to keep all hourly snapshots)",
            "type": "integer"
          },
          "keep-last": {
            "title": "keep-last",
            "description": "keep the last n snapshots (use 'unlimited' to keep all snapshots)",
            "type": "integer"
          },
          "keep-monthly": {
            "title": "keep-monthly",
            "description": "keep the last n monthly snapshots (use 'unlimited' to keep all monthly snapshots)",
            "type": "integer"
          },
          "keep-tag": {
            "$ref": "#/$defs/id-7d3654de0d890ce874dc332214970cad"
          },
          "keep-weekly": {
            "title": "keep-weekly",
            "description": "keep the last n weekly snapshots (use 'unlimited' to keep all weekly snapshots)",
            "type": "integer"
          },
          "keep-within": {
            "title": "keep-within",
            "description": "keep snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot",
            "type": "string",
            "minLength": 0
          },
          "keep-within-daily": {
            "title": "keep-within-daily",
            "description": "keep daily snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-within-hourly": {
            "title": "keep-within-hourly",
            "description": "keep hourly snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-within-monthly": {
            "title": "keep-within-monthly",
            "description": "keep monthly snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-within-weekly": {
            "title": "keep-within-weekly",
            "description": "keep weekly snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-within-yearly": {
            "title": "keep-within-yearly",
            "description": "keep yearly snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-yearly": {
            "title": "keep-yearly",
            "description": "keep the last n yearly snapshots (use 'unlimited' to keep all yearly snapshots)",
            "type": "integer"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "max-repack-size": {
            "title": "max-repack-size",
            "description": "stop after repacking this much data in total (allowed suffixes for size: k/K, m/M, g/G, t/T) [restic \u003e= 0.12.0]",
            "type": "string",
            "minLength": 0
          },
          "max-unused": {
            "title": "max-unused",
            "default": "5%",
            "description": "tolerate given limit of unused data (absolute value in bytes with suffixes k/K, m/M, g/G, t/T, a value in % or the word 'unlimited') [restic \u003e= 0.12.0]",
            "type": "string",
            "minLength": 0
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-0dd6bafe51f2901fa7f446e31a3b881d"
          },
          "prune": {
            "title": "prune",
            "description": "automatically run the 'prune' command if snapshots have been removed",
            "type": "boolean"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repack-cacheable-only": {
            "title": "repack-cacheable-only",
            "description": "only repack packs which are cacheable [restic \u003e= 0.12.0]",
            "type": "boolean"
          },
          "repack-small": {
            "title": "repack-small",
            "description": "repack pack files below 80% of target pack size [restic \u003e= 0.14.0]",
            "type": "boolean"
          },
          "repack-smaller-than": {
            "title": "repack-smaller-than",
            "description": "pack below-limit packfiles (allowed suffixes: k/K, m/M) [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "repack-uncompressed": {
            "title": "repack-uncompressed",
            "description": "repack all uncompressed data [restic \u003e= 0.14.0]",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "schedule": {
            "$ref": "#/$defs/id-78782b807ee477a77d0f7f917d8308d0"
          },
          "schedule-after-network-online": {
            "title": "schedule-after-network-online",
            "description": "Don't start this schedule when the network is offline (supported in \"systemd\")",
            "type": "boolean"
          },
          "schedule-capture-environment": {
            "$ref": "#/$defs/id-58bf71d644870ee03285502006c5f9ba"
          },
          "schedule-ignore-on-battery": {
            "title": "schedule-ignore-on-battery",
            "description": "Don't start this schedule when running on battery",
            "type": "boolean"
          },
          "schedule-ignore-on-battery-less-than": {
            "title": "schedule-ignore-on-battery-less-than",
            "description": "Don't start this schedule when running on battery and the state of charge is less than this percentage",
            "type": "integer",
            "examples": [
              20,
              33,
              50,
              75
            ]
          },
          "schedule-lock-mode": {
            "title": "schedule-lock-mode",
            "default": "default",
            "description": "Specify how locks are used when running on schedule - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "default",
              "fail",
              "ignore"
            ],
            "minLength": 0
          },
          "schedule-lock-wait": {
            "$ref": "#/$defs/id-f7bc4372460aefc0a1ecf448de19d0c8"
          },
          "schedule-log": {
            "title": "schedule-log",
            "description": "Redirect the output into a log file or to syslog when running on schedule",
            "type": "string",
            "examples": [
              "/resticprofile.log",
              "syslog-tcp://syslog-server:514",
              "syslog:server",
              "syslog:"
            ],
            "minLength": 0
          },
          "schedule-permission": {
            "title": "schedule-permission",
            "default": "auto",
            "description": "Specify whether the schedule runs with system or user privileges - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "auto",
              "system",
              "user",
              "user_logged_on"
            ],
            "minLength": 0
          },
          "schedule-priority": {
            "title": "schedule-priority",
            "default": "standard",
            "description": "Set the priority at which the schedule is run",
            "type": "string",
            "enum": [
              "background",
              "standard"
            ],
            "minLength": 0
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-07122d0553bd2888fbf7616a676047d5"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "unsafe-allow-remove-all": {
            "title": "unsafe-allow-remove-all",
            "description": "allow deleting all snapshots of a snapshot group [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "http-user-agent": {
        "title": "http-user-agent",
        "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
        "type": "string",
        "minLength": 0
      },
      "inherit": {
        "title": "inherit",
        "description": "Name of the profile to inherit all of the settings from",
        "type": "string",
        "minLength": 0
      },
      "init": {
        "title": "init",
        "description": "The \"init\" command initializes a new repository.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "copy-chunker-params": {
            "title": "copy-chunker-params",
            "description": "copy chunker parameters from the secondary repository (useful with the copy command) [restic \u003e= 0.10.0]",
            "type": "boolean"
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "from-insecure-no-password": {
            "title": "from-insecure-no-password",
            "description": "use an empty password for the source repository (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "from-key-hint": {
            "title": "from-key-hint",
            "description": "key ID of key to try decrypting the source repository first (default: $RESTIC_FROM_KEY_HINT) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "from-password-command": {
            "title": "from-password-command",
            "description": "shell command to obtain the source repository password from (default: $RESTIC_FROM_PASSWORD_COMMAND) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "from-password-file": {
            "title": "from-password-file",
            "description": "file to read the source repository password from (default: $RESTIC_FROM_PASSWORD_FILE) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "from-repository": {
            "title": "from-repository",
            "description": "source repository to copy chunker parameters from (default: $RESTIC_FROM_REPOSITORY) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "from-repository-file": {
            "title": "from-repository-file",
            "description": "file from which to read the source repository location to copy chunker parameters from (default: $RESTIC_FROM_REPOSITORY_FILE) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "key-hint2": {
            "title": "key-hint2",
            "deprecated": true,
            "description": "key ID of key to try decrypting the secondary repository first (default: $RESTIC_KEY_HINT2) [deprecated, removed in 0.14.0, restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-command2": {
            "title": "password-command2",
            "deprecated": true,
            "description": "shell command to obtain the secondary repository password from (default: $RESTIC_PASSWORD_COMMAND2) [deprecated, removed in 0.14.0, restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "password-file2": {
            "title": "password-file2",
            "deprecated": true,
            "description": "file to read the secondary repository password from (default: $RESTIC_PASSWORD_FILE2) [deprecated, removed in 0.14.0, restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repo2": {
            "title": "repo2",
            "deprecated": true,
            "description": "secondary repository to copy chunker parameters from (default: $RESTIC_REPOSITORY2) [deprecated, removed in 0.14.0, restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "repository-file2": {
            "title": "repository-file2",
            "deprecated": true,
            "description": "file from which to read the secondary repository location to copy chunker parameters from (default: $RESTIC_REPOSITORY_FILE2) [deprecated, removed in 0.14.0, restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "repository-version": {
            "title": "repository-version",
            "default": "stable",
            "description": "repository format version to use, allowed values are a format version, 'latest' and 'stable' [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "initialize": {
        "title": "initialize",
        "description": "Initialize the restic repository if missing",
        "type": "boolean"
      },
      "insecure-no-password": {
        "title": "insecure-no-password",
        "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
        "type": "boolean"
      },
      "insecure-tls": {
        "title": "insecure-tls",
        "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
        "type": "boolean"
      },
      "key": {
        "title": "key",
        "description": "The \"key\" command allows you to set multiple access keys or passwords\nper repository.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "host": {
            "$ref": "#/$defs/id-ff0dfd3fabc9eefcc415fbef01071197"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "new-password-file": {
            "title": "new-password-file",
            "deprecated": true,
            "description": "file from which to read the new password [deprecated, removed in 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "user": {
            "title": "user",
            "deprecated": true,
            "description": "the username for new keys [deprecated, removed in 0.17.0, restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "key-add": {
        "title": "key-add",
        "description": "The \"add\" sub-command creates a new key and validates the key. Returns the new key ID.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "host": {
            "$ref": "#/$defs/id-9cfa481f3803a7b12fe7275be73cfc24"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "new-insecure-no-password": {
            "title": "new-insecure-no-password",
            "description": "add an empty password for the repository (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "new-password-file": {
            "title": "new-password-file",
            "description": "file from which to read the new password [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "user": {
            "title": "user",
            "description": "the username for new key [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "key-hint": {
        "title": "key-hint",
        "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
        "type": "string",
        "minLength": 0
      },
      "key-list": {
        "title": "key-list",
        "description": "The \"list\" sub-command lists all the keys (passwords) associated with the repository.\nReturns the key ID, username, hostname, created time and if it's the current key being\nused to access the repository.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "key-passwd": {
        "title": "key-passwd",
        "description": "The \"passwd\" sub-command creates a new key, validates the key and remove the old key ID.\nReturns the new key ID.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "host": {
            "$ref": "#/$defs/id-9cfa481f3803a7b12fe7275be73cfc24"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "new-insecure-no-password": {
            "title": "new-insecure-no-password",
            "description": "add an empty password for the repository (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "new-password-file": {
            "title": "new-password-file",
            "description": "file from which to read the new password [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "user": {
            "title": "user",
            "description": "the username for new key [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "key-remove": {
        "title": "key-remove",
        "description": "The \"remove\" sub-command removes the selected key ID. The \"remove\" command does not allow\nremoving the current key being used to access the repository.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "limit-download": {
        "title": "limit-download",
        "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
        "type": "integer"
      },
      "limit-upload": {
        "title": "limit-upload",
        "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
        "type": "integer"
      },
      "list": {
        "title": "list",
        "description": "The \"list\" command allows listing objects in the repository based on type.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "lock": {
        "title": "lock",
        "description": "Path to the lock file to use with resticprofile locks",
        "type": "string",
        "minLength": 0
      },
      "ls": {
        "title": "ls",
        "description": "The \"ls\" command lists files and directories in a snapshot.\n\nThe special snapshot ID \"latest\" can be used to list files and\ndirectories of the latest snapshot in the repository. The\n--host flag can be used in conjunction to select the latest\nsnapshot originating from a certain host only.\n\nFile listings can optionally be filtered by directories. Any\npositional arguments after the snapshot ID are interpreted as\nabsolute directory paths, and only files inside those directories\nwill be listed. If the --recursive flag is used, then the filter\nwill allow traversing into matching directories' subfolders.\nAny directory paths specified must be absolute (starting with\na path separator); paths use the forward slash '/' as separator.\n\nFile listings can be sorted by specifying --sort followed by one of the\nsort specifiers '(name|size|time=mtime|atime|ctime|extension)'.\nThe sorting can be reversed by specifying --reverse.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "host": {
            "$ref": "#/$defs/id-228c0688714ab2ef9eeccf2b322df2d8"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "human-readable": {
            "title": "human-readable",
            "description": "print sizes in human readable format [restic \u003e= 0.16.0]",
            "type": "boolean"
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "long": {
            "title": "long",
            "description": "use a long listing format showing size and mode",
            "type": "boolean"
          },
          "ncdu": {
            "title": "ncdu",
            "description": "output NCDU export format (pipe into 'ncdu -f -') [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-4d5c283f98d0925082ab484d3bdd4d16"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "recursive": {
            "title": "recursive",
            "description": "include files in subfolders of the listed directories",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "reverse": {
            "title": "reverse",
            "description": "reverse sorted output [restic \u003e= 0.18.0]",
            "type": "boolean"
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "sort": {
            "title": "sort",
            "default": "name",
            "description": "sort output by (name|size|time=mtime|atime|ctime|extension) [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-5a6e7b23808067f4ea3cd8627e7434be"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "migrate": {
        "title": "migrate",
        "description": "The \"migrate\" command checks which migrations can be applied for a repository\nand prints a list with available migration names. If one or more migration\nnames are specified, these migrations are applied.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "force": {
            "title": "force",
            "description": "apply a migration a second time",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "mount": {
        "title": "mount",
        "description": "The \"mount\" command mounts the repository via fuse to a directory. This is a\nread-only mount.\n\n\nIf you need a different template for directories that contain snapshots,\nyou can pass a time template via --time-template and path templates via\n--path-template.\n\nExample time template without colons:\n\n\n--time-template \"2006-01-02_15-04-05\"\n\n\nYou need to specify a sample format for exactly the following timestamp:\n\n\nMon Jan 2 15:04:05 -0700 MST 2006\n\n\nFor details please see the documentation for time.Format() at:\n  https://godoc.org/time#Time.Format\n\nFor path templates, you can use the following patterns which will be replaced:\n    %i by short snapshot ID\n    %I by long snapshot ID\n    %u by username\n    %h by hostname\n    %t by tags\n    %T by timestamp as specified by --time-template\n\nThe default path templates are:\n    \"ids/%i\"\n    \"snapshots/%T\"\n    \"hosts/%h/%T\"\n    \"tags/%t/%T\"",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "allow-other": {
            "title": "allow-other",
            "description": "allow other users to access the data in the mounted directory",
            "type": "boolean"
          },
          "allow-root": {
            "title": "allow-root",
            "deprecated": true,
            "description": "allow root user to access the data in the mounted directory [deprecated, removed in 0.10.0]",
            "type": "boolean"
          },
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "host": {
            "$ref": "#/$defs/id-5a7604cd62739bf6b90cc25decf3beb6"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-default-permissions": {
            "title": "no-default-permissions",
            "description": "for 'allow-other', ignore Unix permissions and allow users to read all snapshot files",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "owner-root": {
            "title": "owner-root",
            "description": "use 'root' as the owner of files and dirs",
            "type": "boolean"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-0dd6bafe51f2901fa7f446e31a3b881d"
          },
          "path-template": {
            "$ref": "#/$defs/id-d00dfc211f97db13bd5f14ea3a21e8e6"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "snapshot-template": {
            "title": "snapshot-template",
            "deprecated": true,
            "description": "set template to use for snapshot dirs [deprecated, removed in 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-07122d0553bd2888fbf7616a676047d5"
          },
          "time-template": {
            "title": "time-template",
            "default": "2006-01-02T15:04:05Z07:00",
            "description": "set template to use for times [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "no-cache": {
        "title": "no-cache",
        "description": "do not use a local cache",
        "type": "boolean"
      },
      "no-extra-verify": {
        "title": "no-extra-verify",
        "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
        "type": "boolean"
      },
      "no-lock": {
        "title": "no-lock",
        "description": "do not lock the repository, this allows some operations on read-only repositories",
        "type": "boolean"
      },
      "option": {
        "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
      },
      "options": {
        "title": "options",
        "description": "The \"options\" command prints a list of extended options.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "pack-size": {
        "title": "pack-size",
        "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
        "type": "integer"
      },
      "password-command": {
        "title": "password-command",
        "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
        "type": "string",
        "minLength": 0
      },
      "password-file": {
        "title": "password-file",
        "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
        "type": "string",
        "minLength": 0
      },
      "prometheus-labels": {
        "type": "object",
        "additionalProperties": false,
        "patternProperties": {
          ".+": {
            "type": "string",
            "minLength": 0
          }
        }
      },
      "prometheus-push": {
        "title": "prometheus-push",
        "description": "URL of the prometheus push gateway to send the summary of the last restic command result to",
        "type": "string",
        "minLength": 0,
        "format": "uri"
      },
      "prometheus-push-format": {
        "title": "prometheus-push-format",
        "default": "text",
        "description": "Prometheus push gateway request format",
        "type": "string",
        "enum": [
          "text",
          "protobuf"
        ],
        "minLength": 0
      },
      "prometheus-push-job": {
        "title": "prometheus-push-job",
        "description": "Prometheus push gateway job name. $command placeholder is replaced with restic command",
        "type": "string",
        "minLength": 0
      },
      "prometheus-save-to-file": {
        "title": "prometheus-save-to-file",
        "description": "Path to the prometheus metrics file to update with a summary of the last restic command result",
        "type": "string",
        "minLength": 0
      },
      "prune": {
        "title": "prune",
        "description": "The \"prune\" command checks the repository and removes data that is not\nreferenced and therefore not needed any more.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "dry-run": {
            "title": "dry-run",
            "description": "do not modify the repository, just print what would be done [restic \u003e= 0.12.0]",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "max-repack-size": {
            "title": "max-repack-size",
            "description": "stop after repacking this much data in total (allowed suffixes for size: k/K, m/M, g/G, t/T) [restic \u003e= 0.12.0]",
            "type": "string",
            "minLength": 0
          },
          "max-unused": {
            "title": "max-unused",
            "default": "5%",
            "description": "tolerate given limit of unused data (absolute value in bytes with suffixes k/K, m/M, g/G, t/T, a value in % or the word 'unlimited') [restic \u003e= 0.12.0]",
            "type": "string",
            "minLength": 0
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repack-cacheable-only": {
            "title": "repack-cacheable-only",
            "description": "only repack packs which are cacheable [restic \u003e= 0.12.0]",
            "type": "boolean"
          },
          "repack-small": {
            "title": "repack-small",
            "description": "repack pack files below 80% of target pack size [restic \u003e= 0.14.0]",
            "type": "boolean"
          },
          "repack-smaller-than": {
            "title": "repack-smaller-than",
            "description": "pack below-limit packfiles (allowed suffixes: k/K, m/M) [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "repack-uncompressed": {
            "title": "repack-uncompressed",
            "description": "repack all uncompressed data [restic \u003e= 0.14.0]",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "schedule": {
            "$ref": "#/$defs/id-78782b807ee477a77d0f7f917d8308d0"
          },
          "schedule-after-network-online": {
            "title": "schedule-after-network-online",
            "description": "Don't start this schedule when the network is offline (supported in \"systemd\")",
            "type": "boolean"
          },
          "schedule-capture-environment": {
            "$ref": "#/$defs/id-58bf71d644870ee03285502006c5f9ba"
          },
          "schedule-ignore-on-battery": {
            "title": "schedule-ignore-on-battery",
            "description": "Don't start this schedule when running on battery",
            "type": "boolean"
          },
          "schedule-ignore-on-battery-less-than": {
            "title": "schedule-ignore-on-battery-less-than",
            "description": "Don't start this schedule when running on battery and the state of charge is less than this percentage",
            "type": "integer",
            "examples": [
              20,
              33,
              50,
              75
            ]
          },
          "schedule-lock-mode": {
            "title": "schedule-lock-mode",
            "default": "default",
            "description": "Specify how locks are used when running on schedule - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "default",
              "fail",
              "ignore"
            ],
            "minLength": 0
          },
          "schedule-lock-wait": {
            "$ref": "#/$defs/id-f7bc4372460aefc0a1ecf448de19d0c8"
          },
          "schedule-log": {
            "title": "schedule-log",
            "description": "Redirect the output into a log file or to syslog when running on schedule",
            "type": "string",
            "examples": [
              "/resticprofile.log",
              "syslog-tcp://syslog-server:514",
              "syslog:server",
              "syslog:"
            ],
            "minLength": 0
          },
          "schedule-permission": {
            "title": "schedule-permission",
            "default": "auto",
            "description": "Specify whether the schedule runs with system or user privileges - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
            "type": "string",
            "enum": [
              "auto",
              "system",
              "user",
              "user_logged_on"
            ],
            "minLength": 0
          },
          "schedule-priority": {
            "title": "schedule-priority",
            "default": "standard",
            "description": "Set the priority at which the schedule is run",
            "type": "string",
            "enum": [
              "background",
              "standard"
            ],
            "minLength": 0
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "unsafe-recover-no-free-space": {
            "title": "unsafe-recover-no-free-space",
            "description": "UNSAFE, READ THE DOCUMENTATION BEFORE USING! Try to recover a repository stuck with no free space. Do not use without trying out 'prune --max-repack-size 0' first. [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "quiet": {
        "title": "quiet",
        "description": "do not output comprehensive progress report",
        "type": "boolean"
      },
      "rebuild-index": {
        "title": "rebuild-index",
        "description": "The \"rebuild-index\" command creates a new index based on the pack files in the\nrepository.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "read-all-packs": {
            "title": "read-all-packs",
            "description": "read all pack files to generate new index from scratch [restic \u003e= 0.12.0]",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "recover": {
        "title": "recover",
        "description": "The \"recover\" command builds a new snapshot from all directories it can find in\nthe raw data of the repository which are not referenced in an existing snapshot.\nIt can be used if, for example, a snapshot has been removed by accident with \"forget\".",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "repair": {
        "title": "repair",
        "description": "Repair the repository",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "repair-index": {
        "title": "repair-index",
        "description": "The \"repair index\" command creates a new index based on the pack files in the\nrepository.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "read-all-packs": {
            "title": "read-all-packs",
            "description": "read all pack files to generate new index from scratch [restic \u003e= 0.16.0]",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "repair-packs": {
        "title": "repair-packs",
        "description": "WARNING: The CLI for this command is experimental and will likely change in the future!\n\nThe \"repair packs\" command extracts intact blobs from the specified pack files, rebuilds\nthe index to remove the damaged pack files and removes the pack files from the repository.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "repair-snapshots": {
        "title": "repair-snapshots",
        "description": "The \"repair snapshots\" command repairs broken snapshots. It scans the given\nsnapshots and generates new ones with damaged directories and file contents\nremoved. If the broken snapshots are deleted, a prune run will be able to\nclean up the repository.\n\nThe command depends on a correct index, thus make sure to run \"repair index\"\nfirst!",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "dry-run": {
            "title": "dry-run",
            "description": "do not do anything, just print what would be done [restic \u003e= 0.16.0]",
            "type": "boolean"
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "forget": {
            "title": "forget",
            "description": "remove original snapshots after creating new ones [restic \u003e= 0.16.0]",
            "type": "boolean"
          },
          "host": {
            "$ref": "#/$defs/id-069c0c672104098e9e41d7ac3841fd0c"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-3b78ee34ba5fc91fdf9fa51c39062f53"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-61ab36a2634e460797e4da5a82c379df"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "repository": {
        "title": "repository",
        "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
        "type": "string",
        "minLength": 0
      },
      "repository-file": {
        "title": "repository-file",
        "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
        "type": "string",
        "minLength": 0
      },
      "restore": {
        "title": "restore",
        "description": "The \"restore\" command extracts the data from a snapshot from the repository to\na directory.\n\nThe special snapshotID \"latest\" can be used to restore the latest snapshot in the\nrepository.\n\nTo only restore a specific subfolder, you can use the \"snapshotID:subfolder\"\nsyntax, where \"subfolder\" is a path within the snapshot.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "delete": {
            "title": "delete",
            "description": "delete files from target directory if they do not exist in snapshot. Use '--dry-run -vv' to check what would be deleted [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "dry-run": {
            "title": "dry-run",
            "description": "do not write any data, just show what would be done [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "exclude": {
            "$ref": "#/$defs/id-9fc99e529e5753db5850c6ad0fe6e769"
          },
          "exclude-file": {
            "$ref": "#/$defs/id-703d64899271340b197b461a1da954f0"
          },
          "exclude-xattr": {
            "$ref": "#/$defs/id-8f92d25a48bde1bd1b2cfa82b4b7e95b"
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "host": {
            "$ref": "#/$defs/id-228c0688714ab2ef9eeccf2b322df2d8"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "iexclude": {
            "$ref": "#/$defs/id-31b76762391db3e4e7e8275c1490db64"
          },
          "iexclude-file": {
            "$ref": "#/$defs/id-1372d6a4f6961e5e86fd694445a39721"
          },
          "iinclude": {
            "$ref": "#/$defs/id-e85b383c5fe5f267b43cb2035308e933"
          },
          "iinclude-file": {
            "$ref": "#/$defs/id-35e9a66d22a93b5cfbcebc1b8d53c231"
          },
          "include": {
            "$ref": "#/$defs/id-1b525c9f6a0698293ca268ea3866afa4"
          },
          "include-file": {
            "$ref": "#/$defs/id-a009c428eabb1a0bbd5a6afe6ac4816a"
          },
          "include-xattr": {
            "$ref": "#/$defs/id-85358e042a22a5203782eeed4fbf5b88"
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "overwrite": {
            "title": "overwrite",
            "default": "always",
            "description": "overwrite behavior, one of (always|if-changed|if-newer|never) [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-4d5c283f98d0925082ab484d3bdd4d16"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "sparse": {
            "title": "sparse",
            "description": "restore files as sparse [restic \u003e= 0.15.0]",
            "type": "boolean"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-5a6e7b23808067f4ea3cd8627e7434be"
          },
          "target": {
            "title": "target",
            "description": "directory to extract data to",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          },
          "verify": {
            "title": "verify",
            "description": "verify restored files content",
            "type": "boolean"
          }
        }
      },
      "retention": {
        "title": "retention",
        "description": "The \"forget\" command removes snapshots according to a policy. All snapshots are\nfirst divided into groups according to \"--group-by\", and after that the policy\nspecified by the \"--keep-\" options is applied to each group individually.\nIf there are not enough snapshots to keep one for each duration related\n\"--keep-{within-,}\" option, the oldest snapshot in the group is kept\nadditionally.\n\nPlease note that this command really only deletes the snapshot object in the\nrepository, which is a reference to data stored there. In order to remove the\nunreferenced data after \"forget\" was run successfully, see the \"prune\" command.\n\nPlease also read the documentation for \"forget\" to learn about some important\nsecurity considerations.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "after-backup": {
            "title": "after-backup",
            "description": "Apply retention after the backup command succeeded. Defaults to true in configuration format v2 if any \"keep-*\" flag is set and \"before-backup\" is unset",
            "type": "boolean"
          },
          "before-backup": {
            "title": "before-backup",
            "description": "Apply retention before starting the backup command",
            "type": "boolean"
          },
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compact": {
            "title": "compact",
            "description": "use compact output format",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "dry-run": {
            "title": "dry-run",
            "description": "do not delete anything, just print what would be done",
            "type": "boolean"
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "group-by": {
            "title": "group-by",
            "default": "host,paths",
            "description": "group snapshots by host, paths and/or tags, separated by comma (disable grouping with '')",
            "type": "string",
            "minLength": 0
          },
          "host": {
            "$ref": "#/$defs/id-9eb097550c08524117d0906abd0d2a05"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "keep-daily": {
            "title": "keep-daily",
            "description": "keep the last n daily snapshots (use 'unlimited' to keep all daily snapshots)",
            "type": "integer"
          },
          "keep-hourly": {
            "title": "keep-hourly",
            "description": "keep the last n hourly snapshots (use 'unlimited' to keep all hourly snapshots)",
            "type": "integer"
          },
          "keep-last": {
            "title": "keep-last",
            "description": "keep the last n snapshots (use 'unlimited' to keep all snapshots)",
            "type": "integer"
          },
          "keep-monthly": {
            "title": "keep-monthly",
            "description": "keep the last n monthly snapshots (use 'unlimited' to keep all monthly snapshots)",
            "type": "integer"
          },
          "keep-tag": {
            "$ref": "#/$defs/id-7d3654de0d890ce874dc332214970cad"
          },
          "keep-weekly": {
            "title": "keep-weekly",
            "description": "keep the last n weekly snapshots (use 'unlimited' to keep all weekly snapshots)",
            "type": "integer"
          },
          "keep-within": {
            "title": "keep-within",
            "description": "keep snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot",
            "type": "string",
            "minLength": 0
          },
          "keep-within-daily": {
            "title": "keep-within-daily",
            "description": "keep daily snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-within-hourly": {
            "title": "keep-within-hourly",
            "description": "keep hourly snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-within-monthly": {
            "title": "keep-within-monthly",
            "description": "keep monthly snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-within-weekly": {
            "title": "keep-within-weekly",
            "description": "keep weekly snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-within-yearly": {
            "title": "keep-within-yearly",
            "description": "keep yearly snapshots that are newer than duration (eg. 1y5m7d2h) relative to the latest snapshot [restic \u003e= 0.13.0]",
            "type": "string",
            "minLength": 0
          },
          "keep-yearly": {
            "title": "keep-yearly",
            "description": "keep the last n yearly snapshots (use 'unlimited' to keep all yearly snapshots)",
            "type": "integer"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "max-repack-size": {
            "title": "max-repack-size",
            "description": "stop after repacking this much data in total (allowed suffixes for size: k/K, m/M, g/G, t/T) [restic \u003e= 0.12.0]",
            "type": "string",
            "minLength": 0
          },
          "max-unused": {
            "title": "max-unused",
            "default": "5%",
            "description": "tolerate given limit of unused data (absolute value in bytes with suffixes k/K, m/M, g/G, t/T, a value in % or the word 'unlimited') [restic \u003e= 0.12.0]",
            "type": "string",
            "minLength": 0
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-65f906f27a87d15f551fa4dc5250b520"
          },
          "prune": {
            "title": "prune",
            "description": "automatically run the 'prune' command if snapshots have been removed",
            "type": "boolean"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repack-cacheable-only": {
            "title": "repack-cacheable-only",
            "description": "only repack packs which are cacheable [restic \u003e= 0.12.0]",
            "type": "boolean"
          },
          "repack-small": {
            "title": "repack-small",
            "description": "repack pack files below 80% of target pack size [restic \u003e= 0.14.0]",
            "type": "boolean"
          },
          "repack-smaller-than": {
            "title": "repack-smaller-than",
            "description": "pack below-limit packfiles (allowed suffixes: k/K, m/M) [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "repack-uncompressed": {
            "title": "repack-uncompressed",
            "description": "repack all uncompressed data [restic \u003e= 0.14.0]",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "schedule": {
            "$ref": "#/$defs/id-9a7b3b717f2437d91402fddb86ef22b7"
          },
          "schedule-after-network-online": {
            "title": "schedule-after-network-online",
            "deprecated": true,
            "description": "Don't start this schedule when the network is offline (supported in \"systemd\") [deprecated]",
            "type": "boolean"
          },
          "schedule-capture-environment": {
            "$ref": "#/$defs/id-e9dcb0415621db931adaa34883b6880b"
          },
          "schedule-ignore-on-battery": {
            "title": "schedule-ignore-on-battery",
            "deprecated": true,
            "description": "Don't start this schedule when running on battery [deprecated]",
            "type": "boolean"
          },
          "schedule-ignore-on-battery-less-than": {
            "title": "schedule-ignore-on-battery-less-than",
            "deprecated": true,
            "description": "Don't start this schedule when running on battery and the state of charge is less than this percentage [deprecated]",
            "type": "integer",
            "examples": [
              20,
              33,
              50,
              75
            ]
          },
          "schedule-lock-mode": {
            "title": "schedule-lock-mode",
            "deprecated": true,
            "description": "Specify how locks are used when running on schedule - see https://creativeprojects.github.io/resticprofile/schedules/configuration/ [deprecated]",
            "type": "string",
            "enum": [
              "default",
              "fail",
              "ignore"
            ],
            "minLength": 0
          },
          "schedule-lock-wait": {
            "$ref": "#/$defs/id-808e4aea01f0d8d12832b2f870006421"
          },
          "schedule-log": {
            "title": "schedule-log",
            "deprecated": true,
            "description": "Redirect the output into a log file or to syslog when running on schedule [deprecated]",
            "type": "string",
            "examples": [
              "/resticprofile.log",
              "syslog-tcp://syslog-server:514",
              "syslog:server",
              "syslog:"
            ],
            "minLength": 0
          },
          "schedule-permission": {
            "title": "schedule-permission",
            "deprecated": true,
            "description": "Specify whether the schedule runs with system or user privileges - see https://creativeprojects.github.io/resticprofile/schedules/configuration/ [deprecated]",
            "type": "string",
            "enum": [
              "auto",
              "system",
              "user",
              "user_logged_on"
            ],
            "minLength": 0
          },
          "schedule-priority": {
            "title": "schedule-priority",
            "deprecated": true,
            "description": "Set the priority at which the schedule is run [deprecated]",
            "type": "string",
            "enum": [
              "background",
              "standard"
            ],
            "minLength": 0
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-06bbc4cdada9fbb2f0e5aff8aa18b8a5"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "unsafe-allow-remove-all": {
            "title": "unsafe-allow-remove-all",
            "description": "allow deleting all snapshots of a snapshot group [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "retry-lock": {
        "title": "retry-lock",
        "default": "0s",
        "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
        "type": "string",
        "minLength": 0
      },
      "rewrite": {
        "title": "rewrite",
        "description": "The \"rewrite\" command excludes files from existing snapshots. It creates new\nsnapshots containing the same data as the original ones, but without the files\nyou specify to exclude. All metadata (time, host, tags) will be preserved.\n\nThe snapshots to rewrite are specified using the --host, --tag and --path options,\nor by providing a list of snapshot IDs. Please note that specifying neither any of\nthese options nor a snapshot ID will cause the command to rewrite all snapshots.\n\nThe special tag 'rewrite' will be added to the new snapshots to distinguish\nthem from the original ones, unless --forget is used. If the --forget option is\nused, the original snapshots will instead be directly removed from the repository.\n\nPlease note that the --forget option only removes the snapshots and not the actual\ndata stored in the repository. In order to delete the no longer referenced data,\nuse the \"prune\" command.\n\nWhen rewrite is used with the --snapshot-summary option, a new snapshot is\ncreated containing statistics summary data. Only two fields in the summary will\nbe non-zero: TotalFilesProcessed and TotalBytesProcessed.\n\nWhen rewrite is called with one of the --exclude options, TotalFilesProcessed\nand TotalBytesProcessed will be updated in the snapshot summary.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "dry-run": {
            "title": "dry-run",
            "description": "do not do anything, just print what would be done [restic \u003e= 0.15.0]",
            "type": "boolean"
          },
          "exclude": {
            "$ref": "#/$defs/id-783b5260d9a5f4eba741f6448d3a73a0"
          },
          "exclude-file": {
            "$ref": "#/$defs/id-17df0ca3125f1db72ebb01d0ff902111"
          },
          "forget": {
            "title": "forget",
            "description": "remove original snapshots after creating new ones [restic \u003e= 0.15.0]",
            "type": "boolean"
          },
          "host": {
            "$ref": "#/$defs/id-bcda8b199ef5b0659a200468e2517a9f"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "iexclude": {
            "$ref": "#/$defs/id-9358229151687377a80daf4c8fbe8ca2"
          },
          "iexclude-file": {
            "$ref": "#/$defs/id-af6c00e035cdb6af35a7de31dc26023d"
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "json": {
            "title": "json",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "new-host": {
            "title": "new-host",
            "description": "replace hostname [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "new-time": {
            "title": "new-time",
            "description": "replace time of the backup [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-754cd1d064baa6520e3f6b581da6308b"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "snapshot-summary": {
            "title": "snapshot-summary",
            "description": "create snapshot summary record if it does not exist [restic \u003e= 0.18.0]",
            "type": "boolean"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-ab33db804be740834fedb738aff28469"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "run-after": {
        "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
      },
      "run-after-fail": {
        "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
      },
      "run-before": {
        "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
      },
      "run-finally": {
        "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
      },
      "snapshots": {
        "title": "snapshots",
        "description": "The \"snapshots\" command lists all snapshots stored in the repository.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compact": {
            "title": "compact",
            "description": "use compact output format",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "group-by": {
            "title": "group-by",
            "description": "group snapshots by host, paths and/or tags, separated by comma [restic \u003e= 0.10.0]",
            "type": "string",
            "minLength": 0
          },
          "host": {
            "$ref": "#/$defs/id-5a7604cd62739bf6b90cc25decf3beb6"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "last": {
            "title": "last",
            "deprecated": true,
            "description": "only show the last snapshot for each host and path [deprecated, removed in 0.13.0]",
            "type": "boolean"
          },
          "latest": {
            "title": "latest",
            "description": "only show the last n snapshots for each host and path [restic \u003e= 0.13.0]",
            "type": "integer"
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-0dd6bafe51f2901fa7f446e31a3b881d"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-07122d0553bd2888fbf7616a676047d5"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "stats": {
        "title": "stats",
        "description": "The \"stats\" command walks one or multiple snapshots in a repository\nand accumulates statistics about the data stored therein. It reports\non the number of unique files and their sizes, according to one of\nthe counting modes as given by the --mode flag.\n\nIt operates on all snapshots matching the selection criteria or all\nsnapshots if nothing is specified. The special snapshot ID \"latest\"\nis also supported. Some modes make more sense over\njust a single snapshot, while others are useful across all snapshots,\ndepending on what you are trying to calculate.\n\nThe modes are:\n\n* restore-size: (default) Counts the size of the restored files.\n* files-by-contents: Counts total size of unique files, where a file is\nconsidered unique if it has unique contents.\n* raw-data: Counts the size of blobs in the repository, regardless of\nhow many files reference them.\n* blobs-per-file: A combination of files-by-contents and raw-data.\n\n\nRefer to the online manual for more details about each mode.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "host": {
            "$ref": "#/$defs/id-5a7604cd62739bf6b90cc25decf3beb6"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "mode": {
            "title": "mode",
            "default": "restore-size",
            "description": "counting mode: restore-size (default), files-by-contents, blobs-per-file or raw-data",
            "type": "string",
            "minLength": 0
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-1e3e4f194a26f596cf3db367ea81cd15"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-d07a19e23ce110495e29bd4c07d194b8"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "status-file": {
        "title": "status-file",
        "description": "Path to the status file to update with a summary of last restic command result",
        "type": "string",
        "minLength": 0
      },
      "stream-error": {
        "$ref": "#/$defs/id-2d60f10a68497fa9d7d4f3312e7454b4"
      },
      "stuck-request-timeout": {
        "title": "stuck-request-timeout",
        "default": "5m0s",
        "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
        "type": "string",
        "minLength": 0
      },
      "systemd-drop-in-files": {
        "$ref": "#/$defs/id-efc256c6055c563ef627167bef02d66c"
      },
      "tag": {
        "title": "tag",
        "description": "The \"tag\" command allows you to modify tags on exiting snapshots.\n\nYou can either set/replace the entire set of tags on a snapshot, or\nadd tags to/remove tags from the existing set.\n\nWhen no snapshot-ID is given, all snapshots matching the host, tag and path filter criteria are modified.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "add": {
            "$ref": "#/$defs/id-db71520355d2a9baae090ca906a4bd4f"
          },
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "host": {
            "$ref": "#/$defs/id-5a7604cd62739bf6b90cc25decf3beb6"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "path": {
            "$ref": "#/$defs/id-0dd6bafe51f2901fa7f446e31a3b881d"
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "remove": {
            "$ref": "#/$defs/id-a4563b5e7b4aa37bac3a57c09ef530f3"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "set": {
            "$ref": "#/$defs/id-0ec8ec07c5d04919d4d678a5ae0105b4"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tag": {
            "$ref": "#/$defs/id-07122d0553bd2888fbf7616a676047d5"
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "tls-client-cert": {
        "title": "tls-client-cert",
        "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
        "type": "string",
        "minLength": 0
      },
      "unlock": {
        "title": "unlock",
        "description": "The \"unlock\" command removes stale locks that have been created by other restic processes.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "cacert": {
            "$ref": "#/$defs/id-bdebeefb786b97126bbaf65dcffdb112"
          },
          "cache-dir": {
            "title": "cache-dir",
            "description": "set the cache directory. (default: use system default cache directory)",
            "type": "string",
            "minLength": 0
          },
          "cleanup-cache": {
            "title": "cleanup-cache",
            "description": "auto remove old cache directories",
            "type": "boolean"
          },
          "compression": {
            "title": "compression",
            "description": "compression mode (only available for repository format version 2), one of (auto|off|max) (default: $RESTIC_COMPRESSION) [restic \u003e= 0.14.0]",
            "type": "string",
            "minLength": 0
          },
          "extended-status": {
            "title": "extended-status",
            "description": "set output mode to JSON for commands that support it",
            "type": "boolean"
          },
          "http-user-agent": {
            "title": "http-user-agent",
            "description": "set a http user agent for outgoing http requests [restic \u003e= 0.17.0]",
            "type": "string",
            "minLength": 0
          },
          "insecure-no-password": {
            "title": "insecure-no-password",
            "description": "use an empty password for the repository, must be passed to every restic command (insecure) [restic \u003e= 0.17.0]",
            "type": "boolean"
          },
          "insecure-tls": {
            "title": "insecure-tls",
            "description": "skip TLS certificate verification when connecting to the repository (insecure) [restic \u003e= 0.13.0]",
            "type": "boolean"
          },
          "key-hint": {
            "title": "key-hint",
            "description": "key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)",
            "type": "string",
            "minLength": 0
          },
          "limit-download": {
            "title": "limit-download",
            "description": "limits downloads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "limit-upload": {
            "title": "limit-upload",
            "description": "limits uploads to a maximum rate in KiB/s. (default: unlimited)",
            "type": "integer"
          },
          "no-cache": {
            "title": "no-cache",
            "description": "do not use a local cache",
            "type": "boolean"
          },
          "no-extra-verify": {
            "title": "no-extra-verify",
            "description": "skip additional verification of data before upload (see documentation) [restic \u003e= 0.16.4]",
            "type": "boolean"
          },
          "no-lock": {
            "title": "no-lock",
            "description": "do not lock the repository, this allows some operations on read-only repositories",
            "type": "boolean"
          },
          "option": {
            "$ref": "#/$defs/id-e53da3b88d470edbc47a4cdd4160ff3f"
          },
          "pack-size": {
            "title": "pack-size",
            "description": "set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE) [restic \u003e= 0.14.0]",
            "type": "integer"
          },
          "password-command": {
            "title": "password-command",
            "description": "shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)",
            "type": "string",
            "minLength": 0
          },
          "password-file": {
            "title": "password-file",
            "description": "file to read the repository password from (default: $RESTIC_PASSWORD_FILE)",
            "type": "string",
            "minLength": 0
          },
          "quiet": {
            "title": "quiet",
            "description": "do not output comprehensive progress report",
            "type": "boolean"
          },
          "remove-all": {
            "title": "remove-all",
            "description": "remove all locks, even non-stale ones",
            "type": "boolean"
          },
          "repo": {
            "title": "repo",
            "description": "repository to backup to or restore from (default: $RESTIC_REPOSITORY)",
            "type": "string",
            "minLength": 0
          },
          "repository-file": {
            "title": "repository-file",
            "description": "file to read the repository location from (default: $RESTIC_REPOSITORY_FILE) [restic \u003e= 0.11.0]",
            "type": "string",
            "minLength": 0
          },
          "retry-lock": {
            "title": "retry-lock",
            "description": "retry to lock the repository if it is already locked, takes a value like 5m or 2h (default: no retries) [restic \u003e= 0.16.0]",
            "type": "string",
            "minLength": 0
          },
          "run-after": {
            "$ref": "#/$defs/id-d0cb8938e8c33723a0a629c3376aecc5"
          },
          "run-after-fail": {
            "$ref": "#/$defs/id-2cf445a83219358bee3423eaa7242c4d"
          },
          "run-before": {
            "$ref": "#/$defs/id-259684dfd75be3116fd75f377c8f9866"
          },
          "run-finally": {
            "$ref": "#/$defs/id-ef4cd05741e7f69941250f6f7121853f"
          },
          "send-after": {
            "$ref": "#/$defs/id-5ad549b9f26107194acb0d599b5435a0"
          },
          "send-after-fail": {
            "$ref": "#/$defs/id-16c9eb2748710a28f337f217f2e337da"
          },
          "send-before": {
            "$ref": "#/$defs/id-2abe3a6ae2ea65720f26903b318892d6"
          },
          "send-finally": {
            "$ref": "#/$defs/id-b0a6986d36a1bde1ef46f576cf24783c"
          },
          "stuck-request-timeout": {
            "title": "stuck-request-timeout",
            "description": "duration after which to retry stuck requests [restic \u003e= 0.18.0]",
            "type": "string",
            "minLength": 0
          },
          "tls-client-cert": {
            "title": "tls-client-cert",
            "description": "path to a file containing PEM encoded TLS client certificate and private key (default: $RESTIC_TLS_CLIENT_CERT)",
            "type": "string",
            "minLength": 0
          },
          "verbose": {
            "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
          }
        }
      },
      "verbose": {
        "$ref": "#/$defs/id-6b767374afe44ab7caa0ae97e251c4ed"
      }
    }
  },
  "properties": {
    "global": {
      "title": "global",
      "description": "Global settings",
      "type": "object",
      "additionalProperties": false,
      "properties": {
        "ca-certificates": {
          "$ref": "#/$defs/id-931c146f741a9fec3d98e7a08865a530"
        },
        "command-output": {
          "title": "command-output",
          "default": "auto",
          "description": "Sets the destination for command output (stderr/stdout). \"log\" sends output to the log file (if specified), \"console\" sends it to the console instead. \"auto\" sends it to \"both\" if console is a terminal otherwise to \"log\" only - see https://creativeprojects.github.io/resticprofile/configuration/logs/",
          "type": "string",
          "enum": [
            "auto",
            "log",
            "console",
            "all"
          ],
          "minLength": 0
        },
        "default-command": {
          "title": "default-command",
          "default": "snapshots",
          "description": "The restic or resticprofile command to use when no command was specified",
          "type": "string",
          "examples": [
            "backup",
            "cache",
            "cat",
            "check",
            "copy",
            "diff",
            "dump",
            "features",
            "find",
            "forget",
            "generate",
            "init",
            "key",
            "key-add",
            "key-list",
            "key-passwd",
            "key-remove",
            "list",
            "ls",
            "migrate",
            "mount",
            "options",
            "prune",
            "rebuild-index",
            "recover",
            "repair",
            "repair-index",
            "repair-packs",
            "repair-snapshots",
            "restore",
            "rewrite",
            "self-update",
            "snapshots",
            "stats",
            "tag",
            "unlock",
            "version"
          ],
          "minLength": 0
        },
        "group-continue-on-error": {
          "title": "group-continue-on-error",
          "description": "Enable groups to continue with the next profile(s) instead of stopping at the first failure",
          "type": "boolean"
        },
        "initialize": {
          "title": "initialize",
          "description": "Initialize a repository if missing",
          "type": "boolean"
        },
        "ionice": {
          "title": "ionice",
          "description": "Enables setting the linux IO priority class and level for resticprofile and child processes (only on linux OS).",
          "type": "boolean"
        },
        "ionice-class": {
          "title": "ionice-class",
          "default": 2,
          "description": "Sets the linux \"ionice-class\" (I/O scheduling class) to apply when \"ionice\" is enabled (1=realtime, 2=best-effort, 3=idle)",
          "type": "integer",
          "minimum": 1,
          "maximum": 3
        },
        "ionice-level": {
          "title": "ionice-level",
          "description": "Sets the linux \"ionice-level\" (I/O priority within the scheduling class) to apply when \"ionice\" is enabled (0=highest priority, 7=lowest priority)",
          "type": "integer",
          "minimum": 0,
          "maximum": 7
        },
        "legacy-arguments": {
          "title": "legacy-arguments",
          "deprecated": true,
          "description": "Legacy, broken arguments mode of resticprofile before version 0.15 [deprecated]",
          "type": "boolean"
        },
        "log": {
          "title": "log",
          "description": "Sets the default log destination to be used if not specified in \"--log\" or \"schedule-log\" - see https://creativeprojects.github.io/resticprofile/configuration/logs/",
          "type": "string",
          "examples": [
            "/resticprofile.log",
            "syslog-tcp://syslog-server:514",
            "syslog:server",
            "syslog:"
          ],
          "minLength": 0
        },
        "min-memory": {
          "title": "min-memory",
          "default": 100,
          "description": "Minimum available memory (in MB) required to run any commands - see https://creativeprojects.github.io/resticprofile/usage/memory/",
          "type": "integer"
        },
        "nice": {
          "title": "nice",
          "description": "Sets the unix \"nice\" value for resticprofile and child processes (on any OS)",
          "type": "integer",
          "minimum": -20,
          "maximum": 19
        },
        "prevent-auto-repository-file": {
          "title": "prevent-auto-repository-file",
          "description": "Prevents using a repository file for repository definitions containing a password",
          "type": "boolean"
        },
        "prevent-sleep": {
          "title": "prevent-sleep",
          "description": "Prevent the system from sleeping while running commands - see https://creativeprojects.github.io/resticprofile/configuration/sleep/",
          "type": "boolean"
        },
        "priority": {
          "title": "priority",
          "default": "normal",
          "description": "Sets process priority class for resticprofile and child processes (on any OS)",
          "type": "string",
          "enum": [
            "idle",
            "background",
            "low",
            "normal",
            "high",
            "highest"
          ],
          "minLength": 0
        },
        "restic-arguments-filter": {
          "title": "restic-arguments-filter",
          "default": true,
          "description": "Remove unknown flags instead of passing all configured flags to restic",
          "type": "boolean"
        },
        "restic-binary": {
          "title": "restic-binary",
          "description": "Full path of the restic executable (detected if not set)",
          "type": "string",
          "minLength": 0
        },
        "restic-lock-retry-after": {
          "$ref": "#/$defs/id-523a82de7dda2cf9932a4ec54a0f6b57"
        },
        "restic-stale-lock-age": {
          "$ref": "#/$defs/id-b62c2f035a52f9e65b5a80c3895ee6bb"
        },
        "restic-version": {
          "title": "restic-version",
          "description": "Sets the restic version (detected if not set)",
          "type": "string",
          "minLength": 0,
          "pattern": "^(|[0-9]+\\.[0-9]+(\\.[0-9]+)?)$"
        },
        "schedule-defaults": {
          "type": "object",
          "additionalProperties": false,
          "properties": {
            "after-network-online": {
              "title": "after-network-online",
              "description": "Don't start this schedule when the network is offline (supported in \"systemd\")",
              "type": "boolean"
            },
            "capture-environment": {
              "$ref": "#/$defs/id-e7d98f4cbe6d87f1d7bdcfe27e13ce05"
            },
            "command-output": {
              "title": "command-output",
              "default": "auto",
              "description": "Sets the destination for command output (stderr/stdout). \"log\" sends output to the log file (if specified), \"console\" sends it to the console instead. \"auto\" sends it to \"both\" if console is a terminal otherwise to \"log\" only - see https://creativeprojects.github.io/resticprofile/configuration/logs/",
              "type": "string",
              "enum": [
                "auto",
                "log",
                "console",
                "all"
              ],
              "minLength": 0
            },
            "ignore-on-battery": {
              "title": "ignore-on-battery",
              "description": "Don't start this schedule when running on battery",
              "type": "boolean"
            },
            "ignore-on-battery-less-than": {
              "title": "ignore-on-battery-less-than",
              "description": "Don't start this schedule when running on battery and the state of charge is less than this percentage",
              "type": "integer",
              "examples": [
                20,
                33,
                50,
                75
              ]
            },
            "lock-mode": {
              "title": "lock-mode",
              "default": "default",
              "description": "Specify how locks are used when running on schedule - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
              "type": "string",
              "enum": [
                "default",
                "fail",
                "ignore"
              ],
              "minLength": 0
            },
            "lock-wait": {
              "$ref": "#/$defs/id-a09c499e58e4610808213948c41e1c54"
            },
            "log": {
              "title": "log",
              "description": "Redirect the output into a log file or to syslog when running on schedule - see https://creativeprojects.github.io/resticprofile/configuration/logs/",
              "type": "string",
              "examples": [
                "/resticprofile.log",
                "syslog-tcp://syslog-server:514",
                "syslog:server",
                "syslog:"
              ],
              "minLength": 0
            },
            "permission": {
              "title": "permission",
              "default": "auto",
              "description": "Specify whether the schedule runs with system or user privileges - see https://creativeprojects.github.io/resticprofile/schedules/configuration/",
              "type": "string",
              "enum": [
                "auto",
                "system",
                "user",
                "user_logged_on"
              ],
              "minLength": 0
            },
            "priority": {
              "title": "priority",
              "default": "standard",
              "description": "Set the priority at which the schedule is run",
              "type": "string",
              "enum": [
                "background",
                "standard"
              ],
              "minLength": 0
            },
            "systemd-drop-in-files": {
              "$ref": "#/$defs/id-efc256c6055c563ef627167bef02d66c"
            }
          }
        },
        "scheduler": {
          "title": "scheduler",
          "default": "auto",
          "description": "Selects the scheduler. Blank or \"auto\" uses the default scheduler of your operating system: \"launchd\", \"systemd\", \"taskscheduler\" or \"crond\" (as fallback). Alternatively you can set \"crond\" for cron compatible schedulers supporting the crontab executable API or \"crontab:[user:]file\" to write into a crontab file directly. The need for a user is detected if missing and can be set to a name, \"-\" (no user) or \"*\" (current user).",
          "type": "string",
          "examples": [
            "auto",
            "launchd",
            "systemd",
            "taskscheduler",
            "crond",
            "crond:/usr/bin/crontab",
            "crontab:*:/etc/cron.d/resticprofile"
          ],
          "minLength": 0
        },
        "send-timeout": {
          "$ref": "#/$defs/id-101e02d74df828a834df2fb1ebb6fec0"
        },
        "shell": {
          "$ref": "#/$defs/id-3bbb79a4f5c75f9cf014fa4e5190ae85"
        },
        "systemd-timer-template": {
          "title": "systemd-timer-template",
          "description": "File containing the go template to generate a systemd timer - see https://creativeprojects.github.io/resticprofile/schedules/systemd/",
          "type": "string",
          "minLength": 0
        },
        "systemd-unit-template": {
          "title": "systemd-unit-template",
          "description": "File containing the go template to generate a systemd unit - see https://creativeprojects.github.io/resticprofile/schedules/systemd/",
          "type": "string",
          "minLength": 0
        }
      }
    },
    "groups": {
      "description": "Profile groups",
      "type": "object",
      "additionalProperties": false,
      "patternProperties": {
        ".+": {
          "title": "group...",
          "description": "group declaration",
          "type": "array",
          "items": {
            "title": "profile-name",
            "description": "profile names in this group",
            "type": "string",
            "minLength": 0
          },
          "minItems": 0,
          "uniqueItems": false
        }
      }
    },
    "includes": {
      "$ref": "#/$defs/id-9e1013a6d9d54bc7974f9c0ff9c0ea3e"
    },
    "version": {
      "default": "1",
      "description": "configuration format version",
      "type": "string",
      "minLength": 0,
      "maxLength": 1,
      "pattern": "^(1|)$"
    }
  }
}
