{
  "openapi": "3.0.0",
  "info": {
    "title": "Disaster Recovery API",
    "version": "v2"
  },
  "paths": {
    "/servers": {
      "get": {
        "operationId": "Fetch cloud servers",
        "description": "Fetches the list of cloud servers.",
        "parameters": [
          {
            "name": "type",
            "description": "Filters the cloud servers by type.",
            "in": "query",
            "schema": {
              "description": "Filters the cloud servers by type.",
              "enum": [
                "PRIMARY",
                "RECOVERY"
              ],
              "type": "string"
            }
          },
          {
            "name": "recovery.resource_id",
            "description": "Filters the recovery servers by the original device resource ID. Multiple entries are accepted.",
            "in": "query",
            "schema": {
              "description": "Filters the recovery servers by the original device resource ID. Multiple entries are accepted.",
              "example": "6782e594-781d-4ad2-b8ca-25a0c40f9938",
              "type": "string",
              "pattern": "^[a-zA-Z0-9-]+$"
            }
          },
          {
            "name": "limit",
            "description": "Maximum number of items to fetch per page. Mutually exclusive with the 'before' and 'after' parameters.",
            "required": false,
            "in": "query",
            "schema": {
              "description": "Maximum number of items to fetch per page. Mutually exclusive with the 'before' and 'after' parameters.",
              "default": 10,
              "type": "integer",
              "minimum": 1,
              "maximum": 50
            }
          },
          {
            "name": "after",
            "description": "Token from the 'after' field in the previous response. It contains a cursor that points to the next page of the requested collection. Mutually exclusive with the 'limit' and 'before' parameters. If provided, all other query parameters will be ignored.",
            "required": false,
            "in": "query",
            "schema": {
              "description": "Token from the 'after' field in the previous response. It contains a cursor that points to the next page of the requested collection. Mutually exclusive with the 'limit' and 'before' parameters. If provided, all other query parameters will be ignored.",
              "default": "null",
              "example": "eyJSJdfQ",
              "type": "string",
              "minLength": 1
            }
          },
          {
            "name": "before",
            "description": "Token from the 'before' field in the previous response. It contains a cursor that points to the previous page of the requested collection. Mutually exclusive with the 'limit' and 'after' parameters. If provided, all other query parameters will be ignored.",
            "required": false,
            "in": "query",
            "schema": {
              "description": "Token from the 'before' field in the previous response. It contains a cursor that points to the previous page of the requested collection. Mutually exclusive with the 'limit' and 'after' parameters. If provided, all other query parameters will be ignored.",
              "default": "null",
              "example": "eyJSJdfQ",
              "type": "string",
              "minLength": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "items"
                  ],
                  "properties": {
                    "items": {
                      "description": "List of the cloud servers.",
                      "type": "array",
                      "minItems": 0,
                      "items": {
                        "allOf": [
                          {
                            "oneOf": [
                              {
                                "type": "object",
                                "required": [
                                  "primary"
                                ],
                                "properties": {
                                  "type": {
                                    "description": "Type of the cloud server.",
                                    "enum": [
                                      "PRIMARY"
                                    ],
                                    "type": "string"
                                  },
                                  "primary": {
                                    "description": "Additional parameters of the primary server.",
                                    "type": "object",
                                    "additionalProperties": false,
                                    "required": [
                                      "vault_id"
                                    ],
                                    "properties": {
                                      "vault_id": {
                                        "$ref": "#/components/schemas/vault_id"
                                      }
                                    }
                                  },
                                  "_links": {
                                    "description": "Links and actions related to the primary server.",
                                    "type": "array",
                                    "minItems": 1,
                                    "items": {
                                      "oneOf": [
                                        {
                                          "$ref": "#/components/schemas/item0"
                                        },
                                        {
                                          "$ref": "#/components/schemas/item1"
                                        },
                                        {
                                          "$ref": "#/components/schemas/item2"
                                        }
                                      ]
                                    }
                                  },
                                  "_issues": {
                                    "description": "Issues related to the primary server.",
                                    "type": "array",
                                    "minItems": 0,
                                    "items": {
                                      "description": "Describes a single issue (constraint violation).",
                                      "oneOf": [
                                        {
                                          "$ref": "#/components/schemas/item0_1"
                                        }
                                      ]
                                    }
                                  }
                                }
                              },
                              {
                                "type": "object",
                                "required": [
                                  "recovery"
                                ],
                                "properties": {
                                  "type": {
                                    "description": "Type of the cloud server.",
                                    "enum": [
                                      "RECOVERY"
                                    ],
                                    "type": "string"
                                  },
                                  "recovery": {
                                    "description": "Additional parameters of recovery server.",
                                    "type": "object",
                                    "additionalProperties": false,
                                    "required": [
                                      "automated_test_failover",
                                      "resource_id"
                                    ],
                                    "properties": {
                                      "active_failover": {
                                        "description": "Details of the failover that is in progress. Missing for servers in the STAND_BY state.",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "required": [
                                          "backup_uri",
                                          "id",
                                          "vault_id"
                                        ],
                                        "properties": {
                                          "archive_credentials_id": {
                                            "description": "ID of the archive credentials of the backup that is used for the failover operation. Required for automated failback. Missing if failover was initiated from a non-encrypted archive.",
                                            "type": "string",
                                            "minLength": 1
                                          },
                                          "backup_uri": {
                                            "description": "Universal URI identifier of the recovery point that is used for the failover operation.",
                                            "type": "string",
                                            "minLength": 1
                                          },
                                          "id": {
                                            "description": "Unique identifier of the failover that is in progress.",
                                            "type": "string",
                                            "minLength": 1
                                          },
                                          "vault_id": {
                                            "$ref": "#/components/schemas/vault_id"
                                          }
                                        }
                                      },
                                      "automated_test_failover": {
                                        "description": "Details of the automated test failover. All properties except the schedule are omitted if automated test failover is disabled for the server.",
                                        "oneOf": [
                                          {
                                            "description": "Automated test failover is disabled.",
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "schedule"
                                            ],
                                            "properties": {
                                              "schedule": {
                                                "description": "Schedule of the automated test failover. 'NEVER' means that automated test failover is disabled for the server.",
                                                "enum": [
                                                  "NEVER"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          },
                                          {
                                            "description": "Automated test failover was performed at least one time.",
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "recovery_point",
                                              "last_start",
                                              "last_status",
                                              "last_task_uuid",
                                              "next_start",
                                              "schedule",
                                              "screenshot_link",
                                              "screenshot_preview_link",
                                              "timeout"
                                            ],
                                            "properties": {
                                              "recovery_point": {
                                                "$ref": "#/components/schemas/recovery_point"
                                              },
                                              "last_start": {
                                                "description": "Date and time of the last automated test failover.",
                                                "type": "string",
                                                "format": "date-time"
                                              },
                                              "last_status": {
                                                "description": "Result of the last automated test failover.",
                                                "enum": [
                                                  "SUCCESS",
                                                  "FAILURE"
                                                ],
                                                "type": "string"
                                              },
                                              "last_task_uuid": {
                                                "$ref": "#/components/schemas/last_task_uuid"
                                              },
                                              "next_start": {
                                                "nullable": true,
                                                "type": "string",
                                                "format": "date-time"
                                              },
                                              "schedule": {
                                                "description": "Interval at which automated test failover is performed.",
                                                "enum": [
                                                  "HOURLY",
                                                  "DAILY",
                                                  "WEEKLY",
                                                  "MONTHLY"
                                                ],
                                                "type": "string"
                                              },
                                              "screenshot_link": {
                                                "nullable": true,
                                                "type": "string",
                                                "format": "uri"
                                              },
                                              "screenshot_preview_link": {
                                                "nullable": true,
                                                "type": "string",
                                                "format": "uri"
                                              },
                                              "timeout": {
                                                "description": "Timeout in seconds for the complete operation: performing a test failover, taking a screenshot, and evaluating the result.",
                                                "type": "integer",
                                                "minimum": 1
                                              }
                                            }
                                          },
                                          {
                                            "description": "Automated test failover is enabled but has not been performed yet.",
                                            "type": "object",
                                            "additionalProperties": false,
                                            "required": [
                                              "recovery_point",
                                              "last_start",
                                              "last_status",
                                              "next_start",
                                              "last_task_uuid",
                                              "schedule",
                                              "screenshot_link",
                                              "screenshot_preview_link",
                                              "timeout"
                                            ],
                                            "properties": {
                                              "recovery_point": {
                                                "nullable": true,
                                                "type": "string"
                                              },
                                              "last_start": {
                                                "nullable": true,
                                                "type": "string"
                                              },
                                              "last_status": {
                                                "nullable": true,
                                                "type": "string"
                                              },
                                              "next_start": {
                                                "nullable": true,
                                                "type": "string",
                                                "format": "date-time"
                                              },
                                              "last_task_uuid": {
                                                "nullable": true,
                                                "type": "string"
                                              },
                                              "schedule": {
                                                "description": "Interval at which automated test failover is performed.",
                                                "enum": [
                                                  "HOURLY",
                                                  "DAILY",
                                                  "WEEKLY",
                                                  "MONTHLY"
                                                ],
                                                "type": "string"
                                              },
                                              "screenshot_link": {
                                                "nullable": true,
                                                "type": "string"
                                              },
                                              "screenshot_preview_link": {
                                                "nullable": true,
                                                "type": "string"
                                              },
                                              "timeout": {
                                                "description": "Timeout in seconds for the complete operation: performing a test failover, taking a screenshot, and evaluating the result.",
                                                "type": "integer",
                                                "minimum": 1
                                              }
                                            }
                                          }
                                        ],
                                        "type": "object"
                                      },
                                      "ip_mapped": {
                                        "description": "Optional mapping of the specified server IP in the production network to make the server accessible during test failover.",
                                        "type": "string",
                                        "format": "ipv4"
                                      },
                                      "resource_id": {
                                        "description": "Identifier of the original device that is protected by the recovery server.",
                                        "type": "string"
                                      },
                                      "test_failover": {
                                        "description": "Details of the test failover.",
                                        "type": "object",
                                        "additionalProperties": false,
                                        "required": [
                                          "recovery_point",
                                          "last_start",
                                          "last_task_uuid"
                                        ],
                                        "properties": {
                                          "recovery_point": {
                                            "$ref": "#/components/schemas/recovery_point"
                                          },
                                          "last_start": {
                                            "description": "Date and time of the test failover.",
                                            "type": "string",
                                            "format": "date-time"
                                          },
                                          "last_task_uuid": {
                                            "$ref": "#/components/schemas/last_task_uuid"
                                          }
                                        }
                                      }
                                    }
                                  },
                                  "_links": {
                                    "description": "Links and actions related to the recovery server.",
                                    "type": "array",
                                    "minItems": 1,
                                    "items": {
                                      "anyOf": [
                                        {
                                          "$ref": "#/components/schemas/item0"
                                        },
                                        {
                                          "$ref": "#/components/schemas/item1"
                                        },
                                        {
                                          "$ref": "#/components/schemas/item2"
                                        },
                                        {
                                          "description": "Link used in a POST request to initiate a production failover of the cloud server.",
                                          "type": "object",
                                          "required": [
                                            "rel",
                                            "type",
                                            "href"
                                          ],
                                          "properties": {
                                            "rel": {
                                              "description": "Identifier of the link used in a POST request to initiate a production failover of the cloud server.",
                                              "enum": [
                                                "DR_CLOUD_SERVER_START_FAILOVER_PROD"
                                              ],
                                              "type": "string"
                                            },
                                            "type": {
                                              "description": "Media type of the response to the action.",
                                              "type": "string"
                                            },
                                            "href": {
                                              "description": "URL for the POST request to start production failover for the cloud server.",
                                              "type": "string",
                                              "format": "uri"
                                            }
                                          }
                                        },
                                        {
                                          "description": "Link to the POST request to start test failover for the cloud server.",
                                          "type": "object",
                                          "required": [
                                            "rel",
                                            "type",
                                            "href"
                                          ],
                                          "properties": {
                                            "rel": {
                                              "description": "Identifier of the link to the POST request to start test failover for the cloud server.",
                                              "enum": [
                                                "DR_CLOUD_SERVER_START_FAILOVER_TEST"
                                              ],
                                              "type": "string"
                                            },
                                            "type": {
                                              "description": "Media type of the response to the action.",
                                              "type": "string"
                                            },
                                            "href": {
                                              "description": "URL for the POST request to start test failover for the cloud server.",
                                              "type": "string",
                                              "format": "uri"
                                            }
                                          }
                                        },
                                        {
                                          "description": "Link to the POST request to stop failover for the cloud server.",
                                          "type": "object",
                                          "required": [
                                            "rel",
                                            "type",
                                            "href"
                                          ],
                                          "properties": {
                                            "rel": {
                                              "description": "Identifier of the link to the POST request to stop failover for the cloud server.",
                                              "enum": [
                                                "DR_CLOUD_SERVER_STOP_FAILOVER"
                                              ],
                                              "type": "string"
                                            },
                                            "type": {
                                              "description": "Media type of the response to the action.",
                                              "type": "string"
                                            },
                                            "href": {
                                              "description": "URL for the POST request to stop failover for the cloud server.",
                                              "type": "string",
                                              "format": "uri"
                                            }
                                          }
                                        }
                                      ]
                                    }
                                  },
                                  "_issues": {
                                    "description": "Issues related to the recovery server.",
                                    "type": "array",
                                    "minItems": 0,
                                    "items": {
                                      "description": "Describes a single issue (constraint violation).",
                                      "oneOf": [
                                        {
                                          "$ref": "#/components/schemas/item0_1"
                                        },
                                        {
                                          "description": "Issue with the unavailability of the start failover operation for the cloud server.",
                                          "allOf": [
                                            {
                                              "$ref": "#/components/schemas/item0_2"
                                            },
                                            {
                                              "type": "object",
                                              "required": [
                                                "target",
                                                "severity",
                                                "error"
                                              ],
                                              "properties": {
                                                "domain": {
                                                  "description": "Disaster Recovery domain.",
                                                  "enum": [
                                                    "DisasterRecovery"
                                                  ],
                                                  "type": "string"
                                                },
                                                "link": {
                                                  "description": "Name of the affected link.",
                                                  "enum": [
                                                    "DR_CLOUD_SERVER_START_FAILOVER_PROD",
                                                    "DR_CLOUD_SERVER_START_FAILOVER_TEST"
                                                  ],
                                                  "type": "string"
                                                },
                                                "target": {
                                                  "description": "UUID of the cloud server on which the issue occurred.",
                                                  "type": "string"
                                                },
                                                "severity": {
                                                  "description": "Severity of the issue.",
                                                  "enum": [
                                                    "ERROR"
                                                  ],
                                                  "type": "string"
                                                },
                                                "error": {
                                                  "oneOf": [
                                                    {
                                                      "$ref": "#/components/schemas/SiteNotReady"
                                                    },
                                                    {
                                                      "description": "The \"DR and Direct Backup to Azure\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "SubscriptionNotFoundAzureDR"
                                                              ],
                                                              "type": "string"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "description": "The \"Disaster recovery storage\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "SubscriptionNotFoundDrStorage"
                                                              ],
                                                              "type": "string"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "description": "The \"Compute points\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "SubscriptionNotFoundComputePoints"
                                                              ],
                                                              "type": "string"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "description": "The \"Cloud servers\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "SubscriptionNotFoundCloudServers"
                                                              ],
                                                              "type": "string"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "description": "There are no available compute points for testing the Disaster Recovery functionality. {{additionalComputePoints}} additional compute points will be added next month. To enable the complete functionality, contact your partner and activate the Disaster Recovery service.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code",
                                                            "context"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "QuotaExceededBaseDR"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "context": {
                                                              "type": "object",
                                                              "required": [
                                                                "additionalComputePoints"
                                                              ],
                                                              "properties": {
                                                                "additionalComputePoints": {
                                                                  "type": "integer",
                                                                  "minimum": 0
                                                                }
                                                              }
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "description": "You have exceeded the \"Cloud servers\" quota. To increase the quota, contact the Support team.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "QuotaExceededCloudServers"
                                                              ],
                                                              "type": "string"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "description": "You have exceeded the \"Compute points\" quota. To increase the quota, contact the Support team.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "QuotaExceededComputePoints"
                                                              ],
                                                              "type": "string"
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "$ref": "#/components/schemas/VPNGatewayUnreachable"
                                                    },
                                                    {
                                                      "$ref": "#/components/schemas/NotAllowed"
                                                    },
                                                    {
                                                      "description": "With Demo Disaster Recovery, you cannot perform a test failover of more than {{testFailoverMaxNumber}} recovery servers at the same time. To perform a test failover of more than {{testFailoverMaxNumber}} recovery servers at the same time, contact your partner and activate the Disaster Recovery service.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code",
                                                            "context"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "BaseDrTestFailoverLimitReached"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "context": {
                                                              "type": "object",
                                                              "required": [
                                                                "testFailoverMaxNumber"
                                                              ],
                                                              "properties": {
                                                                "testFailoverMaxNumber": {
                                                                  "type": "integer",
                                                                  "minimum": 0
                                                                }
                                                              }
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "description": "The operation cannot be performed due to an issue with the cloud connection agent in public cloud connection '{{connectionName}}'. Please go to Infrastructure > Public clouds, select the corresponding cloud connection, click Renew access, and follow the instructions. If the issue persists, contact support.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code",
                                                            "context"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "CloudConnectionIssue"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "context": {
                                                              "type": "object",
                                                              "required": [
                                                                "connectionName"
                                                              ],
                                                              "properties": {
                                                                "connectionName": {
                                                                  "type": "string"
                                                                },
                                                                "issueCodes": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  }
                                                                }
                                                              }
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "description": "The operation cannot be performed due to an issue with the cloud connection agent in public cloud connection '{{connectionName}}'. Please go to Infrastructure > Public clouds, select the corresponding cloud connection, click Renew access, and follow the instructions. If the issue persists, contact support.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code",
                                                            "context"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "CloudConnectionWorkerIssue"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "context": {
                                                              "type": "object",
                                                              "required": [
                                                                "connectionName"
                                                              ],
                                                              "properties": {
                                                                "connectionName": {
                                                                  "type": "string"
                                                                },
                                                                "issueCodes": {
                                                                  "type": "array",
                                                                  "items": {
                                                                    "type": "string"
                                                                  }
                                                                }
                                                              }
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "$ref": "#/components/schemas/ResourceBusy"
                                                    },
                                                    {
                                                      "description": "Operation is not allowed for the server because it does not have an active disaster recovery license.",
                                                      "allOf": [
                                                        {
                                                          "$ref": "#/components/schemas/item0_3"
                                                        },
                                                        {
                                                          "type": "object",
                                                          "required": [
                                                            "domain",
                                                            "code",
                                                            "context"
                                                          ],
                                                          "properties": {
                                                            "domain": {
                                                              "enum": [
                                                                "DisasterRecovery"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "code": {
                                                              "enum": [
                                                                "ServerNotLicensed"
                                                              ],
                                                              "type": "string"
                                                            },
                                                            "context": {
                                                              "type": "object",
                                                              "required": [
                                                                "server_id",
                                                                "server_type"
                                                              ],
                                                              "properties": {
                                                                "server_id": {
                                                                  "type": "string"
                                                                },
                                                                "server_type": {
                                                                  "type": "string"
                                                                }
                                                              }
                                                            }
                                                          }
                                                        }
                                                      ]
                                                    },
                                                    {
                                                      "$ref": "#/components/schemas/ServerNotReady"
                                                    }
                                                  ]
                                                }
                                              }
                                            }
                                          ],
                                          "type": "object"
                                        },
                                        {
                                          "description": "Issue with the unavailability of the stop failover operation for the cloud server.",
                                          "allOf": [
                                            {
                                              "$ref": "#/components/schemas/item0_2"
                                            },
                                            {
                                              "type": "object",
                                              "required": [
                                                "target",
                                                "severity",
                                                "error"
                                              ],
                                              "properties": {
                                                "domain": {
                                                  "description": "Disaster Recovery domain.",
                                                  "enum": [
                                                    "DisasterRecovery"
                                                  ],
                                                  "type": "string"
                                                },
                                                "link": {
                                                  "description": "Name of the affected link.",
                                                  "enum": [
                                                    "DR_CLOUD_SERVER_STOP_FAILOVER"
                                                  ],
                                                  "type": "string"
                                                },
                                                "target": {
                                                  "description": "UUID of the cloud server on which the issue occurred.",
                                                  "type": "string"
                                                },
                                                "severity": {
                                                  "description": "Severity of the issue.",
                                                  "enum": [
                                                    "ERROR"
                                                  ],
                                                  "type": "string"
                                                },
                                                "error": {
                                                  "oneOf": [
                                                    {
                                                      "$ref": "#/components/schemas/SiteNotReady"
                                                    },
                                                    {
                                                      "$ref": "#/components/schemas/VPNGatewayUnreachable"
                                                    },
                                                    {
                                                      "$ref": "#/components/schemas/NotAllowed"
                                                    },
                                                    {
                                                      "$ref": "#/components/schemas/ResourceBusy"
                                                    },
                                                    {
                                                      "$ref": "#/components/schemas/ServerNotReady"
                                                    }
                                                  ]
                                                }
                                              }
                                            }
                                          ],
                                          "type": "object"
                                        }
                                      ]
                                    }
                                  }
                                }
                              }
                            ]
                          },
                          {
                            "type": "object",
                            "required": [
                              "site_uuid",
                              "name",
                              "created_at",
                              "uuid",
                              "description",
                              "type",
                              "status",
                              "vm"
                            ],
                            "properties": {
                              "site_uuid": {},
                              "name": {},
                              "created_at": {},
                              "uuid": {},
                              "description": {},
                              "type": {},
                              "status": {},
                              "vm": {}
                            }
                          }
                        ],
                        "type": "object",
                        "properties": {
                          "created_at": {
                            "description": "Date and time when the cloud server was created.",
                            "type": "string",
                            "format": "date-time"
                          },
                          "description": {
                            "description": "Description of the cloud server.",
                            "type": "string",
                            "minLength": 0,
                            "maxLength": 4096
                          },
                          "name": {
                            "description": "Name of the cloud server.",
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 1024
                          },
                          "public_ip": {
                            "description": "Public IP address of the cloud server. Missing if the Public IP address setting of the server is not enabled.",
                            "type": "string",
                            "format": "ipv4"
                          },
                          "rpo": {
                            "description": "RPO and server status.",
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "status",
                              "threshold_seconds"
                            ],
                            "properties": {
                              "ratio": {
                                "description": "Time since the last backup (in seconds) divided by the threshold (in seconds). Available only if there is a backup.",
                                "type": "number",
                                "minimum": 0
                              },
                              "status": {
                                "description": "OK - compliant; warning - violates the threshold; error - violates the threshold more than 2x times; critical - violates the threshold more than 4x times.",
                                "enum": [
                                  "OK",
                                  "WARNING",
                                  "ERROR",
                                  "CRITICAL"
                                ],
                                "type": "string"
                              },
                              "threshold_seconds": {
                                "description": "Threshold for RPO status, in seconds.",
                                "type": "integer",
                                "minimum": 0,
                                "exclusiveMinimum": true
                              }
                            }
                          },
                          "status": {
                            "description": "List of available cloud server statuses.",
                            "enum": [
                              "CREATING",
                              "DELETING",
                              "FAILING_BACK",
                              "FAILBACK_DATA_TRANSFER",
                              "FAILBACK_SWITCHOVER",
                              "FAILBACK_VALIDATION",
                              "FAILOVER_PROD",
                              "FAILOVER_TEST",
                              "FAILOVER_TEST_AUTO",
                              "FINALIZATION",
                              "FINALIZATION_FAILED",
                              "RESTORING_FROM_BACKUP",
                              "POWERING_OFF",
                              "POWERING_ON",
                              "RECONFIGURING",
                              "STAND_BY",
                              "STARTING_FAILBACK",
                              "STARTING_FAILBACK_DATA_TRANSFER_RESUME",
                              "STARTING_FAILBACK_DATA_TRANSFER_STOP",
                              "STARTING_FAILBACK_SWITCHOVER_BEGIN",
                              "STARTING_FAILBACK_SWITCHOVER_COMPLETE",
                              "STARTING_FAILBACK_COMMIT",
                              "STARTING_FAILBACK_ROLLBACK",
                              "STARTING_FAILOVER_PROD",
                              "STARTING_FAILOVER_TEST",
                              "STARTING_FAILOVER_TEST_AUTO",
                              "STOPPING_FAILOVER",
                              "STOPPING_RESTORE_FROM_BACKUP"
                            ],
                            "type": "string"
                          },
                          "site_uuid": {
                            "$ref": "#/components/schemas/last_task_uuid"
                          },
                          "task_uuid": {
                            "$ref": "#/components/schemas/last_task_uuid"
                          },
                          "vm": {
                            "description": "Properties of the virtual machine.",
                            "type": "object",
                            "required": [
                              "cpu",
                              "ram_mb",
                              "status"
                            ],
                            "properties": {
                              "cpu": {
                                "description": "Number of vCPU cores that will be allocated to the virtual machine.",
                                "type": "integer"
                              },
                              "os": {
                                "description": "Information about the OS of the virtual machine. Not available if the status of the virtual machine is 'NOT_READY'.",
                                "type": "string"
                              },
                              "ram_mb": {
                                "description": "Amount of RAM in mebibytes that will be allocated to the virtual machine.",
                                "type": "integer"
                              },
                              "status": {
                                "enum": [
                                  "NOT_READY",
                                  "STARTED",
                                  "STOPPED",
                                  "SUSPENDED"
                                ],
                                "type": "string"
                              },
                              "storage": {
                                "description": "Information about the disks that are configured for the virtual machine. Not available if the status of the virtual machine is 'NOT_READY'.",
                                "type": "array",
                                "items": {
                                  "type": "object",
                                  "additionalProperties": false,
                                  "required": [
                                    "id",
                                    "protected",
                                    "size_gb"
                                  ],
                                  "properties": {
                                    "id": {
                                      "$ref": "#/components/schemas/vault_id"
                                    },
                                    "protected": {
                                      "description": "True if the disk cannot be removed.",
                                      "type": "boolean"
                                    },
                                    "size_gb": {
                                      "description": "Size of the storage volume in gibibytes.",
                                      "type": "integer"
                                    }
                                  }
                                }
                              }
                            }
                          },
                          "uuid": {
                            "$ref": "#/components/schemas/last_task_uuid"
                          }
                        }
                      }
                    },
                    "paging": {
                      "description": "Response properties related to the pagination.",
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "count",
                        "total"
                      ],
                      "properties": {
                        "count": {
                          "description": "Number of items fetched for the current page.",
                          "type": "integer",
                          "minimum": 0
                        },
                        "cursors": {
                          "type": "object",
                          "additionalProperties": false,
                          "properties": {
                            "after": {
                              "description": "Cursor that points to the next page with results, if available.",
                              "type": "string"
                            },
                            "before": {
                              "description": "Cursor that points to the previous page with results, if available.",
                              "type": "string"
                            }
                          }
                        },
                        "total": {
                          "description": "Total amount of items to fetch.",
                          "type": "integer",
                          "minimum": 0
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request could not be validated against the RAML schema.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "401": {
            "description": "The request was denied because the bearer access token was invalid or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "403": {
            "description": "The request was denied because the bearer access token did not have the required privileges.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "429": {
            "description": "The response status code indicates that the service is overloaded and you must wait before the next request.",
            "headers": {
              "Retry-After": {
                "description": "The time (in seconds) that the client must wait before the next request.",
                "required": true,
                "schema": {
                  "description": "The time (in seconds) that the client must wait before the next request.",
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 3600
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error occurred while processing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "504": {
            "description": "Gateway time-out.",
            "content": {}
          }
        },
        "security": [
          {
            "oauth2": [
              "dr_service::admin",
              "dr::support_operator",
              "protection::readonly"
            ]
          }
        ]
      }
    },
    "/servers/{uuid}": {
      "get": {
        "operationId": "Fetch cloud server by UUID",
        "description": "Fetches the details of the cloud server.",
        "parameters": [
          {
            "name": "uuid",
            "description": "A unique identifier of the cloud server.",
            "required": true,
            "in": "path",
            "schema": {
              "description": "A unique identifier of the cloud server.",
              "example": "6782e594-781d-4ad2-b8ca-25a0c40f9938",
              "type": "string",
              "pattern": "^[a-zA-Z0-9-]+$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "allOf": [
                    {
                      "oneOf": [
                        {
                          "type": "object",
                          "required": [
                            "primary"
                          ],
                          "properties": {
                            "type": {
                              "description": "Type of the cloud server.",
                              "enum": [
                                "PRIMARY"
                              ],
                              "type": "string"
                            },
                            "primary": {
                              "description": "Additional parameters of the primary server.",
                              "type": "object",
                              "additionalProperties": false,
                              "required": [
                                "vault_id"
                              ],
                              "properties": {
                                "vault_id": {
                                  "$ref": "#/components/schemas/vault_id_4"
                                }
                              }
                            },
                            "_links": {
                              "description": "Links and actions related to the primary server.",
                              "type": "array",
                              "minItems": 1,
                              "items": {
                                "oneOf": [
                                  {
                                    "$ref": "#/components/schemas/item0_5"
                                  },
                                  {
                                    "$ref": "#/components/schemas/item1_6"
                                  },
                                  {
                                    "$ref": "#/components/schemas/item2_7"
                                  }
                                ]
                              }
                            },
                            "_issues": {
                              "description": "Issues related to the primary server.",
                              "type": "array",
                              "minItems": 0,
                              "items": {
                                "description": "Describes a single issue (constraint violation).",
                                "oneOf": [
                                  {
                                    "$ref": "#/components/schemas/item0_8"
                                  }
                                ]
                              }
                            }
                          }
                        },
                        {
                          "type": "object",
                          "required": [
                            "recovery"
                          ],
                          "properties": {
                            "type": {
                              "description": "Type of the cloud server.",
                              "enum": [
                                "RECOVERY"
                              ],
                              "type": "string"
                            },
                            "recovery": {
                              "description": "Additional parameters of recovery server.",
                              "type": "object",
                              "additionalProperties": false,
                              "required": [
                                "automated_test_failover",
                                "resource_id"
                              ],
                              "properties": {
                                "active_failover": {
                                  "description": "Details of the failover that is in progress. Missing for servers in the STAND_BY state.",
                                  "type": "object",
                                  "additionalProperties": false,
                                  "required": [
                                    "backup_uri",
                                    "id",
                                    "vault_id"
                                  ],
                                  "properties": {
                                    "archive_credentials_id": {
                                      "description": "ID of the archive credentials of the backup that is used for the failover operation. Required for automated failback. Missing if failover was initiated from a non-encrypted archive.",
                                      "type": "string",
                                      "minLength": 1
                                    },
                                    "backup_uri": {
                                      "description": "Universal URI identifier of the recovery point that is used for the failover operation.",
                                      "type": "string",
                                      "minLength": 1
                                    },
                                    "id": {
                                      "description": "Unique identifier of the failover that is in progress.",
                                      "type": "string",
                                      "minLength": 1
                                    },
                                    "vault_id": {
                                      "$ref": "#/components/schemas/vault_id_4"
                                    }
                                  }
                                },
                                "automated_test_failover": {
                                  "description": "Details of the automated test failover. All properties except the schedule are omitted if automated test failover is disabled for the server.",
                                  "oneOf": [
                                    {
                                      "description": "Automated test failover is disabled.",
                                      "type": "object",
                                      "additionalProperties": false,
                                      "required": [
                                        "schedule"
                                      ],
                                      "properties": {
                                        "schedule": {
                                          "description": "Schedule of the automated test failover. 'NEVER' means that automated test failover is disabled for the server.",
                                          "enum": [
                                            "NEVER"
                                          ],
                                          "type": "string"
                                        }
                                      }
                                    },
                                    {
                                      "description": "Automated test failover was performed at least one time.",
                                      "type": "object",
                                      "additionalProperties": false,
                                      "required": [
                                        "recovery_point",
                                        "last_start",
                                        "last_status",
                                        "last_task_uuid",
                                        "next_start",
                                        "schedule",
                                        "screenshot_link",
                                        "screenshot_preview_link",
                                        "timeout"
                                      ],
                                      "properties": {
                                        "recovery_point": {
                                          "$ref": "#/components/schemas/recovery_point_9"
                                        },
                                        "last_start": {
                                          "description": "Date and time of the last automated test failover.",
                                          "type": "string",
                                          "format": "date-time"
                                        },
                                        "last_status": {
                                          "description": "Result of the last automated test failover.",
                                          "enum": [
                                            "SUCCESS",
                                            "FAILURE"
                                          ],
                                          "type": "string"
                                        },
                                        "last_task_uuid": {
                                          "$ref": "#/components/schemas/last_task_uuid_10"
                                        },
                                        "next_start": {
                                          "nullable": true,
                                          "type": "string",
                                          "format": "date-time"
                                        },
                                        "schedule": {
                                          "description": "Interval at which automated test failover is performed.",
                                          "enum": [
                                            "HOURLY",
                                            "DAILY",
                                            "WEEKLY",
                                            "MONTHLY"
                                          ],
                                          "type": "string"
                                        },
                                        "screenshot_link": {
                                          "nullable": true,
                                          "type": "string",
                                          "format": "uri"
                                        },
                                        "screenshot_preview_link": {
                                          "nullable": true,
                                          "type": "string",
                                          "format": "uri"
                                        },
                                        "timeout": {
                                          "description": "Timeout in seconds for the complete operation: performing a test failover, taking a screenshot, and evaluating the result.",
                                          "type": "integer",
                                          "minimum": 1
                                        }
                                      }
                                    },
                                    {
                                      "description": "Automated test failover is enabled but has not been performed yet.",
                                      "type": "object",
                                      "additionalProperties": false,
                                      "required": [
                                        "recovery_point",
                                        "last_start",
                                        "last_status",
                                        "next_start",
                                        "last_task_uuid",
                                        "schedule",
                                        "screenshot_link",
                                        "screenshot_preview_link",
                                        "timeout"
                                      ],
                                      "properties": {
                                        "recovery_point": {
                                          "nullable": true,
                                          "type": "string"
                                        },
                                        "last_start": {
                                          "nullable": true,
                                          "type": "string"
                                        },
                                        "last_status": {
                                          "nullable": true,
                                          "type": "string"
                                        },
                                        "next_start": {
                                          "nullable": true,
                                          "type": "string",
                                          "format": "date-time"
                                        },
                                        "last_task_uuid": {
                                          "nullable": true,
                                          "type": "string"
                                        },
                                        "schedule": {
                                          "description": "Interval at which automated test failover is performed.",
                                          "enum": [
                                            "HOURLY",
                                            "DAILY",
                                            "WEEKLY",
                                            "MONTHLY"
                                          ],
                                          "type": "string"
                                        },
                                        "screenshot_link": {
                                          "nullable": true,
                                          "type": "string"
                                        },
                                        "screenshot_preview_link": {
                                          "nullable": true,
                                          "type": "string"
                                        },
                                        "timeout": {
                                          "description": "Timeout in seconds for the complete operation: performing a test failover, taking a screenshot, and evaluating the result.",
                                          "type": "integer",
                                          "minimum": 1
                                        }
                                      }
                                    }
                                  ],
                                  "type": "object"
                                },
                                "ip_mapped": {
                                  "description": "Optional mapping of the specified server IP in the production network to make the server accessible during test failover.",
                                  "type": "string",
                                  "format": "ipv4"
                                },
                                "resource_id": {
                                  "description": "Identifier of the original device that is protected by the recovery server.",
                                  "type": "string"
                                },
                                "test_failover": {
                                  "description": "Details of the test failover.",
                                  "type": "object",
                                  "additionalProperties": false,
                                  "required": [
                                    "recovery_point",
                                    "last_start",
                                    "last_task_uuid"
                                  ],
                                  "properties": {
                                    "recovery_point": {
                                      "$ref": "#/components/schemas/recovery_point_9"
                                    },
                                    "last_start": {
                                      "description": "Date and time of the test failover.",
                                      "type": "string",
                                      "format": "date-time"
                                    },
                                    "last_task_uuid": {
                                      "$ref": "#/components/schemas/last_task_uuid_10"
                                    }
                                  }
                                }
                              }
                            },
                            "_links": {
                              "description": "Links and actions related to the recovery server.",
                              "type": "array",
                              "minItems": 1,
                              "items": {
                                "anyOf": [
                                  {
                                    "$ref": "#/components/schemas/item0_5"
                                  },
                                  {
                                    "$ref": "#/components/schemas/item1_6"
                                  },
                                  {
                                    "$ref": "#/components/schemas/item2_7"
                                  },
                                  {
                                    "description": "Link used in a POST request to initiate a production failover of the cloud server.",
                                    "type": "object",
                                    "required": [
                                      "rel",
                                      "type",
                                      "href"
                                    ],
                                    "properties": {
                                      "rel": {
                                        "description": "Identifier of the link used in a POST request to initiate a production failover of the cloud server.",
                                        "enum": [
                                          "DR_CLOUD_SERVER_START_FAILOVER_PROD"
                                        ],
                                        "type": "string"
                                      },
                                      "type": {
                                        "description": "Media type of the response to the action.",
                                        "type": "string"
                                      },
                                      "href": {
                                        "description": "URL for the POST request to start production failover for the cloud server.",
                                        "type": "string",
                                        "format": "uri"
                                      }
                                    }
                                  },
                                  {
                                    "description": "Link to the POST request to start test failover for the cloud server.",
                                    "type": "object",
                                    "required": [
                                      "rel",
                                      "type",
                                      "href"
                                    ],
                                    "properties": {
                                      "rel": {
                                        "description": "Identifier of the link to the POST request to start test failover for the cloud server.",
                                        "enum": [
                                          "DR_CLOUD_SERVER_START_FAILOVER_TEST"
                                        ],
                                        "type": "string"
                                      },
                                      "type": {
                                        "description": "Media type of the response to the action.",
                                        "type": "string"
                                      },
                                      "href": {
                                        "description": "URL for the POST request to start test failover for the cloud server.",
                                        "type": "string",
                                        "format": "uri"
                                      }
                                    }
                                  },
                                  {
                                    "description": "Link to the POST request to stop failover for the cloud server.",
                                    "type": "object",
                                    "required": [
                                      "rel",
                                      "type",
                                      "href"
                                    ],
                                    "properties": {
                                      "rel": {
                                        "description": "Identifier of the link to the POST request to stop failover for the cloud server.",
                                        "enum": [
                                          "DR_CLOUD_SERVER_STOP_FAILOVER"
                                        ],
                                        "type": "string"
                                      },
                                      "type": {
                                        "description": "Media type of the response to the action.",
                                        "type": "string"
                                      },
                                      "href": {
                                        "description": "URL for the POST request to stop failover for the cloud server.",
                                        "type": "string",
                                        "format": "uri"
                                      }
                                    }
                                  }
                                ]
                              }
                            },
                            "_issues": {
                              "description": "Issues related to the recovery server.",
                              "type": "array",
                              "minItems": 0,
                              "items": {
                                "description": "Describes a single issue (constraint violation).",
                                "oneOf": [
                                  {
                                    "$ref": "#/components/schemas/item0_8"
                                  },
                                  {
                                    "description": "Issue with the unavailability of the start failover operation for the cloud server.",
                                    "allOf": [
                                      {
                                        "$ref": "#/components/schemas/item0_11"
                                      },
                                      {
                                        "type": "object",
                                        "required": [
                                          "target",
                                          "severity",
                                          "error"
                                        ],
                                        "properties": {
                                          "domain": {
                                            "description": "Disaster Recovery domain.",
                                            "enum": [
                                              "DisasterRecovery"
                                            ],
                                            "type": "string"
                                          },
                                          "link": {
                                            "description": "Name of the affected link.",
                                            "enum": [
                                              "DR_CLOUD_SERVER_START_FAILOVER_PROD",
                                              "DR_CLOUD_SERVER_START_FAILOVER_TEST"
                                            ],
                                            "type": "string"
                                          },
                                          "target": {
                                            "description": "UUID of the cloud server on which the issue occurred.",
                                            "type": "string"
                                          },
                                          "severity": {
                                            "description": "Severity of the issue.",
                                            "enum": [
                                              "ERROR"
                                            ],
                                            "type": "string"
                                          },
                                          "error": {
                                            "oneOf": [
                                              {
                                                "$ref": "#/components/schemas/SiteNotReady_12"
                                              },
                                              {
                                                "description": "The \"DR and Direct Backup to Azure\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "SubscriptionNotFoundAzureDR"
                                                        ],
                                                        "type": "string"
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "description": "The \"Disaster recovery storage\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "SubscriptionNotFoundDrStorage"
                                                        ],
                                                        "type": "string"
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "description": "The \"Compute points\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "SubscriptionNotFoundComputePoints"
                                                        ],
                                                        "type": "string"
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "description": "The \"Cloud servers\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "SubscriptionNotFoundCloudServers"
                                                        ],
                                                        "type": "string"
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "description": "There are no available compute points for testing the Disaster Recovery functionality. {{additionalComputePoints}} additional compute points will be added next month. To enable the complete functionality, contact your partner and activate the Disaster Recovery service.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code",
                                                      "context"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "QuotaExceededBaseDR"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "context": {
                                                        "type": "object",
                                                        "required": [
                                                          "additionalComputePoints"
                                                        ],
                                                        "properties": {
                                                          "additionalComputePoints": {
                                                            "type": "integer",
                                                            "minimum": 0
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "description": "You have exceeded the \"Cloud servers\" quota. To increase the quota, contact the Support team.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "QuotaExceededCloudServers"
                                                        ],
                                                        "type": "string"
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "description": "You have exceeded the \"Compute points\" quota. To increase the quota, contact the Support team.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "QuotaExceededComputePoints"
                                                        ],
                                                        "type": "string"
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "$ref": "#/components/schemas/VPNGatewayUnreachable_14"
                                              },
                                              {
                                                "$ref": "#/components/schemas/NotAllowed_15"
                                              },
                                              {
                                                "description": "With Demo Disaster Recovery, you cannot perform a test failover of more than {{testFailoverMaxNumber}} recovery servers at the same time. To perform a test failover of more than {{testFailoverMaxNumber}} recovery servers at the same time, contact your partner and activate the Disaster Recovery service.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code",
                                                      "context"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "BaseDrTestFailoverLimitReached"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "context": {
                                                        "type": "object",
                                                        "required": [
                                                          "testFailoverMaxNumber"
                                                        ],
                                                        "properties": {
                                                          "testFailoverMaxNumber": {
                                                            "type": "integer",
                                                            "minimum": 0
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "description": "The operation cannot be performed due to an issue with the cloud connection agent in public cloud connection '{{connectionName}}'. Please go to Infrastructure > Public clouds, select the corresponding cloud connection, click Renew access, and follow the instructions. If the issue persists, contact support.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code",
                                                      "context"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "CloudConnectionIssue"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "context": {
                                                        "type": "object",
                                                        "required": [
                                                          "connectionName"
                                                        ],
                                                        "properties": {
                                                          "connectionName": {
                                                            "type": "string"
                                                          },
                                                          "issueCodes": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "description": "The operation cannot be performed due to an issue with the cloud connection agent in public cloud connection '{{connectionName}}'. Please go to Infrastructure > Public clouds, select the corresponding cloud connection, click Renew access, and follow the instructions. If the issue persists, contact support.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code",
                                                      "context"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "CloudConnectionWorkerIssue"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "context": {
                                                        "type": "object",
                                                        "required": [
                                                          "connectionName"
                                                        ],
                                                        "properties": {
                                                          "connectionName": {
                                                            "type": "string"
                                                          },
                                                          "issueCodes": {
                                                            "type": "array",
                                                            "items": {
                                                              "type": "string"
                                                            }
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "$ref": "#/components/schemas/ResourceBusy_16"
                                              },
                                              {
                                                "description": "Operation is not allowed for the server because it does not have an active disaster recovery license.",
                                                "allOf": [
                                                  {
                                                    "$ref": "#/components/schemas/item0_13"
                                                  },
                                                  {
                                                    "type": "object",
                                                    "required": [
                                                      "domain",
                                                      "code",
                                                      "context"
                                                    ],
                                                    "properties": {
                                                      "domain": {
                                                        "enum": [
                                                          "DisasterRecovery"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "code": {
                                                        "enum": [
                                                          "ServerNotLicensed"
                                                        ],
                                                        "type": "string"
                                                      },
                                                      "context": {
                                                        "type": "object",
                                                        "required": [
                                                          "server_id",
                                                          "server_type"
                                                        ],
                                                        "properties": {
                                                          "server_id": {
                                                            "type": "string"
                                                          },
                                                          "server_type": {
                                                            "type": "string"
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                ]
                                              },
                                              {
                                                "$ref": "#/components/schemas/ServerNotReady_17"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ],
                                    "type": "object"
                                  },
                                  {
                                    "description": "Issue with the unavailability of the stop failover operation for the cloud server.",
                                    "allOf": [
                                      {
                                        "$ref": "#/components/schemas/item0_11"
                                      },
                                      {
                                        "type": "object",
                                        "required": [
                                          "target",
                                          "severity",
                                          "error"
                                        ],
                                        "properties": {
                                          "domain": {
                                            "description": "Disaster Recovery domain.",
                                            "enum": [
                                              "DisasterRecovery"
                                            ],
                                            "type": "string"
                                          },
                                          "link": {
                                            "description": "Name of the affected link.",
                                            "enum": [
                                              "DR_CLOUD_SERVER_STOP_FAILOVER"
                                            ],
                                            "type": "string"
                                          },
                                          "target": {
                                            "description": "UUID of the cloud server on which the issue occurred.",
                                            "type": "string"
                                          },
                                          "severity": {
                                            "description": "Severity of the issue.",
                                            "enum": [
                                              "ERROR"
                                            ],
                                            "type": "string"
                                          },
                                          "error": {
                                            "oneOf": [
                                              {
                                                "$ref": "#/components/schemas/SiteNotReady_12"
                                              },
                                              {
                                                "$ref": "#/components/schemas/VPNGatewayUnreachable_14"
                                              },
                                              {
                                                "$ref": "#/components/schemas/NotAllowed_15"
                                              },
                                              {
                                                "$ref": "#/components/schemas/ResourceBusy_16"
                                              },
                                              {
                                                "$ref": "#/components/schemas/ServerNotReady_17"
                                              }
                                            ]
                                          }
                                        }
                                      }
                                    ],
                                    "type": "object"
                                  }
                                ]
                              }
                            }
                          }
                        }
                      ]
                    },
                    {
                      "type": "object",
                      "required": [
                        "vm",
                        "type",
                        "name",
                        "site_uuid",
                        "description",
                        "created_at",
                        "status",
                        "uuid"
                      ],
                      "properties": {
                        "vm": {},
                        "type": {},
                        "name": {},
                        "site_uuid": {},
                        "description": {},
                        "created_at": {},
                        "status": {},
                        "uuid": {}
                      }
                    }
                  ],
                  "type": "object",
                  "properties": {
                    "created_at": {
                      "description": "Date and time when the cloud server was created.",
                      "type": "string",
                      "format": "date-time"
                    },
                    "description": {
                      "description": "Description of the cloud server.",
                      "type": "string",
                      "minLength": 0,
                      "maxLength": 4096
                    },
                    "name": {
                      "description": "Name of the cloud server.",
                      "type": "string",
                      "minLength": 1,
                      "maxLength": 1024
                    },
                    "public_ip": {
                      "description": "Public IP address of the cloud server. Missing if the Public IP address setting of the server is not enabled.",
                      "type": "string",
                      "format": "ipv4"
                    },
                    "rpo": {
                      "description": "RPO and server status.",
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "status",
                        "threshold_seconds"
                      ],
                      "properties": {
                        "ratio": {
                          "description": "Time since the last backup (in seconds) divided by the threshold (in seconds). Available only if there is a backup.",
                          "type": "number",
                          "minimum": 0
                        },
                        "status": {
                          "description": "OK - compliant; warning - violates the threshold; error - violates the threshold more than 2x times; critical - violates the threshold more than 4x times.",
                          "enum": [
                            "OK",
                            "WARNING",
                            "ERROR",
                            "CRITICAL"
                          ],
                          "type": "string"
                        },
                        "threshold_seconds": {
                          "description": "Threshold for RPO status, in seconds.",
                          "type": "integer",
                          "minimum": 0,
                          "exclusiveMinimum": true
                        }
                      }
                    },
                    "status": {
                      "description": "List of available cloud server statuses.",
                      "enum": [
                        "CREATING",
                        "DELETING",
                        "FAILING_BACK",
                        "FAILBACK_DATA_TRANSFER",
                        "FAILBACK_SWITCHOVER",
                        "FAILBACK_VALIDATION",
                        "FAILOVER_PROD",
                        "FAILOVER_TEST",
                        "FAILOVER_TEST_AUTO",
                        "FINALIZATION",
                        "FINALIZATION_FAILED",
                        "RESTORING_FROM_BACKUP",
                        "POWERING_OFF",
                        "POWERING_ON",
                        "RECONFIGURING",
                        "STAND_BY",
                        "STARTING_FAILBACK",
                        "STARTING_FAILBACK_DATA_TRANSFER_RESUME",
                        "STARTING_FAILBACK_DATA_TRANSFER_STOP",
                        "STARTING_FAILBACK_SWITCHOVER_BEGIN",
                        "STARTING_FAILBACK_SWITCHOVER_COMPLETE",
                        "STARTING_FAILBACK_COMMIT",
                        "STARTING_FAILBACK_ROLLBACK",
                        "STARTING_FAILOVER_PROD",
                        "STARTING_FAILOVER_TEST",
                        "STARTING_FAILOVER_TEST_AUTO",
                        "STOPPING_FAILOVER",
                        "STOPPING_RESTORE_FROM_BACKUP"
                      ],
                      "type": "string"
                    },
                    "site_uuid": {
                      "$ref": "#/components/schemas/last_task_uuid_10"
                    },
                    "task_uuid": {
                      "$ref": "#/components/schemas/last_task_uuid_10"
                    },
                    "vm": {
                      "description": "Properties of the virtual machine.",
                      "type": "object",
                      "required": [
                        "cpu",
                        "ram_mb",
                        "status"
                      ],
                      "properties": {
                        "cpu": {
                          "description": "Number of vCPU cores that will be allocated to the virtual machine.",
                          "type": "integer"
                        },
                        "os": {
                          "description": "Information about the OS of the virtual machine. Not available if the status of the virtual machine is 'NOT_READY'.",
                          "type": "string"
                        },
                        "ram_mb": {
                          "description": "Amount of RAM in mebibytes that will be allocated to the virtual machine.",
                          "type": "integer"
                        },
                        "status": {
                          "enum": [
                            "NOT_READY",
                            "STARTED",
                            "STOPPED",
                            "SUSPENDED"
                          ],
                          "type": "string"
                        },
                        "storage": {
                          "description": "Information about the disks that are configured for the virtual machine. Not available if the status of the virtual machine is 'NOT_READY'.",
                          "type": "array",
                          "items": {
                            "type": "object",
                            "additionalProperties": false,
                            "required": [
                              "id",
                              "protected",
                              "size_gb"
                            ],
                            "properties": {
                              "id": {
                                "$ref": "#/components/schemas/vault_id_4"
                              },
                              "protected": {
                                "description": "True if the disk cannot be removed.",
                                "type": "boolean"
                              },
                              "size_gb": {
                                "description": "Size of the storage volume in gibibytes.",
                                "type": "integer"
                              }
                            }
                          }
                        }
                      }
                    },
                    "uuid": {
                      "$ref": "#/components/schemas/last_task_uuid_10"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request could not be validated against the RAML schema.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "401": {
            "description": "The request was denied because the bearer access token was invalid or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "403": {
            "description": "The request was denied because the bearer access token did not have the required privileges.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "429": {
            "description": "The response status code indicates that the service is overloaded and you must wait before the next request.",
            "headers": {
              "Retry-After": {
                "description": "The time (in seconds) that the client must wait before the next request.",
                "required": true,
                "schema": {
                  "description": "The time (in seconds) that the client must wait before the next request.",
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 3600
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error occurred while processing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "504": {
            "description": "Gateway time-out.",
            "content": {}
          }
        },
        "security": [
          {
            "oauth2": [
              "dr_service::admin",
              "dr::support_operator",
              "protection::readonly"
            ]
          }
        ]
      }
    },
    "/servers/{uuid}:start_failover_prod": {
      "post": {
        "operationId": "Start production failover on cloud server",
        "description": "Starts a production failover of the cloud server.",
        "parameters": [
          {
            "name": "uuid",
            "description": "A unique identifier of the cloud server.",
            "required": true,
            "in": "path",
            "schema": {
              "description": "A unique identifier of the cloud server.",
              "example": "6782e594-781d-4ad2-b8ca-25a0c40f9938",
              "type": "string",
              "pattern": "^[a-zA-Z0-9-]+$"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "title": "Start failover payload",
                "description": "Parameters of the failover operation of the cloud server.",
                "type": "object",
                "properties": {
                  "recovery_point": {
                    "description": "Composite identifier of a recovery point.",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "archive_id",
                      "backup_id",
                      "vault_id"
                    ],
                    "properties": {
                      "archive_id": {
                        "$ref": "#/components/schemas/backup_id"
                      },
                      "backup_id": {
                        "$ref": "#/components/schemas/backup_id"
                      },
                      "vault_id": {
                        "$ref": "#/components/schemas/backup_id"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Async action initialization successful response",
                  "example": {
                    "task_uuid": "f1b3b3b4-4b1b-4b1b-4b1b-4b1b4b1b4b1b"
                  },
                  "type": "object",
                  "additionalProperties": true,
                  "required": [
                    "task_uuid"
                  ],
                  "properties": {
                    "task_uuid": {
                      "title": "UUID",
                      "description": "Universally unique object identifier.",
                      "type": "string",
                      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request could not be validated against the RAML schema.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "401": {
            "description": "The request was denied because the bearer access token was invalid or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "403": {
            "description": "The request was denied because the bearer access token did not have the required privileges.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "409": {
            "description": "The request could not be completed because there was a conflict with the current state of the resource.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "429": {
            "description": "The response status code indicates that the service is overloaded and you must wait before the next request.",
            "headers": {
              "Retry-After": {
                "description": "The time (in seconds) that the client must wait before the next request.",
                "required": true,
                "schema": {
                  "description": "The time (in seconds) that the client must wait before the next request.",
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 3600
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error occurred while processing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "504": {
            "description": "Gateway time-out.",
            "content": {}
          }
        },
        "security": [
          {
            "oauth2": [
              "dr_service::admin"
            ]
          }
        ]
      }
    },
    "/servers/{uuid}:start_failover_test": {
      "post": {
        "operationId": "Start test failover on cloud server",
        "description": "Starts a test failover of the cloud server.",
        "parameters": [
          {
            "name": "uuid",
            "description": "A unique identifier of the cloud server.",
            "required": true,
            "in": "path",
            "schema": {
              "description": "A unique identifier of the cloud server.",
              "example": "6782e594-781d-4ad2-b8ca-25a0c40f9938",
              "type": "string",
              "pattern": "^[a-zA-Z0-9-]+$"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "title": "Start failover payload",
                "description": "Parameters of the failover operation of the cloud server.",
                "type": "object",
                "properties": {
                  "recovery_point": {
                    "description": "Composite identifier of a recovery point.",
                    "type": "object",
                    "additionalProperties": false,
                    "required": [
                      "archive_id",
                      "backup_id",
                      "vault_id"
                    ],
                    "properties": {
                      "archive_id": {
                        "$ref": "#/components/schemas/backup_id"
                      },
                      "backup_id": {
                        "$ref": "#/components/schemas/backup_id"
                      },
                      "vault_id": {
                        "$ref": "#/components/schemas/backup_id"
                      }
                    }
                  }
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Async action initialization successful response",
                  "example": {
                    "task_uuid": "f1b3b3b4-4b1b-4b1b-4b1b-4b1b4b1b4b1b"
                  },
                  "type": "object",
                  "additionalProperties": true,
                  "required": [
                    "task_uuid"
                  ],
                  "properties": {
                    "task_uuid": {
                      "title": "UUID",
                      "description": "Universally unique object identifier.",
                      "type": "string",
                      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request could not be validated against the RAML schema.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "401": {
            "description": "The request was denied because the bearer access token was invalid or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "403": {
            "description": "The request was denied because the bearer access token did not have the required privileges.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "409": {
            "description": "The request could not be completed because there was a conflict with the current state of the resource.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "429": {
            "description": "The response status code indicates that the service is overloaded and you must wait before the next request.",
            "headers": {
              "Retry-After": {
                "description": "The time (in seconds) that the client must wait before the next request.",
                "required": true,
                "schema": {
                  "description": "The time (in seconds) that the client must wait before the next request.",
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 3600
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error occurred while processing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "504": {
            "description": "Gateway time-out.",
            "content": {}
          }
        },
        "security": [
          {
            "oauth2": [
              "dr_service::admin",
              "dr::support_operator"
            ]
          }
        ]
      }
    },
    "/servers/{uuid}:stop_failover": {
      "post": {
        "operationId": "Stop failover on cloud server",
        "description": "Stops the failover of the cloud server.",
        "parameters": [
          {
            "name": "uuid",
            "description": "A unique identifier of the cloud server.",
            "required": true,
            "in": "path",
            "schema": {
              "description": "A unique identifier of the cloud server.",
              "example": "6782e594-781d-4ad2-b8ca-25a0c40f9938",
              "type": "string",
              "pattern": "^[a-zA-Z0-9-]+$"
            }
          }
        ],
        "requestBody": {
          "content": {
            "application/json": {
              "schema": {
                "title": "Stop failover payload",
                "description": "Parameters for stopping the failover operation of the cloud server.",
                "example": {},
                "type": "object",
                "additionalProperties": false
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "title": "Async action initialization successful response",
                  "example": {
                    "task_uuid": "f1b3b3b4-4b1b-4b1b-4b1b-4b1b4b1b4b1b"
                  },
                  "type": "object",
                  "additionalProperties": true,
                  "required": [
                    "task_uuid"
                  ],
                  "properties": {
                    "task_uuid": {
                      "title": "UUID",
                      "description": "Universally unique object identifier.",
                      "type": "string",
                      "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request could not be validated against the RAML schema.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "401": {
            "description": "The request was denied because the bearer access token was invalid or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "403": {
            "description": "The request was denied because the bearer access token did not have the required privileges.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "409": {
            "description": "The request could not be completed because there was a conflict with the current state of the resource.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "429": {
            "description": "The response status code indicates that the service is overloaded and you must wait before the next request.",
            "headers": {
              "Retry-After": {
                "description": "The time (in seconds) that the client must wait before the next request.",
                "required": true,
                "schema": {
                  "description": "The time (in seconds) that the client must wait before the next request.",
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 3600
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error occurred while processing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "504": {
            "description": "Gateway time-out.",
            "content": {}
          }
        },
        "security": [
          {
            "oauth2": [
              "dr_service::admin",
              "dr::support_operator"
            ]
          }
        ]
      }
    },
    "/sites": {
      "get": {
        "operationId": "Fetch disaster recovery sites",
        "description": "Fetches the list of disaster recovery sites.",
        "parameters": [
          {
            "name": "allow_deleted",
            "description": "Includes resources that are marked as deleted in the request result.",
            "required": false,
            "in": "query",
            "schema": {
              "description": "Includes resources that are marked as deleted in the request result.",
              "default": false,
              "example": true,
              "type": "boolean"
            }
          },
          {
            "name": "limit",
            "description": "Maximum number of items to fetch per page. Mutually exclusive with the 'before' and 'after' parameters.",
            "required": false,
            "in": "query",
            "schema": {
              "description": "Maximum number of items to fetch per page. Mutually exclusive with the 'before' and 'after' parameters.",
              "default": 10,
              "type": "integer",
              "minimum": 1,
              "maximum": 50
            }
          },
          {
            "name": "after",
            "description": "Token from the 'after' field in the previous response. It contains a cursor that points to the next page of the requested collection. Mutually exclusive with the 'limit' and 'before' parameters. If provided, all other query parameters will be ignored.",
            "required": false,
            "in": "query",
            "schema": {
              "description": "Token from the 'after' field in the previous response. It contains a cursor that points to the next page of the requested collection. Mutually exclusive with the 'limit' and 'before' parameters. If provided, all other query parameters will be ignored.",
              "default": "null",
              "example": "eyJSJdfQ",
              "type": "string",
              "minLength": 1
            }
          },
          {
            "name": "before",
            "description": "Token from the 'before' field in the previous response. It contains a cursor that points to the previous page of the requested collection. Mutually exclusive with the 'limit' and 'after' parameters. If provided, all other query parameters will be ignored.",
            "required": false,
            "in": "query",
            "schema": {
              "description": "Token from the 'before' field in the previous response. It contains a cursor that points to the previous page of the requested collection. Mutually exclusive with the 'limit' and 'after' parameters. If provided, all other query parameters will be ignored.",
              "default": "null",
              "example": "eyJSJdfQ",
              "type": "string",
              "minLength": 1
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "additionalProperties": false,
                  "required": [
                    "items"
                  ],
                  "properties": {
                    "items": {
                      "description": "List of the disaster recovery sites.",
                      "type": "array",
                      "minItems": 0,
                      "items": {
                        "type": "object",
                        "required": [
                          "default",
                          "failover_readiness",
                          "status",
                          "tenant_uuid",
                          "uuid"
                        ],
                        "properties": {
                          "default": {
                            "description": "This property determines if the disaster recovery site is set as default. You can have only one default disaster recovery site at a time.",
                            "type": "boolean"
                          },
                          "deleted_at": {
                            "description": "Deletion date of the disaster recovery site.",
                            "type": "string",
                            "format": "date-time"
                          },
                          "failover_readiness": {
                            "description": "Failover readiness status of the disaster recovery site. This property can have the following values: OK - ready for failover; WARNING - proceed with caution; or ERROR - not ready for failover.",
                            "enum": [
                              "ERROR",
                              "OK",
                              "WARNING"
                            ],
                            "type": "string"
                          },
                          "status": {
                            "description": "The status of the disaster recovery site.",
                            "enum": [
                              "DEPROVISIONING",
                              "PROVISIONING",
                              "PROVISIONED"
                            ],
                            "type": "string"
                          },
                          "task_uuid": {
                            "$ref": "#/components/schemas/tenant_uuid"
                          },
                          "tenant_uuid": {
                            "$ref": "#/components/schemas/tenant_uuid"
                          },
                          "uuid": {
                            "$ref": "#/components/schemas/tenant_uuid"
                          },
                          "_links": {
                            "description": "Links and actions related to the disaster recovery site.",
                            "type": "array",
                            "minItems": 1,
                            "items": {
                              "oneOf": [
                                {
                                  "description": "Link to the Connectivity page of the disaster recovery site. The link must be opened in a web browser.",
                                  "type": "object",
                                  "required": [
                                    "rel",
                                    "type",
                                    "href"
                                  ],
                                  "properties": {
                                    "rel": {
                                      "description": "Identifier of the link to the Connectivity page of the disaster recovery site.",
                                      "enum": [
                                        "DR_SITE_CONNECTIVITY_PAGE"
                                      ],
                                      "type": "string"
                                    },
                                    "type": {
                                      "description": "Media type of the linked resource.",
                                      "type": "string"
                                    },
                                    "href": {
                                      "description": "URL to access the Connectivity page of the disaster recovery site.",
                                      "type": "string",
                                      "format": "uri"
                                    }
                                  }
                                }
                              ]
                            }
                          },
                          "_issues": {
                            "description": "Issues of the disaster recovery site.",
                            "type": "array",
                            "minItems": 0,
                            "items": {
                              "description": "Describes a single issue (constraint violation).",
                              "oneOf": [
                                {
                                  "oneOf": [
                                    {
                                      "description": "Issue that causes the failover readiness to be in the 'WARNING' state.",
                                      "allOf": [
                                        {
                                          "description": "Describes a single issue (constraint violation).",
                                          "type": "object",
                                          "required": [
                                            "target",
                                            "severity",
                                            "error"
                                          ],
                                          "properties": {
                                            "link": {
                                              "description": "Name or ID of the link for which the issue is returned.",
                                              "type": "string"
                                            },
                                            "domain": {
                                              "description": "Domain from which the constraint originates.",
                                              "enum": [
                                                "Access",
                                                "Licensing",
                                                "DisasterRecovery"
                                              ],
                                              "type": "string"
                                            },
                                            "target": {
                                              "description": "Path to or ID of the sub-resource that is linked to the issue. May be required for composite resources.",
                                              "type": "string"
                                            },
                                            "severity": {
                                              "description": "Severity of the issue.",
                                              "enum": [
                                                "warning",
                                                "WARNING",
                                                "error",
                                                "ERROR"
                                              ],
                                              "type": "string"
                                            },
                                            "error": {
                                              "$ref": "#/components/schemas/item0_18"
                                            }
                                          }
                                        },
                                        {
                                          "type": "object",
                                          "required": [
                                            "target",
                                            "severity",
                                            "error"
                                          ],
                                          "properties": {
                                            "domain": {
                                              "description": "Disaster Recovery domain.",
                                              "enum": [
                                                "DisasterRecovery"
                                              ],
                                              "type": "string"
                                            },
                                            "target": {
                                              "description": "UUID of the disaster recovery site on which the issue occurred.",
                                              "type": "string"
                                            },
                                            "severity": {
                                              "description": "Severity of the issue.",
                                              "enum": [
                                                "WARNING"
                                              ],
                                              "type": "string"
                                            },
                                            "error": {
                                              "oneOf": [
                                                {
                                                  "description": "No VPN appliance is registered for the DR site with Site-to-Site VPN connectivity.",
                                                  "allOf": [
                                                    {
                                                      "$ref": "#/components/schemas/item0_18"
                                                    },
                                                    {
                                                      "type": "object",
                                                      "required": [
                                                        "domain",
                                                        "code"
                                                      ],
                                                      "properties": {
                                                        "domain": {
                                                          "enum": [
                                                            "DisasterRecovery"
                                                          ],
                                                          "type": "string"
                                                        },
                                                        "code": {
                                                          "enum": [
                                                            "VPNS2SApplianceNotRegistered"
                                                          ],
                                                          "type": "string"
                                                        }
                                                      }
                                                    }
                                                  ]
                                                },
                                                {
                                                  "description": "VPN appliance error. This might happen when the last report from the VPN appliance was received too long ago or if the VPN appliance reported an error.",
                                                  "allOf": [
                                                    {
                                                      "$ref": "#/components/schemas/item0_18"
                                                    },
                                                    {
                                                      "type": "object",
                                                      "required": [
                                                        "domain",
                                                        "code"
                                                      ],
                                                      "properties": {
                                                        "domain": {
                                                          "enum": [
                                                            "DisasterRecovery"
                                                          ],
                                                          "type": "string"
                                                        },
                                                        "code": {
                                                          "enum": [
                                                            "VPNS2SApplianceUnreachable"
                                                          ],
                                                          "type": "string"
                                                        }
                                                      }
                                                    }
                                                  ]
                                                },
                                                {
                                                  "description": "The VPN tunnel between the VPN gateway and the VPN appliance cannot be established for the DR site with Site-to-Site VPN connectivity.",
                                                  "allOf": [
                                                    {
                                                      "$ref": "#/components/schemas/item0_18"
                                                    },
                                                    {
                                                      "type": "object",
                                                      "required": [
                                                        "domain",
                                                        "code"
                                                      ],
                                                      "properties": {
                                                        "domain": {
                                                          "enum": [
                                                            "DisasterRecovery"
                                                          ],
                                                          "type": "string"
                                                        },
                                                        "code": {
                                                          "enum": [
                                                            "VPNS2SConnectionFailure"
                                                          ],
                                                          "type": "string"
                                                        }
                                                      }
                                                    }
                                                  ]
                                                },
                                                {
                                                  "description": "No IPSec tunnels are configured for the DR site with IPSec VPN connectivity.",
                                                  "allOf": [
                                                    {
                                                      "$ref": "#/components/schemas/item0_18"
                                                    },
                                                    {
                                                      "type": "object",
                                                      "required": [
                                                        "domain",
                                                        "code"
                                                      ],
                                                      "properties": {
                                                        "domain": {
                                                          "enum": [
                                                            "DisasterRecovery"
                                                          ],
                                                          "type": "string"
                                                        },
                                                        "code": {
                                                          "enum": [
                                                            "VPNIPSecNotConfigured"
                                                          ],
                                                          "type": "string"
                                                        }
                                                      }
                                                    }
                                                  ]
                                                },
                                                {
                                                  "description": "At least one of the IPSec tunnels could not be established.",
                                                  "allOf": [
                                                    {
                                                      "$ref": "#/components/schemas/item0_18"
                                                    },
                                                    {
                                                      "type": "object",
                                                      "required": [
                                                        "domain",
                                                        "code"
                                                      ],
                                                      "properties": {
                                                        "domain": {
                                                          "enum": [
                                                            "DisasterRecovery"
                                                          ],
                                                          "type": "string"
                                                        },
                                                        "code": {
                                                          "enum": [
                                                            "VPNIPSecConnectionError"
                                                          ],
                                                          "type": "string"
                                                        }
                                                      }
                                                    }
                                                  ]
                                                },
                                                {
                                                  "description": "You have reached the \"Disaster recovery storage\" quota. To increase the quota, contact the Support team.",
                                                  "allOf": [
                                                    {
                                                      "$ref": "#/components/schemas/item0_18"
                                                    },
                                                    {
                                                      "type": "object",
                                                      "required": [
                                                        "domain",
                                                        "code"
                                                      ],
                                                      "properties": {
                                                        "domain": {
                                                          "enum": [
                                                            "DisasterRecovery"
                                                          ],
                                                          "type": "string"
                                                        },
                                                        "code": {
                                                          "enum": [
                                                            "QuotaReachedDrStorage"
                                                          ],
                                                          "type": "string"
                                                        }
                                                      }
                                                    }
                                                  ]
                                                },
                                                {
                                                  "description": "You have reached the \"Cloud servers\" quota. To increase the quota, contact the Support team.",
                                                  "allOf": [
                                                    {
                                                      "$ref": "#/components/schemas/item0_18"
                                                    },
                                                    {
                                                      "type": "object",
                                                      "required": [
                                                        "domain",
                                                        "code"
                                                      ],
                                                      "properties": {
                                                        "domain": {
                                                          "enum": [
                                                            "DisasterRecovery"
                                                          ],
                                                          "type": "string"
                                                        },
                                                        "code": {
                                                          "enum": [
                                                            "QuotaReachedCloudServers"
                                                          ],
                                                          "type": "string"
                                                        }
                                                      }
                                                    }
                                                  ]
                                                },
                                                {
                                                  "description": "You have reached the \"Compute points\" quota. To increase the quota, contact the Support team.",
                                                  "allOf": [
                                                    {
                                                      "$ref": "#/components/schemas/item0_18"
                                                    },
                                                    {
                                                      "type": "object",
                                                      "required": [
                                                        "domain",
                                                        "code"
                                                      ],
                                                      "properties": {
                                                        "domain": {
                                                          "enum": [
                                                            "DisasterRecovery"
                                                          ],
                                                          "type": "string"
                                                        },
                                                        "code": {
                                                          "enum": [
                                                            "QuotaReachedComputePoints"
                                                          ],
                                                          "type": "string"
                                                        }
                                                      }
                                                    }
                                                  ]
                                                }
                                              ]
                                            }
                                          }
                                        }
                                      ],
                                      "type": "object"
                                    },
                                    {
                                      "description": "Issue that causes the failover readiness to be in the 'ERROR' state.",
                                      "type": "object",
                                      "required": [
                                        "target",
                                        "severity",
                                        "error"
                                      ],
                                      "properties": {
                                        "domain": {
                                          "description": "Domain from which the constraint originates.",
                                          "enum": [
                                            "DisasterRecovery"
                                          ],
                                          "type": "string"
                                        },
                                        "target": {
                                          "description": "UUID of the DR site on which the issue occurred.",
                                          "type": "string"
                                        },
                                        "severity": {
                                          "description": "Severity of the issue.",
                                          "enum": [
                                            "ERROR"
                                          ],
                                          "type": "string"
                                        },
                                        "error": {
                                          "oneOf": [
                                            {
                                              "description": "You cannot perform any operations because the DR site is being deployed or removed.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "SiteNotReady"
                                                      ],
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "The \"DR and Direct Backup to Azure\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "SubscriptionNotFoundAzureDR"
                                                      ],
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "The \"Disaster recovery storage\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "SubscriptionNotFoundDrStorage"
                                                      ],
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "The \"Compute points\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "SubscriptionNotFoundComputePoints"
                                                      ],
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "The \"Cloud servers\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "SubscriptionNotFoundCloudServers"
                                                      ],
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "You exceeded the \"DR and Direct Backup to Azure\" quota. As a result, the DR functionality was disabled on some protected servers. To increase the quota, contact the Support team.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "QuotaExceededAzureDR"
                                                      ],
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "There are no available compute points for testing the Disaster Recovery functionality. {{additionalComputePoints}} additional compute points will be added next month. To enable the complete functionality, contact your partner and activate the Disaster Recovery service.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code",
                                                    "context"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "QuotaExceededBaseDR"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "context": {
                                                      "type": "object",
                                                      "required": [
                                                        "additionalComputePoints"
                                                      ],
                                                      "properties": {
                                                        "additionalComputePoints": {
                                                          "type": "integer",
                                                          "minimum": 0
                                                        }
                                                      }
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "You have exceeded the \"Cloud servers\" quota. To increase the quota, contact the Support team.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "QuotaExceededCloudServers"
                                                      ],
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "You have exceeded the \"Compute points\" quota. To increase the quota, contact the Support team.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "QuotaExceededComputePoints"
                                                      ],
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "VPN gateway error. This might happen when the last report from the VPN gateway was received too long ago or if the VPN gateway reported an error.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "VPNGatewayUnreachable"
                                                      ],
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "The operation cannot be performed due to an issue with the cloud connection agent in public cloud connection '{{connectionName}}'. Please go to Infrastructure > Public clouds, select the corresponding cloud connection, click Renew access, and follow the instructions. If the issue persists, contact support.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code",
                                                    "context"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "CloudConnectionIssue"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "context": {
                                                      "type": "object",
                                                      "required": [
                                                        "connectionName"
                                                      ],
                                                      "properties": {
                                                        "connectionName": {
                                                          "type": "string"
                                                        },
                                                        "issueCodes": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "string"
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                }
                                              ]
                                            },
                                            {
                                              "description": "The operation cannot be performed due to an issue with the cloud connection agent in public cloud connection '{{connectionName}}'. Please go to Infrastructure > Public clouds, select the corresponding cloud connection, click Renew access, and follow the instructions. If the issue persists, contact support.",
                                              "allOf": [
                                                {
                                                  "$ref": "#/components/schemas/item0_18"
                                                },
                                                {
                                                  "type": "object",
                                                  "required": [
                                                    "domain",
                                                    "code",
                                                    "context"
                                                  ],
                                                  "properties": {
                                                    "domain": {
                                                      "enum": [
                                                        "DisasterRecovery"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "code": {
                                                      "enum": [
                                                        "CloudConnectionWorkerIssue"
                                                      ],
                                                      "type": "string"
                                                    },
                                                    "context": {
                                                      "type": "object",
                                                      "required": [
                                                        "connectionName"
                                                      ],
                                                      "properties": {
                                                        "connectionName": {
                                                          "type": "string"
                                                        },
                                                        "issueCodes": {
                                                          "type": "array",
                                                          "items": {
                                                            "type": "string"
                                                          }
                                                        }
                                                      }
                                                    }
                                                  }
                                                }
                                              ]
                                            }
                                          ]
                                        }
                                      }
                                    }
                                  ],
                                  "type": "object"
                                }
                              ]
                            }
                          }
                        }
                      }
                    },
                    "paging": {
                      "description": "Response properties related to the pagination.",
                      "type": "object",
                      "additionalProperties": false,
                      "required": [
                        "count",
                        "total"
                      ],
                      "properties": {
                        "count": {
                          "description": "Number of items fetched for the current page.",
                          "type": "integer",
                          "minimum": 0
                        },
                        "cursors": {
                          "type": "object",
                          "additionalProperties": false,
                          "properties": {
                            "after": {
                              "description": "Cursor that points to the next page with results, if available.",
                              "type": "string"
                            },
                            "before": {
                              "description": "Cursor that points to the previous page with results, if available.",
                              "type": "string"
                            }
                          }
                        },
                        "total": {
                          "description": "Total amount of items to fetch.",
                          "type": "integer",
                          "minimum": 0
                        }
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request could not be validated against the RAML schema.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "401": {
            "description": "The request was denied because the bearer access token was invalid or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "403": {
            "description": "The request was denied because the bearer access token did not have the required privileges.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "429": {
            "description": "The response status code indicates that the service is overloaded and you must wait before the next request.",
            "headers": {
              "Retry-After": {
                "description": "The time (in seconds) that the client must wait before the next request.",
                "required": true,
                "schema": {
                  "description": "The time (in seconds) that the client must wait before the next request.",
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 3600
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error occurred while processing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "504": {
            "description": "Gateway time-out.",
            "content": {}
          }
        },
        "security": [
          {
            "oauth2": [
              "dr_service::admin",
              "dr::support_operator",
              "protection::readonly"
            ]
          }
        ]
      }
    },
    "/sites/{uuid}": {
      "get": {
        "operationId": "Fetch disaster recovery site by UUID",
        "description": "Fetches the details of the disaster recovery site.",
        "parameters": [
          {
            "name": "allow_deleted",
            "description": "Includes resources that are marked as deleted in the request result.",
            "required": false,
            "in": "query",
            "schema": {
              "description": "Includes resources that are marked as deleted in the request result.",
              "default": false,
              "example": true,
              "type": "boolean"
            }
          },
          {
            "name": "uuid",
            "description": "A unique identifier of the disaster recovery site.",
            "required": true,
            "in": "path",
            "schema": {
              "description": "A unique identifier of the disaster recovery site.",
              "example": "6782e594-781d-4ad2-b8ca-25a0c40f9938",
              "type": "string",
              "pattern": "^[a-zA-Z0-9-]+$"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "",
            "content": {
              "application/json": {
                "schema": {
                  "type": "object",
                  "required": [
                    "default",
                    "failover_readiness",
                    "status",
                    "tenant_uuid",
                    "uuid"
                  ],
                  "properties": {
                    "default": {
                      "description": "This property determines if the disaster recovery site is set as default. You can have only one default disaster recovery site at a time.",
                      "type": "boolean"
                    },
                    "deleted_at": {
                      "description": "Deletion date of the disaster recovery site.",
                      "type": "string",
                      "format": "date-time"
                    },
                    "failover_readiness": {
                      "description": "Failover readiness status of the disaster recovery site. This property can have the following values: OK - ready for failover; WARNING - proceed with caution; or ERROR - not ready for failover.",
                      "enum": [
                        "ERROR",
                        "OK",
                        "WARNING"
                      ],
                      "type": "string"
                    },
                    "status": {
                      "description": "The status of the disaster recovery site.",
                      "enum": [
                        "DEPROVISIONING",
                        "PROVISIONING",
                        "PROVISIONED"
                      ],
                      "type": "string"
                    },
                    "task_uuid": {
                      "$ref": "#/components/schemas/tenant_uuid_19"
                    },
                    "tenant_uuid": {
                      "$ref": "#/components/schemas/tenant_uuid_19"
                    },
                    "uuid": {
                      "$ref": "#/components/schemas/tenant_uuid_19"
                    },
                    "_links": {
                      "description": "Links and actions related to the disaster recovery site.",
                      "type": "array",
                      "minItems": 1,
                      "items": {
                        "oneOf": [
                          {
                            "description": "Link to the Connectivity page of the disaster recovery site. The link must be opened in a web browser.",
                            "type": "object",
                            "required": [
                              "rel",
                              "type",
                              "href"
                            ],
                            "properties": {
                              "rel": {
                                "description": "Identifier of the link to the Connectivity page of the disaster recovery site.",
                                "enum": [
                                  "DR_SITE_CONNECTIVITY_PAGE"
                                ],
                                "type": "string"
                              },
                              "type": {
                                "description": "Media type of the linked resource.",
                                "type": "string"
                              },
                              "href": {
                                "description": "URL to access the Connectivity page of the disaster recovery site.",
                                "type": "string",
                                "format": "uri"
                              }
                            }
                          }
                        ]
                      }
                    },
                    "_issues": {
                      "description": "Issues of the disaster recovery site.",
                      "type": "array",
                      "minItems": 0,
                      "items": {
                        "description": "Describes a single issue (constraint violation).",
                        "oneOf": [
                          {
                            "oneOf": [
                              {
                                "description": "Issue that causes the failover readiness to be in the 'WARNING' state.",
                                "allOf": [
                                  {
                                    "description": "Describes a single issue (constraint violation).",
                                    "type": "object",
                                    "required": [
                                      "target",
                                      "severity",
                                      "error"
                                    ],
                                    "properties": {
                                      "link": {
                                        "description": "Name or ID of the link for which the issue is returned.",
                                        "type": "string"
                                      },
                                      "domain": {
                                        "description": "Domain from which the constraint originates.",
                                        "enum": [
                                          "Access",
                                          "Licensing",
                                          "DisasterRecovery"
                                        ],
                                        "type": "string"
                                      },
                                      "target": {
                                        "description": "Path to or ID of the sub-resource that is linked to the issue. May be required for composite resources.",
                                        "type": "string"
                                      },
                                      "severity": {
                                        "description": "Severity of the issue.",
                                        "enum": [
                                          "warning",
                                          "WARNING",
                                          "error",
                                          "ERROR"
                                        ],
                                        "type": "string"
                                      },
                                      "error": {
                                        "$ref": "#/components/schemas/item0_20"
                                      }
                                    }
                                  },
                                  {
                                    "type": "object",
                                    "required": [
                                      "target",
                                      "severity",
                                      "error"
                                    ],
                                    "properties": {
                                      "domain": {
                                        "description": "Disaster Recovery domain.",
                                        "enum": [
                                          "DisasterRecovery"
                                        ],
                                        "type": "string"
                                      },
                                      "target": {
                                        "description": "UUID of the disaster recovery site on which the issue occurred.",
                                        "type": "string"
                                      },
                                      "severity": {
                                        "description": "Severity of the issue.",
                                        "enum": [
                                          "WARNING"
                                        ],
                                        "type": "string"
                                      },
                                      "error": {
                                        "oneOf": [
                                          {
                                            "description": "No VPN appliance is registered for the DR site with Site-to-Site VPN connectivity.",
                                            "allOf": [
                                              {
                                                "$ref": "#/components/schemas/item0_20"
                                              },
                                              {
                                                "type": "object",
                                                "required": [
                                                  "domain",
                                                  "code"
                                                ],
                                                "properties": {
                                                  "domain": {
                                                    "enum": [
                                                      "DisasterRecovery"
                                                    ],
                                                    "type": "string"
                                                  },
                                                  "code": {
                                                    "enum": [
                                                      "VPNS2SApplianceNotRegistered"
                                                    ],
                                                    "type": "string"
                                                  }
                                                }
                                              }
                                            ]
                                          },
                                          {
                                            "description": "VPN appliance error. This might happen when the last report from the VPN appliance was received too long ago or if the VPN appliance reported an error.",
                                            "allOf": [
                                              {
                                                "$ref": "#/components/schemas/item0_20"
                                              },
                                              {
                                                "type": "object",
                                                "required": [
                                                  "domain",
                                                  "code"
                                                ],
                                                "properties": {
                                                  "domain": {
                                                    "enum": [
                                                      "DisasterRecovery"
                                                    ],
                                                    "type": "string"
                                                  },
                                                  "code": {
                                                    "enum": [
                                                      "VPNS2SApplianceUnreachable"
                                                    ],
                                                    "type": "string"
                                                  }
                                                }
                                              }
                                            ]
                                          },
                                          {
                                            "description": "The VPN tunnel between the VPN gateway and the VPN appliance cannot be established for the DR site with Site-to-Site VPN connectivity.",
                                            "allOf": [
                                              {
                                                "$ref": "#/components/schemas/item0_20"
                                              },
                                              {
                                                "type": "object",
                                                "required": [
                                                  "domain",
                                                  "code"
                                                ],
                                                "properties": {
                                                  "domain": {
                                                    "enum": [
                                                      "DisasterRecovery"
                                                    ],
                                                    "type": "string"
                                                  },
                                                  "code": {
                                                    "enum": [
                                                      "VPNS2SConnectionFailure"
                                                    ],
                                                    "type": "string"
                                                  }
                                                }
                                              }
                                            ]
                                          },
                                          {
                                            "description": "No IPSec tunnels are configured for the DR site with IPSec VPN connectivity.",
                                            "allOf": [
                                              {
                                                "$ref": "#/components/schemas/item0_20"
                                              },
                                              {
                                                "type": "object",
                                                "required": [
                                                  "domain",
                                                  "code"
                                                ],
                                                "properties": {
                                                  "domain": {
                                                    "enum": [
                                                      "DisasterRecovery"
                                                    ],
                                                    "type": "string"
                                                  },
                                                  "code": {
                                                    "enum": [
                                                      "VPNIPSecNotConfigured"
                                                    ],
                                                    "type": "string"
                                                  }
                                                }
                                              }
                                            ]
                                          },
                                          {
                                            "description": "At least one of the IPSec tunnels could not be established.",
                                            "allOf": [
                                              {
                                                "$ref": "#/components/schemas/item0_20"
                                              },
                                              {
                                                "type": "object",
                                                "required": [
                                                  "domain",
                                                  "code"
                                                ],
                                                "properties": {
                                                  "domain": {
                                                    "enum": [
                                                      "DisasterRecovery"
                                                    ],
                                                    "type": "string"
                                                  },
                                                  "code": {
                                                    "enum": [
                                                      "VPNIPSecConnectionError"
                                                    ],
                                                    "type": "string"
                                                  }
                                                }
                                              }
                                            ]
                                          },
                                          {
                                            "description": "You have reached the \"Disaster recovery storage\" quota. To increase the quota, contact the Support team.",
                                            "allOf": [
                                              {
                                                "$ref": "#/components/schemas/item0_20"
                                              },
                                              {
                                                "type": "object",
                                                "required": [
                                                  "domain",
                                                  "code"
                                                ],
                                                "properties": {
                                                  "domain": {
                                                    "enum": [
                                                      "DisasterRecovery"
                                                    ],
                                                    "type": "string"
                                                  },
                                                  "code": {
                                                    "enum": [
                                                      "QuotaReachedDrStorage"
                                                    ],
                                                    "type": "string"
                                                  }
                                                }
                                              }
                                            ]
                                          },
                                          {
                                            "description": "You have reached the \"Cloud servers\" quota. To increase the quota, contact the Support team.",
                                            "allOf": [
                                              {
                                                "$ref": "#/components/schemas/item0_20"
                                              },
                                              {
                                                "type": "object",
                                                "required": [
                                                  "domain",
                                                  "code"
                                                ],
                                                "properties": {
                                                  "domain": {
                                                    "enum": [
                                                      "DisasterRecovery"
                                                    ],
                                                    "type": "string"
                                                  },
                                                  "code": {
                                                    "enum": [
                                                      "QuotaReachedCloudServers"
                                                    ],
                                                    "type": "string"
                                                  }
                                                }
                                              }
                                            ]
                                          },
                                          {
                                            "description": "You have reached the \"Compute points\" quota. To increase the quota, contact the Support team.",
                                            "allOf": [
                                              {
                                                "$ref": "#/components/schemas/item0_20"
                                              },
                                              {
                                                "type": "object",
                                                "required": [
                                                  "domain",
                                                  "code"
                                                ],
                                                "properties": {
                                                  "domain": {
                                                    "enum": [
                                                      "DisasterRecovery"
                                                    ],
                                                    "type": "string"
                                                  },
                                                  "code": {
                                                    "enum": [
                                                      "QuotaReachedComputePoints"
                                                    ],
                                                    "type": "string"
                                                  }
                                                }
                                              }
                                            ]
                                          }
                                        ]
                                      }
                                    }
                                  }
                                ],
                                "type": "object"
                              },
                              {
                                "description": "Issue that causes the failover readiness to be in the 'ERROR' state.",
                                "type": "object",
                                "required": [
                                  "target",
                                  "severity",
                                  "error"
                                ],
                                "properties": {
                                  "domain": {
                                    "description": "Domain from which the constraint originates.",
                                    "enum": [
                                      "DisasterRecovery"
                                    ],
                                    "type": "string"
                                  },
                                  "target": {
                                    "description": "UUID of the DR site on which the issue occurred.",
                                    "type": "string"
                                  },
                                  "severity": {
                                    "description": "Severity of the issue.",
                                    "enum": [
                                      "ERROR"
                                    ],
                                    "type": "string"
                                  },
                                  "error": {
                                    "oneOf": [
                                      {
                                        "description": "You cannot perform any operations because the DR site is being deployed or removed.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "SiteNotReady"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "The \"DR and Direct Backup to Azure\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "SubscriptionNotFoundAzureDR"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "The \"Disaster recovery storage\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "SubscriptionNotFoundDrStorage"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "The \"Compute points\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "SubscriptionNotFoundComputePoints"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "The \"Cloud servers\" quota is not enabled for your tenant. To enable the quota, contact the Support team.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "SubscriptionNotFoundCloudServers"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "You exceeded the \"DR and Direct Backup to Azure\" quota. As a result, the DR functionality was disabled on some protected servers. To increase the quota, contact the Support team.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "QuotaExceededAzureDR"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "There are no available compute points for testing the Disaster Recovery functionality. {{additionalComputePoints}} additional compute points will be added next month. To enable the complete functionality, contact your partner and activate the Disaster Recovery service.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code",
                                              "context"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "QuotaExceededBaseDR"
                                                ],
                                                "type": "string"
                                              },
                                              "context": {
                                                "type": "object",
                                                "required": [
                                                  "additionalComputePoints"
                                                ],
                                                "properties": {
                                                  "additionalComputePoints": {
                                                    "type": "integer",
                                                    "minimum": 0
                                                  }
                                                }
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "You have exceeded the \"Cloud servers\" quota. To increase the quota, contact the Support team.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "QuotaExceededCloudServers"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "You have exceeded the \"Compute points\" quota. To increase the quota, contact the Support team.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "QuotaExceededComputePoints"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "VPN gateway error. This might happen when the last report from the VPN gateway was received too long ago or if the VPN gateway reported an error.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "VPNGatewayUnreachable"
                                                ],
                                                "type": "string"
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "The operation cannot be performed due to an issue with the cloud connection agent in public cloud connection '{{connectionName}}'. Please go to Infrastructure > Public clouds, select the corresponding cloud connection, click Renew access, and follow the instructions. If the issue persists, contact support.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code",
                                              "context"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "CloudConnectionIssue"
                                                ],
                                                "type": "string"
                                              },
                                              "context": {
                                                "type": "object",
                                                "required": [
                                                  "connectionName"
                                                ],
                                                "properties": {
                                                  "connectionName": {
                                                    "type": "string"
                                                  },
                                                  "issueCodes": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          }
                                        ]
                                      },
                                      {
                                        "description": "The operation cannot be performed due to an issue with the cloud connection agent in public cloud connection '{{connectionName}}'. Please go to Infrastructure > Public clouds, select the corresponding cloud connection, click Renew access, and follow the instructions. If the issue persists, contact support.",
                                        "allOf": [
                                          {
                                            "$ref": "#/components/schemas/item0_20"
                                          },
                                          {
                                            "type": "object",
                                            "required": [
                                              "domain",
                                              "code",
                                              "context"
                                            ],
                                            "properties": {
                                              "domain": {
                                                "enum": [
                                                  "DisasterRecovery"
                                                ],
                                                "type": "string"
                                              },
                                              "code": {
                                                "enum": [
                                                  "CloudConnectionWorkerIssue"
                                                ],
                                                "type": "string"
                                              },
                                              "context": {
                                                "type": "object",
                                                "required": [
                                                  "connectionName"
                                                ],
                                                "properties": {
                                                  "connectionName": {
                                                    "type": "string"
                                                  },
                                                  "issueCodes": {
                                                    "type": "array",
                                                    "items": {
                                                      "type": "string"
                                                    }
                                                  }
                                                }
                                              }
                                            }
                                          }
                                        ]
                                      }
                                    ]
                                  }
                                }
                              }
                            ],
                            "type": "object"
                          }
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request could not be validated against the RAML schema.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "401": {
            "description": "The request was denied because the bearer access token was invalid or missing.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "403": {
            "description": "The request was denied because the bearer access token did not have the required privileges.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "404": {
            "description": "The requested resource was not found.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "429": {
            "description": "The response status code indicates that the service is overloaded and you must wait before the next request.",
            "headers": {
              "Retry-After": {
                "description": "The time (in seconds) that the client must wait before the next request.",
                "required": true,
                "schema": {
                  "description": "The time (in seconds) that the client must wait before the next request.",
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 3600
                }
              }
            },
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "500": {
            "description": "An internal server error occurred while processing the request.",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/error_api_response"
                }
              }
            }
          },
          "504": {
            "description": "Gateway time-out.",
            "content": {}
          }
        },
        "security": [
          {
            "oauth2": [
              "dr_service::admin",
              "dr::support_operator",
              "protection::readonly"
            ]
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "vault_id": {
        "title": "ID",
        "description": "Generic object identifier.",
        "type": "string",
        "pattern": "^[a-zA-Z0-9-@]+$"
      },
      "item0": {
        "description": "Link to the cloud server configuration page. The link must be opened in a web browser.",
        "type": "object",
        "required": [
          "rel",
          "type",
          "href"
        ],
        "properties": {
          "rel": {
            "description": "Identifier of the link to the cloud server configuration page.",
            "enum": [
              "DR_CLOUD_SERVER_PAGE"
            ],
            "type": "string"
          },
          "type": {
            "description": "Media type of the linked resource.",
            "type": "string"
          },
          "href": {
            "description": "URL of the cloud server configuration page.",
            "type": "string",
            "format": "uri"
          }
        }
      },
      "item1": {
        "description": "Link to the page with the remote console of the cloud server. The link must be opened in a web browser.",
        "type": "object",
        "required": [
          "rel",
          "type",
          "href"
        ],
        "properties": {
          "rel": {
            "description": "Identifier of the link to the page with the remote console of the cloud server.",
            "enum": [
              "DR_CLOUD_SERVER_REMOTE_CONSOLE_PAGE"
            ],
            "type": "string"
          },
          "type": {
            "description": "Media type of the linked resource.",
            "type": "string"
          },
          "href": {
            "description": "URL of the page with the remote console of the cloud server.",
            "type": "string",
            "format": "uri"
          }
        }
      },
      "item2": {
        "description": "Link that fetches the list of recovery points that are available for the cloud server recovery and failover.",
        "type": "object",
        "required": [
          "rel",
          "type",
          "href"
        ],
        "properties": {
          "rel": {
            "description": "Identifier of the link that fetches the list of recovery points that are available for the cloud server recovery and failover.",
            "enum": [
              "DR_CLOUD_SERVER_RECOVERY_POINTS"
            ],
            "type": "string"
          },
          "type": {
            "description": "Media type of the linked resource.",
            "type": "string"
          },
          "href": {
            "description": "URL from which the GET request fetches the list of recovery points that are available for the cloud server recovery and failover.",
            "type": "string",
            "format": "uri"
          }
        }
      },
      "item0_1": {
        "description": "Issue with the unavailability of the remote VM console of the cloud server.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_2"
          },
          {
            "type": "object",
            "required": [
              "target",
              "severity",
              "error"
            ],
            "properties": {
              "domain": {
                "description": "Disaster Recovery domain.",
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "link": {
                "description": "Name of the affected link.",
                "enum": [
                  "DR_CLOUD_SERVER_REMOTE_CONSOLE_PAGE"
                ],
                "type": "string"
              },
              "target": {
                "description": "UUID of the cloud server on which the issue occurred.",
                "type": "string"
              },
              "severity": {
                "description": "Severity of the issue.",
                "enum": [
                  "ERROR"
                ],
                "type": "string"
              },
              "error": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/SiteNotReady"
                  },
                  {
                    "$ref": "#/components/schemas/ServerNotReady"
                  }
                ]
              }
            }
          }
        ],
        "type": "object"
      },
      "recovery_point": {
        "description": "Composite identifier of a recovery point.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "archive_id",
          "backup_id",
          "vault_id"
        ],
        "properties": {
          "archive_id": {
            "$ref": "#/components/schemas/vault_id"
          },
          "backup_id": {
            "$ref": "#/components/schemas/vault_id"
          },
          "vault_id": {
            "$ref": "#/components/schemas/vault_id"
          }
        }
      },
      "last_task_uuid": {
        "title": "UUID",
        "description": "Universally unique object identifier.",
        "type": "string",
        "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
      },
      "item0_2": {
        "description": "Describes a single issue (constraint violation).",
        "type": "object",
        "required": [
          "target",
          "severity",
          "error"
        ],
        "properties": {
          "link": {
            "description": "Name or ID of the link for which the issue is returned.",
            "type": "string"
          },
          "domain": {
            "description": "Domain from which the constraint originates.",
            "enum": [
              "Access",
              "Licensing",
              "DisasterRecovery"
            ],
            "type": "string"
          },
          "target": {
            "description": "Path to or ID of the sub-resource that is linked to the issue. May be required for composite resources.",
            "type": "string"
          },
          "severity": {
            "description": "Severity of the issue.",
            "enum": [
              "warning",
              "WARNING",
              "error",
              "ERROR"
            ],
            "type": "string"
          },
          "error": {
            "$ref": "#/components/schemas/item0_3"
          }
        }
      },
      "SiteNotReady": {
        "description": "You cannot perform any operations because the DR site is being deployed or removed.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_3"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "SiteNotReady"
                ],
                "type": "string"
              }
            }
          }
        ]
      },
      "item0_3": {},
      "VPNGatewayUnreachable": {
        "description": "VPN gateway error. This might happen when the last report from the VPN gateway was received too long ago or if the VPN gateway reported an error.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_3"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "VPNGatewayUnreachable"
                ],
                "type": "string"
              }
            }
          }
        ]
      },
      "NotAllowed": {
        "description": "Method specified in REST request is not allowed.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_3"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code",
              "context"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "NotAllowed"
                ],
                "type": "string"
              },
              "context": {}
            }
          }
        ]
      },
      "ResourceBusy": {
        "description": "The resource is busy, another task is currently in progress. Try again later.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_3"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code",
              "context"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "ResourceBusy"
                ],
                "type": "string"
              },
              "context": {
                "type": "object",
                "required": [
                  "resource_id",
                  "task_uuids"
                ],
                "properties": {
                  "resource_id": {
                    "type": "string"
                  },
                  "task_uuids": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/last_task_uuid"
                    }
                  }
                }
              }
            }
          }
        ]
      },
      "ServerNotReady": {
        "description": "The operation is not applicable to cloud servers in this state.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_3"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "ServerNotReady"
                ],
                "type": "string"
              }
            }
          }
        ]
      },
      "error_api_response": {
        "type": "object",
        "required": [
          "error"
        ],
        "properties": {
          "error": {}
        }
      },
      "vault_id_4": {
        "title": "ID",
        "description": "Generic object identifier.",
        "type": "string",
        "pattern": "^[a-zA-Z0-9-@]+$"
      },
      "item0_5": {
        "description": "Link to the cloud server configuration page. The link must be opened in a web browser.",
        "type": "object",
        "required": [
          "rel",
          "type",
          "href"
        ],
        "properties": {
          "rel": {
            "description": "Identifier of the link to the cloud server configuration page.",
            "enum": [
              "DR_CLOUD_SERVER_PAGE"
            ],
            "type": "string"
          },
          "type": {
            "description": "Media type of the linked resource.",
            "type": "string"
          },
          "href": {
            "description": "URL of the cloud server configuration page.",
            "type": "string",
            "format": "uri"
          }
        }
      },
      "item1_6": {
        "description": "Link to the page with the remote console of the cloud server. The link must be opened in a web browser.",
        "type": "object",
        "required": [
          "rel",
          "type",
          "href"
        ],
        "properties": {
          "rel": {
            "description": "Identifier of the link to the page with the remote console of the cloud server.",
            "enum": [
              "DR_CLOUD_SERVER_REMOTE_CONSOLE_PAGE"
            ],
            "type": "string"
          },
          "type": {
            "description": "Media type of the linked resource.",
            "type": "string"
          },
          "href": {
            "description": "URL of the page with the remote console of the cloud server.",
            "type": "string",
            "format": "uri"
          }
        }
      },
      "item2_7": {
        "description": "Link that fetches the list of recovery points that are available for the cloud server recovery and failover.",
        "type": "object",
        "required": [
          "rel",
          "type",
          "href"
        ],
        "properties": {
          "rel": {
            "description": "Identifier of the link that fetches the list of recovery points that are available for the cloud server recovery and failover.",
            "enum": [
              "DR_CLOUD_SERVER_RECOVERY_POINTS"
            ],
            "type": "string"
          },
          "type": {
            "description": "Media type of the linked resource.",
            "type": "string"
          },
          "href": {
            "description": "URL from which the GET request fetches the list of recovery points that are available for the cloud server recovery and failover.",
            "type": "string",
            "format": "uri"
          }
        }
      },
      "item0_8": {
        "description": "Issue with the unavailability of the remote VM console of the cloud server.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_11"
          },
          {
            "type": "object",
            "required": [
              "target",
              "severity",
              "error"
            ],
            "properties": {
              "domain": {
                "description": "Disaster Recovery domain.",
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "link": {
                "description": "Name of the affected link.",
                "enum": [
                  "DR_CLOUD_SERVER_REMOTE_CONSOLE_PAGE"
                ],
                "type": "string"
              },
              "target": {
                "description": "UUID of the cloud server on which the issue occurred.",
                "type": "string"
              },
              "severity": {
                "description": "Severity of the issue.",
                "enum": [
                  "ERROR"
                ],
                "type": "string"
              },
              "error": {
                "oneOf": [
                  {
                    "$ref": "#/components/schemas/SiteNotReady_12"
                  },
                  {
                    "$ref": "#/components/schemas/ServerNotReady_17"
                  }
                ]
              }
            }
          }
        ],
        "type": "object"
      },
      "recovery_point_9": {
        "description": "Composite identifier of a recovery point.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "archive_id",
          "backup_id",
          "vault_id"
        ],
        "properties": {
          "archive_id": {
            "$ref": "#/components/schemas/vault_id_4"
          },
          "backup_id": {
            "$ref": "#/components/schemas/vault_id_4"
          },
          "vault_id": {
            "$ref": "#/components/schemas/vault_id_4"
          }
        }
      },
      "last_task_uuid_10": {
        "title": "UUID",
        "description": "Universally unique object identifier.",
        "type": "string",
        "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
      },
      "item0_11": {
        "description": "Describes a single issue (constraint violation).",
        "type": "object",
        "required": [
          "target",
          "severity",
          "error"
        ],
        "properties": {
          "link": {
            "description": "Name or ID of the link for which the issue is returned.",
            "type": "string"
          },
          "domain": {
            "description": "Domain from which the constraint originates.",
            "enum": [
              "Access",
              "Licensing",
              "DisasterRecovery"
            ],
            "type": "string"
          },
          "target": {
            "description": "Path to or ID of the sub-resource that is linked to the issue. May be required for composite resources.",
            "type": "string"
          },
          "severity": {
            "description": "Severity of the issue.",
            "enum": [
              "warning",
              "WARNING",
              "error",
              "ERROR"
            ],
            "type": "string"
          },
          "error": {
            "$ref": "#/components/schemas/item0_13"
          }
        }
      },
      "SiteNotReady_12": {
        "description": "You cannot perform any operations because the DR site is being deployed or removed.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_13"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "SiteNotReady"
                ],
                "type": "string"
              }
            }
          }
        ]
      },
      "item0_13": {},
      "VPNGatewayUnreachable_14": {
        "description": "VPN gateway error. This might happen when the last report from the VPN gateway was received too long ago or if the VPN gateway reported an error.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_13"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "VPNGatewayUnreachable"
                ],
                "type": "string"
              }
            }
          }
        ]
      },
      "NotAllowed_15": {
        "description": "Method specified in REST request is not allowed.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_13"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code",
              "context"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "NotAllowed"
                ],
                "type": "string"
              },
              "context": {}
            }
          }
        ]
      },
      "ResourceBusy_16": {
        "description": "The resource is busy, another task is currently in progress. Try again later.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_13"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code",
              "context"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "ResourceBusy"
                ],
                "type": "string"
              },
              "context": {
                "type": "object",
                "required": [
                  "resource_id",
                  "task_uuids"
                ],
                "properties": {
                  "resource_id": {
                    "type": "string"
                  },
                  "task_uuids": {
                    "type": "array",
                    "items": {
                      "$ref": "#/components/schemas/last_task_uuid_10"
                    }
                  }
                }
              }
            }
          }
        ]
      },
      "ServerNotReady_17": {
        "description": "The operation is not applicable to cloud servers in this state.",
        "allOf": [
          {
            "$ref": "#/components/schemas/item0_13"
          },
          {
            "type": "object",
            "required": [
              "domain",
              "code"
            ],
            "properties": {
              "domain": {
                "enum": [
                  "DisasterRecovery"
                ],
                "type": "string"
              },
              "code": {
                "enum": [
                  "ServerNotReady"
                ],
                "type": "string"
              }
            }
          }
        ]
      },
      "backup_id": {
        "title": "ID",
        "description": "Generic object identifier.",
        "type": "string",
        "pattern": "^[a-zA-Z0-9-@]+$"
      },
      "tenant_uuid": {
        "title": "UUID",
        "description": "Universally unique object identifier.",
        "type": "string",
        "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
      },
      "item0_18": {},
      "tenant_uuid_19": {
        "title": "UUID",
        "description": "Universally unique object identifier.",
        "type": "string",
        "pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$"
      },
      "item0_20": {}
    },
    "securitySchemes": {
      "oauth2": {
        "type": "oauth2",
        "description": "OAuth 2.0 security scheme definition for a user authorization",
        "flows": {
          "password": {
            "scopes": {
              "acep::consumer": "",
              "dr::support_operator": "",
              "dr_backup_processor": "",
              "dr_service::admin": "",
              "dr_service::vpn_appliance": "",
              "dr_service::vpn_server": "",
              "partner_admin": "",
              "protection::readonly": "",
              "root_admin": "",
              "resource_manager::admin": ""
            },
            "tokenUrl": "https://dev-cloud.acronis.com/api/2/idp/token"
          },
          "clientCredentials": {
            "scopes": {
              "acep::consumer": "",
              "dr::support_operator": "",
              "dr_backup_processor": "",
              "dr_service::admin": "",
              "dr_service::vpn_appliance": "",
              "dr_service::vpn_server": "",
              "partner_admin": "",
              "protection::readonly": "",
              "root_admin": "",
              "resource_manager::admin": ""
            },
            "tokenUrl": "https://dev-cloud.acronis.com/api/2/idp/token"
          },
          "authorizationCode": {
            "scopes": {
              "acep::consumer": "",
              "dr::support_operator": "",
              "dr_backup_processor": "",
              "dr_service::admin": "",
              "dr_service::vpn_appliance": "",
              "dr_service::vpn_server": "",
              "partner_admin": "",
              "protection::readonly": "",
              "root_admin": "",
              "resource_manager::admin": ""
            },
            "authorizationUrl": "https://dev-cloud.acronis.com/api/2/idp/authorize",
            "tokenUrl": "https://dev-cloud.acronis.com/api/2/idp/token"
          }
        }
      }
    }
  },
  "servers": [
    {
      "url": "https://dev-cloud.acronis.com/api/dr/v2",
      "variables": {}
    }
  ]
}