Saasame Mgmt. API Reference

Last modified: December 05 2016 08:48:40

List Cloud

http://127.0.0.1:8080/restful/OpenStackManagement
/MgmtCloudConnection
POST
{
	'Action'  : 'ListOpenStackConnection',
	'AcctUUID': STRING
}
{
	'ACCT_UUID'   : STRING, 
	'REGN_UUID'   : STRING,
	'CLUSTER_UUID': STRING,
	'PROJECT_NAME': STRING,
	'CLUSTER_USER': STRING,
	'CLUSTER_PASS': STRING,
	'CLUSTER_ADDR': STRING,
	'AUTH_TOKEN'  : STRING,
	'TIMESTAMP'   : YYYY-MM-DD HH-MM-SS
}
{
	TBD
}

Delete Cloud

http://127.0.0.1:8080/restful/OpenStackManagement
/MgmtCloudConnection
POST
{
	'Action'     : 'ListOpenStackConnection',
	'ClusterUUID': STRING
}
{
	'Code' : true|false,
	'Msg'  : STRING
}
{
	TBD
}

Verify OpenStack Connection

http://127.0.0.1:8080/restful/OpenStackManagement
/AddOpenStackConnection
POST
{
	'Action'         : 'VerifyOpenStackConnection',
	'ProjectName'    : STRING,
	'ClusterUsername': STRING,
	'ClusterPassword': STRING,
	'ClusterVipAddr' : STRING
}
{
	true|false
}
{
	TBD
}

Initialize OpenStack Connection

http://127.0.0.1:8080/restful/OpenStackManagement
/AddOpenStackConnection
POST
{
	'Action'         : 'InitializeNewOpenStackConnection',
	'AcctUUID'       : STRING,
	'RegnUUID'       : STRING,
	'ProjectName'    : STRING,
	'ClusterUsername': STRING,
	'ClusterPassword': STRING,
	'ClusterVipAddr' : STRING
}
{
	'Code' : true|false
	'Msg'  : STRING
}
{
	TBD
}

Query OpenStack Credential Information

http://127.0.0.1:8080/restful/OpenStackManagement
/EditOpenStackConnection
POST
{
	'Action'     : 'QueryAccessCredentialInformation',
	'ClusterUUID': STRING
}
{
	'ACCT_UUID'   : STRING, 
	'REGN_UUID'   : STRING,
	'CLUSTER_UUID': STRING,
	'PROJECT_NAME': STRING,
	'CLUSTER_USER': STRING,
	'CLUSTER_PASS': STRING,
	'CLUSTER_ADDR': STRING,
	'AUTH_TOKEN'  : STRING,
	'TIMESTAMP'   : YYYY-MM-DD HH-MM-SS
}
{
	TBD
}

Update OpenStack Cloud Connection

http://127.0.0.1:8080/restful/OpenStackManagement
/EditOpenStackConnection
POST
{
	'Action'         : 'UpdateOpenStackConnection',
	'ClusterUUID'    : STRING,
	'ProjectName'    : STRING,
	'ClusterUsername': STRING,
	'ClusterPassword': STRING,
	'ClusterVipAddr' : STRING
}
{
	true|false
}
{
	TBD
}

Verify AWS Connection

http://127.0.0.1:8080/restful/AmazonWebServices
/AddAwsConnection
POST
{
	'Action'   : 'VerifyAwsAccessCredential',
	'AccessKey': STRING,
	'SecretKey': STRING
}
{
	true|false
}
{
	TBD
}

Initialize AWS Connection

http://127.0.0.1:8080/restful/AmazonWebServices
/AddAwsConnection
POST
{
	'Action'   : 'InitializeNewAwsConnection',
	'AcctUUID' : STRING,
	'RegnUUID' : STRING,
	'AccessKey': STRING,
	'SecretKey': STRING
}
{
	'Code' : true|false
	'Msg'  : STRING
}
{
	TBD
}

Query AWS Access Credential Information

http://127.0.0.1:8080/restful/AmazonWebServices
/EditAwsConnection
POST
{
	'Action'     : 'QueryAccessCredentialInformation',
	'ClusterUUID': STRING
}
{
	'ACCT_UUID'   : STRING, 
	'REGN_UUID'   : STRING,
	'CLUSTER_UUID': STRING,
	'PROJECT_NAME': AWS,
	'ACCESS_KEY'  : STRING,
	'SECRET_KEY'  : STRING,
	'DEFAULT_ADDR': None,
	'USER_UUID'   : STRING,
	'TIMESTAMP'   :YYYY-MM-DD HH-MM-SS
}
{
	TBD
}

Query Available Service

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtTransportConnection
POST
{
	'Action'  : 'QueryAvailableService',
	'AcctUUID': STRING,
	'ServTYPE': STRING,
	'SystTYPE': STRING
}
{
	'ID'		: INTEGER,
	'ACCT_UUID'	: STRING,
	'REGN_UUID'	: STRING,
	'OPEN_UUID'	: STRING,
	'HOST_UUID'	: STRING,
	'HOST_REGN'	: 'REGION_TYPE',
	'HOST_TYPE'	: 'HOST_TYPE',
	'SERV_UUID'	: STRING,
	'HOST_NAME'	: STRING,
	'SERV_ADDR'	: ['IP_ADDRESS'],
	'SERV_LOCA'	: 'LOCATION_TYPE',
	'SERV_TYPE'	: 'Launcher',
	'LAUN_UUID'	: false
}
{
	TBD
}

Verify Service Connection

http://127.0.0.1:8080/restful/ServiceManagement
/VerifyOnPremiseTransportServices
POST
{
	'Action'	: 'VerifyServiceConnection',
	'ServADDR'	: STRING,
	'SeltSERV'	: 'Scheduler,Carrier,Loader,Launcher',
	'MgmtADDR'  : 'IP_ADDRESS'
}
{
	'Code'	: true|false,
	'Msg'	-> 
		'version' 	  : 'VERSION_STRING',
		'path' 		  : 'TRANSPORT_INSTALL_PATH',
		'architecture': STRING,
		.
		.
		.
		...etc.
}
{
	'Code'	: false
}

Verify Folder Connection

http://127.0.0.1:8080/restful/ServiceManagement
/VerifyOnPremiseTransportServices
POST
{
	'Action'	: 'VerifyFolderConnection',
	'ServADDR'	: STRING,
	'ConnDEST'	: 'INSTALL_PATH'+'\\imagex'
}
{
	'Code'	: true
}
{
	'Code'	: false
}

Initialize New Services

http://127.0.0.1:8080/restful/ServiceManagement
/VerifyOnPremiseTransportServices
POST
{
	'Action'	: 'InitializeNewServices',
	'AcctUUID'	: STRING,
	'RegnUUID'	: STRING,					
	'OpenUUID'	: 'OPENSTACK_CLOUD_UUID|ONPREMISE-00000-LOCK-00000-PREMISEON',
	'HostUUID'	: 'OPENSTACK_CLOUD_UUID|ONPREMISE-00000-LOCK-00000-PREMISEON',
	'ServADDR'	: 'TRANSPORT_ADDRESS'
	'SeltSERV'	: 'WINDOWS|LINUX',
	'SystTYPE'	: 'Scheduler,Carrier,Loader,Launcher',
	'MgmtADDR'	: 'MGMT_ADDRESS'
}
{
	'Code'	: true
}
{
	'Code'	: false
}

Initialize NewFolder Connection

http://127.0.0.1:8080/restful/ServiceManagement
/VerifyOnPremiseTransportServices
POST
{
	'Action'	 : 'InitializeNewFolderConnection',
	'AcctUUID'	 : STRING,
	'ServADDR'	 : 'TRANSPORT_ADDRESS',
	'ServUUID'	 : SERV.UUID,
	'ClusterUUID': 'CLOUD_UUID|ONPREMISE-00000-LOCK-00000-PREMISEON',
	'MgmtADDR' 	 : 'MGMT_ADDRESS',
	'ConnDEST' 	 : 'INSTALL_PATH'+'\\imagex'
}
{
	'Code'	: true
}
{
	'Code'	: false
}

Query Transport Server Information

http://127.0.0.1:8080/restful/ServiceManagement
/EditOnPremiseTransportServices
POST
{
	'Action'	 : 'QueryTransportServerInformation',
	'ServUUID'	 : STRING
}
{
	'ACCT_UUID': STRING,
	'REGN_UUID': STRING,
	'SERV_UUID': STRING,
	'OPEN_UUID': STRING,
	'OPEN_HOST': STRING,
	'HOST_NAME': STRING,
	'SERV_ADDR': ["TRANSPORT_ADDRESS"],
	'SERV_INFO': Object {id="{UUID_STRING}",  version="VERSION_STRING",  path="INSTALL_PATH",  more...},
	'SERV_MISC': Object {ADDR='ESX_ADDRESS',  USER='ESX_USERNAME',  PASS='ESX_PASSWORD'},
	'SERV_TYPE': STRING,
	'LIST_ADDR': Object {"TRANSPORT_ADDRESS"},
	'SYST_TYPE': 'WINDOWS|LINUX'
}
{
	'Code'	: false
}

Update Trnasport Services

http://127.0.0.1:8080/restful/ServiceManagement
/EditOnPremiseTransportServices
POST
{
	'Action'	: 'UpdateTrnasportServices',
	'ServUUID' 	: STRING,
	'ServADDR'	: 'TRANSPORT_ADDRESS'
}
{
	'Code'	: true
}
{
	'Code'	: false
}

List Installed Instances

http://127.0.0.1:8080/restful/OpenStackManagement
/SelectTransportInstance
POST
{
	'Action'		:'ListInstalledInstances',
	'ClusterUUID'	:'CLOUD_CLUSTER_UUID'
}
{
	'servers'	:[Object
					{ status="ACTIVE", updated="YYYY-MM-DD HH:MM:SS", hostId="STRING",  more...}
				]
}
{
	'Code'	: false
}

Query Selected Host Information

http://127.0.0.1:8080/restful/OpenStackManagement
/VerifyCloudTransportServices
POST
{
	'Action'		:'QuerySelectedHostInformation',
	'ClusterUUID'	:'CLOUD_CLUSTER_UUID',
	'HostUUID'		:'CLOUD_HOST_UUID'	
}
{
	'servers'	:[Object
					{ status="ACTIVE", updated="YYYY-MM-DD HH:MM:SS", hostId="STRING",  more...}
				]
}
{
	'Code'	: false
}

Query Available Host

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtHostConnection
POST
{
	'Action'	: 'QueryAvailableHost',
	'AcctUUID'	: STRING,
	'ServTYPE'	: 'Physical Packer|Virtual Packer'
}
{
	"ID": ID,
	"ACCT_UUID": STRING,
	"REGN_UUID": STRING,
	"HOST_UUID": STRING,
	"HOST_NAME": STRING,
	"HOST_ADDR": 'IP_ADDRESS',
	"SERV_UUID": STRING,
	"OS_TYPE"  : 'WINDOWS|LINUX',
	"PACK_NAME": STRING,
	"PACK_ADDR": 'IP_ADDRESS',
	"SERV_MISC": '[Object {"architecture":"amd64", "client_id":STRING, "client_name":STRING, "domain":STRING, more...}]',
	"DISK_SIZE": BIG_INTEGER,
	"HOST_TYPE": 'Physical|Virtual',
	"PROTECTED": 'true|false'
}
{
	false
}

Delete Packer Host

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtHostConnection
POST
{
	'Action'	: 'DeletePackerHost'
	'HostUUID'	: STRING
}
{
	NULL
}
{
	NULL
}

Reflush Packer

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtHostConnection
POST
{
	'Action'	: 'ReflushPacker',
	'AcctUUID'	: STRING
}
{
	NULL
}
{
	NULL
}

Test Service Connection

http://127.0.0.1:8080/restful/ServiceManagement
/VerifyHostPhysical
POST
{
	'Action'	: 'TestServiceConnection',
	'ServADDR'	: 'SERVER_ADDRESS',
	'HostADDR'	: 'ESX_ADDRESS',
	'HostUSER'	: 'ESX_USERNAME',
	'HostPASS'	: 'ESX_PASSWORD',
	'HostUUID'	: 'SELECT_TRANSPORT_UUIT',
	'ServTYPE'	: 'Physical Packer|Virtual Packer|Offline Packer'
}
{
	'Code': true
}
{
	TBD
}

Initialize New Service

http://127.0.0.1:8080/restful/ServiceManagement
/VerifyHostPhysical
POST
{
	'Action'	: 'InitializeNewService',
	'AcctUUID'	: STRING,
	'RegnUUID'	: STRING,
	'OpenUUID'	: STRING,
	'HostUUID'	: STRING,
	'ServADDR'	: 'PACKER_ADDRESS',
	'HostADDR'	: 'ESX_ADDRESS',
	'HostUSER'	: 'ESX_USERNAME',
	'HostPASS'	: 'ESX_PASSWORD',
	'ServTYPE'	: 'Scheduler|Carrier|Loader|Launcher|ESX|null',
	'SystTYPE'	: 'Physical Packer|Virtual Packer|Offline Packer'
}
{
	'Code' : true|false
}
{
	TBD
}

Query Host Info

http://127.0.0.1:8080/restful/ServiceManagement
/EditHostPhysical
POST
{
	'Action'	: 'QueryHostInfo',
	'HostUUID'	: STRING
}
{
	'ACCT_UUID' : STRING,
	'REGN_UUID' : STRING,
	'HOST_UUID' : STRING,
	'HOST_NAME' : STRING,
	'HOST_ADDR' : 'HOST_ADDRESS',
	'HOST_DISK'	: [Object { HOST_UUID=STRING, DISK_UUID=STRING, DISK_NAME=STRING,  more...}],
	'HOST_INFO'	: Object { architecture=STRING, client_id=STRING, client_name=STRING,  more...},
	'HOST_SERV'	: Object { ACCT_UUID=STRING, REGN_UUID=STRING, SERV_UUID=STRING,  more...},
	'HOST_TYPE'	: 'Physical|Virtual'
}
{
	TBD
}

Update Host Information

http://127.0.0.1:8080/restful/ServiceManagement
/EditHostPhysical
POST
{
	'Action'	: 'UpdateHostInformation',
	'AcctUUID'	: STRING,
	'RegnUUID'	: STRING,
	'OpenUUID'	: STRING,
	'ServUUID'	: STRING,
	'ServADDR'	: 'SERVER_ADDRESS',
	'HostUUID'	: STRING,
	'HostADDR'	: 'ESX_ADDRESS',
	'HostUSER'	: 'ESX_USERNAME',
	'HostPASS'	: 'ESX_PASSWORD',
	'ServTYPE'	: 'Physical Packer|Virtual Packer|Offline Packer'
}
{
	'Code' : true|false
}
{
	TBD
}

List Available Replica

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtPrepareWorkload
POST
{
	'Action'   : 'ListAvailableReplica',
	'AcctUUID' : STRING
}
{
	'REPL_UUID'				 : STRING,
	'HOST_NAME'				 : STRING,
	'REPL_MESG'				 : STRING,
	'PROGRESS_PRECENT'		 : INTEGER,
	'LOADER_PROGRESS_PRECENT': INTEGER,
	'REPL_TIME'				 : YYYY-MM-DD HH:MM:SS,
	'WINPE_JOB'				 : 'Y|N' 
}
{
	false
}

Display Job History

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtPrepareWorkload
POST
{
	'Action'	: 'DisplayJobHistory'
	'JobsUUID'	: STRING,
	'ItemLimit' : INTEGER
}
{
	'time'		  : 'UNIX_TIME_STAMP',
	'unsync_time' : 'UNIX_TIME_STAMP',
	'state'		  :	INTEGER,
	'error'		  : INTEGER,
	'description' : STRING
}
{
	false
}

Sync Select Replica

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtPrepareWorkload
POST
{
	'Action'	: 'SyncSelectReplica'
	'ReplUUID'	: STRING
}
{
	TBD
}
{
	TBD
}

Delete Select Replica

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtPrepareWorkload
POST
{
	'Action'	: 'DeleteSelectReplica'
	'ReplUUID'	: STRING
}
{
	TBD
}
{
	TBD
}

Update Replica Interval Setting

http://127.0.0.1:8080/restful/ServiceManagement
/EditConfigureSchedule
POST
{
	'Action'			  : 'UpdateReplicaIntervalSetting'
	'ReplUUID'			  : STRING,
	'IntervalMinutes'	  : INTEGER,
	'SnapshotsNumber'	  : INTEGER,
	'UseBlockMode'		  : true|false,
	'WorkerThreadNumber'  : INTEGER,
	'LoaderThreadNumber'  : INTEGER,
	'LoaderTriggerNumber' : INTEGER,
	'StartTime'			  : 'YYYY-MM-DD HH:MM'
}
{
	'Code' : true
}
{
	'Code' : false
}

Query Host Information

http://127.0.0.1:8080/restful/ServiceManagement
/PrepareWorkloadSummary
POST
{
	'Action'			: 'QueryHostInformation'
	'HostUUID'			: STRING
}
{
	'ACCT_UUID' : STRING,
	'REGN_UUID' : STRING,
	'HOST_UUID' : STRING,
	'HOST_NAME' : STRING,
	'HOST_ADDR' : 'HOST_ADDRESS',
	'HOST_DISK' : [Object {HOST_UUID=STRING, DISK_UUID=STRING, DISK_NAME=STRING, more...}],
	'HOST_INFO' : Object {architecture=STRING, client_id=STRING, client_name=STRING, more...},
	'HOST_SERV' : Object {ACCT_UUID=STRING, REGN_UUID=STRING, SERV_UUID=STRING, more...},
	'HOST_TYPE'	: 'Physical|Virtual'
}
{
	TBD
}

Query Connection Information By ServUUID

http://127.0.0.1:8080/restful/ServiceManagement
/PrepareWorkloadSummary
POST
{
	'Action'	: 'QueryConnectionInformationByServUUID',				
	'HostUUID'	: STRING,	#HOST_UUID
	'LoadUUID'	: STRING, 	#LOADER_UUID
	'LaunUUID'	: STRING	#LAUNCHER_UUID
}
{
	'ACCT_UUID'	  : STRING,
	'SOURCE_CONN' : STRING,
	'TARGET_CONN' : STRING,
	'CONN_DATA'	  :	Object { ACCT_UUID=STRING, CONN_TYPE='LocalFolder|WebDav', SCHD_UUID=STRING,  more...},
	'CONN_TYPE'	  :	'LocalFolder|WebDav',
	'SERV_INFO'	  : Object { ACCT_UUID=STRING, REGN_UUID=STRING, SERV_UUID=STRING,  more...},
	'MGMT_ADDR'	  : 'MGMT_ADDRESS',
	'CLUSTER_UUID': STRING,
	'LAUN_UUID'	  : STRING
}
{
	false
}

Begin To Run Replica

http://127.0.0.1:8080/restful/ServiceManagement
/PrepareWorkloadSummary
POST
{
	'Action'   				  : 'BeginToRunReplica',				
	'RegnUUID' 				  : STRING,
	'HostUUID' 				  : STRING,
	'CarrUUID' 				  : STRING,
	'LoadUUID' 				  : STRING,
	'LaunUUID' 				  : STRING,
	'IntervalMinutes'   	  : INTEGER,
	'SnapshotsNumber'   	  : INTEGER,
	'UseBlockMode'      	  : true|false,
	'WorkerThreadNumber' 	  : INTEGER,
	'LoaderThreadNumber'	  : INTEGER,
	'LoaderTriggerPercentage' : INTEGER,
	'BufferSize'			  : INTEGER,
	'ChecksumVerify'		  : true|false,
	'SchedulePause'           : true|false,
	'StartTime'         	  : 'YYYY-MM-DD HH:MM'
	'TimeZONE' 				  : STRING,
	'MgmtADDR' 				  : 'MGMT_ADDRESS'
}
{
	TBD
}
{
	TBD
}

Query Replica Configuration

http://127.0.0.1:8080/restful/ServiceManagement
/EditConfigureSchedule
POST
{
	'Action'			  : 'QueryReplicaConfiguration'
	'ReplUUID'			  : STRING
}
{
	'type' 						: INTEGER,
	'triggers' 					: [Object { type=1,  interval="60",  start="",  more...}],
	'management_id' 			: STRING,
	'mgmt_addr'					: Object { IP_ADDRESS=0},
	'mgmt_port'					: INTEGER,
	'is_ssl'					: true|false,
	'worker_thread_number' 		: INTEGER,
	'block_mode_enable' 		: 0|1,
	'snapshot_rotation'			: INTEGER,
	'loader_thread_number' 		: INTEGER,
	'loader_trigger_percentage' : INTEGER,
	'buffer_size'				: INTEGER,
	'checksum_verify'			: true|false,
	'schedule_pause'			: true|false,
	'job_version'				: 'transport version number',
	'edit_lock'					: true|false,
	'is_executing'				: true|false,
	'init_loader'				: true|false,
	'timezone'					: 'timezone',
	'is_migration_executing'	: true|false,
	'user_set_time'				: 'UTC time'
}
{
	false
}

List Available Service

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtRecoverWorkload
POST
{
	'Action'   : 'ListAvailableService',				
	'AcctUUID' : STRING
}
{
	'SERV_UUID' : STRING,
	'HOST_NAME' : STRING,
	'SERV_MESG' : STRING,
	'SERV_TIME' : 'UNIX_TIME_STAMP'
}
{
	false
}

Delete Select Recover

http://127.0.0.1:8080/restful/ServiceManagement
/MgmtRecoverWorkload
POST
{
	'Action'       : 'DeleteSelectRecover',				
	'ServUUID'     : STRING,
	'SaveInstance' : true|false
}
{
	TBD
}
{
	TBD
}

List Available OpenStack Disk

http://127.0.0.1:8080/restful/OpenStackManagement
/SelectListSnapshot
POST
{
	'Action'    : 'ListAvailableOpenStackDisk',	
	'REPL_UUID' : STRING
}
{
	'OPEN_DISK_UUID' : STRING,
	'OPEN_SERV_UUID' : STRING,
	'OPEN_DISK_ID'   : STRING,
	'DEVICE_PATH'    : 'MOUNT_POINT',
	'REPL_UUID'      : STRING,
	'REPL_DISK_UUID' : STRING,
	'TIMESTAMP'      : 'YYYY-MM-DD HH:MM:SS',
	'STATUS'         : 'Y|N'
}
{
	TBD
}

List Available Snapshot

http://127.0.0.1:8080/restful/OpenStackManagement
/SelectListSnapshot
POST
{
	'Action' 	  : 'ListAvailableSnapshot'
	'ClusterUUID' : STRING,
	'DiskUUID'	  : STRING
}
[
	{
		'status'     : "STATUS", #available
		'metadata'   :{
						 "UUID": STRING
				      },
		'name'       : STRING,
		'volume_id'  : STRING,
		'created_at' : 'YYYY-MM-DD hh:mm:ss',
		'size'       : INTERGER, #GB
		'id'         : STRING,
		'description': STRING
	}
]
{
	TBD
}

List Instance Flavors

http://127.0.0.1:8080/restful/OpenStackManagement
/InstanceConfigurations
POST
{
	'Action' 	  : 'ListInstanceFlavors'
	'ClusterUUID' : STRING,
}
{
	'flavors' : [
				Object
					{
						name  ='type_name', 
						links = [  
								  ram = INTEGER, #MB
								  id  = STRING,
								  more...
								]
					}
				]
}
{
	TBD
}

List Internal Network

http://127.0.0.1:8080/restful/OpenStackManagement
/InstanceConfigurations
POST
{
	'Action' 	  : 'ListInternalNetwork'
	'ClusterUUID' : STRING,
}
{
	'networks' : [
				Object
					{
					    status 	              = 'status',
						subnets               = [
										           INTEGER : STRING
									            ],
						name   	              = 'network_name',
						tenant_id             = STRING,
						mtu                   = INTEGER,
						provider:network_type = 'flat|vxlan',
						id                    = STRING
					}
				]
}
{
	TBD
}

List Security Group

http://127.0.0.1:8080/restful/OpenStackManagement
/InstanceConfigurations
POST
{
	'Action' 	  : 'ListSecurityGroup'
	'ClusterUUID' : STRING,
}
{
	'security_groups' : [
				Object
					{
					    rules		= [ more... ],
						tenant_id	= STRING,
						id          = STRING,
						name   	    = 'security_groups_name',
						description	= [ more... ]
					}
				]
}
{
	TBD
}

Query Replica Information

http://127.0.0.1:8080/restful/ServiceManagement
/RecoverSummary
POST
{
	'Action'   	: 'QueryReplicaInformation',
	'REPL_UUID' : STRING
}
{
	'ACCT_UUID'   			  : 'STRING',
	'REGN_UUID'   			  : 'STRING',
	'REPL_UUID'   			  : 'STRING',
	'PACK_UUID'   			  : 'STRING',
	'CLUSTER_UUID' 			  : 'STRING',
	'CONN_UUID'   			  : {
									'SOURCE' : 'STRING',
									'TARGET' : 'STRING'
								},
	'JOBS_JSON'   			  : {
									'type':3,
									'triggers':[
												  {
													 'type':1,
													 'start':'',
													 'finish':'',
													 'interval':'60',
													 'id':''
												  }
												],
												'management_id':STRING,
												'mgmt_addr':{'MGMT_ADDRESS':0},
												'mgmt_port':443,
												'is_ssl':true,
												'worker_thread_number':INTEGER,
												'block_mode_enable':INTEGER,
												'snapshot_rotation':INTEGER,
												'job_version':'BUILD_NUMBER'
								},	
	'MGMT_ADDR'    			  : 'MGMT_ADDRESS',
	'WINPE_JOB'    			  : 'Y|N',
	'HOST_SERV'    			  : null,
	'HOST_NAME'               : STRING,
	'HOST_ADDR'               : 'HOST_ADDRESS',
	'BACKUP_SIZE'             : INTEGER,
	'PROGRESS_SIZE'           : INTEGER,
	'PROGRESS_PRECENT'        : '100.0',
	'PROGRESS_SPEED'          : '0.0',
	'LOADER_PROGRESS_PRECENT' : '100.0',
	'LOADER_PROGRESS_SPEED'   : '0.0',
	'REPL_MESG'				  : 'STRING',
	'SYNC_TIME'				  : 'UNIX_TIME_STAMP',
	'REPL_TIME'				  : 'YYYY-MM-DD hh:mm:ss'
}
{
	TBD
}

Query Flavor Information

http://127.0.0.1:8080/restful/OpenStackManagement
/RecoverSummary
POST
{
	'Action' 	  : 'QueryFlavorInformation',
	'ClusterUUID' : STRING,
	'FlavorID'	  : 'FLAVOR_ID'
}
{
    'flavors' : [
                Object
                    {
                        name  ='type_name', 
                        links = [  
                                  ram = INTEGER, #MB
                                  id  = STRING,
                                  more...
                                ]
                    }
                ]
}
{
    TBD
}

Query Network Information

http://127.0.0.1:8080/restful/OpenStackManagement
/RecoverSummary
POST
{
	'Action' 	  : 'QueryNetworkInformation',
	'ClusterUUID' : STRING,
	'NetworkUUID' : 'NETWORK_UUID'
}
{
    'networks' : [
                Object
                    {
                        status                = 'status',
                        subnets               = [
                                                   INTEGER : STRING
                                                ],
                        name                  = 'network_name',
                        tenant_id             = STRING,
                        mtu                   = INTEGER,
                        provider:network_type = 'flat|vxlan',
                        id                    = STRING
                    }
                ]
}
{
    TBD
}

Query Security Group Information

http://127.0.0.1:8080/restful/OpenStackManagement
/RecoverSummary
POST
{
	'Action' 	  : 'QuerySecurityGroupInformation',
	'ClusterUUID' : STRING,
	'SgroupUUID'  : 'SECURITY_GROUP_UUID'
}
{
    'security_groups' : [
                Object
                    {
                        rules       = [ more... ],
                        tenant_id   = STRING,
                        id          = STRING,
                        name        = 'security_groups_name',
                        description = [ more... ]
                    }
                ]
}
{
    TBD
}

Query Snapshot Information

http://127.0.0.1:8080/restful/OpenStackManagement
/RecoverSummary
POST
{
	'Action' 	  : 'QuerySnapshotInformation',
	'ClusterUUID' : STRING,
	'SnapUUID'    : 'SNAPSHOT_UUID'
}
{
	'status'     : "STATUS", #available
	'metadata'   :{
					 "UUID": STRING
				  },
	'name'       : STRING,
	'volume_id'  : STRING,
	'created_at' : 'YYYY-MM-DD hh:mm:ss',
	'size'       : INTERGER, #GB
	'id'         : STRING,
	'description': STRING
}
{
    TBD
}

Query Subnet Information

http://127.0.0.1:8080/restful/OpenStackManagement
/RecoverSummary
POST
{
	'Action' 	  : 'QuerySubnetInformation',
	'ClusterUUID' : STRING,
	'SubnetUUID'  : 'SUBNET_UUID'
}
{
    'subnet' : [
			Object
				{
					name       		  = STRING,
					enable_dhcp   	  = true|false,
					network_id        = STRING,
					tenant_id         = STRING,
					dns_nameservers   = [ more... ],
					gateway_ip		  = 'IP_ADDRESS',
					ipv6_ra_mode      = null,
					allocation_pools  = [ more... ],
					host_routes		  = null,
					ip_version		  = 4|6
					ipv6_address_mode = null
					cidr			  = 'CIDR_INFO'
					id				  = STRING,
					subnetpool_id	  = STRING
				}
			]
}
{
	TBD
}

Begin To Run Service

http://127.0.0.1:8080/restful/ServiceManagement
/RecoverSummary
POST
{
	'Action'	  : 'BeginToRunService',
	'AcctUUID'	  : STRING,
	'RegnUUID'	  : STRING,
	'ReplUUID'	  : STRING,
	'FlavorId'	  : 'FLAVOR_ID',
	'NetworkUUID' : 'NETWORK_UUID',
	'SgroupUUID'  : 'SECURITY_GROUP_UUID',
	'SnapUUID'    : 'SNAPSHOT_UUID',
	'ClusterUUID' : STRING,
	'TriggerSync' : 'on|off'
}
{
	TBD
}
{
	TBD
}