Acronis Disaster Recovery Service API
The Acronis Disaster Recovery Service API allows organizations to automate and streamline their disaster recovery processes.
The Acronis Disaster Recovery Service API allows organizations to automate and streamline their disaster recovery processes.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/disaster-recovery-service-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
{
"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": [
{
# --- truncated at 32 KB (300 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/acronis/refs/heads/main/openapi/_original/acronis-disaster-recovery-v2-openapi.json