Adding backup devices

To add a backup device, use the AddAccount method. Devices are added one at a time.

Required Parameters

ParameterDescriptionType/Supported values
accountInfoA group of parameters related to the deviceAccountInfo, (has child parameters of its own see the AccountInfo child parameters table below)

AccountInfo child parameters

ParameterDescriptionType/Supported values
IDAn ID to assign to the new device. It must not coincide with the ID of existing devices<int> Integer
NameA name to assign to the new device. It must not coincide with the names of existing devices.OptionalNonEmptyString String
NameAliasAn alternative name to assign to the new device. It must not coincide with this devices name or the names of existing devices.OptionalNonEmptyString String
PasswordA password to assign to the new device.OptionalNonEmptyString String
TokenA token that will become the Encryption Key/Security Code for the new deviceOptionalNonEmptyString String
TypeThe type of device, based on what data will be backed up<AccountType::Enum>
  • Undefined
  • BackupManager
  • Office365
  • Count
PartnerIdThe ID of the customer the device is created for (retrieved through the GetPartnerInfo method)<int> Integer
ProductIdThe ID of the product to assign to the new device. Use the EnumerateProducts method to get the list of products available to the customer.<int> Integer
LocationIdThe location of the device. We recommend using the location of the customer that owns the device (unless you know that the customer has storage in the desired location). This can be found by running the EnumerateLocations method and finding the appropriate geographic region.<int> Integer
CreationTimeThe time code at which the device was created<std::time_t> Integer in Unix format. For example, 1535673599 stands for August 30, 2018
ExpirationTimeThe time code at which the device expires<std::time_t> Integer in Unix format. For example, 1535673599 stands for August 30, 2018
FlagsAn array of flags denoting the type of account<AccountFlags::FlagsType>
  • Undefined
  • Managed_Obsolete
  • Trial
  • Count
StorageLocationIdThe ID number of the storage location to be used for this new device<int> Integer
RemovalTimeThe time code at which the device will be removed<AbsoluteTime> Integer as the total number of seconds since the beginning of January 1st 1900
AccountGroupIdThe ID of the AccountGroup the device is associated to which can be found by running GetAccountGroup<int> Integer
OwnUserIdThe ID of the user running the call<int> Integer
StorageIdThe ID of the storage pool the device will be assigned to<int> Integer
ProfileIdThe ID of the profile to assign to the device.<int> Integer
ContinuityEnabledEnable or disable a continuity plan from an arrayContinuityState::Enum
  • Undefined
  • Disabled
  • RecoveryTesting
  • StandbyImage
  • Count

Optional Parameters

ParameterDescriptionType/Supported values
homenodeInfoA group of parameters related to the storage nodeStorageNodeInfo, (has child parameters of its own, see the HomeNodeInfo child parameters table below)

HomeNodeInfo child parameters

ParameterDescriptionType/Supported values
IdAn ID to assign to the new device. It must not coincide with the ID of existing devices<int> Integer
ActiveAccountsNumber of active devices associated to this storage node<int> Integer
TotalAccountsTotal number of devices associated to this storage node<int> Integer
LocationIdThe location of the storage node. We recommend using the location of the customer that owns the node.<int> Integer
CommonInfoCommon information regarding the Storage Node

StorageNodeCommonInfo (has child parameters of its own, see the

StorageNodeCommonInfo child parameters

table below)

StateInfoState information regarding the Storage Node

StorageNodeStateInfo (has child parameters of its own, see the

StorageNodeStateInfo child parameters

table below)

ModeInfoMode information regarding the Storage Node

StorageNodeModeInfo (has child parameters of its own, see the

StorageNodeModeInfo child parameters

table below)

StorageNodeCommonInfo child parameters

ParameterDescriptionType/Supported values
StorageIDThe ID number of the storage<int> Integer
NameThe name of the storage nodeOptionalNonEmptyString String
FamilyThe family of the storage nodeOptionalNonEmptyString String
UserThe username the storage node belongs toOptionalNonEmptyString String
PasswordThe password of the storage nodeOptionalNonEmptyString String
HostThe hostname of the storageOptionalNonEmptyString String
PathThe path to the storage node

<

std::string>

GatewayHostThe gateway host of the storage node

<

std::string>

HttpGatwayHostThe HTTP gateway host of the storage node

<

std::string>

CertificateInfoCertificate information for the storage node

StorageNodeCertificateInfo (has child parameters of its own, see the

StorageNodeCertificateInfo child parameters

table below)

StorageNodeCertificateInfo child parameters

ParameterDescriptionType/Supported values
CertificateThe certificate for the storage node<std::string>
StartDateThe start date of the certificate<std::time_t> Integer in Unix format. For example, 1535673599 stands for August 30, 2018
EndDateThe expiry date of the certificate<std::time_t> Integer in Unix format. For example, 1535673599 stands for August 30, 2018
CertificatePinThe certificate pin<std::string>

StorageNodeStateInfo child parameters

ParameterDescriptionType/Supported values
StateThe state of the storage nodestoragenodestatetype::flagstype
  • Undefined
  • Online
  • Full
  • Migrated
  • Decommissioned
  • Count
UsedStorageThe used storage on the storage node<std::int64_t> Integer (in mebibytes)
TotalStorageThe total storage available on the storage node<std::int64_t> Integer (in mebibytes)
PrivilegedStorageThe privileged storage on the storage node<std::int64_t> Integer (in mebibytes)

StorageNodeModeInfo child parameters

ParameterDescriptionType/Supported values
ModeThe mode of the storage nodestoragenodemode::Enum
  • Undefined
  • Operable
  • OutofService
  • Count
MessageA note relative to the storage node mode<std::string>

Sample Request

The below example covers creating a very basic device with the minimum information. Once created in the Management Console, this device can be edited as needed, or changes can be made using the ModifyAccount method.

{
    "id": "jsonrpc",
    "visa": "{{visa}}",
    "method": "AddAccount",
    "jsonrpc": "2.0",
    "params": {
      "accountInfo": {
        "Name": "test-device",
        "PartnerId": 33495,
        "ProductId": 1,
        "LocationId": 1
      }
    }
}

Sample Response

{  
    "id":"jsonrpc",
    "jsonrpc":"2.0",
    "result":{  
      "result":{  
        "Id":72910,
        "Name":"test-device",
        "Password":"24e3ec5461ed",
        "Token":"068a53c1-a64b-45c8-a87e-0000XX0000X0Xx0"
      }
    },
    "visa":"{{visa}}"
}

Did this page help you?