Backup operations#

This section describes the backup operations that are supported by the Cloud Backup API.

Start or stop a backup manually#

POST /v1.0/{tenant_id}/backup/action-requested

This operation manually starts or stops a backup and returns the identifier of the instance of the backup.

When manually starting a backup, provide the backup configuration identifier (BackupConfigurationId) for ID. You can retrieve a list of all backup configurations for an agent with the Get all backup configurations for an agent operation. When manually stopping a backup, provide the backup identifier for the ID. The backup identifier is given when the backup is started.

Note

You might need to call the operation to wake up agents before starting or stopping a backup manually.

This table shows the possible response codes for this operation:

Response Code

Name

Description

200

OK

When manually starting a backup, the request succeeded.

204

No Content

When manually stopping a backup, the request succeeded.

400

Bad Request

There were one or more errors in the request.

401

Unauthorized

The supplied token was not authorized to access the resources. Either it is expired or invalid.

403

Forbidden

Access to the requested resource was denied.

404

Not Found

The backend services did not find anything matching the request URI.

500

Instance Fault

This is a generic server error. The message contains the reason for the error. This error could wrap several error messages.

503

Service Unavailable

This is a generic server error. The message contains the reason for the error. This error could wrap several error messages.

Request#

This table shows the URI parameters for the request:

Name

Type

Description

{tenant_id}

String

The unique identifier of the tenant or account.

This table shows the body parameters for the request:

Name

Type

Description

Action

String (Required)

Specifies the action. Valid values are “StartManual” and “StopManual”.

Id

String (Required)

Specifies the value of BackupConfigurationId.

Example: Start a backup manually JSON request

{
    "Action" : "StartManual",
    "Id": 148325
}

Example: Stop a backup manually JSON request

{
    "Action" : "StopManual",
    "Id": 368785
}

Response#

This table shows the body parameters for the response:

Name

Type

Description

Id

String

Specifies BackupId, a unique backup ID that identifies the backup to start manually.

Example: Start a backup manually response

368785

List backup details#

GET /v1.0/{tenant_id}/backup/{backupId}

This operation lists details about the specified backup.

Note

The authenticated user must have access to the specified backup in order to retrieve its details.

This table shows the possible response codes for this operation:

Response Code

Name

Description

200

OK

The request succeeded.

400

Bad Request

There were one or more errors in the request.

401

Unauthorized

The supplied token was not authorized to access the resources. Either it is expired or invalid.

403

Forbidden

Access to the requested resource was denied.

404

Not Found

The backend services did not find anything matching the request URI.

500

Instance Fault

This is a generic server error. The message contains the reason for the error. This error could wrap several error messages.

503

Service Unavailable

This is a generic server error. The message contains the reason for the error. This error could wrap several error messages.

Request#

This table shows the URI parameters for the request:

Name

Type

Description

{tenant_id}

String

The unique identifier of the tenant or account.

{backupId}

Integer

The unique identifier of a backup.

This operation does not accept a request body.

Example: List backup details JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/backup/134332
User-Agent: controlpanel.drivesrvr.com
Host: dfw.backup.api.rackspacecloud.com
Content-Type: application/json;
Content-Length: 0
X-Auth-Token: 95b1788906f74d279d03001c6a14f3fe

Response#

This table shows the body parameters for the response:

Name

Type

Description

BackupId

String

Identifies a unique backup.

BackupConfigurationId

String

Autogenerated ID that uniquely identifies the backup configuration that is associated with this backup.

CurrentState

String

Indicates the current state of the backup. Valid values are Queued, InProgress, Skipped, Missed, Stopped, Completed, Failed, Preparing, StartRequested, StartScheduled, StopRequested, and CompletedWithErrors.

BackupConfigurationName

String

Specifies the name of the backup configuration.

MachineAgentId

String

ID that uniquely identifies a Cloud Backup agent.

MachineName

String

Name of the Cloud Server where the Cloud Backup agent resides.

StateChangeTime

String

Indicates when the backup last changed state.

IsEncrypted

String

Indicates if backups are encrypted. Valid values are true or false.

EncryptionKey

String

Specifies the encryption key.

Example: List backup details JSON response

{
    "BackupId": 134332,
    "BackupConfigurationId": 158519,
    "CurrentState": "Queued",
    "BackupConfigurationName": "Weekly Website Backup",
    "MachineAgentId": 224321,
    "MachineName": "Web Server",
    "StateChangeTime": "\/Date(1358530097000)\/",
    "IsEncrypted": false,
    "EncryptionKey": {
        "ModulusHex": "a3261939975948bb7a58dffe5ff54e65f0498f9 175f5a09288810b8975871e99af3b5dd94057b0fc07535f5f97444 504fa35169d461d0d30cf0192e307727c065168c788771c561a940 0fb49175e9e6aa4e23fe11af69e9412dd23b0cb6684c4c2429bce1 39e848ab26d0829073351f4acd36074eafd036a5eb83359d2a698d5",
        "ExponentHex": 20010
    }
}

List completed backups#

GET /v1.0/{tenant_id}/backup/completed/{backupConfigurationId}

This operation lists the details for backups that can still be restored.

Backups are returned only for the specified backup configuration ID (BackupConfigurationId).

The backup configuration ID is specific to the agent. You can retrieve a list of all backup configurations for an agent with the List all backup configurations for an agent operation.

Note

The authenticated user must have access to the specified backup configuration.

This table shows the possible response codes for this operation:

Response Code

Name

Description

200

OK

The request succeeded.

400

Bad Request

There were one or more errors in the request.

401

Unauthorized

The supplied token was not authorized to access the resources. Either it is expired or invalid.

403

Forbidden

Access to the requested resource was denied.

404

Not Found

The backend services did not find anything matching the request URI.

500

Instance Fault

This is a generic server error. The message contains the reason for the error. This error could wrap several error messages.

503

Service Unavailable

This is a generic server error. The message contains the reason for the error. This error could wrap several error messages.

Request#

This table shows the URI parameters for the request:

Name

Type

Description

{tenant_id}

String

The unique identifier of the tenant or account.

{backupConfigurationId}

Integer

The unique identifier of the backup configuration.

This operation does not accept a request body.

Example: List completed backups JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/backup/completed/158638
User-Agent: controlpanel.drivesrvr.com
Host: dfw.backup.api.rackspacecloud.com
Content-Type: application/json;
Content-Length: 0
X-Auth-Token: 95b1788906f74d279d03001c6a14f3fe

Response#

This table shows the body parameters for the response:

Name

Type

Description

BackupId

String

Identifies a unique backup.

BackupConfigurationId

String

Autogenerated ID that uniquely identifies the backup configuration that is associated with this backup.

BackupConfigurationName

String

Specifies the name of the backup configuration.

MachineAgentId

String

ID that uniquely identifies a Cloud Backup agent.

MachineName

String

Name of the Cloud Server where the Cloud Backup agent resides.

CompletedTime

String

Indicates the time when the backup completed.

BytesSearched

String

Indicates how many bytes were searched for this backup.

NumErrors

String

Indicates the numbers of errors that were encountered during the run for this backup.

Example: List completed backups JSON response

[
     {
         "BackupId": 134386,
         "BackupConfigurationId": 158638,
         "BackupConfigurationName": "Weekly Website Backup",
         "MachineName": "Web Server",
         "MachineAgentId": 224505,
         "CompletedTime": "\/Date(1358535352000)\/",
         "BytesSearched": 10245674584,
         "NumErrors": 0
     }
]

Get a backup report#

GET /v1.0/{tenant_id}/backup/report/{backupId}

This operation gets details about a completed backup.

This table shows the possible response codes for this operation:

Response Code

Name

Description

200

OK

The request succeeded.

400

Bad Request

There were one or more errors in the request.

401

Unauthorized

The supplied token was not authorized to access the resources. Either it is expired or invalid.

403

Forbidden

Access to the requested resource was denied.

404

Not Found

The backend services did not find anything matching the request URI.

500

Instance Fault

This is a generic server error. The message contains the reason for the error. This error could wrap several error messages.

503

Service Unavailable

This is a generic server error. The message contains the reason for the error. This error could wrap several error messages.

Request#

This table shows the URI parameters for the request:

Name

Type

Description

{tenant_id}

String

The unique identifier of the tenant or account.

{backupId}

Integer

The unique identifier of a backup.

This operation does not accept a request body.

Example: Get a backup report JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/backup/report/92500
User-Agent: controlpanel.drivesrvr.com
Host: dfw.backup.api.rackspacecloud.com
Content-Type: application/json;
Content-Length: 0
X-Auth-Token: 95b1788906f74d279d03001c6a14f3fe

Response#

Example: Get a backup report JSON response

{
    "BackupId": 92500,
    "BackupConfigurationId": 101145,
    "BackupConfigurationName": "Database Server Backup",
    "BackupConfigurationIsDeleted": false,
    "ComputerName": "Database Server",
    "MachineAgentId": 95874,
    "State": "CompletedWithErrors",
    "CanRestore": true,
    "StartTime": "\/Date(1351118760000)\/",
    "CompletedTime": "\/Date(1351119033000)\/",
    "Duration": "00:04:33",
    "FilesSearched": "11936",
    "BytesSearched": "3.7 GB",
    "FilesBackedUp": "6",
    "BytesBackedUp": "178.1 MB",
    "NumErrors": 2,
    "Reason": "Success",
    "Diagnostics": "Completed With Errors",
    "ErrorList": [
        {
            "BackupReportID": 48785,
            "ListIndex": 3210,
            "ErrorType": 101,
            "ErrorDesc": "The agent experienced a problem. (Rax)",
            "ExceptionDesc": "Cannot open file \"C:\\Program Files\\MicrosoftSQL Server\\MSSQL10_50.MSSQLSERVER\\MSSQL\\DATA\\tempdb.mdf\". The process cannot access the file because it is beingused by another process. .",
            "ExceptionDetails": "1: [WindowsFs.cpp: 157-rax::WindowsFs::Open]Error Code(313): Cannot open file \"C:\\Program Files\\Microsoft SQL Server\\MSSQL10_50.MSSQLSERVER\\MSSQL\\DATA\\tempdb.mdf\". The process cannot access the file because it is being used by another process. .",
            "ExceptionCode": 313,
            "Path": "C:\\Program Files\\Microsoft SQL Server\\MSSQL10_50.MSSQLSERVER\\MSSQL\\DATA\\tempdb.mdf"
        },
        {
            "BackupReportID": 48785,
            "ListIndex": 3211,
            "ErrorType": 101,
            "ErrorDesc": "The agent experienced a problem. (Rax)",
            "ExceptionDesc": "Cannot open file \"C:\\Program Files\\MicrosoftSQL Server\\MSSQL10_50.MSSQLSERVER\\MSSQL\\DATA\\templog.ldf\". The process cannot access the file because it is being used by another process. .",
            "ExceptionDetails": "1: [WindowsFs.cpp: 157-rax::WindowsFs::Open]Error Code(313): Cannot open file \"C:\\Program Files\\Microsoft SQL Server\\MSSQL10_50.MSSQLSERVER\\MSSQL\\DATA\\templog.ldf\". The process cannot access the file because it is being used by another process. .",
            "ExceptionCode": 313,
            "Path": "C:\\Program Files\\Microsoft SQL Server\\MSSQL10_50.MSSQLSERVER\\MSSQL\\DATA\\templog.ldf"
        }
    ]
}