Skip to main content

AddUser (v1,v2)

July 21, 2025

This API can be used to add new backup user.

The settings can be found on the AhsayCBS web console at:

  • Backup / Restore > Users, Groups & Policies > Backup User

 

v1 AddUser.do


URL

https://CBS.EXAMPLE.COM/obs/api/json/AddUser.do

Deprecated Since Version: 7.15.6.38

 

v2 AddUser.do


URL

https://CBS.EXAMPLE.COM/obs/api/json/2/AddUser.do

Available Since Version: 9.5

Parameters

Key Type Description
SysUser String Username of an AhsayCBS System User with Admin or API role.
SysPwd String Password matching SysUser.
LoginName String Backup user name.
Owner String Owner of the backup user (if applicable).
Password String Password of the backup user.
Email String Contact email.
QuotaList JSON Object Array See QuotaList.
Status String If this value is “SUSPENDED”, the user is suspended. Otherwise, the user is enabled.
ClientType String Type of backup client, either ACB or OBM.
Type String User type, either TRIAL or PAID. Default to TRIAL if not specified.
UserHome String Default to the first user home on your user home configuration if not specified.
MobileQuota Long Deprecated from v8.5, old v1 AhsayMOB quota.
MobileV2Quota Long Fixed at 10 regardless of input.
ExchangeMailboxQuota Long Exchange mail level backup quota. Mandatory if the corresponding add-on module is enabled (e.g. “ExchangeMailboxQuota” is mandatory if “EnableExchangeMailbox” is set to true).
MsVmQuota Long Hyper-V VM backup quota. Mandatory if the corresponding add-on module is enabled (e.g. “MsVmQuota” is mandatory if “EnableMsVm” is set to true).
MsVmQuotaType String The value can be any one of the following: GUESTVM or SOCKET. Default value is GUESTVM if not provided.
VMwareQuota Long VMware VM backup quota. Mandatory if the corresponding add-on module is enabled (e.g. “VMwareQuota” is mandatory if “EnableVMware” is set to true).
VMwareQuotaType String The value can be any one of the following: GUESTVM or SOCKET. Default value is GUESTVM if not provided.
RunDirectQuotaEnabled Boolean True / False
RunDirectQuota Long Run Direct maximum VM quota. Mandatory if the RunDirect is enabled (e.g. "RunDirectQuota" is mandatory if "RunDirectQuotaEnabled" is set to true).
EnableOffice365Mail Boolean True / False
Office365MailQuota Long Microsoft 365 mail backup quota. Mandatory if the corresponding add on module is enabled (e.g. "Office365MailQuota" is mandatory if "EnableOffice365Mail" is set to true).
Language String Language used by the user.
DisplayName String Alias and contact name.
Notes String Notes of the account profile.
HostQuotaEnabled Boolean Enalbe or disable client host quota
HostQuota Long Storage quota, unit in bytes.
EnableMobile Boolean AhsayMOB module, deprecated from v8.5.
EnableMobileV2 Boolean Enable or disable Ahsay Mobile module (when enabled, "MobileV2Quota" fixed value at 10).
EnableExchangeMailbox Boolean Enable or disable Exchange Mailbox module.
EnableMSSQL Boolean Enable or disable MS SQL module.
EnableMSExchange Boolean Enable or disable MS Exchange module.
EnableOracle Boolean Enable or disable Oracle module.
EnableLotusDomino Boolean Enable or disable Lotus Domino module.
EnableLotusNotes Boolean Enable or disable Lotus Notes module.
EnableMySQL Boolean Enable or disable MySQL module.
EnableInFileDelta Boolean Enable or disable In-File Delta module (pre-v9).
EnableShadowCopy Boolean Enable or disable Volume Shadow Copy module.
EnableNASClient Boolean Enable or disable NAS - Synology module.
EnableQnap Boolean Enable or disable NAS - QNAP module.
EnableMsVm Boolean Enable or disable Hyper-V module.
EnableVMware Boolean Enable or disable VMware module.
EnableCDP Boolean Enable or disable Continuous Data Protection module.
EnableShadowProtectBareMetal Boolean Enable or disable ShadowProtect System Backup module.
EnableWinServer2008BareMetal Boolean Enable or disable Windows System Backup module.
EnableMsWinSysState Boolean Enable or disable Windows System State Backup module.
EnableOpenDirect Boolean Enable or disable OpenDirect module.
OpenDirectQuota String Number of OpenDirect allowed. Only works on pre-v9.13 AhsayCBS.
EnableMariaDB Boolean Enable or disable MariaDB Database Server module.
EnableDeduplication Boolean Enable or disable Deduplication module.
QuotaType String Quota Type, either TOTAL_QUOTA or PER_DESTINATION_QUOTA, default to PER_DESTINATION_QUOTA, if not specified.
StorageQuota Long Default to 100, if not specified. Unit in GB.
QuotaList JSON Object Array Mandatory if QuotaType is PER_DESTINATION_QUOTA or if QuotaType is not specified.
EnableAUA Boolean Enable or disable Auto Update Agent setting.
EnableTibero Boolean Enable or disable Tibero Database Server module.
EnableLinuxBareMetal Boolean Enable or disable Linux Bare Metal Backup module.
EnablePostgreSQL Boolean Enable or disable PostgreSQL Server module.
EnableProxmox Boolean Enable or disable Proxmox VE module.

QuotaList

Key Type Description
Enabled Boolean True / False
DestinationKey String ID of the predefined destination or "OBS" for quota on AhsayCBS.
Quota Long Unit in bytes.
Return Values
Key Type Description
Status String "OK" or "Error"
Message String Error message, it only appears if status displays "Error".
ExptType String The type of exception, will only be displayed if the status is "Error".
Examples

Example 1: Add AhsayOBM paid user with AhsayCBS quota 50 GB and predefined destination quota of 50 GB

INPUT

{
	"SysUser":"system",
	"SysPwd":"system1",
	"LoginName":"obm2",
	"Password":"obm2",
	"Email":"obm2@example.com",
	"Type":"Paid",
	"Status":"ENABLE",
	"ClientType":"OBM",
	"QuotaList":[
		{
			"Enabled":true,
			"DestinationKey":"-1686812937526",
			"Quota":53687091200
		}
	]
}

OUTPUT

{
	"Status":"OK"
}

OUTPUT 2: If destination is not visible to user

{
	"Status":"Error",
	"Message":"Destination ‘-1686812937526’ is not visible to user ‘obm2’ according to policy’s [Destinations Visible to Users] settings.",
	"ExptType":"java.lang.Exception"
}

OUTPUT 3: If the Enable parameter is missing from a destination in the QuotaList

{
	"Status":"Error",
	"Message":"Value ‘Enabled’ is missing in item ‘-1686812937526’ of ‘QuotaList’.",
	"ExptType":"java.lang.Exception"
}

OUTPUT 4: If Enable is invalid for a destination in the QuotaList

{
	"Status":"Error",
	"Message":"Invalid ‘Enabled’ in item ‘-1686812937526’ of ‘QuotaList’.",
	"ExptType":"java.lang.Exception"
}

OUTPUT 5: If a destination is duplicated in the QuotaList

{
	"Status":"Error",
	"Message":"Duplicated DestinationKey (-1686812937526) are not allowed in the QuotaList.",
	"ExptType":"java.lang.Exception"
}

OUTPUT 6: If the Quota value for a destination is invalid (e.g. a negative number)

{
	"Status":"Error",
	"Message":"Invalid value for ‘Quota’ for item ‘-1686812937526’ of ‘QuotaList’. Error: Must be a positive number.",
	"ExptType":"java.lang.Exception"
}

OUTPUT 7: If the Quota value for a destination is invalid

{
	"Status":"Error",
	"Message":"Invalid value ‘Quota’ for item ‘-1686812937526’ of ‘QuotaList’. Error: JSONObject [\”Quota\”] is not a long (class java.lang.String: ac130).",
	"ExptType":"java.lang.Exception"
}

Example 2: Add AhsayOBM paid user with AhsayCBS quota 50 GB and Total Quota 75 GB

INPUT

{
	"SysUser":"system",
	"SysPwd":"system1",
	"LoginName":"obm1",
	"Password":"obm1",
	"Email":"testobm@example.com",
	"Type":"Paid",
	"Status":"ENABLE",
	"ClientType":"OBM",
	"QuotaType":"TOTAL_QUOTA",
	"StorageQuota":75,
	"QuotaList":[
		{
			"DestinationKey":"OBS",
			"Quota":53687091200,
			"DestinationName":"AhsayCBS",
			"Enabled":true
		}
	]
}

OUTPUT

{
	"Status":"OK"
}

Example 3: Invalid Quota value specified

INPUT

{
	"SysUser":"system",
	"SysPwd":"system1",
	"LoginName":"obm2",
	"Password":"obm2",
	"Email":"obm2@example.com",
	"Type":"Paid",
	"Status":"ENABLE",
	"ClientType":"OBM",
	"QuotaList":[
		{
			"Enabled":true,
			"DestinationKey":"OBS",
			"Quota":53687091200
		}
	]
}

OUTPUT

{
	"Status":"OK"
}