{
 "components": {
  "schemas": {
   "ApprovalIn": {
    "properties": {
     "all_customers": {
      "default": false,
      "title": "All Customers",
      "type": "boolean"
     },
     "customer_ids": {
      "anyOf": [
       {
        "items": {
         "type": "integer"
        },
        "type": "array"
       },
       {
        "type": "null"
       }
      ],
      "title": "Customer Ids"
     },
     "state": {
      "anyOf": [
       {
        "enum": [
         "approved",
         "declined"
        ],
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "State"
     },
     "update_ids": {
      "items": {
       "type": "string"
      },
      "title": "Update Ids",
      "type": "array"
     }
    },
    "required": [
     "update_ids",
     "state"
    ],
    "title": "ApprovalIn",
    "type": "object"
   },
   "ApprovalResult": {
    "properties": {
     "customers": {
      "title": "Customers",
      "type": "integer"
     },
     "updates": {
      "title": "Updates",
      "type": "integer"
     }
    },
    "required": [
     "customers",
     "updates"
    ],
    "title": "ApprovalResult",
    "type": "object"
   },
   "Blackout": {
    "properties": {
     "created_by": {
      "title": "Created By",
      "type": "string"
     },
     "customer_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Customer Id"
     },
     "ends_on": {
      "format": "date",
      "title": "Ends On",
      "type": "string"
     },
     "id": {
      "title": "Id",
      "type": "integer"
     },
     "reason": {
      "default": "",
      "title": "Reason",
      "type": "string"
     },
     "starts_on": {
      "format": "date",
      "title": "Starts On",
      "type": "string"
     }
    },
    "required": [
     "starts_on",
     "ends_on",
     "id",
     "created_by"
    ],
    "title": "Blackout",
    "type": "object"
   },
   "BlackoutIn": {
    "properties": {
     "customer_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Customer Id"
     },
     "ends_on": {
      "format": "date",
      "title": "Ends On",
      "type": "string"
     },
     "reason": {
      "default": "",
      "title": "Reason",
      "type": "string"
     },
     "starts_on": {
      "format": "date",
      "title": "Starts On",
      "type": "string"
     }
    },
    "required": [
     "starts_on",
     "ends_on"
    ],
    "title": "BlackoutIn",
    "type": "object"
   },
   "Compliance": {
    "properties": {
     "customers": {
      "items": {
       "$ref": "#/components/schemas/CustomerCompliance"
      },
      "title": "Customers",
      "type": "array"
     },
     "generated_at": {
      "format": "date-time",
      "title": "Generated At",
      "type": "string"
     },
     "servers": {
      "items": {
       "$ref": "#/components/schemas/ServerCompliance"
      },
      "title": "Servers",
      "type": "array"
     },
     "state_labels": {
      "additionalProperties": {
       "type": "string"
      },
      "title": "State Labels",
      "type": "object"
     }
    },
    "required": [
     "generated_at",
     "state_labels",
     "customers",
     "servers"
    ],
    "title": "Compliance",
    "type": "object"
   },
   "Customer": {
    "properties": {
     "archived": {
      "title": "Archived",
      "type": "boolean"
     },
     "created_at": {
      "format": "date-time",
      "title": "Created At",
      "type": "string"
     },
     "description": {
      "title": "Description",
      "type": "string"
     },
     "id": {
      "title": "Id",
      "type": "integer"
     },
     "name": {
      "title": "Name",
      "type": "string"
     },
     "reboot_pending": {
      "title": "Reboot Pending",
      "type": "integer"
     },
     "server_count": {
      "title": "Server Count",
      "type": "integer"
     },
     "servers_ok": {
      "title": "Servers Ok",
      "type": "integer"
     },
     "servers_problem": {
      "title": "Servers Problem",
      "type": "integer"
     },
     "timezone": {
      "title": "Timezone",
      "type": "string"
     }
    },
    "required": [
     "id",
     "name",
     "description",
     "timezone",
     "server_count",
     "servers_ok",
     "servers_problem",
     "reboot_pending",
     "archived",
     "created_at"
    ],
    "title": "Customer",
    "type": "object"
   },
   "CustomerCompliance": {
    "properties": {
     "compliant_pct": {
      "title": "Compliant Pct",
      "type": "integer"
     },
     "customer_id": {
      "title": "Customer Id",
      "type": "integer"
     },
     "customer_name": {
      "title": "Customer Name",
      "type": "string"
     },
     "missing_critical": {
      "title": "Missing Critical",
      "type": "integer"
     },
     "missing_important": {
      "title": "Missing Important",
      "type": "integer"
     },
     "oldest_missing_days": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Oldest Missing Days"
     },
     "servers": {
      "title": "Servers",
      "type": "integer"
     },
     "states": {
      "additionalProperties": {
       "type": "integer"
      },
      "title": "States",
      "type": "object"
     }
    },
    "required": [
     "customer_id",
     "customer_name",
     "servers",
     "compliant_pct",
     "states",
     "missing_critical",
     "missing_important",
     "oldest_missing_days"
    ],
    "title": "CustomerCompliance",
    "type": "object"
   },
   "Deleted": {
    "properties": {
     "ok": {
      "title": "Ok",
      "type": "boolean"
     }
    },
    "required": [
     "ok"
    ],
    "title": "Deleted",
    "type": "object"
   },
   "Enrollment": {
    "properties": {
     "customer_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Customer Id"
     },
     "expires_at": {
      "format": "date-time",
      "title": "Expires At",
      "type": "string"
     },
     "id": {
      "title": "Id",
      "type": "integer"
     },
     "install": {
      "additionalProperties": true,
      "title": "Install",
      "type": "object"
     },
     "max_uses": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Max Uses"
     },
     "name": {
      "title": "Name",
      "type": "string"
     },
     "tag_ids": {
      "items": {
       "type": "integer"
      },
      "title": "Tag Ids",
      "type": "array"
     }
    },
    "required": [
     "id",
     "customer_id",
     "name",
     "tag_ids",
     "expires_at",
     "max_uses",
     "install"
    ],
    "title": "Enrollment",
    "type": "object"
   },
   "EnrollmentIn": {
    "properties": {
     "customer_id": {
      "title": "Customer Id",
      "type": "integer"
     },
     "days": {
      "default": 1,
      "title": "Days",
      "type": "integer"
     },
     "max_uses": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Max Uses"
     },
     "name": {
      "default": "",
      "title": "Name",
      "type": "string"
     },
     "tag_ids": {
      "default": [],
      "items": {
       "type": "integer"
      },
      "title": "Tag Ids",
      "type": "array"
     }
    },
    "required": [
     "customer_id"
    ],
    "title": "EnrollmentIn",
    "type": "object"
   },
   "HTTPValidationError": {
    "properties": {
     "detail": {
      "items": {
       "$ref": "#/components/schemas/ValidationError"
      },
      "title": "Detail",
      "type": "array"
     }
    },
    "title": "HTTPValidationError",
    "type": "object"
   },
   "Me": {
    "properties": {
     "customer_ids": {
      "anyOf": [
       {
        "items": {
         "type": "integer"
        },
        "type": "array"
       },
       {
        "type": "null"
       }
      ],
      "title": "Customer Ids"
     },
     "expires_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Expires At"
     },
     "read_only": {
      "title": "Read Only",
      "type": "boolean"
     },
     "role": {
      "title": "Role",
      "type": "string"
     },
     "token_name": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Token Name"
     },
     "username": {
      "title": "Username",
      "type": "string"
     }
    },
    "required": [
     "username",
     "role",
     "read_only",
     "customer_ids",
     "token_name",
     "expires_at"
    ],
    "title": "Me",
    "type": "object"
   },
   "Missing": {
    "properties": {
     "approved": {
      "title": "Approved",
      "type": "integer"
     },
     "critical": {
      "title": "Critical",
      "type": "integer"
     },
     "important": {
      "title": "Important",
      "type": "integer"
     },
     "total": {
      "title": "Total",
      "type": "integer"
     }
    },
    "required": [
     "total",
     "critical",
     "important",
     "approved"
    ],
    "title": "Missing",
    "type": "object"
   },
   "Queued": {
    "properties": {
     "queued": {
      "title": "Queued",
      "type": "integer"
     }
    },
    "required": [
     "queued"
    ],
    "title": "Queued",
    "type": "object"
   },
   "Report": {
    "properties": {
     "created_at": {
      "format": "date-time",
      "title": "Created At",
      "type": "string"
     },
     "customer_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Customer Id"
     },
     "customer_name": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Customer Name"
     },
     "error": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Error"
     },
     "id": {
      "title": "Id",
      "type": "integer"
     },
     "period_end": {
      "format": "date",
      "title": "Period End",
      "type": "string"
     },
     "period_start": {
      "format": "date",
      "title": "Period Start",
      "type": "string"
     },
     "sent_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Sent At"
     },
     "sent_to": {
      "items": {
       "type": "string"
      },
      "title": "Sent To",
      "type": "array"
     },
     "title": {
      "title": "Title",
      "type": "string"
     },
     "type": {
      "title": "Type",
      "type": "string"
     }
    },
    "required": [
     "id",
     "type",
     "customer_id",
     "customer_name",
     "title",
     "period_start",
     "period_end",
     "error",
     "sent_to",
     "sent_at",
     "created_at"
    ],
    "title": "Report",
    "type": "object"
   },
   "ReportPage": {
    "properties": {
     "items": {
      "items": {
       "$ref": "#/components/schemas/Report"
      },
      "title": "Items",
      "type": "array"
     },
     "total": {
      "title": "Total",
      "type": "integer"
     }
    },
    "required": [
     "total",
     "items"
    ],
    "title": "ReportPage",
    "type": "object"
   },
   "Run": {
    "properties": {
     "counts": {
      "additionalProperties": {
       "type": "integer"
      },
      "title": "Counts",
      "type": "object"
     },
     "created_at": {
      "format": "date-time",
      "title": "Created At",
      "type": "string"
     },
     "customer_id": {
      "title": "Customer Id",
      "type": "integer"
     },
     "customer_name": {
      "title": "Customer Name",
      "type": "string"
     },
     "finished_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Finished At"
     },
     "id": {
      "title": "Id",
      "type": "integer"
     },
     "kind": {
      "title": "Kind",
      "type": "string"
     },
     "requested_by": {
      "title": "Requested By",
      "type": "string"
     },
     "status": {
      "title": "Status",
      "type": "string"
     },
     "summary": {
      "title": "Summary",
      "type": "string"
     },
     "trigger": {
      "title": "Trigger",
      "type": "string"
     },
     "window": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Window"
     }
    },
    "required": [
     "id",
     "customer_id",
     "customer_name",
     "kind",
     "trigger",
     "status",
     "window",
     "summary",
     "requested_by",
     "created_at",
     "finished_at",
     "counts"
    ],
    "title": "Run",
    "type": "object"
   },
   "RunDetail": {
    "properties": {
     "counts": {
      "additionalProperties": {
       "type": "integer"
      },
      "title": "Counts",
      "type": "object"
     },
     "created_at": {
      "format": "date-time",
      "title": "Created At",
      "type": "string"
     },
     "customer_id": {
      "title": "Customer Id",
      "type": "integer"
     },
     "customer_name": {
      "title": "Customer Name",
      "type": "string"
     },
     "finished_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Finished At"
     },
     "id": {
      "title": "Id",
      "type": "integer"
     },
     "kind": {
      "title": "Kind",
      "type": "string"
     },
     "requested_by": {
      "title": "Requested By",
      "type": "string"
     },
     "servers": {
      "items": {
       "$ref": "#/components/schemas/RunServer"
      },
      "title": "Servers",
      "type": "array"
     },
     "status": {
      "title": "Status",
      "type": "string"
     },
     "summary": {
      "title": "Summary",
      "type": "string"
     },
     "trigger": {
      "title": "Trigger",
      "type": "string"
     },
     "window": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Window"
     }
    },
    "required": [
     "id",
     "customer_id",
     "customer_name",
     "kind",
     "trigger",
     "status",
     "window",
     "summary",
     "requested_by",
     "created_at",
     "finished_at",
     "counts",
     "servers"
    ],
    "title": "RunDetail",
    "type": "object"
   },
   "RunIn": {
    "properties": {
     "customer_id": {
      "title": "Customer Id",
      "type": "integer"
     },
     "force": {
      "default": false,
      "title": "Force",
      "type": "boolean"
     },
     "kind": {
      "enum": [
       "install",
       "reboot"
      ],
      "title": "Kind",
      "type": "string"
     },
     "reboot_after": {
      "default": false,
      "title": "Reboot After",
      "type": "boolean"
     },
     "server_ids": {
      "items": {
       "type": "integer"
      },
      "title": "Server Ids",
      "type": "array"
     }
    },
    "required": [
     "customer_id",
     "kind",
     "server_ids"
    ],
    "title": "RunIn",
    "type": "object"
   },
   "RunPage": {
    "properties": {
     "items": {
      "items": {
       "$ref": "#/components/schemas/Run"
      },
      "title": "Items",
      "type": "array"
     },
     "total": {
      "title": "Total",
      "type": "integer"
     }
    },
    "required": [
     "total",
     "items"
    ],
    "title": "RunPage",
    "type": "object"
   },
   "RunServer": {
    "properties": {
     "finished_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Finished At"
     },
     "message": {
      "title": "Message",
      "type": "string"
     },
     "result": {
      "additionalProperties": true,
      "title": "Result",
      "type": "object"
     },
     "server_id": {
      "title": "Server Id",
      "type": "integer"
     },
     "server_name": {
      "title": "Server Name",
      "type": "string"
     },
     "started_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Started At"
     },
     "state": {
      "title": "State",
      "type": "string"
     }
    },
    "required": [
     "server_id",
     "server_name",
     "state",
     "message",
     "result",
     "started_at",
     "finished_at"
    ],
    "title": "RunServer",
    "type": "object"
   },
   "Server": {
    "properties": {
     "agent_status": {
      "title": "Agent Status",
      "type": "string"
     },
     "agent_version": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Agent Version"
     },
     "customer_id": {
      "title": "Customer Id",
      "type": "integer"
     },
     "customer_name": {
      "title": "Customer Name",
      "type": "string"
     },
     "enabled": {
      "title": "Enabled",
      "type": "boolean"
     },
     "held_reason": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Held Reason"
     },
     "hostname": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Hostname"
     },
     "id": {
      "title": "Id",
      "type": "integer"
     },
     "kind": {
      "title": "Kind",
      "type": "string"
     },
     "last_boot_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Last Boot At"
     },
     "last_check_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Last Check At"
     },
     "last_install_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Last Install At"
     },
     "last_reboot_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Last Reboot At"
     },
     "last_scan_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Last Scan At"
     },
     "missing": {
      "$ref": "#/components/schemas/Missing"
     },
     "name": {
      "title": "Name",
      "type": "string"
     },
     "needs_license": {
      "title": "Needs License",
      "type": "boolean"
     },
     "os_caption": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Os Caption"
     },
     "os_display_version": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Os Display Version"
     },
     "os_family": {
      "title": "Os Family",
      "type": "string"
     },
     "os_version": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Os Version"
     },
     "reboot_owed": {
      "title": "Reboot Owed",
      "type": "boolean"
     },
     "reboot_pending": {
      "anyOf": [
       {
        "type": "boolean"
       },
       {
        "type": "null"
       }
      ],
      "title": "Reboot Pending"
     },
     "status": {
      "title": "Status",
      "type": "string"
     },
     "status_message": {
      "title": "Status Message",
      "type": "string"
     },
     "tags": {
      "items": {
       "type": "string"
      },
      "title": "Tags",
      "type": "array"
     }
    },
    "required": [
     "id",
     "customer_id",
     "customer_name",
     "name",
     "enabled",
     "tags",
     "agent_status",
     "agent_version",
     "os_family",
     "kind",
     "needs_license",
     "held_reason",
     "status",
     "status_message",
     "last_check_at",
     "hostname",
     "os_caption",
     "os_version",
     "os_display_version",
     "last_boot_at",
     "reboot_pending",
     "reboot_owed",
     "last_scan_at",
     "last_install_at",
     "last_reboot_at",
     "missing"
    ],
    "title": "Server",
    "type": "object"
   },
   "ServerCompliance": {
    "properties": {
     "customer_id": {
      "title": "Customer Id",
      "type": "integer"
     },
     "last_install_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Last Install At"
     },
     "last_scan_at": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Last Scan At"
     },
     "missing": {
      "additionalProperties": {
       "type": "integer"
      },
      "title": "Missing",
      "type": "object"
     },
     "oldest_missing_days": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Oldest Missing Days"
     },
     "server_id": {
      "title": "Server Id",
      "type": "integer"
     },
     "server_name": {
      "title": "Server Name",
      "type": "string"
     },
     "state": {
      "title": "State",
      "type": "string"
     }
    },
    "required": [
     "server_id",
     "server_name",
     "customer_id",
     "state",
     "missing",
     "oldest_missing_days",
     "last_scan_at",
     "last_install_at"
    ],
    "title": "ServerCompliance",
    "type": "object"
   },
   "ServerPackage": {
    "properties": {
     "arch": {
      "title": "Arch",
      "type": "string"
     },
     "available": {
      "title": "Available",
      "type": "string"
     },
     "current": {
      "title": "Current",
      "type": "string"
     },
     "first_seen_at": {
      "format": "date-time",
      "title": "First Seen At",
      "type": "string"
     },
     "name": {
      "title": "Name",
      "type": "string"
     },
     "security": {
      "title": "Security",
      "type": "boolean"
     },
     "severity": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Severity"
     },
     "wanted": {
      "title": "Wanted",
      "type": "boolean"
     }
    },
    "required": [
     "name",
     "arch",
     "current",
     "available",
     "security",
     "severity",
     "wanted",
     "first_seen_at"
    ],
    "title": "ServerPackage",
    "type": "object"
   },
   "ServerPage": {
    "properties": {
     "items": {
      "items": {
       "$ref": "#/components/schemas/Server"
      },
      "title": "Items",
      "type": "array"
     },
     "total": {
      "title": "Total",
      "type": "integer"
     }
    },
    "required": [
     "total",
     "items"
    ],
    "title": "ServerPage",
    "type": "object"
   },
   "ServerUpdate": {
    "properties": {
     "approval": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Approval"
     },
     "classification": {
      "title": "Classification",
      "type": "string"
     },
     "declined_globally": {
      "title": "Declined Globally",
      "type": "boolean"
     },
     "first_seen_at": {
      "format": "date-time",
      "title": "First Seen At",
      "type": "string"
     },
     "id": {
      "title": "Id",
      "type": "string"
     },
     "kb": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Kb"
     },
     "release_date": {
      "anyOf": [
       {
        "format": "date",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Release Date"
     },
     "severity": {
      "anyOf": [
       {
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Severity"
     },
     "state": {
      "title": "State",
      "type": "string"
     },
     "title": {
      "title": "Title",
      "type": "string"
     }
    },
    "required": [
     "id",
     "kb",
     "title",
     "classification",
     "severity",
     "release_date",
     "state",
     "approval",
     "declined_globally",
     "first_seen_at"
    ],
    "title": "ServerUpdate",
    "type": "object"
   },
   "ValidationError": {
    "properties": {
     "ctx": {
      "title": "Context",
      "type": "object"
     },
     "input": {
      "title": "Input"
     },
     "loc": {
      "items": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "integer"
        }
       ]
      },
      "title": "Location",
      "type": "array"
     },
     "msg": {
      "title": "Message",
      "type": "string"
     },
     "type": {
      "title": "Error Type",
      "type": "string"
     }
    },
    "required": [
     "loc",
     "msg",
     "type"
    ],
    "title": "ValidationError",
    "type": "object"
   },
   "Window": {
    "properties": {
     "customer_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Customer Id"
     },
     "days": {
      "default": [],
      "items": {
       "type": "integer"
      },
      "title": "Days",
      "type": "array"
     },
     "description": {
      "title": "Description",
      "type": "string"
     },
     "duration_minutes": {
      "title": "Duration Minutes",
      "type": "integer"
     },
     "enabled": {
      "default": true,
      "title": "Enabled",
      "type": "boolean"
     },
     "id": {
      "title": "Id",
      "type": "integer"
     },
     "kind": {
      "enum": [
       "install",
       "reboot"
      ],
      "title": "Kind",
      "type": "string"
     },
     "name": {
      "default": "",
      "title": "Name",
      "type": "string"
     },
     "next_end": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Next End"
     },
     "next_start": {
      "anyOf": [
       {
        "format": "date-time",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "Next Start"
     },
     "nth": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Nth"
     },
     "offset_days": {
      "default": 0,
      "title": "Offset Days",
      "type": "integer"
     },
     "on_date": {
      "anyOf": [
       {
        "format": "date",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "On Date"
     },
     "recurrence": {
      "enum": [
       "weekly",
       "monthly",
       "once"
      ],
      "title": "Recurrence",
      "type": "string"
     },
     "server_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Server Id"
     },
     "start_time": {
      "title": "Start Time",
      "type": "string"
     },
     "tag_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Tag Id"
     },
     "weekday": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Weekday"
     }
    },
    "required": [
     "kind",
     "recurrence",
     "start_time",
     "duration_minutes",
     "id",
     "description",
     "next_start",
     "next_end"
    ],
    "title": "Window",
    "type": "object"
   },
   "WindowIn": {
    "description": "Exactly one of customer_id, tag_id or server_id.",
    "properties": {
     "customer_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Customer Id"
     },
     "days": {
      "default": [],
      "items": {
       "type": "integer"
      },
      "title": "Days",
      "type": "array"
     },
     "duration_minutes": {
      "title": "Duration Minutes",
      "type": "integer"
     },
     "enabled": {
      "default": true,
      "title": "Enabled",
      "type": "boolean"
     },
     "kind": {
      "enum": [
       "install",
       "reboot"
      ],
      "title": "Kind",
      "type": "string"
     },
     "name": {
      "default": "",
      "title": "Name",
      "type": "string"
     },
     "nth": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Nth"
     },
     "offset_days": {
      "default": 0,
      "title": "Offset Days",
      "type": "integer"
     },
     "on_date": {
      "anyOf": [
       {
        "format": "date",
        "type": "string"
       },
       {
        "type": "null"
       }
      ],
      "title": "On Date"
     },
     "recurrence": {
      "enum": [
       "weekly",
       "monthly",
       "once"
      ],
      "title": "Recurrence",
      "type": "string"
     },
     "server_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Server Id"
     },
     "start_time": {
      "title": "Start Time",
      "type": "string"
     },
     "tag_id": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Tag Id"
     },
     "weekday": {
      "anyOf": [
       {
        "type": "integer"
       },
       {
        "type": "null"
       }
      ],
      "title": "Weekday"
     }
    },
    "required": [
     "kind",
     "recurrence",
     "start_time",
     "duration_minutes"
    ],
    "title": "WindowIn",
    "type": "object"
   }
  },
  "securitySchemes": {
   "token": {
    "description": "An API token: mrsh_...",
    "scheme": "bearer",
    "type": "http"
   }
  }
 },
 "info": {
  "description": "Marshal's REST API. Authenticate with an API token (Integrations \u203a API tokens):\n\n    Authorization: Bearer mrsh_...\n\nA token can do what its owner can, at most: their role and customers, narrowed further when the token is read-only or\nlimited to some customers. At most 600 requests a minute per token. Errors: 401 no or bad token, 402 not licensed,\n403 not allowed (read-only token, role), 404 not found or not one of your customers, 409 conflict, 422 invalid input,\n423 Marshal is read-only (expired license), 429 too many requests.\n\nv1 is stable: fields are only ever added. Lists take `limit` and `offset` and answer `{total, items}`.",
  "title": "Marshal API",
  "version": "1"
 },
 "openapi": "3.1.0",
 "paths": {
  "/approvals": {
   "post": {
    "operationId": "approve_approvals_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/ApprovalIn"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/ApprovalResult"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Approve or decline updates for customers",
    "tags": [
     "compliance"
    ]
   }
  },
  "/blackouts": {
   "get": {
    "operationId": "list_blackouts_blackouts_get",
    "parameters": [
     {
      "in": "query",
      "name": "customer_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Customer Id"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "items": {
          "$ref": "#/components/schemas/Blackout"
         },
         "title": "Response List Blackouts Blackouts Get",
         "type": "array"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Blackout dates (from 30 days ago on); with customer_id, also those for all customers",
    "tags": [
     "windows"
    ]
   },
   "post": {
    "operationId": "create_blackout_blackouts_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/BlackoutIn"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Blackout"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Create Blackout",
    "tags": [
     "windows"
    ]
   }
  },
  "/blackouts/{blackout_id}": {
   "delete": {
    "operationId": "delete_blackout_blackouts__blackout_id__delete",
    "parameters": [
     {
      "in": "path",
      "name": "blackout_id",
      "required": true,
      "schema": {
       "title": "Blackout Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Deleted"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Delete Blackout",
    "tags": [
     "windows"
    ]
   }
  },
  "/compliance": {
   "get": {
    "operationId": "compliance_compliance_get",
    "parameters": [
     {
      "in": "query",
      "name": "customer_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Customer Id"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Compliance"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Compliance per customer and server (up to date, or only waiting for the reboot)",
    "tags": [
     "compliance"
    ]
   }
  },
  "/customers": {
   "get": {
    "operationId": "list_customers_customers_get",
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "items": {
          "$ref": "#/components/schemas/Customer"
         },
         "title": "Response List Customers Customers Get",
         "type": "array"
        }
       }
      },
      "description": "Successful Response"
     }
    },
    "summary": "List Customers",
    "tags": [
     "customers"
    ]
   }
  },
  "/customers/{customer_id}": {
   "get": {
    "operationId": "get_customer_customers__customer_id__get",
    "parameters": [
     {
      "in": "path",
      "name": "customer_id",
      "required": true,
      "schema": {
       "title": "Customer Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Customer"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Get Customer",
    "tags": [
     "customers"
    ]
   }
  },
  "/customers/{customer_id}/scan": {
   "post": {
    "operationId": "scan_customer_customers__customer_id__scan_post",
    "parameters": [
     {
      "in": "path",
      "name": "customer_id",
      "required": true,
      "schema": {
       "title": "Customer Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Queued"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Scan all the customer's servers for updates",
    "tags": [
     "customers"
    ]
   }
  },
  "/enrollment-tokens": {
   "post": {
    "operationId": "create_enrollment_enrollment_tokens_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/EnrollmentIn"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Enrollment"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "An install script for new servers of a customer (for RMM roll-outs)",
    "tags": [
     "enrollment"
    ]
   }
  },
  "/me": {
   "get": {
    "operationId": "me_me_get",
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Me"
        }
       }
      },
      "description": "Successful Response"
     }
    },
    "summary": "The caller: user, role, token and customers",
    "tags": [
     "me"
    ]
   }
  },
  "/reports": {
   "get": {
    "operationId": "list_reports_reports_get",
    "parameters": [
     {
      "in": "query",
      "name": "customer_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Customer Id"
      }
     },
     {
      "in": "query",
      "name": "limit",
      "required": false,
      "schema": {
       "default": 50,
       "title": "Limit",
       "type": "integer"
      }
     },
     {
      "in": "query",
      "name": "offset",
      "required": false,
      "schema": {
       "default": 0,
       "title": "Offset",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/ReportPage"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Generated reports, newest first",
    "tags": [
     "reports"
    ]
   }
  },
  "/reports/{report_id}/pdf": {
   "get": {
    "operationId": "report_pdf_reports__report_id__pdf_get",
    "parameters": [
     {
      "in": "path",
      "name": "report_id",
      "required": true,
      "schema": {
       "title": "Report Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {}
       },
       "application/pdf": {}
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "A report's PDF",
    "tags": [
     "reports"
    ]
   }
  },
  "/runs": {
   "get": {
    "operationId": "list_runs_runs_get",
    "parameters": [
     {
      "in": "query",
      "name": "customer_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Customer Id"
      }
     },
     {
      "in": "query",
      "name": "server_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Server Id"
      }
     },
     {
      "in": "query",
      "name": "status",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Status"
      }
     },
     {
      "in": "query",
      "name": "kind",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "enum": [
          "install",
          "reboot"
         ],
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Kind"
      }
     },
     {
      "in": "query",
      "name": "limit",
      "required": false,
      "schema": {
       "default": 50,
       "title": "Limit",
       "type": "integer"
      }
     },
     {
      "in": "query",
      "name": "offset",
      "required": false,
      "schema": {
       "default": 0,
       "title": "Offset",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/RunPage"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "List Runs",
    "tags": [
     "runs"
    ]
   },
   "post": {
    "operationId": "start_run_runs_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/RunIn"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Run"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Start an install or reboot run now (admins)",
    "tags": [
     "runs"
    ]
   }
  },
  "/runs/{run_id}": {
   "get": {
    "operationId": "get_run_runs__run_id__get",
    "parameters": [
     {
      "in": "path",
      "name": "run_id",
      "required": true,
      "schema": {
       "title": "Run Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/RunDetail"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Get Run",
    "tags": [
     "runs"
    ]
   }
  },
  "/runs/{run_id}/abort": {
   "post": {
    "operationId": "abort_run_runs__run_id__abort_post",
    "parameters": [
     {
      "in": "path",
      "name": "run_id",
      "required": true,
      "schema": {
       "title": "Run Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Run"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Stop a run (admins)",
    "tags": [
     "runs"
    ]
   }
  },
  "/servers": {
   "get": {
    "operationId": "list_servers_servers_get",
    "parameters": [
     {
      "in": "query",
      "name": "customer_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Customer Id"
      }
     },
     {
      "in": "query",
      "name": "tag_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Tag Id"
      }
     },
     {
      "in": "query",
      "name": "status",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "enum": [
          "ok",
          "unreachable",
          "reboot_pending",
          "reboot_owed",
          "wsus"
         ],
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Status"
      }
     },
     {
      "in": "query",
      "name": "kind",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "enum": [
          "server",
          "workstation"
         ],
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Kind"
      }
     },
     {
      "in": "query",
      "name": "q",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "string"
        },
        {
         "type": "null"
        }
       ],
       "title": "Q"
      }
     },
     {
      "in": "query",
      "name": "limit",
      "required": false,
      "schema": {
       "default": 100,
       "title": "Limit",
       "type": "integer"
      }
     },
     {
      "in": "query",
      "name": "offset",
      "required": false,
      "schema": {
       "default": 0,
       "title": "Offset",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/ServerPage"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "List Servers",
    "tags": [
     "servers"
    ]
   }
  },
  "/servers/{server_id}": {
   "get": {
    "operationId": "get_server_servers__server_id__get",
    "parameters": [
     {
      "in": "path",
      "name": "server_id",
      "required": true,
      "schema": {
       "title": "Server Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Server"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Get Server",
    "tags": [
     "servers"
    ]
   }
  },
  "/servers/{server_id}/packages": {
   "get": {
    "operationId": "server_packages_servers__server_id__packages_get",
    "parameters": [
     {
      "in": "path",
      "name": "server_id",
      "required": true,
      "schema": {
       "title": "Server Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "items": {
          "$ref": "#/components/schemas/ServerPackage"
         },
         "title": "Response Server Packages Servers  Server Id  Packages Get",
         "type": "array"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "A Linux server's waiting package upgrades",
    "tags": [
     "servers"
    ]
   }
  },
  "/servers/{server_id}/scan": {
   "post": {
    "operationId": "scan_server_servers__server_id__scan_post",
    "parameters": [
     {
      "in": "path",
      "name": "server_id",
      "required": true,
      "schema": {
       "title": "Server Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Queued"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Scan a server for updates",
    "tags": [
     "servers"
    ]
   }
  },
  "/servers/{server_id}/updates": {
   "get": {
    "operationId": "server_updates_servers__server_id__updates_get",
    "parameters": [
     {
      "in": "path",
      "name": "server_id",
      "required": true,
      "schema": {
       "title": "Server Id",
       "type": "integer"
      }
     },
     {
      "in": "query",
      "name": "state",
      "required": false,
      "schema": {
       "default": "missing",
       "enum": [
        "missing",
        "installed",
        "all"
       ],
       "title": "State",
       "type": "string"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "items": {
          "$ref": "#/components/schemas/ServerUpdate"
         },
         "title": "Response Server Updates Servers  Server Id  Updates Get",
         "type": "array"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Server Updates",
    "tags": [
     "servers"
    ]
   }
  },
  "/windows": {
   "get": {
    "operationId": "list_windows_windows_get",
    "parameters": [
     {
      "in": "query",
      "name": "customer_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Customer Id"
      }
     },
     {
      "in": "query",
      "name": "tag_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Tag Id"
      }
     },
     {
      "in": "query",
      "name": "server_id",
      "required": false,
      "schema": {
       "anyOf": [
        {
         "type": "integer"
        },
        {
         "type": "null"
        }
       ],
       "title": "Server Id"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "items": {
          "$ref": "#/components/schemas/Window"
         },
         "title": "Response List Windows Windows Get",
         "type": "array"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "List Windows",
    "tags": [
     "windows"
    ]
   },
   "post": {
    "operationId": "create_window_windows_post",
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/WindowIn"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Window"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Create Window",
    "tags": [
     "windows"
    ]
   }
  },
  "/windows/{window_id}": {
   "delete": {
    "operationId": "delete_window_windows__window_id__delete",
    "parameters": [
     {
      "in": "path",
      "name": "window_id",
      "required": true,
      "schema": {
       "title": "Window Id",
       "type": "integer"
      }
     }
    ],
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Deleted"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Delete Window",
    "tags": [
     "windows"
    ]
   },
   "put": {
    "operationId": "update_window_windows__window_id__put",
    "parameters": [
     {
      "in": "path",
      "name": "window_id",
      "required": true,
      "schema": {
       "title": "Window Id",
       "type": "integer"
      }
     }
    ],
    "requestBody": {
     "content": {
      "application/json": {
       "schema": {
        "$ref": "#/components/schemas/WindowIn"
       }
      }
     },
     "required": true
    },
    "responses": {
     "200": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/Window"
        }
       }
      },
      "description": "Successful Response"
     },
     "422": {
      "content": {
       "application/json": {
        "schema": {
         "$ref": "#/components/schemas/HTTPValidationError"
        }
       }
      },
      "description": "Validation Error"
     }
    },
    "summary": "Update Window",
    "tags": [
     "windows"
    ]
   }
  }
 },
 "security": [
  {
   "token": []
  }
 ],
 "servers": [
  {
   "url": "/api/v1"
  }
 ]
}
