API Reference

Learn about the available Rackspace Cloud Backup API resources and operations, and see request and response examples. You can use the Rackspace Cloud Backup API operations to interact directly with the service.

Note

You can also perform operations by using the Cloud Control Panel.


Agent operations

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

List the agent details

GET /v1.0/{tenant_id}/agent/{machineAgentId}

This operation lists details about the machine and its agent.

📘

Note :If the agent Status is showing as Offline, it is possible that the Cloud Backup agent might be idle and not posting any heartbeats. You can wake up your Cloud Backup agent by using the operation described in Wake up agents. You should wait 10-20 seconds after using this operation to determine the online status of the agent reliably.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad requestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{machineAgentId}IntegerThe unique identifier of the Cloud Backup agent.

This operation does not accept a request body.

Example: List agent details JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/agent/213564
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:

NameTypeDescription
AgentVersionStringVersion of the Rackspace Cloud Backup agent.
ArchitectureStringBase architecture of the Cloud Server. Valid values are 64- bit or 32-bit.
FlavorStringRaxCloudServer – for Rackspace Cloud Servers.
BackupVaultSizeStringSize of backup data in MB.
BackupContainerStringFull public URI for Cloud Files where backups are stored for this agent.
CleanupAllowedStringIndicates whether a cleanup can be manually triggered on the backup vault. Valid values are true or false.
DatacenterStringData center where the Cloud Server is located. Valid values are IAD, ORD, DFW, HKG, LON, or SYD).
IPAddressStringPublic IPv4 address of the Cloud Server.
IsDisabledStringIndicates if the Rackspace Cloud Backup agent on the server is disabled. Valid values are true or false.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server.
OperatingSystemStringOperating system of Cloud Server.
OperatingSystemVersionStringOperating system version of Cloud Server.
PublicKeyStringPublic key of the public/private encryption key pair.
StatusStringStatus of the Cloud Backup agent. Valid values are Online or Offline.
TimeOfLastSuccessfulBackupStringTime of last successful backup.
UseServiceNetStringIndicates if the Cloud Backup agent is using ServiceNet to backup data to Cloud Files. Valid values are true or false.
HostServerIdStringServer ID of the host server where the Cloud Backup agent is running.

Example: List agent details JSON response

{
"AgentVersion": "1.05.005848",
"Architecture": "64-bit",
"Flavor": "RaxCloudServer",
"BackupVaultSize": "35.3 MB",
"CleanupAllowed": true,
"Datacenter": "DFW",
"IPAddress": "192.168.1.1",
"IsDisabled": false,
"IsEncrypted": true,
"MachineAgentId": 213564,
"MachineName": "Web Server",
"OperatingSystem": "Windows Server 2012",
"OperatingSystemVersion": "",
"PublicKey": {
"ModulusHex": "a5261939156948bb7a58dffe5ff89e65f0498f9175f5a 98288810b8975871e99af3b5dd94057b0fc07535f5f97444504fa35169d4 61d0d30cf0192e307727c065168c788771c561a9400fb61975e9e6aa4e23 fe11af69e9412dd23b0cb6684c4c2429bce139e848ab26d0829073351f4a cd36074eafd036a5eb83359d2a698d0",
"ExponentHex": "09528"
},
"Status": "Online",
"TimeOfLastSuccessfulBackup": "\/Date(1357817400000)\/",
"UseServiceNet": true,

"HostServerId" :  "87c3b6e1-fb1a-41f9-91e5-313ae35a5a06"

}

Enable or disable an agent

POST /v1.0/{tenant_id}/agent/enable

This operation enables or disables an agent. Disabling an agent does not delete it or its data. You can re-enable disabled agents later.

📘

Note :Encryption is important for keeping your data confidential. However, encryption is also expensive. It takes significantly longer to backup and restore encrypted data. Consider if the data you are storing must be encrypted. If not, it is best to proceed without encryption. Encryption applies across the board, and once you encrypt a backup server, there is no turning back.

This table shows the possible response codes for this operation:

Response CodeNameDescription
204No ContentThe request succeeded.
400Bad requestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
MachineAgentIdString (Required)ID that uniquely identifies a Cloud Backup agent.
EnableString (Required)Indicates if agent is enabled (true) or disabled (false).

Example: Enable an agent JSON request

{
"MachineAgentId": 92384579,
"Enable": true
}

Example: Disable an agent JSON request

{
"MachineAgentId": 92384579,
"Enable": false
}

Response

This operation does not return a response body.

Enable volume encryption

POST /v1.0/{tenant_id}/agent/encrypt

This operation enables volume encryption with AES-256 encryption if it is not already enabled. If you need assistance generating your encrypted key, see Generate your encrypted key in Cloud Backup.

📘

Note :After encryption is turned on, you cannot turn it off. This is a security measure. If anyone ever gained access to your account, they would not be able to access your backups without your passphrase.

If you lose or forget your passphrase, you will not be able to recover your encrypted backups.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad requestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
MachineAgentIdString (Required)ID that uniquely identifies a Cloud Backup agent.
EncryptedPasswordHexString (Required)Your encrypted password.

Example: Enable volume encryption JSON request

{
"MachineAgentId" : 869,
"EncryptedPasswordHex" : "0bff42a526c78076a3d986fa75eecd 83211f166fd7692797cdde2317faee544e3300614fd54b8c0d81f975 3e58cb1ffbd62d3faf0d2bf52e79ce5cd9c6d84b5295e3dea629e71b 0a5e26efda50ff8e05a5475bb7cbd553d238c05655f56ece2df070ce 374ff1e0724827c2300e373241e94c4bc13441561604e3e70b5034eb 58d717864f304c9c73b6d1d46c4276d7ec2f0e2bd9a42a8ab0ba99eb adda84f4cbb5b3611bd319627436246912139c2dde62bd00528b1464 20dceae949d1926ae05fc7df9b474e1ee176f89069fb424b12f8f357 e6e2909ba05152e9f72a68de0046b3e1520838ff5e723af02a96f51a c1e6ef4254226249b872676af76a319cbe"
}

Response

Example: Enable volume encryption response

0cee72c7-015c-493b-b5fe-a896ae444c34

Change the encryption password

POST /v1.0/{tenant_id}/agent/changeencryption

This operation changes the encryption password.

This operation changes the encryption password. If you need assistance generating your encrypted key, see Generate your encrypted key in Cloud Backup.

📘

Note :After you turn on encryption, you cannot turn it off. This is a security measure. If anyone ever gained access to your account, they would not be able to access your backups without your passphrase.

If you lose or forget your passphrase, you will not be able to recover your encrypted backups.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad requestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
MachineAgentIdString (Required)ID that uniquely identifies a Cloud Backup agent.
OldEncryptedPasswordHexString (Required)Your old encrypted password.
NewEncryptedPasswordHexString (Required)Your new encrypted password.

Example: Change encryption password JSON request

{
"MachineAgentId" : 869,
"OldEncryptedPasswordHex" : "0bff42a526c78076a3d986fa75eecd 83211f166fd7692797cdde2317faee544e3300614fd54b8c0d81f975 3e58cb1ffbd62d3faf0d2bf52e79ce5cd9c6d84b5295e3dea629e71b 0a5e26efda50ff8e05a5475bb7cbd553d238c05655f56ece2df070ce 374ff1e0724827c2300e373241e94c4bc13441561604e3e70b5034eb 58d717864f304c9c73b6d1d46c4276d7ec2f0e2bd9a42a8ab0ba99eb adda84f4cbb5b3611bd319627436246912139c2dde62bd00528b1464 20dceae949d1926ae05fc7df9b474e1ee176f89069fb424b12f8f357 e6e2909ba05152e9f72a68de0046b3e1520838ff5e723af02a96f51a c1e6ef4254226249b872676af76a319cbe",
"NewEncryptedPasswordHex" : "0bff42a526c78076a3d986fa75eecd 83211f166fd7692797cdde2317faee544e3300614fd54b8c0d81f975 3e58cb1ffbd62d3faf0d2bf52e79ce5cd9c6d84b5295e3dea629e71b 0a5e26efda50ff8e05a5475bb7cbd553d238c05655f56ece2df070ce 374ff1e0724827c2300e373241e94c4bc13441561604e3e70b5034eb 58d717864f304c9c73b6d1d46c4276d7ec2f0e2bd9a42a8ab0ba99eb adda84f4cbb5b3611bd319627436246912139c2dde62bd00528b1464 20dceae949d1926ae05fc7df9b474e1ee176f89069fb424b12f8f357 e6e2909ba05152e9f72a68de0046b3e1520838ff5e723af02a96f51a c1e6ef4254226249b872676af76a319fgh"
}

Response

Example: Change encryption password response

0cee72c7-015c-493b-b5fe-a896ae444c34

Delete an agent

POST /v1.0/{tenant_id}/agent/delete

This operation immediately permanently deletes an agent and its backup data.

You can delete an agent at any time. If the agent is in the middle of an operation, it is allowed to complete. After it completes, it no longer authenticates.

This table shows the possible response codes for this operation:

Response CodeNameDescription
204No ContentThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
MachineAgentIdString (Required)ID that uniquely identifies a Cloud Backup agent.

Example: Delete agent JSON request

{
"MachineAgentId": 92384579
}

Response

This table shows the body parameters for the response:

NameTypeDescription
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.

Example: Delete agent JSON response

{
"MachineAgentId": 92384579
}

Migrate a vault

PUT /v1.0/{tenant_id}/agent/migratevault

This operation migrates a backup vault from one machine agent to another.

To use the migrate vault operation, the two agents should be under the same user and their backups should not be encrypted. The destination machine agent should not have any backups already configured and running.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
403ForbiddenAccess to the requested resource was denied.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
SourceMachineAgentIdString (Required)Agent ID of the source. Backups are migrated from this agent.
DestinationMachineAgentIDString (Required)Agent ID of the destination. Backups are migrated to this agent.

Example: Migrate vault JSON request

{
"SourceMachineAgentId": 1,
"DestinationMachineAgentId": 2
}

Response

This operation does not return a response body.

Update the agent backup behavior

POST /v1.0/{tenant_id}/agent/{machineAgentId}

This operation updates the backup data center, or enables or disables ServiceNet for the Cloud Backup agent, or both.

If ServiceNet is enabled, the Cloud Backup agent talks to Cloud Files over ServiceNet and does not incur any bandwidth charges.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{machineAgentId}IntegerThe unique identifier of the Cloud Backup agent.

This table shows the body parameters for the request:

NameTypeDescription
BackupDataCenterString (Optional)Specifies the backup data center where this Agent’s backup will reside. You must have VMs in the data center specified by BackupDataCenter or this operation will fail.
UseServiceNetString (Required)Enables or disables the ServiceNet for this agent. Valid values are true or false.

Example: Update agent backup behavior JSON request

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

Example: Update agent backup behavior JSON request

{
"BackupDataCenter" : "DFW",
"UseServiceNet" : true
}

Response

This table shows the body parameters for the response:

NameTypeDescription
AgentVersionStringVersion of the Rackspace Cloud Backup agent.
ArchitectureStringBase architecture of the Cloud Server. Valid values are 64- bit or 32-bit.
FlavorStringRaxCloudServer – for Rackspace Cloud Servers.
BackupVaultSizeStringSize of backup data in MB.
CleanupAllowedStringIndicates whether a cleanup can be manually triggered on the backup vault. Valid values are true or false.
DatacenterStringData center where the Cloud Server is located. Valid values are IAD, ORD, DFW, HKG, LON, or SYD).
IPAddressStringPublic IPv4 address of the Cloud Server.
IsDisabledStringIndicates if the Rackspace Cloud Backup agent on the server is disabled. Valid values are true or false.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server.
OperatingSystemStringOperating system of Cloud Server.
OperatingSystemVersionStringOperating system version of Cloud Server.
PublicKeyStringPublic key of the public/private encryption key pair.
StatusStringStatus of the Cloud Backup agent. Valid values are Online or Offline.
TimeOfLastSuccessfulBackupStringTime of last successful backup.
UseServiceNetStringIndicates if the Cloud Backup agent is using ServiceNet to backup data to Cloud Files. Valid values are true or false.
UseFailoverUriStringIndicates if a failover URI should be used. Valid values are true or false.

Example: Update agent backup behavior JSON response

{
"AgentVersion": "1.05.005848",
"Architecture": "64-bit",
"Flavor":"RaxCloudServer",
"BackupVaultSize": "35.3 MB",
"CleanupAllowed": true,
"Datacenter": "DFW",
"BackupDataCenter": "DFW",
"IPAddress": "192.168.1.1",
"IsDisabled": false,
"IsEncrypted": true,
"MachineAgentId": 213564,
"MachineName": "Web Server",
"OperatingSystem": "Windows Server 2012",
"OperatingSystemVersion":"",
"PublicKey": {
"ModulusHex": "a5261939156948bb7a58dffe5ff89e65f0498f9175f5a 98288810b8975871e99af3b5dd94057b0fc07535f5f97444504fa35169d4 61d0d30cf0192e307727c065168c788771c561a9400fb61975e9e6aa4e23 fe11af69e9412dd23b0cb6684c4c2429bce139e848ab26d0829073351f4a cd36074eafd036a5eb83359d2a698d0",
"ExponentHex": "09528"
},
"Status": "Online",
"TimeOfLastSuccessfulBackup": "\/Date(1358752980000)\/",
"UseServiceNet": true,
"UseFailoverUri": true
}

List the agent details by host server ID

GET /v1.0/{tenant_id}/agent/server/{hostServerId}

This operation lists details about the machine and its agent using the host server ID.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{hostServerId}IntegerThe unique identifier of the host server where the Cloud Backup agent is running.

This operation does not accept a request body.

Example: List agent details by host server ID JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/agent/server/87c3b6e1-fb1a-41f9-91e5-313ae35a5a06
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:

NameTypeDescription
AgentVersionStringVersion of the Rackspace Cloud Backup agent.
ArchitectureStringBase architecture of the Cloud Server. Valid values are 64- bit or 32-bit.
FlavorStringRaxCloudServer – for Rackspace Cloud Servers.
BackupVaultSizeStringSize of backup data in MB.
CleanupAllowedStringIndicates whether a cleanup can be manually triggered on the backup vault. Valid values are true or false.
DatacenterStringData center where the Cloud Server is located. Valid values are IAD, ORD, DFW, HKG, LON, or SYD).
IPAddressStringPublic IPv4 address of the Cloud Server.
IsDisabledStringIndicates if the Rackspace Cloud Backup agent on the server is disabled. Valid values are true or false.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server.
OperatingSystemStringOperating system of Cloud Server.
OperatingSystemVersionStringOperating system version of Cloud Server.
PublicKeyStringPublic key of the public/private encryption key pair.
StatusStringStatus of the Cloud Backup agent. Valid values are Online or Offline.
TimeOfLastSuccessfulBackupStringTime of last successful backup.
UseServiceNetStringIndicates if the Cloud Backup agent is using ServiceNet to backup data to Cloud Files. Valid values are true or false.
HostServerIdStringServer ID of the host server where the Cloud Backup agent is running.

Example: List agent details by host server ID JSON response

{
"AgentVersion": "1.05.005848",
"Architecture": "64-bit",
"Flavor": "RaxCloudServer",
"BackupVaultSize": "35.3 MB",
"BackupContainer": "https://storage101.DC.clouddrive.com/v1/yourAccount/CloudBackup\_v2\_0_yourUUID",
"CleanupAllowed": true,
"Datacenter": "DFW",
"IPAddress": "192.168.1.1",
"IsDisabled": false,
"IsEncrypted": true,
"MachineAgentId": 213564,
"MachineName": "Web Server",
"OperatingSystem": "Windows Server 2012",
"OperatingSystemVersion": "",
"PublicKey": {
"ModulusHex": "a5261939156948bb7a58dffe5ff89e65f0498f9175f5a 98288810b8975871e99af3b5dd94057b0fc07535f5f97444504fa35169d4 61d0d30cf0192e307727c065168c788771c561a9400fb61975e9e6aa4e23 fe11af69e9412dd23b0cb6684c4c2429bce139e848ab26d0829073351f4a cd36074eafd036a5eb83359d2a698d0",
"ExponentHex": "09528"
},
"Status": "Online",
"TimeOfLastSuccessfulBackup": "/Date(1357817400000)/",
"UseServiceNet": "true",
"HostServerId" : "87c3b6e1-fb1a-41f9-91e5-313ae35a5a06"
}

Change log level

PUT /v1.0/{tenant_id}/agent/logging

This operation changes the current log level for a specified machine agent.

This table shows the possible response codes for this operation:

Response codeNameDescription
200OKThe request succeeded.
403ForbiddenAccess to the requested resource was denied.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
MachineAgentIdString (Required)Agent ID of the server we wish to change the log level on.
LoggingLevelIdString (Required)Desired logging level from 1 (only FATAL) to 6 (ALL or TRACE).

Example: Change logging level request

MachineAgentId=1311839&LoggingLevelId=6

Response

This operation does not return a response body.


User operations

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

List all agents for the user

GET /v1.0/{tenant_id}/user/agents

This operation retrieves information for all agents for the current user.

📘

Note :Cloud Backup agent Status is always Offline in this call.

To get the correct values for Status and TimeOfLastSuccessfulBackup, use the operation described in List agent details.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This operation does not accept a request body.

Example: List all agents for this user JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/user/agents
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:

NameTypeDescription
AgentVersionStringVersion of the Rackspace Cloud Backup agent.
ArchitectureStringBase architecture of the Cloud Server. Valid values are 64- bit or 32-bit.
FlavorStringRaxCloudServer for Rackspace Cloud Servers.
BackupVaultSizeStringSize of backup data in MB.
BackupContainerStringFull public URI for Cloud Files where backups are stored for this agent.
CleanupAllowedStringIndicates whether a cleanup can be manually triggered on the backup vault. Valid values are true or false.
DatacenterStringData center where the Cloud Server is located. Valid values are IAD, ORD, DFW, HKG, LON, or SYD).
IPAddressStringPublic IPv4 address of the Cloud Server.
IsDisabledStringIndicates if the Rackspace Cloud Backup agent on the server is disabled. Valid values are true or false.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server.
OperatingSystemStringOperating system of Cloud Server.
OperatingSystemVersionStringOperating system version of Cloud Server.
PublicKeyStringPublic key of the public/private encryption key pair.
StatusStringStatus of the Cloud Backup agent. Valid values are Online or Offline.
TimeOfLastSuccessfulBackupStringTime of last successful backup.
UseServiceNetStringIndicates if the Cloud Backup agent is using ServiceNet to backup data to Cloud Files. Valid values are true or false.

Example: List all agents for this user JSON response

[
{
"AgentVersion": "1.05.005848",
"Architecture": "64-bit",
"BackupVaultSize": "35.3 MB",
"BackupContainer": "https://storage101.DC.clouddrive.com/v1/yourAccount/CloudBackup\_v2\_0_yourUUID",
"CleanupAllowed": true,
"Datacenter": "DFW",
"Flavor": "RaxCloudServer",
"IPAddress": "192.168.1.1",
"IsDisabled": false,
"IsEncrypted": true,
"MachineAgentId": 213563,
"MachineName": "Web Server2",
"OperatingSystem": "Windows Server 2012",
"OperatingSystemVersion": "",
"PublicKey": {
"ExponentHex": 09528,
"ModulusHex": "a5261939156948bb7a58dffe5ff89e65f0498f9175f5a 98288810b8975871e99af3b5dd94057b0fc07535f5f97444504fa35169d4 61d0d30cf0192e307727c065168c788771c561a9400fb61975e9e6aa4e23 fe11af69e9412dd23b0cb6684c4c2429bce139e848ab26d0829073351f4a cd36074eafd036a5eb83359d2a698d0"

},
"Status": "Online",
"TimeOfLastSuccessfulBackup": null,
"UseServiceNet": true
},
{
"AgentVersion": "1.05.005848",
"Architecture": "64-bit",
"BackupVaultSize": "35.3 MB",
"BackupContainer": "https://storage101.DC.clouddrive.com/v1/yourAccount/CloudBackup\_v2\_0_yourUUID",
"CleanupAllowed": true,
"Flavor": "RaxCloudServer",
"Datacenter": "DFW",
"IPAddress": "192.168.1.3",
"IsDisabled": false,
"IsEncrypted": true,
"MachineAgentId": 213564,
"MachineName": "Web Server",
"OperatingSystem": "Windows Server 2012",
"OperatingSystemVersion": "",
"PublicKey": {
"ExponentHex": 82374,
"ModulusHex": "a5261939156948bb7a58dffe5ff89e65f0498f9175f5a982888 10b8975871e99af3b5dd94057b0fc07535f5f97444504fa35169d461d0d30cf0 192e307727c065168c788771c561a9400fb61975e9e6aa4e23fe11af69e 9412dd23b0cb6684c4c2429bce139e848ab26d0829073351f4 acd360723324234234234234234234abc2"

},
"Status": "Online",
"TimeOfLastSuccessfulBackup": null,
"UseServiceNet": true
}
]

Wake up agents

POST /v1.0/{tenant_id}/user/wakeupagents

This operation wakes up the agent before you perform tasks by sending a message to an agent to wakeup. You should wait 10 to 20 seconds after using this operation before starting a backup or restore.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This operation does not accept a request body.

Example: Wake up agents JSON request

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

Response

This operation does not return a response body.


Backup configuration operations

When trying to determine how often to back up a file in your backup configuration, there are three variables to consider:

  1. How important is tracking changes in the file to your business processes? (criticality)
  2. How large is the file? (size)
  3. How often does the file change? (data churn)

Criticality is the most important factor to consider when making backup decisions. The more critical the file is to your business operations, the more often you’ll want to back this file up. Size is an important consideration if the speed of backups/restores is important to you. Large files take longer to backup and to restore. It might be wise to backup large files less frequently. Data churn is the last variable to consider, and perhaps the trickiest to handle. Files that change often invalidate blocks that have been stored previously. Depending on criticality, it might still be wise to snapshot files with high data churn and backup those snapshots.

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

Create a backup configuration

POST /v1.0/{tenant_id}/backup-configuration

This operation creates a backup configuration for the authenticated user. Returns details of a backup configuration.

To view a list of all backup configurations, use List all backup configurations for an agent.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
409ConflictThe request could not be completed due to a conflict with the current state of the resource.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
BackupConfigurationNameString (Required)The name of the backup configuration. The configuration typically has the backup schedule, files to backup, and notification options.
MachineAgentIdString (Required)ID that uniquely identifies a Cloud Backup agent.
IsActiveString (Required)Indicates if a backup configuration is active. Valid values are true or false.
VersionRetentionString (Required)Indicates how many days backup revisions are maintained. Valid values are 0, 30, and 60. 0 means indefinite.
FrequencyString (Required)Frequency of backup schedule. Valid values are “Manually”, “Hourly”, “Daily”, and “Weekly”.
StartTimeHourString (Required)Indicates the hour when the backup runs. Valid values are 1 through 12, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeMinuteString (Required)Indicates the minute when the backup runs. Valid values are 0 through 59, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeAmPmString (Required)Indicates AM or PM. Valid values are “AM” or “PM”, as well as null when the Frequency value is “Manually” or “Hourly”.
DayOfWeekIdString (Required)Indicates the day of the week. Valid values are 0 through 6, with 0 representing Sunday and 6 representing Saturday. null is also a valid value when the Frequency value is “Manually” ,”Hourly”, or “Daily”.
HourIntervalString (Required)Indicates the hour. Valid values are 1 through 23, as well as null when the Frequency value is “Manually” , “Daily”, or “Weekly”.
TimeZoneIdString (Required)Specifies the time zone where the backup runs, for example “Eastern Standard Time”.
NotifyRecipientsString (Required)Indicates the email address to notify in case of backup success or failure.
NotifySuccessString (Required)Indicates if emails are sent after a successful backup. Valid values are true or false.
NotifyFailureString (Required)Indicates if emails are sent after a failed backup. Valid values are true or false.
InclusionsString (Optional)Indicates the list of files and folders to back up.
ExclusionsString (Optional)Indicates the list of files and folders not to back up.

Example: Create backup configuration JSON request

{
"MachineAgentId": 202743,
"BackupConfigurationName": "Weekly Website Backup",
"IsActive": true,
"VersionRetention": 30,
"MissedBackupActionId": 1,
"Frequency": "Weekly",
"StartTimeHour": 7,
"StartTimeMinute": 30,
"StartTimeAmPm": "PM",
"DayOfWeekId": 5,
"HourInterval": null,
"TimeZoneId": "Eastern Standard Time",
"NotifyRecipients": "[email protected]",
"NotifySuccess": true,
"NotifyFailure": true,
"Inclusions": [
{
"FilePath": "C:\\backup_up_file.txt",
"FileItemType": "File"
},
{
"FilePath": "C:\\backed_up_folder",
"FileItemType": "Folder"
}
],
"Exclusions": [
{
"FilePath": "C:\\backed_up_folder\\excluded_file.txt",
"FileItemType": "File"
}
]
}

Response

This table shows the body parameters for the response:

NameTypeDescription
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
BackupConfigurationNameStringThe name of the backup configuration. The configuration typically has the backup schedule, files to backup, and notification options.
IsActiveStringIndicates if a backup configuration is active. Valid values are true or false.
VersionRetentionStringIndicates how many days backup revisions are maintained. Valid values are 0, 30, and 60. 0 means indefinite.
BackupConfigurationScheduleIdStringUniquely identifies the schedule that is associated with this configuration.
MissedBackupActionIdStringSpecifies when to send notification. Valid values are as follows: 1 that indicates that notifications are sent as soon as possible, or 2 that indicates that notifications are sent at the next scheduled time.
FrequencyStringFrequency of backup schedule. Valid values are “Manually”, “Hourly”, “Daily”, and “Weekly”.
StartTimeHourStringIndicates the hour when the backup runs. Valid values are 1 through 12, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeMinuteStringIndicates the minute when the backup runs. Valid values are 0 through 59, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeAmPmStringIndicates AM or PM. Valid values are “AM” or “PM”, as well as null when the Frequency value is “Manually” or “Hourly”.
DayOfWeekIdStringIndicates the day of the week. Valid values are 0 through 6, with 0 representing Sunday and 6 representing Saturday. null is also a valid value when the Frequency value is “Manually”, “Hourly”, or “Daily”.
HourIntervalStringIndicates the hour. Valid values are 1 through 23, as well as null when the Frequency value is “Manually” ,”Daily”, or “Weekly”.
TimeZoneIdStringSpecifies the time zone where the backup runs, for example “Eastern Standard Time”.
NotifyRecipientsStringIndicates the email address to notify in case of backup success or failure.
NotifySuccessStringIndicates if emails are sent after a successful backup. Valid values are true or false.
NotifyFailureStringIndicates if emails are sent after a failed backup. Valid values are true or false.
InclusionsString (Optional)Indicates the list of files and folders to back up.
ExclusionsString (Optional)Indicates the list of files and folders not to back up.

Example: Create backup configuration JSON response

{
"BackupConfigurationId": 174084,
"BackupConfigurationName": "Weekly Website Backup",
"BackupConfigurationScheduleId": 173131,
"BackupPostscript": "",
"BackupPrescript": "",
"Datacenter": "DFW",
"DayOfWeekId": 5,
"EncryptionKey": {
"ExponentHex": 10001,
"ModulusHex": "C6054E90E32D2B25E16F3A560E1B4DC580B1E4AB74E0C662680DD8A1BD83956051F6A526B16C55225D1BE6E0B1265F4085FB2F61B61337F5D32198E5CAFFEACD50E90517A329146E43B20194C082A9C890060AD07A542FBC035B2A96F9F212C6D94887BECB5E15F3E55397B975B1896CFC66EBB5DD7D83587467A0E7F669ADB925A7BE4C1ECED1BC9E92DB768CE76FDC86CCDD04BDF469679FE3261AA66C22AC6263E540B79780AAF09CFC798CDC4D1218867388632EA4BD1BF511E4881E07C5387DDDBE741E615ACA0C32A738F5B952F1C17051EC3BAF9F64C629515EA2AF93E6BB450A8B1B3E02963471679D5670AF93CFEA649172EDA7AC5E071E2D3AF0BD"
},
"Exclusions": [
{
"FileId": 657293,
"FileItemType": "File",
"FilePath": "C:\\backed_up_folder\\excluded_file.txt",
"FilePathEncoded": null,
"Filter": "Exclude",
"ParentId": 174084
}
],
"Flavor": "RaxCloudServer",
"Frequency": "Weekly",
"HourInterval": null,
"Inclusions": [
{
"FileId": 657291,
"FileItemType": "File",
"FilePath": "C:\\backup_up_file.txt",
"FilePathEncoded": null,
"Filter": "Include",
"ParentId": 174084
},
{
"FileId": 657292,
"FileItemType": "Folder",
"FilePath": "C:\\backed_up_folder",
"FilePathEncoded": null,
"Filter": "Include",
"ParentId": 174084
}
],
"IsActive": true,
"IsDeleted": false,
"IsEncrypted": false,
"LastRunBackupReportId": null,
"LastRunTime": null,
"MachineAgentId": 202743,
"MachineName": "web2",
"MissedBackupActionId": 1,
"NextScheduledRunTime": "/Date(1406935800000)/",
"NotifyFailure": true,
"NotifyRecipients": "[email protected]",
"NotifySuccess": true,
"StartTimeAmPm": "PM",
"StartTimeHour": 11,
"StartTimeMinute": 30,
"TimeZoneId": "Eastern Standard Time",
"VersionRetention": 30
}

Update a backup configuration

PUT /v1.0/{tenant_id}/backup-configuration/{backupConfigurationId}

This operation updates an existing backup configuration.

Note

To view a list of all backup configurations and their backup configuration schedule IDs, see List backup configuration details.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{backupConfigurationId}IntegerThe unique identifier of the backup configuration.

This table shows the body parameters for the request:

NameTypeDescription
MachineAgentIdString (Required)ID that uniquely identifies a Cloud Backup agent.
BackupConfigurationNameString (Required)The name of the backup configuration. The configuration typically has the backup schedule, files to backup, and notification options.
IsActiveString (Required)Indicates if a backup configuration is active. Valid values are true or false.
VersionRetentionString (Required)Indicates how many days backup revisions are maintained. Valid values are 0, 30, and 60. 0 means indefinite.
BackupConfigurationScheduleIdString (Required)Uniquely identifies the schedule that is associated with this configuration.
FrequencyString (Required)Frequency of backup schedule. Valid values are “Manually”, “Hourly”, “Daily”, and “Weekly”.
StartTimeHourString (Required)Indicates the hour when the backup runs. Valid values are 1 through 12, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeMinuteString (Required)Indicates the minute when the backup runs. Valid values are 0 through 59, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeAmPmString (Required)Indicates AM or PM. Valid values are “AM” or “PM”, as well as null when the Frequency value is “Manually” or “Hourly”.
DayOfWeekIdString (Required)Indicates the day of the week. Valid values are 0 through 6, with 0 representing Sunday and 6 representing Saturday. null is also a valid value when the Frequency value is “Manually”, “Hourly”, or “Daily”.
HourIntervalString (Required)Indicates the hour. Valid values are 1 through 23, as well as null when the Frequency value is “Manually” ,”Daily”, or “Weekly”.
TimeZoneIdString (Required)Specifies the time zone where the backup runs, for example “Eastern Standard Time”.
NotifyRecipientsString (Required)Indicates the email address to notify in case of backup success or failure.
NotifySuccessString (Required)Indicates if emails are sent after a successful backup. Valid values are true or false.
NotifyFailureString (Required)Indicates if emails are sent after a failed backup. Valid values are true or false.
InclusionsString (Optional)Indicates the list of files and folders to back up.
ExclusionsString (Optional)Indicates the list of files and folders not to back up.

Example: Update backup configuration JSON request

{
"MachineAgentId": 156953,
"BackupConfigurationName": "Weekly Website Backup",
"IsActive": true,
"VersionRetention": 30,
"BackupConfigurationScheduleId": 145393,
"MissedBackupActionId": 1,
"Frequency": "Weekly",
"StartTimeHour": 6,
"StartTimeMinute": 30,
"StartTimeAmPm": "AM|PM",
"DayOfWeekId": 4,
"HourInterval": null,
"TimeZoneId": "Eastern Standard Time",
"NotifyRecipients": "[email protected]",
"NotifySuccess": true,
"NotifyFailure": true,
"Inclusions": [
{
"FilePath": "C:\\backup_up_file.txt",
"FileItemType": "File"
},
{
"FilePath": "C:\\backed_up_folder",
"FileItemType": "Folder"
}
],
"Exclusions": [
{
"FilePath": "C:\\backed_up_folder\\excluded_file.txt",
"FileItemType": "File"
},
{
"FilePath": "C:\\backed_up_folder\\excluded_folder",
"FileItemType": "Folder"
}
]
}

Response

This operation does not return a response body.

List backup configuration details

GET /v1.0/{tenant_id}/backup-configuration/{backupConfigurationId}

This operation lists detailed information for the specified backup configuration.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{backupConfigurationId}IntegerThe unique identifier of the backup configuration.

This operation does not accept a request body.

Example: List backup configuration details JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/backup-configuration/148325
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:

NameTypeDescription
BackupConfigurationIdStringAutogenerated ID that uniquely identifies a backup configuration. This ID is required on subsequent GET/UPDATE/DELETE calls.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server where the Cloud Backup agent resides.
FlavorStringRaxCloudServer - for Rackspace Cloud Servers.
BackupConfigurationNameStringThe name of the backup configuration. The configuration typically has the backup schedule, files to backup, and notification options.
IsActiveStringIndicates if a backup configuration is active. Valid values are true or false.
IsDeletedStringIndicates if the backup configuration is deleted. Valid values are true or false.
VersionRetentionStringIndicates how many days backup revisions are maintained. Valid values are 0, 30 , and 60. 0 means indefinite.
BackupConfigurationScheduleIdStringUniquely identifies the schedule that is associated with this configuration.
MissedBackupActionIdStringSpecifies when to send notification. Valid values are as follows: 1 that indicates that notifications are sent as soon as possible, or 2 that indicates that notifications are sent at the next scheduled time.
FrequencyStringFrequency of backup schedule. Valid values are “Manually”, “Hourly”, “Daily”, and “Weekly”.
StartTimeHourStringIndicates the hour when the backup runs. Valid values are 1 through 12, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeMinuteStringIndicates the minute when the backup runs. Valid values are 0 through 59, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeAmPmStringIndicates AM or PM. Valid values are “AM” or “PM”, as well as null when the Frequency value is “Manually” or “Hourly”.
DayOfWeekIdStringIndicates the day of the week. Valid values are 0 through 6, with 0 representing Sunday and 6 representing Saturday. null is also a valid value when the Frequency value is “Manually”, “Hourly”, or “Daily”.
HourIntervalStringIndicates the hour. Valid values are 1 through 23, as well as null when the Frequency value is “Manually” ,”Daily”, or “Weekly”.
TimeZoneIdStringSpecifies the time zone where the backup runs, for example “Eastern Standard Time”.
NotifyRecipientsStringIndicates the email address to notify in case of backup success or failure.
NotifySuccessStringIndicates if emails are sent after a successful backup. Valid values are true or false.
NotifyFailureStringIndicates if emails are sent after a failed backup. Valid values are true or false.
InclusionsStringIndicates the list of files and folders to back up.
ExclusionsStringIndicates the list of files and folders not to back up.

Example: List backup configuration details JSON response

{
"BackupConfigurationId": 148325,
"MachineAgentId": 156953,
"MachineName": "Web Server",
"Flavor": "RaxCloudServer",
"IsEncrypted": false,
"BackupConfigurationName": "Weekly Website Backup",
"IsActive": true,
"IsDeleted": false,
"VersionRetention": 60,
"BackupConfigurationScheduleId": 145406,
"MissedBackupActionId": 1,
"Frequency": "Weekly",
"StartTimeHour": 11,
"StartTimeMinute": 30,
"StartTimeAmPm": "AM",
"DayOfWeekId": 4,
"HourInterval": null,
"TimeZoneId": "Eastern Standard Time",
"NextScheduledRunTime": "\/Date(1357817400000)\/",
"LastRunTime": null,
"LastRunBackupReportId": null,
"NotifyRecipients": "[email protected]",
"NotifySuccess": false,
"NotifyFailure": false,
"Inclusions": [
{
"FilePath": "C:\\backed_up_folder",
"ParentId": 148325,
"FileItemType": "Folder",
"FileId": 35000
},
{
"FilePath": "C:\\backup_up_file.txt",
"ParentId": 148325,
"FileItemType": "File",
"FileId": 34999
}
],
"Exclusions":[
{
"FilePath": "C:\\backed_up_folder\\excluded_folder",
"ParentId": 148325,
"FileItemType": "Folder",
"FileId": 35002
},
{
"FilePath": "C:\\backed_up_folder\\excluded_file.txt",
"ParentId": 148325,
"FileItemType": "File",
"FileId": 35001
}
]
}

List all backup configurations for the user

GET /v1.0/{tenant_id}/backup-configuration

This operation lists all backup configurations for the current user.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This operation does not accept a request body.

Response

This table shows the body parameters for the response:

NameTypeDescription
BackupConfigurationIdStringAutogenerated ID that uniquely identifies a backup configuration. This ID is required on subsequent GET/UPDATE/DELETE calls.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server where the Cloud Backup agent resides.
FlavorStringRaxCloudServer - for Rackspace Cloud Servers.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
BackupConfigurationNameStringThe name of the backup configuration. The configuration typically has the backup schedule, files to backup, and notification options.
IsActiveStringIndicates if a backup configuration is active. Valid values are true or false.
IsDeletedStringIndicates if the backup configuration is deleted. Valid values are true or false.
VersionRetentionStringIndicates how many days backup revisions are maintained. Valid values are 0, 30 , and 60. 0 means indefinite.
BackupConfigurationScheduleIdStringUniquely identifies the schedule that is associated with this configuration.
MissedBackupActionIdStringSpecifies when to send notification. Valid values are as follows: 1 that indicates that notifications are sent as soon as possible, or 2 that indicates that notifications are sent at the next scheduled time.
FrequencyStringFrequency of backup schedule. Valid values are “Manually”, “Hourly”, “Daily”, and “Weekly”.
StartTimeHourStringIndicates the hour when the backup runs. Valid values are 1 through 12, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeMinuteStringIndicates the minute when the backup runs. Valid values are 0 through 59, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeAmPmStringIndicates AM or PM. Valid values are “AM” or “PM”, as well as null when the Frequency value is “Manually” or “Hourly”.
DayOfWeekIdStringIndicates the day of the week. Valid values are 0 through 6, with 0 representing Sunday and 6 representing Saturday. null is also a valid value when the Frequency value is “Manually”, “Hourly”, or “Daily”.
HourIntervalStringIndicates the hour. Valid values are 1 through 23, as well as null when the Frequency value is “Manually” ,”Daily”, or “Weekly”.
TimeZoneIdStringSpecifies the time zone where the backup runs, for example “Eastern Standard Time”.
NextScheduledRunTimeStringSpecifies the next scheduled run time for a backup.
LastRunTimeStringIndicates the last time a backup ran.
LastRunBackupReportIdStringIf the backup ran successfully last time, indicates the ID of the backup report.
BackupStateStringIndicates the last state of the backup. These states can be “InProgress”, “Skipped”, “Queued”, or “Not Available”.
NotifyRecipientsStringIndicates the email address to notify in case of backup success or failure.
NotifySuccessStringIndicates if emails are sent after a successful backup. Valid values are true or false.
NotifyFailureStringIndicates if emails are sent after a failed backup. Valid values are true or false.
InclusionsStringIndicates the list of files and folders to back up.
ExclusionsStringIndicates the list of files and folders not to back up.

Example: List all backup configurations for a user JSON response

[
{
"BackupConfigurationId": 100850,
"MachineAgentId": 96674,
"MachineName": "Web Server",
"Flavor": "RaxCloudServer",
"IsEncrypted": false,
"BackupConfigurationName": "Manual Website Backup",
"IsActive": true,
"IsDeleted": false,
"VersionRetention": 60,
"BackupConfigurationScheduleId": 98017,
"MissedBackupActionId": 2,
"Frequency": "Manually",
"StartTimeHour": null,
"StartTimeMinute": null,
"StartTimeAmPm": "",
"DayOfWeekId": null,
"HourInterval": null,
"TimeZoneId": "Eastern Standard Time",
"NextScheduledRunTime": null,
"LastRunTime": "\/Date(1343226053000)\/",
"LastRunBackupReportId": 80071,
"NotifyRecipients": "[email protected]",
"NotifySuccess": false,
"NotifyFailure": true,
"Inclusions": [
{
"FilePath": "/web/",
"ParentId": 100850,
"FileItemType": "Folder",
"FileId": 2947
}
],
"Exclusions": [
{
"FilePath": "/web/cache/",
"ParentId": 100850,
"FileItemType": "Folder",
"FileId": 2948
}
]
},
{
"BackupConfigurationId": 100928,
"MachineAgentId": 96685,
"MachineName": "Database Server",
"Flavor": "RaxCloudServer",
"IsEncrypted": false,
"BackupConfigurationName": "Manual DB Backup",
"IsActive": true,
"IsDeleted": false,
"VersionRetention": 60,
"BackupConfigurationScheduleId": 98019,
"MissedBackupActionId": 2,
"Frequency": "Manually",
"StartTimeHour": null,
"StartTimeMinute": null,
"StartTimeAmPm": "",
"DayOfWeekId": null,
"HourInterval": null,
"TimeZoneId": "Eastern Standard Time",
"NextScheduledRunTime": null,
"LastRunTime": "\/Date(1343226074000)\/",
"LastRunBackupReportId": 80116,
"NotifyRecipients": "[email protected]",
"NotifySuccess": false,
"NotifyFailure": true,
"Inclusions": [
{
"FilePath": "/db/dumps/",
"ParentId": 100928,
"FileItemType": "Folder",
"FileId": 3568
}
],
"Exclusions": [
{
"FilePath": "/db/dumps/tmp/",
"ParentId": 100928,
"FileItemType": "Folder",
"FileId": 3570
}
]
}
]

List all backup configurations for an agent

GET /v1.0/{tenant_id}/backup-configuration/system/{machineAgentId}

This operation lists the backup configurations for the specified agent.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{machingAgentId}IntegerThe unique identifier of the Cloud Backup agent.

This operation does not accept a request body.

Example: List all backup configurations for an agent JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/backup-configuration/system/224193
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:

NameTypeDescription
BackupConfigurationIdStringAutogenerated ID that uniquely identifies a backup configuration. This ID is required on subsequent GET/UPDATE/DELETE calls.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server where the Cloud Backup agent resides.
FlavorStringRaxCloudServer - for Rackspace Cloud Servers.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
BackupConfigurationNameStringThe name of the backup configuration. The configuration typically has the backup schedule, files to backup, and notification options.
IsActiveStringIndicates if a backup configuration is active. Valid values are true or false.
IsDeletedStringIndicates if the backup configuration is deleted. Valid values are true or false.
VersionRetentionStringIndicates how many days backup revisions are maintained. Valid values are 0, 30, and 60. 0 means indefinite.
BackupConfigurationScheduleIdStringUniquely identifies the schedule that is associated with this configuration.
MissedBackupActionIdStringSpecifies when to send notification. Valid values are as follows: 1 that indicates that notifications are sent as soon as possible, or 2 that indicates that notifications are sent at the next scheduled time.
FrequencyStringFrequency of backup schedule. Valid values are “Manually”, “Hourly”, “Daily”, and “Weekly”.
StartTimeHourStringIndicates the hour when the backup runs. Valid values are 1 through 12, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeMinuteStringIndicates the minute when the backup runs. Valid values are 0 through 59, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeAmPmStringIndicates AM or PM. Valid values are “AM” or “PM”, as well as null when the Frequency value is “Manually” or “Hourly”.
DayOfWeekIdStringIndicates the day of the week. Valid values are 0 through 6, with 0 representing Sunday and 6 representing Saturday. null is also a valid value when the Frequency value is “Manually”, “Hourly”, or “Daily”.
HourIntervalStringIndicates the hour. Valid values are 1 through 23, as well as null when the Frequency value is “Manually” ,”Daily”, or “Weekly”.
TimeZoneIdStringSpecifies the time zone where the backup runs, for example “Eastern Standard Time”.
NextScheduledRunTimeStringSpecifies the next scheduled run time for a backup.
LastRunTimeStringIndicates the last time a backup ran.
LastRunBackupReportIdStringIf the backup ran successfully last time, indicates the ID of the backup report.
NotifyRecipientsStringIndicates the email address to notify in case of backup success or failure.
NotifySuccessStringIndicates if emails are sent after a successful backup. Valid values are true or false.
NotifyFailureStringIndicates if emails are sent after a failed backup. Valid values are true or false.
InclusionsStringIndicates the list of files and folders to back up.
ExclusionsStringIndicates the list of files and folders not to back up.

Example: List all backup configurations for an agent JSON response

[
{
"BackupConfigurationId": 158485,
"MachineAgentId": 224193,
"MachineName": "Web Server",
"Flavor": "RaxCloudServer",
"IsEncrypted": false,
"BackupConfigurationName": "Manual Log Backup",
"IsActive": true,
"IsDeleted": false,
"VersionRetention": 60,
"BackupConfigurationScheduleId": 155566,
"MissedBackupActionId": 1,
"Frequency": "Manually",
"StartTimeHour": null,
"StartTimeMinute": null,
"StartTimeAmPm": "",
"DayOfWeekId": null,
"HourInterval": null,
"TimeZoneId": "Eastern Standard Time",
"NextScheduledRunTime": "\/Date(-62135578800000)\/",
"LastRunTime": null,
"LastRunBackupReportId": null,
"NotifyRecipients": "[email protected]",
"NotifySuccess": true,
"NotifyFailure": true,
"Inclusions": [
{
"FilePath": "C:\\Websites\\Logs",
"ParentId": 158485,
"FileItemType": "Folder",
"FileId": 47085
}
],
"Exclusions": [ ]
},
{
"BackupConfigurationId": 158486,
"MachineAgentId": 224193,
"MachineName": "Web Server",
"Flavor": "RaxCloudServer",
"IsEncrypted": false,
"BackupConfigurationName": "Weekly Website Backup",
"IsActive": true,
"IsDeleted": false,
"VersionRetention": 60,
"BackupConfigurationScheduleId": 155567,
"MissedBackupActionId": 1,
"Frequency": "Weekly",
"StartTimeHour": 7,
"StartTimeMinute": 23,
"StartTimeAmPm": "AM",
"DayOfWeekId": 1,
"HourInterval": null,
"TimeZoneId": "Eastern Standard Time",
"NextScheduledRunTime": "\/Date(1358752980000)\/",
"LastRunTime": null,
"LastRunBackupReportId": null,
"NotifyRecipients": "[email protected]",
"NotifySuccess": true,
"NotifyFailure": true,
"Inclusions": [
{
"FilePath": "C:\\Websites",
"ParentId": 158486,
"FileItemType": "Folder",
"FileId": 47086
},
{
"FilePath": "C:\\Websites\\Logs",
"ParentId": 158486,
"FileItemType": "Folder",
"FileId": 47087
}
],
"Exclusions": [ ]
}
]

Enable or disable a backup configuration

POST /v1.0/{tenant_id}/backup-configuration/enable/{backupConfigurationId}

This operation enables or disables a backup configuration.

Disabling a backup configuration does not delete it or its data. You can re-enabled disabled backup configurations later.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{backupConfigurationId}IntegerThe unique identifier of the backup configuration.

This table shows the body parameters for the request:

NameTypeDescription
EnableString (Required)Indicates if backup configuration is enabled (true) or disabled (false).

Example: Enable or disable a backup configuration request

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

Example: Enable a backup configuration JSON request

{
"Enable": true
}

Example: Disable a backup configuration JSON request

{
"Enable": false
}

Response

This table shows the body parameters for the response:

NameTypeDescription
BackupConfigurationIdStringAutogenerated ID that uniquely identifies a backup configuration. This ID is required on subsequent GET/UPDATE/DELETE calls.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server where the Cloud Backup agent resides.
FlavorStringRaxCloudServer - for Rackspace Cloud Servers.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
BackupConfigurationNameStringThe name of the backup configuration. The configuration typically has the backup schedule, files to backup, and notification options.
IsActiveStringIndicates if a backup configuration is active. Valid values are true or false.
IsDeletedStringIndicates if the backup configuration is deleted. Valid values are true or false.
VersionRetentionStringIndicates how many days backup revisions are maintained. Valid values are 0, 30, and 60. 0 means indefinite.
BackupConfigurationScheduleIdStringUniquely identifies the schedule that is associated with this configuration.
MissedBackupActionIdStringSpecifies when to send notification. Valid values are as follows: 1 that indicates that notifications are sent as soon as possible, or 2 that indicates that notifications are sent at the next scheduled time.
FrequencyStringFrequency of backup schedule. Valid values are “Manually”, “Hourly”, “Daily”, and “Weekly”.
StartTimeHourStringIndicates the hour when the backup runs. Valid values are 1 through 12, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeMinuteStringIndicates the minute when the backup runs. Valid values are 0 through 59, as well as null when the Frequency value is “Manually” or “Hourly”.
StartTimeAmPmStringIndicates AM or PM. Valid values are “AM” or “PM”, as well as null when the Frequency value is “Manually” or “Hourly”.
DayOfWeekIdStringIndicates the day of the week. Valid values are 0 through 6, with 0 representing Sunday and 6 representing Saturday. null is also a valid value when the Frequency value is “Manually”, “Hourly”, or “Daily”.
HourIntervalStringIndicates the hour. Valid values are 1 through 23, as well as null when the Frequency value is “Manually” ,”Daily”, or “Weekly”.
TimeZoneIdStringSpecifies the time zone where the backup runs, for example “Eastern Standard Time”.
NotifyRecipientsStringIndicates the email address to notify in case of backup success or failure.
NotifySuccessStringIndicates if emails are sent after a successful backup. Valid values are true or false.
NotifyFailureStringIndicates if emails are sent after a failed backup. Valid values are true or false.
InclusionsStringIndicates the list of files and folders to back up.
ExclusionsStringIndicates the list of files and folders not to back up.

Example: Disable a backup configuration JSON response

{
"BackupConfigurationId": 148325,
"MachineAgentId": 156953,
"MachineName": "Web Server",
"Flavor": "RaxCloudServer",
"IsEncrypted": false,
"BackupConfigurationName": "Weekly Website Backup",
"IsActive": true,
"IsDeleted": false,
"VersionRetention": 60,
"BackupConfigurationScheduleId": 145406,
"MissedBackupActionId": 1,
"Frequency": "Weekly",
"StartTimeHour": 11,
"StartTimeMinute": 30,
"StartTimeAmPm": "AM",
"DayOfWeekId": 4,
"HourInterval": null,
"TimeZoneId": "Eastern Standard Time",
"NextScheduledRunTime": "\/Date(1357817400000)\/",
"LastRunTime": null,
"LastRunBackupReportId": null,
"NotifyRecipients": "[email protected]",
"NotifySuccess": false,
"NotifyFailure": false,
"Inclusions": [
{
"FilePath": "C:\\backed_up_folder",
"ParentId": 148325,
"FileItemType": "Folder",
"FileId": 35000
},
{
"FilePath": "C:\\backup_up_file.txt",
"ParentId": 148325,
"FileItemType": "File",
"FileId": 34999
}
],
"Exclusions":[
{
"FilePath": "C:\\backed_up_folder\\excluded_folder",
"ParentId": 148325,
"FileItemType": "Folder",
"FileId": 35002
},
{
"FilePath": "C:\\backed_up_folder\\excluded_file.txt",
"ParentId": 148325,
"FileItemType": "File",
"FileId": 35001
}
]
}

Delete a backup configuration

DELETE /v1.0/{tenant_id}/backup-configuration/{backupConfigurationId}

This operation deletes the specified backup configuration.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{backupConfigurationId}IntegerThe unique identifier of the backup configuration.

This operation does not accept a request body.

Example: Delete a backup configuration JSON request

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

Response

This operation does not return a response body.


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 CodeNameDescription
200OKWhen manually starting a backup, the request succeeded.
204No ContentWhen manually stopping a backup, the request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
ActionString (Required)Specifies the action. Valid values are “StartManual” and “StopManual”.
IdString (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:

NameTypeDescription
IdStringSpecifies 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 CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{backupId}IntegerThe 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:

NameTypeDescription
BackupIdStringIdentifies a unique backup.
BackupConfigurationIdStringAutogenerated ID that uniquely identifies the backup configuration that is associated with this backup.
CurrentStateStringIndicates the current state of the backup. Valid values are Queued, InProgress, Skipped, Missed, Stopped, Completed, Failed, Preparing, StartRequested, StartScheduled, StopRequested, and CompletedWithErrors.
BackupConfigurationNameStringSpecifies the name of the backup configuration.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server where the Cloud Backup agent resides.
StateChangeTimeStringIndicates when the backup last changed state.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
EncryptionKeyStringSpecifies 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 CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{backupConfigurationId}IntegerThe 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:

NameTypeDescription
BackupIdStringIdentifies a unique backup.
BackupConfigurationIdStringAutogenerated ID that uniquely identifies the backup configuration that is associated with this backup.
BackupConfigurationNameStringSpecifies the name of the backup configuration.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
MachineNameStringName of the Cloud Server where the Cloud Backup agent resides.
CompletedTimeStringIndicates the time when the backup completed.
BytesSearchedStringIndicates how many bytes were searched for this backup.
NumErrorsStringIndicates 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 CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{backupId}IntegerThe 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"
}
]
}


Restore configuration operations

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

Create a restore configuration

PUT /v1.0/{tenant_id}/restore

This operation creates a new restore configuration and returns detailed information about the restore.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
BackupIdString (Required)Identifies a unique backup.
BackupMachineIdString (Required)Identifies the machine where your backup was originally made. (If you restore files to the same system, BackupMachineId and DestinationMachineId are the same. If you decide to restore to another system, different from where the files were originally backed up, DestinationMachineId is different from BackupMachineId. This is an agent ID - MachineAgentID from the List agent details operation.)
DestinationMachineIdString (Required)Identifies the machine to which you want the backups to restore. (If you restore files to the same system, BackupMachineId and DestinationMachineId are the same. If you decide to restore to another system, different from where the files were originally backed up, DestinationMachineId is different from BackupMachineId. This is an agent ID - MachineAgentID from the List agent details operation. )
DestinationPathString (Required)Specifies the path where you want the backup to restore.
OverwriteFilesString (Required)Indicates if files are overwritten. Valid values are true and false.
BackupDataCenterString (Optional)Specifies the datacenter where the original machine agent that was responsible for creating the backup, that is being used for the restore, is or was located (the source machine does not have to be online).

Example: Create a restore configuration JSON request

{
"BackupId": 133599,
"BackupMachineId": 156953,
"DestinationMachineId": 156751,
"DestinationPath": "C:\\FolderPathForRestore\",
"BackupDataCenter": "DFW",
"OverwriteFiles": false
}

Response

This table shows the body parameters for the response:

NameTypeDescription
RestoreIdStringCreates a restore configuration and in response you get RestoreID.
BackupIdStringIdentifies a unique backup.
BackupMachineIdStringIdentifies the machine where your backup was originally made. (If you restore files to the same system, BackupMachineId and DestinationMachineId are the same. If you decide to restore to another system, different from where the files were originally backed up, DestinationMachineId is different from BackupMachineId.)
DestinationMachineIdStringIdentifies the machine to which you want the backups to restore. (If you restore files to the same system, BackupMachineId and DestinationMachineId are the same. If you decide to restore to another system, different from where the files were originally backed up, DestinationMachineId is different from BackupMachineId.)
OverwriteFilesStringIndicates if files are overwritten. Valid values are true and false.
BackupDataCenterStringSpecifies the datacenter where the original machine agent that was responsible for creating the backup, that is being used for the restore, is or was located (the source machine does not have to be online).
BackupConfigurationIdStringAutogenerated ID that uniquely identifies the backup configuration that is associated with this backup.
BackupConfigurationNameStringSpecifies the name of the backup configuration.
BackupRestorePointStringIdentifies the date of the backup.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
BackupMachineNameStringIndicates the machine name of the backup.
BackupFlavorStringRaxCloudServer – for Rackspace Cloud Servers.
DestinationMachineNameStringIndicates the machine to which you want to restore the backup.
DestinationPathStringSpecifies the path where you want the backup to restore.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
EncryptedPasswordStringSpecifies null or the encrypted key.
PublicKeyStringIndicates the public key of the public/private encryption key pair.
RestoreStateIdStringSpecifies the restore state ID. Valid values are 0 for Creating, 1 for Queued, 2 for InProgress, 3 for Completed, 4 for stopped, 5 for Failed, 6 for StartRequested, 7 for StopRequested, 8 for Completed WithErrors, and 9 for Preparing.
InclusionsStringIndicates the list of files and folders to restore.
ExclusionsStringIndicates the list of files and folders not to restore.

Example: Create a restore configuration JSON response

{
"RestoreId": 1394,
"BackupId": 133599,
"DestinationMachineId": 156751,
"OverwriteFiles": false,
"BackupConfigurationId": 6265,
"BackupConfigurationName": "Restore_Backup",
"BackupRestorePoint": "\/Date(1357151359000)\/",
"BackupMachineId": 5,
"BackupMachineName": "BALAJIMBP",
"BackupFlavor": "RaxCloudServer",
"DestinationMachineName": "BILLS-TEST-WIN",
"DestinationPath": "C:\\FolderPathForRestore\",
"BackupDataCenter": "DFW",
"IsEncrypted": false,
"EncryptedPassword": null,
"PublicKey": {
"ModulusHex": "CA759606B13DC5350A3FAE3F851C76F260DC CD1EFF2DB7510AE74E00B4B2B6025422757493B2EC09B2C71DF ACFF4901E4ADAA3C9F2E6BDE9392E80FEED6F1F81BFD1D3AD9F 9080646F46632C30A94275C85859C1EFCD21BF911F311841914 BC719B1397FD3B95BE7657495903936E3345E6F083922F37761 0CBB6EB67C62B719770B25C9AB17521C2AB51B75871ED5F04F9 65C5402443ABCD05EE5E4A5201641309B8BA1100A04C62210B2 900CDEAA40F6EBF267B73634E471DB1420FF67CE41940D8ED8F 4B6C199CF5D023B410C386C58037546D34102D245AF068E891B B80F1799DDC4C9C85C6FF73DA1E45AEC98792BCC1C2DE3AAD3F 92F50F1661A4FFDC1",
"ExponentHex": 10001
},
"RestoreStateId": 0
}

Update a restore configuration

POST /v1.0/{tenant_id}/restore

This operation updates an existing restore configuration.

You can only update restore configurations while they are in the “Creating” state. For details about the operation that you use to view the current state of a restore, see List details about a restore.

This table shows the possible response codes for this operation:

Response CodeNameDescription
204No ContentThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
RestoreIdString (Required)Creates a restore configuration and in response you get RestoreID.
BackupIdString (Required)Identifies a unique backup.
BackupMachineIdString (Required)Identifies the machine where your backup was originally made. (If you restore files to the same system, BackupMachineId and DestinationMachineId are the same. If you decide to restore to another system, different from where the files were originally backed up, DestinationMachineId is different from BackupMachineId.)
DestinationMachineIdString (Required)Identifies the machine to which you want the backups to restore. (If you restore files to the same system, BackupMachineId and DestinationMachineId are the same. If you decide to restore to another system, different from where the files were originally backed up, DestinationMachineId is different from BackupMachineId.)
OverwriteFilesString (Required)Indicates if files are overwritten. Valid values are true and false.
BackupDataCenterString (Optional)Specifies the datacenter where the original machine agent that was responsible for creating the backup, that is being used for the restore, is or was located (the source machine does not have to be online).
BackupConfigurationIdString (Required)Autogenerated ID that uniquely identifies the backup configuration that is associated with this backup.
DestinationPathString (Required)Specifies the path where you want the backup to restore.
RestoreStateIdString (Required)Specifies the restore state ID. Valid values are 0 for Creating, 1 for Queued, 2 for InProgress, 3 for Completed, 4 for stopped, 5 for Failed, 6 for startRequested, 7 for Stoprequested, 8 for Completed WithErrors, and 9 for Preparing.

Example: Update a restore configuration JSON request

{
"RestoreId": 14387,
"BackupConfigurationId": 148325,
"RestoreStateId": 1,
"BackupMachineId": 156953,
"DestinationMachineId": 156953,
"DestinationPath": "C:\\RestoredPath",
"BackupDataCenter": "DFW",
"BackupId": 133599,
"OverwriteFiles": true
}

Response

This operation does not return a response body.

Include or exclude a file in a restore configuration

PUT /v1.0/{tenant_id}/restore/files

This operation creates a restore file associated with a restore.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
FilePathString (Required)Specifies the file or directory to restore.
FilePathEncodedString (Optional)Specifies 64-bit encoding of FilePath.
FilterString (Required)Specifies if a filter is included or excluded. Valid values for Filter are 1 for Include and 2 for Exclude.
ParentIdString (Required)Specifies the restore ID to which this file is associated.
FileItemTypeString (Required)Specifies the type of file. Valid values are 0 for file, 1 for folder, and 2 for database.
FileIdString (Optional)Specifies a file ID value.

Example: Include a file in a restore configuration JSON request

{
"FilePath": "C:\\ImportantFile.txt",
"Filter": "1",
"ParentId": 14387,
"FileItemType": "0"
}

Response

This operation does not return a response body.

List included or excluded files in a restore configuration

GET /v1.0/{tenant_id}/restore/files/{restoreId}

This operation lists files that are included or excluded in a restore.

This operation allows you list the files in a restore configuration. You can choose to view the included or the excluded files. You can also limit your list to files, folders, or databases.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{restoreId}IntegerThe unique identifier for a restore.

This table shows the body parameters for the request:

NameTypeDescription
FilePathString (Required)Specifies the file or directory to restore.
FilterString (Required)Specifies if a filter is included or excluded. Valid values for Filter are 1 for Include and 2 for Exclude.
RestoreIdString (Required)Creates a restore configuration and in response you get RestoreID.
FileItemTypeString (Required)Specifies the type of file. Valid values are 0 for file, 1 for folder, and 2 for database.

Example: List included or excluded files in a restore configuration JSON request

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

[
{
"FilePath":"/boot",
"Filter":2,
"RestoreId":1394,
"FileItemType":1
}
]

Delete a restore configuration

DELETE /v1.0/{tenant_id}/restore/files/{restoreId}

This operation deletes a restore configuration file.

This table shows the possible response codes for this operation:

Response CodeNameDescription
204No ContentThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{restoreId}IntegerThe unique identifier for a restore.

This operation does not accept a request body.

Example: Delete a restore configuration JSON request

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

Response

This operation does not return a response body.


Restore operations

You should periodically test your restores to make sure that they are working as you expect. The worst possible scenario is to need your data restored now, and then to discover that your data is not available because your backups have not been configured as you expected.

Another point to consider is the restore destination. Restoring to the original location and overwriting saves the most storage space, but comes with the risk that you might accidentally overwrite important, existing files. Proceed with caution when restoring.

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

List the backups available for a restore

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

This operation lists the backups that are eligible for restore (a backup that has completed at least once and has not been deleted and is not expired).

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This operation does not accept a request body.

Example: List backups available for a restore JSON request

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

Response

Example: List backups available for a restore JSON response

[
{
"BackupConfigurationId":172418,
"BackupConfigurationName":"BackupConfig1",
"MachineName":"MBP0",
"MachineAgentId":252036,
"IsEncrypted":false,
"PublicKeyHex":10001,
"PublicKeyMod":"a5261939975948bb7a58dffe5ff54e65f0498f9175f5a0928 8810b8975871e99af3b5dd94057b0fc07535f5f97444504fa35169d461d0d30cf0 192e307727c065168c788771c561a9400fb49175e9e6aa4e23fe11af69e9412dd2 3b0cb6684c4c2429bce139e848ab26d0829073351f4acd36074eafd036a5eb8335 9d2a698d3",
"Flavor":"RaxCloudServer",
"LastSuccessfulBackupTime":"\/Date(1360701971000)\/"
},
{
"BackupConfigurationId":172417,
"BackupConfigurationName":"BackupCOnfig2",
"MachineName":"MBP2",
"MachineAgentId":252034,
"IsEncrypted":false,
"PublicKeyHex":10001,
"PublicKeyMod":"a5261939975948bb7a58dffe5ff54e65f0498f9175f5a09288 810b8975871e99af3b5dd94057b0fc07535f5f97444504fa35169d461d0d30cf019 2e307727c065168c788771c561a9400fb49175e9e6aa4e23fe11af69e9412dd23b0 cb6684c4c2429bce139e848ab26d0829073351f4acd36074eafd036a5eb83359d2a 698d3",
"Flavor":"RaxCloudServer",
"LastSuccessfulBackupTime":"\/Date(1360701957000)\/"
}
]

Start or stop a restore manually

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

This operation manually starts or stops a restore.

This table shows the possible response codes for this operation:

Response CodeNameDescription
204No ContentThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This table shows the body parameters for the request:

NameTypeDescription
ActionString (Required)Specifies the action to perform. Valid values are “StartManual” and “StopManual”.
EncryptedPasswordString (Required)Used only when you specify Action:”StartManual” to specify null or the encrypted key.
IdString (Required)Specifies the restore ID.

Example: Start encrypted restore JSON request

{
"Action": "StartManual",
"EncryptedPassword" : 'myencryptedpassword',
"Id": 13689
}

Example: Start unencrypted restore JSON request

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

Example: Stop restore manually JSON request

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

Response

This operation does not return a response body.

List details about a restore

GET /v1.0/{tenant_id}/restore/{restoreId}

This operation lists details about the specified restore.

Note

For details about the operation that you can use to list included or excluded files in a restore configuration, see List included or excluded files in a restore configuration.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{restoreId}IntegerThe unique identifier for a restore.

This operation does not accept a request body.

Example: List details about a restore JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/restore/1394
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:

NameTypeDescription
RestoreIdStringCreates a restore configuration and in response you get RestoreID.
BackupIdStringIdentifies a unique backup.
BackupMachineIdStringIdentifies the machine where your backup was originally made. (If you restore files to the same system, BackupMachineId and DestinationMachineId are the same. If you decide to restore to another system, different from where the files were originally backed up, DestinationMachineId is different from BackupMachineId.)
DestinationMachineIdStringIdentifies the machine to which you want the backups to restore. (If you restore files to the same system, BackupMachineId and DestinationMachineId are the same. If you decide to restore to another system, different from where the files were originally backed up, DestinationMachineId is different from BackupMachineId.)
OverwriteFilesStringIndicates if files are overwritten. Valid values are true and false.
BackupDataCenterStringSpecifies the datacenter where the original machine agent that was responsible for creating the backup, that is being used for the restore, is or was located (the source machine does not have to be online).
BackupConfigurationIdStringAutogenerated ID that uniquely identifies the backup configuration that is associated with this backup.
BackupConfigurationNameStringSpecifies the name of the backup configuration.
BackupRestorePointStringIdentifies the date of the backup.
MachineAgentIdStringID that uniquely identifies a Cloud Backup agent.
BackupMachineNameStringIndicates the machine name of the backup.
BackupFlavorStringRaxCloudServer – for Rackspace Cloud Servers.
DestinationMachineNameStringIndicates the machine to which you want to restore the backup.
DestinationPathStringSpecifies the path where you want the backup to restore.
IsEncryptedStringIndicates if backups are encrypted. Valid values are true or false.
EncryptedPasswordStringSpecifies null or the encrypted key.
PublicKeyStringSpecifies the public key of the public/private encryption key pair.
RestoreStateIdStringSpecifies the restore state ID. Valid values are 0 for Creating, 1 for Queued, 2 for InProgress, 3 for Completed, 4 for stopped, 5 for Failed, 6 for startRequested, 7 for Stoprequested, 8 for Completed WithErrors, and 9 for Preparing.
InclusionsStringIndicates the list of files and folders to restore.
ExclusionsStringIndicates the list of files and folders to not restore.

Example: List details about a restore JSON response

{
"RestoreId":1394,
"BackupId":133886,
"DestinationMachineId":864,
"OverwriteFiles":true,
"BackupConfigurationId":6270,
"BackupConfigurationName":"Restore_Backup",
"BackupRestorePoint":"\/Date(1357151359000)\/",
"BackupMachineId":866,
"BackupMachineName":"sujala-test-centos",
"BackupFlavor":"RaxCloudServer",
"DestinationMachineName":"BILLS-TEST-WIN",
"DestinationPath":"C:\\Test\",
"BackupDataCenter": "DFW",
"IsEncrypted":false,
"EncryptedPassword":null,
"PublicKey":{"ModulusHex":"CA759606B13DC5350A3FAE3F851C7 6F260DCCD1EFF2DB7510AE74E00B4B2B6025422757493B2EC09B2C7 1DFACFF4901E4ADAA3C9F2E6BDE9392E80FEED6F1F81BFD1D3AD9F9 080646F46632C30A94275C85859C1EFCD21BF911F311841914BC719 B1397FD3B95BE7657495903936E3345E6083922F377610CBB6EB67C 62B719770B25C9AB17521C2AB51B75871ED5F04F965C5402443ABCD 05EE5E4A5201641309B8BA1100A04C62210B2900CDEAA40F6EBF267 B73634E471DB1420FF67CE41940D8ED8F4B6C199CF5D023B410C386 C58037546D34102D245AF068E891BB80F1799DDC4C9C85C6FF73DA1 E45AEC98792BCC1C2DE3AAD3F92F50F1661A4FFDC1",
"ExponentHex":10001},
"RestoreStateId":3
}

Get a restore report

GET /v1.0/{tenant_id}/restore/report/{restoreId}

This operation gets a report for the specified, completed restore.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{restoreId}IntegerThe unique identifier for a restore.

This operation does not accept a request body.

Example: Get restore report JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/restore/report/1394
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:

NameTypeDescription
BackupConfigurationIdStringAutogenerated ID that uniquely identifies the backup configuration just created.
BackupConfigurationNameStringSpecifies the name of the backup configuration.
BackupReportIdStringIndicates the ID of the backup report.
RestorePointStringIndicates the time of the restore.
StartTimeStringIndicates the starting time of the restore.
CompletedTimeStringIndicates the completed time of the restore.
DurationStringIndicates the total time to restore.
OriginatingComputerNameStringSpecifies the backup machine name.
StateStringIndicates the state of the restore. Valid values include Creating, Queued, InProgress, Completed, Stopped, Failed, startRequested, Stoprequested, CompletedWithErrors, and Preparing.
NumFilesRestoredStringIndicates the number of files restored.
NumBytesRestoredStringIndicates the number of bytes (size of total files) restored.
RestoreDestinationStringSpecifies the system to which the files are restored.
RestoreDestinationMachineIdStringSpecifies the machine ID to which the files are restored.
NumErrorsStringIndicates the number of errors encountered.
ReasonStringExplanation of errors.
DiagnosticsStringFurther explanation of errors.
ErrorListStringList of errors.

Example: Get restore report JSON response

{
"BackupConfigurationId":6270,
"BackupConfigurationName":"Restore_Backup",
"BackupReportId":133886,
"RestorePoint":"\/Date(1357151359000)\/",
"StartTime":"\/Date(1357226521000)\/",
"CompletedTime":"\/Date(1357226535000)\/",
"Duration":"00:00:14",
"OriginatingComputerName":"sujala-test-centos",
"State":"CompletedWithErrors",
"NumFilesRestored":"35",
"NumBytesRestored":"18 MB",
"RestoreDestination":"BILLS-TEST-WIN",
"RestoreDestinationMachineId":864,
"NumErrors":"1",
"Reason":"UnableToProcessSomeFiles",
"Diagnostics":"Some files may not have been restored",
"ErrorList":[

\]

Activity operations

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

List all activity for an agent

GET /v1.0/{tenant_id}/system/activity/{agentId}

This activity lists all in-progress and completed activity for an agent. Activity types are Backup, Cleanup, and Restore.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.
{agentId}IntegerThe unique identifier for an agent.

This operation does not accept a request body.

Example: List activity for an agent JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/system/activity/232180
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:

NameTypeDescription
IDStringSpecifies the restore ID, backup ID, or cleanup ID.
TypeStringSpecifies type of activity. Valid values are Restore, Backup, or Cleanup.
ParentIdStringIndicates the backup configuration ID for a backup.
DisplayNameStringIndicates the backup name or restore name.
IsBackupConfigurationDeletedStringIndicates if the backup configuration is deleted. Valid values are true or false.
SourceMachineAgentIdStringIndicates the machine agent ID of the source system.
SourceMachineNameStringIndicates the machine agent name of the source system.
DestinationMachineAgentIdStringSpecifies the machine agent ID of the destination system.
DestinationMachineNameStringIndicates name of the destination system.
CurrentStateStringIndicates the current state. Valid values are Creating, Queued, InProgress, Completed, Stopped, Failed, startRequested, Stoprequested, Completed WithErrors, and Preparing.
TimeOfActivityStringIndicates the time of the activity.
BackupIdStringSpecifies the backup ID associated with a restore.

Example: List activity for an agent JSON response

[
{
"ID": 137987,
"Type": "Backup",
"ParentId": 162423,
"DisplayName": "Weekly Website Backup",
"IsBackupConfigurationDeleted": false,
"SourceMachineAgentId": 232180,
"SourceMachineName": "Web Server",
"DestinationMachineAgentId": 0,
"DestinationMachineName": "",
"CurrentState": "Completed",
"TimeOfActivity": "\/Date(1359033934000)\/",
"BackupId": 134332
}
]

List all activity for a user[

GET /v1.0/{tenant_id}/activity

This operation lists all activity completed or in-progress for the user.

This table shows the possible response codes for this operation:

Response CodeNameDescription
200OKThe request succeeded.
400Bad RequestThere were one or more errors in the request.
401UnauthorizedThe supplied token was not authorized to access the resources. Either it is expired or invalid.
403ForbiddenAccess to the requested resource was denied.
404Not FoundThe backend services did not find anything matching the request URI.
500Instance FaultThis is a generic server error. The message contains the reason for the error. This error could wrap several error messages.
503Service UnavailableThis 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:

NameTypeDescription
{tenant_id}StringThe unique identifier of the tenant or account.

This operation does not accept a request body.

Example: List activity for a user JSON request

GET https://dfw.backup.api.rackspacecloud.com/v1.0/1234/activity
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:

NameTypeDescription
IDStringSpecifies the restore ID, backup ID, or cleanup ID.
TypeStringSpecifies type of activity. Valid values are Restore, Backup, or Cleanup.
ParentIdStringIndicates the backup configuration ID for a backup.
DisplayNameStringIndicates the backup name or restore name.
IsBackupConfigurationDeletedStringIndicates if the backup configuration is deleted. Valid values are true or false.
SourceMachineAgentIdStringIndicates the machine agent ID of the source system.
SourceMachineNameStringIndicates the machine agent name of the source system.
DestinationMachineAgentIdStringSpecifies the machine agent ID of the destination system.
DestinationMachineNameStringIndicates name of the destination system.
CurrentStateStringIndicates the current state. Valid values are Creating, Queued, InProgress, Completed, Stopped, Failed, startRequested, Stoprequested, Completed WithErrors, and Preparing.
TimeOfActivityStringIndicates the time of the activity.
BackupIdStringSpecifies the backup ID associated with a restore.

Example: List activity for a user JSON response

[
{
"ID": 134692,
"Type": "Backup",
"ParentId": 6265,
"DisplayName": "Backup1",
"IsBackupConfigurationDeleted": false,
"SourceMachineAgentId": 5,
"SourceMachineName": "BALAJIMBP",
"DestinationMachineAgentId": 0,
"DestinationMachineName": "",
"CurrentState": "Completed",
"TimeOfActivity": "\/Date(1357230189000)\/",
"BackupId": 134332
},
{
"ID": 134693,
"Type": "Backup",
"ParentId": 6265,
"DisplayName": "Backup1",
"IsBackupConfigurationDeleted": false,
"SourceMachineAgentId": 5,
"SourceMachineName": "BALAJIMBP",
"DestinationMachineAgentId": 0,
"DestinationMachineName": "",
"CurrentState": "Completed",
"TimeOfActivity": "\/Date(1357230189000)\/",
"BackupId": 134386
}
]