In the parameter description tables, parameters are required unless specified as optional.
General parameters
All APIs include three parameters: appId, workspaceId, and tenantId. The following table describes these parameters. These parameters are omitted from the subsequent API descriptions in this document.
Parameter Name | Type | Description |
appId | String | Associated Applications |
workspaceId | String | Workspace |
tenantId | String | Tenant |
General return values
Parameter Name | Type | Description |
resultCode | String | If the request is successful, `OK` is returned. Other values indicate that the API request failed. |
requestId | String | The ID of the request. |
resultMessage | String | The description of the error that occurred when the request failed. |
Result | Object | The returned object. For more information, see the specific return values of each API. |
The Result object returned by all APIs contains two fields: success and resultMsg. The following table describes these fields.
Name | Type | Description |
success | Boolean | Indicates whether the request was successful. |
resultMsg | String | The message returned if the request fails. |
Create a virtual domain name
Request - CreateMcubeVhostRequest
Name | Type | Description |
vhost | String | The value of the virtual domain name. |
Return value - CreateMcubeVhostResponse
{
"createVhostResult":{
"data":"success",
"resultMsg":"",
"success":true
},
"requestId":"F9C681F2-6377-488D-865B-1144E0CE69D2",
"resultCode":"OK"
}Description of return values
Return value name | Type | Description |
data | String | If the operation is successful, `success` is returned. If the operation fails, the value of the `success` field is `false`. |
createVhostResult | Object | The returned object. It contains only the general return values. |
Query a virtual domain name
Request - QueryMcubeVhostRequest
Return value - QueryMcubeVhostResponse
{
"queryVhostResult":{
"data":"test.com",
"resultMsg":"",
"success":true
},
"requestId":"637D5BE0-0111-4C53-BCEE-473CFFA0DBAD",
"resultCode":"OK"
}Description of return values
Return value name | Type | Description |
queryVhostResult | Object | The returned object. For more information, see the following table. |
The fields in the returned object are described in the following table.
Name | Type | Description |
data | String | The information about the queried virtual domain name. |
resultMsg | String | The message returned if the query fails. |
success | Boolean | Indicates whether the query was successful. |
Check whether a key file exists
Request - ExistMcubeRsaKeyRequest
Return value - ExistMcubeRsaKeyResponse
{
"checkRsaKeyResult":{
"data":"fail",
"resultMsg":"",
"success":false
},
"requestId":"8F76783A-8070-4182-895D-14E5D66F8BA3",
"resultCode":"OK"
}Description of return values
Return value name | Type | Description |
checkRsaKeyResult | Object | The returned object. For more information, see the following table. |
The fields in the returned object are described in the following table.
Name | Type | Description |
data | String | The result of the check. |
resultMsg | String | The message returned if the query fails. |
success | Boolean | Indicates whether the query was successful. |
obtain file upload token
Request - GetMcubeFileTokenRequest
Parameter Name | Type | Description |
onexFlag | Boolean | The value is set to |
Return value - GetMcubeFileTokenResponse
{
"getFileTokenResult":{
"fileToken":{
"accessid":"LTAI****************",
"dir":"mds/tempFileForOnex/ONEXE9B092D/test/PUQYHL/8b574cb7-3596-403f-a0e9-208660fc2081/",
"expire":"1584327372",
"host":"https://mcube-test.oss-cn-hangzhou.aliyuncs.com",
"policy":"QwM2YtYTBlOS0yMDg2NjBmYzIwODEvIl1dfQ==",
"signature":"kisfP5YhbPtmES8+w="
},
"resultMsg":"",
"success":true
},
"requestId":"8BAA3288-662E-422C-9960-2EEBFC08369F",
"resultCode":"OK"
}Description of return values
Return value name | Type | Description |
fileToken | Object | Set the corresponding fields in `fileToken` to `OssPostObject` as described in the file upload example. |
getFileTokenResult | Object | - |
Upload a key file
Request - UploadMcubeRsaKeyRequest
Name | Type | Description |
onexFlag | Boolean | A fixed value. Set it to |
fileUrl | String | The storage address of the key file in OSS. |
Return value - UploadMcubeRsaKeyResponse
{
"requestId":"519E35CF-CC60-4890-8C8E-89A98CEA6BB0",
"resultCode":"OK",
"uploadRsaResult":{
"data":"Processing successful",
"resultMsg":"",
"success":true
}
}Description of return values
Return value name | Type | Description |
data | String | If the operation is successful, `Success` is returned. If the operation fails, the value of the `success` field is `false`. |
uploadRsaResult | Object | The returned object. |
obtain a list of offline package apps
Pagination for parameters and return values is supported in Java SDK version 3.0.13 and later.
Request - ListMcubeNebulaAppsRequest
Parameter | Type | Description |
appId | String | Associated applications |
workspaceId | String | Workspace |
tenantId | String | Tenant |
pageNum | Integer | The page number to query. |
pageSize | Integer | The number of entries per page. |
Return value - ListMcubeNebulaAppsResponse
{
"listMcubeNebulaAppsResult":{
"nebulaAppInfos":[
{
"h5Id":"12345678",
"h5Name":"12345678"
},
{
"h5Id":"12345679",
"h5Name":"openapiTest"
}
],
"currentPage":1,
"pageSize":10,
"totalCount": 100,
"resultMsg":"",
"success":true
},
"requestId":"C88DEB27-FF7E-43F7-97F8-B2AA12FB0A5D",
"resultCode":"OK"
}Description of return values
Return value name | Type | Description |
h5Id | String | The offline package ID. |
h5Name | String | The offline package name. |
currentPage | Integer | The current page number. |
pageSize | Integer | The number of entries per page. |
totalCount | Long | Total quantity |
Create an offline package app
Request - CreateMcubeNebulaAppRequest
Parameter name | Type | Description |
h5Name | String | The offline package name. |
h5Id | String | The offline package ID. It must be an 8-digit number. |
Return value - CreateMcubeNebulaAppResponse
{
"createNebulaAppResult":{
"resultMsg":"",
"success":true
},
"requestId":"5B588AFE-8D58-4460-B0AA-6A48A9FD0852",
"resultCode":"OK"
}Delete an offline package app
Request - DeleteMcubeNebulaAppRequest
Parameter name | Type | Description |
h5Id | String | The offline package ID. It must be an 8-digit number. |
Return value - DeleteMcubeNebulaAppResponse
{
"deleteMcubeNebulaAppResult":{
"resultMsg":"",
"success":true
},
"requestId":"E24C760E-4849-4341-91C6-6DA97F5B6B76",
"resultCode":"OK"
}Upload an offline resource package
Request - CreateMcubeNebulaResourceRequest
Name | Type | Description |
h5Id | String | The ID of the H5 app. |
h5Name | String | The name of the H5 app. |
h5Version | String | The version of the offline package. The version must be unique within a single H5 app. |
mainUrl | String | The main entry file of the offline package. It must match the regular expression |
vhost | String | The virtual domain name of the H5 app. |
extendInfo | String | A string in JSON format. |
autoInstall | Integer | The download timing.
|
resourceType | Integer | The resource type. An H5 app can have only one resource type. 0: global resource package. 1: normal resource package. |
installType | Integer | The installation timing. 0: Do not preload. The package is installed only when the user enters the offline package or miniapp page. 1: Preload. The package is automatically installed after it is downloaded. |
platform | String | The platform. Valid values: `all`, `Android`, `iOS`, and `Harmony`. |
clientVersionMin | String | The minimum client version. This parameter is required if you specify a platform. The format is |
clientVersionMax | String | The maximum client version. This parameter is optional. If |
fileUrl | String | The URL of the file in OSS. The offline resource package file must be in |
repeatNebula | Integer | Indicates whether to reuse the global package. This parameter is required when the resource type is a global resource package. 0: No. 1: Yes. |
onexFlag | Boolean | A fixed value. Set it to |
Return value - CreateMcubeNebulaResourceResponse
{
"createMcubeNebulaResourceResult":{
"nebulaResourceId":"4154",
"resultMsg":"",
"success":true
},
"requestId":"DFCA28DF-0F97-4C41-B3D4-351D284B51E7",
"resultCode":"OK"
}nebulaResourceId is the ID of the uploaded resource package.
Get a list of resource packages
Pagination for parameters and return values is supported in Java SDK version 3.0.13 and later.
Request - ListMcubeNebulaResourcesRequest
Name | Type | Description |
h5Id | String | The ID of the H5 app. |
pageNum | Integer | The page number to query. |
pageSize | Integer | The number of entries per page. |
Return value - ListMcubeNebulaResourcesResponse
{
"listMcubeNebulaResourceResult":{
"nebulaResourceInfos":[
{
"appCode":"ONEX97C5D29290957-default",
"autoInstall":1,
"clientVersionMax":"100;100",
"clientVersionMin":"0;0",
"creator":"demo",
"debugUrl":"",
"downloadUrl":"https://pre-mpaas.cn-hangzhou.oss.aliyuncs.com/ONEX97C5D29290957-default/12345678/1.0.0.1_all/nebula/12345678_1.0.0.1.amr",
"extendInfo":"",
"extraData":"{"resourceType":"1"}",
"fallbackBaseUrl":"https://pre-mpaas.cn-hangzhou.oss.aliyuncs.com/ONEX97C5D29290957-default/12345678/1.0.0.1_all/nebula/fallback/;https://pre-mpaas.cn-hangzhou.oss.aliyuncs.com/ONEX97C5D29290957-default/12345678/1.0.0.1_all/nebula/fallback/",
"fileSize":"0",
"gmtCreate":"2021-02-01 14:11:21",
"gmtModified":"2021-02-01 14:11:21",
"h5Id":"12345678",
"h5Name":"12345678",
"h5Version":"1.0.0.1",
"id":4154,
"installType":1,
"lazyLoad":0,
"mainUrl":"/test.html",
"md5":"3b9b7caaea6e5b0cb0db4db551454a33",
"memo":"https://pre-mpaas.cn-hangzhou.oss.aliyuncs.com/ONEX97C5D29290957-default/12345678/1.0.0.1_all/nebula/nebula_json/h5_json.json",
"metaId":7848,
"modifier":"success",
"packageType":1,
"platform":"all",
"publishPeriod":0,
"releaseVersion":"20210201141121",
"resourceType":"1",
"status":1,
"vhost":""
}
],
"currentPage":1,
"pageSize":10,
"totalCount": 100,
"resultMsg":"",
"success":true
},
"requestId":"C88DEB27-FF7E-43F7-97F8-B2AA12FB0A5D",
"resultCode":"OK"
}Description of return values
Name | Type | Description |
appCode | String | `appId` + `-` + `workspaceId` |
autoInstall | Integer | Same as the corresponding parameter in Upload an offline resource package. |
clientVersionMax | String | Same as the corresponding parameter in Upload an offline resource package. |
clientVersionMin | String | Same as the corresponding parameter in Upload an offline resource package. |
creator | String | The creator. This parameter is not in use. |
debugUrl | String | This return value is currently not used. |
downloadUrl | String | The download URL of the offline package AMR file. |
extendInfo | String | The extended information passed during the upload. |
extraData | String | Extended parameters. |
fallbackBaseUrl | String | The fallback URL of the offline package. The internal network URL and the public network URL are separated by a semicolon. The internal network URL comes first. |
fileSize | String | The file size. |
gmtCreate | Date | The creation time. |
gmtModified | Date | The update time. |
h5Id | String | The ID of the H5 app. |
h5Name | String | The name of the H5 app. |
h5Version | String | The version number of the current offline package. |
id | Long | The primary key. |
installType | Integer | Same as the corresponding parameter in Upload an offline resource package. |
lazyLoad | Integer | The current startup load is 0. |
mainUrl | String | Same as the corresponding parameter in Upload an offline resource package. |
md5 | String | The MD5 hash of the offline package file. |
memo | String | The download URL of the |
metaId | Long | Not used. |
modifier | Modifier | This parameter is not in use. |
platform | Platform | Same as the corresponding parameter in Upload an offline resource package. |
publishPeriod | Integer | The release status. 0: Initialization. 1: Internal phased release. 2: External phased release. 3: Official release. 4: Rollback. 5: Release task finished. |
releaseVersion | String | The release version number. |
resourceType | Integer | Same as the corresponding parameter in Upload an offline resource package. |
status | Integer | The status. |
currentPage | Integer | The current page number. |
pageSize | Integer | The number of entries per page. |
totalCount | Long | The total number of entries. |
Create an offline package release task
Request - CreateMcubeNebulaTaskRequest
Name | Type | Required | Description |
publishType | Integer | Yes | The release type.
|
publishMode | Integer | No | The release mode. This parameter is not required if
|
memo | String | No | The release description. |
id | Long | Yes | You can only pass 0, which indicates creation. This value cannot be modified. |
greyEndtimeData | String | No | The end time for a time-window phased release. The format is "YYYY-MM-DD HH:mm:ss". The time must be later than the current time and within 7 days of the current time. This parameter is required when `publishMode` is 2. |
greyEndTime | Date | No | The `Date` type. The value is the same as |
greyNum | Integer | No | The number of users for a time-window phased release. This parameter is required when |
whitelistIds | String | No | The primary key IDs of whitelists. This parameter is required when |
packageId | Long | Yes | The primary key ID of the resource package to be released. |
greyConfigInfo | String | No | The advanced rule conditions for the release, as a JSON string. For more information, see the following table. Example: [{"ruleElement":"city","operation":1,"value":"Shanghai,Beijing,Tianjin"},{"ruleElement":"mobileModel","operation":2,"value":"REDMI NOTE 3,VIVO X5M"},{"ruleElement":"osVersion","operation":3,"value2":"9.2.1","value1":"9.2.1","value":"9.2.1-9.2.1"}] |
Description of advanced rules
Name | Type | Description |
ruleElement | String | The rule type:
|
value | String | The rule value. Separate multiple rule values with commas (,). When |
operation | Integer | Related operations:
When |
Return value - CreateMcubeNebulaTaskResponse
{
"createMcubeNebulaTaskResult":{
"nebulaTaskId":"6664",
"resultMsg":"",
"success":true
},
"requestId":"BBDF54E1-2783-4E5A-AE19-F7BC3A1BB3C2",
"resultCode":"OK"
}The returned nebulaTaskId is the ID of the created release task.
obtain a list of release tasks
Request - ListMcubeNebulaTasksRequest
Name | Type | Description |
id | Long | The ID of the offline resource package corresponding to the task. |
Return value - ListMcubeNebulaTasksResponse
{
"listMcubeNebulaTaskResult":{
"nebulaTaskInfos":[
{
"appCode":"ONEX97C5D29290957-default",
"bizType":"nebula",
"creator":"",
"gmtCreate":"2021-02-01 14:16:58",
"gmtModified":"2021-02-01 14:16:58",
"gmtModifiedStr":"2021-02-01 14:16:58",
"greyConfigInfo":"",
"greyEndtimeData":"",
"greyNum":0,
"greyUrl":"",
"id":6664,
"memo":"test",
"modifier":"",
"packageId":4154,
"percent":0,
"platform":"all",
"productId":"ONEX97C5D29290957-default-12345678",
"productVersion":"1.0.0.1",
"publishMode":4,
"publishType":3,
"releaseVersion":"20210201141121",
"status":1,
"syncResult":"",
"taskName":"12345678",
"taskStatus":1,
"taskType":0,
"taskVersion":1612160218556,
"upgradeNoticeNum":0,
"upgradeProgress":"",
"whitelistIds":""
}
],
"resultMsg":"",
"success":true
},
"requestId":"B9A07543-4B8B-43D0-AB33-7F2ACB954909",
"resultCode":"OK"
}Description of return values
Name | Type | Description |
appCode | String | `appId` + `workspaceId` |
bizType | String | For offline packages, the value is |
bundles | Array | Not in use. |
creator | String | Not in use. |
gmtCreate | Date | The creation time. |
gmtModified | Date | The update time. |
gmtModifiedStr | String | The update time as a string. |
greyConfigInfo | String | The advanced rules as a string. The format is different from the one used for uploads. For more information, see the following table. |
greyEndtime | Date | The end time for a time-window phased release. |
greyEndtimeData | String | The end time for a time-window phased release, as a string. |
greyNum | Integer | The number of users for a time-window phased release. |
id | Long | The primary key ID of the current release task. |
memo | String | The release description. |
modifier | String | The user who made the modification. Not in use. |
packageId | Long | The ID of the offline resource package for the current task. |
percent | Integer | The percentage for the phased release. The current value is always 0. |
platform | String | The platform for the current release task. Valid values: `all` (both platforms), `iOS`, `Android`, or `Harmony`. |
productId | String | The product ID. The format is `appId` + `workspaceId` + `h5id`. |
productVersion | String | The version number of the offline resource package. |
publishMode | Integer | The release mode. 0: Default. 1: Whitelist. 2: Time window. |
publishType | Integer | The release type. 2: Phased release. 3: Official release. |
releaseVersion | String | The internal release version number. |
resIds | String | The ID of the corresponding offline resource package. |
status | Integer | The status. 0: Invalid. 1: Valid. |
syncResult | String | Not in use. |
taskName | String | The task name. It is the same as the miniapp name. |
taskStatus | Integer | The task status. 0: Pending release. 1: Releasing. 2: Finished. 3: Paused. |
taskType | Integer | The task type. 0: Normal task. 1: Rollback task. |
taskVersion | Long | The task version number. It is the timestamp when the task was created. |
upgradeNoticeNum | Integer | Not in use. |
upgradeProgress | String | Not in use. |
whitelistIds | String | The primary key IDs of whitelists. Separate multiple IDs with commas (,). |
Description of the greyConfigInfo field
Name | Type | Description |
operator | String | The relationship between rules. |
defaultResult | boolean | The default result. |
subRules | List | A collection of rules. |
operator | String | The rule name.
|
left | List/Object | When |
right | String | The name of the rule type. |
defaultResult | Boolean | The default result. |
The two operator fields in greyConfigInfo have different meanings.
{
"operator":"and",
"subRules":[
{
"operator":"excludes",
"left":[
"Qingdao",
"Changsha",
"Chongqing"
],
"right":"city",
"defaultResult":false
},
{
"operator":"contains",
"left":[
"2G",
"4G",
"WIFI"
],
"right":"netType",
"defaultResult":false
},
{
"operator":"contains",
"left":[
"phone4",
"plusx"
],
"right":"mobileModel",
"defaultResult":false
},
{
"operator":"vLimitOut",
"exclusive":true,
"defaultResult":true,
"left":{
"lower":"12.0",
"upper":"17.0"
},
"right":"osVersion"
}
],
"defaultResult":false
}obtain task details by ID
Request - GetMcubeNebulaTaskDetailRequest
Name | Type | Description |
taskId | Long | The primary key ID of the task to query. |
Return value - GetMcubeNebulaTaskDetailResponse
{
"getMcubeNebulaTaskDetailResult":{
"nebulaTaskDetail":{
"appCode":"ONEX97C5D29290957-default",
"appId":"",
"atomic":0,
"baseInfoId":0,
"bizType":"nebula",
"creator":"",
"cronexpress":0,
"downloadUrl":"https://pre-mpaas.cn-hangzhou.oss.aliyuncs.com/ONEX97C5D29290957-default/12345678/1.0.0.1_all/nebula/12345678_1.0.0.1.amr;https://pre-mpaas.cn-hangzhou.oss.aliyuncs.com/ONEX97C5D29290957-default/12345678/1.0.0.1_all/nebula/12345678_1.0.0.1.amr",
"extraData":"{"resourceType":"1"}",
"fileSize":"0",
"fullRepair":0,
"gmtCreate":"2021-02-01 14:16:58",
"gmtModified":"2021-02-01 14:16:58",
"gmtModifiedStr":"2021-02-01 14:16:58",
"greyConfigInfo":"",
"greyEndtimeData":"",
"greyNum":0,
"greyUrl":"",
"id":6664,
"issueDesc":"",
"memo":"test",
"modifier":"",
"ossPath":"",
"packageId":4154,
"percent":0,
"platform":"all",
"productId":"ONEX97C5D29290957-default-12345678",
"productVersion":"1.0.0.1",
"publishMode":4,
"publishPeriod":3,
"publishType":3,
"quickRollback":0,
"releaseVersion":"20210201141121",
"ruleJsonList":[
],
"sourceId":"",
"sourceName":"",
"sourceType":"",
"status":1,
"syncResult":"",
"syncType":0,
"taskName":"12345678",
"taskStatus":1,
"taskType":0,
"taskVersion":1612160218556,
"upgradeNoticeNum":0,
"upgradeProgress":"",
"whitelistIds":"",
"workspaceId":""
},
"resultMsg":"",
"success":true
},
"requestId":"072AE251-B9F8-4A44-A621-9F0325EECC1E",
"resultCode":"OK"
}Description of return values
Name | Type | Description |
appCode | String | `appId` + `workspaceId` |
appId | String | Not in use. |
atomic | Integer | 1 indicates an atomic package, and 0 indicates a combined package. This can be ignored. |
baseInfoId | Long | The primary key ID of the associated basic information. This can be ignored. |
bizType | String | For offline packages, the value is |
bundles | List | Not in use. |
creator | String | Not in use. |
cronexpress | Integer | For iOS, 0 means execute once, and 1 means execute multiple times. |
downloadUrl | String | The download URL. The part before the semicolon is the internal network URL, and the part after is the public network URL. |
extraData | String | A JSON string for extended data. |
fileSize | String | The file size. |
gmtCreate | Date | The creation time. |
gmtModified | Date | The update time. |
greyConfigInfo | String | The advanced rules as a string. |
greyEndTime | Date | The end time for a time-window phased release. |
greyEndtimeData | String | The end time for a time-window phased release, as a string. |
id | Long | The primary key ID. |
issueDesc | String | The issue description. Not in use. |
mds | String | The MD5 hash of the file. |
memo | String | The release description. |
modifier | String | The modifier is unused. |
ossPath | String | The offline package is not in use. |
packageId | Long | The ID of the offline resource package for the release task. |
percent | Integer | The release percentage. Not used for offline packages. |
platform | String | The release platform. Valid values: `all`, `iOS`, `Android`, or `Harmony`. |
product_id | String | The format is `appId` + `workspaceId` + `H5Appid`. |
productVersion | String | The version of the offline resource package. |
resIds | String | The ID of the offline resource package. |
ruleJsonList | List | The advanced release rules in object form. Use the string format described previously. |
sourceId | String | The source ID. Not used for offline packages. |
sourceName | String | The offline package is not used. |
sourceType | String | The source type. Not used for offline packages. |
status | Integer | The status:
|
syncResult | String | The offline package is not in use. |
syncType | String | The offline package is not in use. |
taskName | String | The task name. |
taskStatus | Integer | The task status.
|
taskType | Integer | The task type.
|
taskVersion | Long | The release version number. It is the UNIX timestamp when the release was created. |
upgradeNoticeNum | Integer | Not in use. |
upgradeProgress | String | Not in use. |
vmType | String | The Android virtual machine type. Separate multiple types with commas.
|
whitelist | List | The whitelist information for the offline package release task. For more information, see Whitelist management. |
Change the status of an offline package task
Request - ChangeMcubeNebulaTaskStatusRequest
Name | Type | Description |
bizType | String | Forward to Nebula |
packageId | Long | The ID of the offline resource package for the task. |
taskId | Long | The ID of the current release task. |
taskStatus | Integer | The target status.
|
Return value - ChangeMcubeNebulaTaskStatusResponse
{
"changeMcubeNebulaTaskStatusResult":{
"resultMsg":"",
"success":true
},
"requestId":"595F4CB4-ACFE-4A5B-AF5B-4ED837CAEF95",
"resultCode":"OK"
}