參數說明表格中未包含是否必填項的參數均為必填參數。
通用參數說明
所有介面都包含三個參數:appId、workspaceId 和 tenantId,這三個參數的含義如下。本文檔後續介面說明中會省略對這三個參數的說明。
參數名稱 | 類型 | 說明 |
appId | String | 所屬的應用 |
workspaceId | String | 所屬的工作空間 |
tenantId | String | 所屬的租戶 |
通用傳回值說明
參數名稱 | 類型 | 說明 |
resultCode | String | 請求正常返回 OK,其他情況表明 API 請求異常。 |
requestId | String | 標識請求的 ID。 |
resultMessage | String | 請求異常時的描述。 |
Result | Object | 返回的具體對象,具體含義看具體傳回值。 |
所有介面返回的具體對象均包含兩個欄位:success、resultMsg,這兩個欄位的含義如下:
名稱 | 類型 | 說明 |
success | Boolean | 查詢是否成功。 |
resultMsg | String | 查詢失敗後的傳回值。 |
建立虛擬網域名稱
請求 - CreateMcubeVhostRequest
名稱 | 類型 | 說明 |
vhost | String | 虛擬網域名稱的值。 |
傳回值 - CreateMcubeVhostResponse
{
"createVhostResult":{
"data":"success",
"resultMsg":"",
"success":true
},
"requestId":"F9C681F2-6377-488D-865B-1144E0CE69D2",
"resultCode":"OK"
}傳回值說明
傳回值名稱 | 類型 | 說明 |
data | String | 如果建立成功,返回 success。如果建立失敗,success 欄位的值為 false。 |
createVhostResult | Object | 返回的具體對象,僅包含通用傳回值。 |
查詢虛擬網域名稱
請求 - QueryMcubeVhostRequest
傳回值 - QueryMcubeVhostResponse
{
"queryVhostResult":{
"data":"test.com",
"resultMsg":"",
"success":true
},
"requestId":"637D5BE0-0111-4C53-BCEE-473CFFA0DBAD",
"resultCode":"OK"
}傳回值說明
傳回值名稱 | 類型 | 說明 |
queryVhostResult | Object | 返回的具體對象,具體含義見下表。 |
在返回的對象中,包含的欄位含義如下:
名稱 | 類型 | 說明 |
data | String | 查詢到的虛擬網域名稱資訊。 |
resultMsg | String | 查詢失敗後的傳回值。 |
success | Boolean | 查詢是否成功。 |
查詢密鑰檔案是否存在
請求 - ExistMcubeRsaKeyRequest
傳回值 - ExistMcubeRsaKeyResponse
{
"checkRsaKeyResult":{
"data":"fail",
"resultMsg":"",
"success":false
},
"requestId":"8F76783A-8070-4182-895D-14E5D66F8BA3",
"resultCode":"OK"
}傳回值說明
傳回值名稱 | 類型 | 說明 |
checkRsaKeyResult | Object | 返回的具體對象,具體含義見下表。 |
在返回的對象中,包含的欄位含義如下:
名稱 | 類型 | 說明 |
data | String | 查詢密鑰是否存在返回結果。 |
resultMsg | String | 查詢失敗後的傳回值。 |
success | Boolean | 查詢是否成功。 |
擷取上傳檔案 token
請求 - GetMcubeFileTokenRequest
參數名稱 | 類型 | 說明 |
onexFlag | Boolean | 固定傳值為 |
傳回值 - 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"
}傳回值說明
傳回值名稱 | 類型 | 說明 |
fileToken | Object | 按照檔案上傳樣本中的設定方法,將 fileToken 中對應的欄位設定到 OssPostObject 中。 |
getFileTokenResult | Object | - |
上傳密鑰檔案
請求 - UploadMcubeRsaKeyRequest
名稱 | 類型 | 說明 |
onexFlag | Boolean | 固定傳值為 |
fileUrl | String | 密鑰檔案在 OSS 中的儲存地址。 |
傳回值 - UploadMcubeRsaKeyResponse
{
"requestId":"519E35CF-CC60-4890-8C8E-89A98CEA6BB0",
"resultCode":"OK",
"uploadRsaResult":{
"data":"處理成功",
"resultMsg":"",
"success":true
}
}傳回值說明
傳回值名稱 | 類型 | 說明 |
data | String | 如果建立成功,返回處理成功。 如果建立失敗,success 欄位值為 false。 |
uploadRsaResult | Object | 返回的具體對象。 |
擷取離線包 App 列表
當 Java SDK 版本 ≥ 3.0.13 時,參數和傳回值支援分頁功能。
請求 - ListMcubeNebulaAppsRequest
參數名稱 | 類型 | 說明 |
appId | String | 所屬的應用 |
workspaceId | String | 所屬的工作空間 |
tenantId | String | 所屬的租戶 |
pageNum | Integer | 要查詢的頁數 |
pageSize | Integer | 每頁數量 |
傳回值 - 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"
}傳回值說明
傳回值名稱 | 類型 | 說明 |
h5Id | String | 離線包 ID。 |
h5Name | String | 離線包名稱。 |
currentPage | Integer | 當前的頁數 |
pageSize | Integer | 每頁數量 |
totalCount | Long | 總數量 |
建立離線包 App
請求 - CreateMcubeNebulaAppRequest
參數名稱 | 類型 | 說明 |
h5Name | String | 離線包名稱。 |
h5Id | String | 離線包 ID,8 位元字。 |
傳回值 - CreateMcubeNebulaAppResponse
{
"createNebulaAppResult":{
"resultMsg":"",
"success":true
},
"requestId":"5B588AFE-8D58-4460-B0AA-6A48A9FD0852",
"resultCode":"OK"
}刪除離線包 App
請求 - DeleteMcubeNebulaAppRequest
參數名稱 | 類型 | 說明 |
h5Id | String | 離線包 ID,8 位元字 |
傳回值 - DeleteMcubeNebulaAppResponse
{
"deleteMcubeNebulaAppResult":{
"resultMsg":"",
"success":true
},
"requestId":"E24C760E-4849-4341-91C6-6DA97F5B6B76",
"resultCode":"OK"
}上傳離線資源套件
請求 - CreateMcubeNebulaResourceRequest
名稱 | 類型 | 說明 |
h5Id | String | H5App 的 ID。 |
h5Name | String | H5App 的名稱。 |
h5Version | String | 離線包的版本。需要保證在單個 H5App 中唯一。 |
mainUrl | String | 離線包主入口,滿足正則 |
vhost | String | H5App 的虛擬網域名稱。 |
extendInfo | String | JSON 格式字串。 |
autoInstall | Integer | 下載時機。
|
resourceType | Integer | 資源類型,一個 H5App 只能存在一種類型。0:全域資源套件,1:普通資源套件。 |
installType | Integer | 安裝時機,0:不預先載入(只有進入離線包或小程式頁面時才安裝),1:預先載入(離線包或小程式下載完成後則自動安裝)。 |
platform | String | 使用平台,分為 all(全平台)、Android、iOS 和 Harmony。 |
clientVersionMin | String | 用戶端最低版本,選擇了指定的 platform 之後,最低版本必須是必傳的,格式為 |
clientVersionMax | String | 用戶端最高版本,可以不填。如果 |
fileUrl | String | 檔案在 OSS 的 URL。離線包資源檔,必須為 |
repeatNebula | Integer | 是否複用全域包,在資源類型為全域資源套件時需要填寫。0:否,1:是。 |
onexFlag | Boolean | 固定傳值為 |
傳回值 - CreateMcubeNebulaResourceResponse
{
"createMcubeNebulaResourceReslult":{
"nebulaResourceId":"4154",
"resultMsg":"",
"success":true
},
"requestId":"DFCA28DF-0F97-4C41-B3D4-351D284B51E7",
"resultCode":"OK"
}nebulaResourceId 為上傳的資源套件對應的 ID。
擷取資源套件列表
當 Java SDK 版本 ≥ 3.0.13 時,參數和傳回值支援分頁功能。
請求 - ListMcubeNebulaResourcesRequest
名稱 | 類型 | 說明 |
h5Id | String | H5App 的 ID。 |
pageNum | Integer | 要查詢的頁數 |
pageSize | Integer | 每頁數量 |
傳回值 - 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"
}傳回值說明
名稱 | 類型 | 說明 |
appCode | String | appId+”-“+workspaceId |
autoInstall | Integer | 含義和上傳離線包中的一致 |
clientVersionMax | String | 含義和上傳離線包中的一致 |
clientVersionMin | String | 含義和上傳離線包中的一致 |
creator | String | 建立者,目前沒有使用 |
debugUrl | String | 當前返回中無意義 |
downloadUrl | String | 下載離線包 AMR 檔案地址 |
extendInfo | String | 上傳時傳遞的擴充資訊 |
extraData | String | 擴充參數 |
fallbackBaseUrl | String | 離線包 fallback 地址,使用分號分隔,分號前是內網地址,分號後是外網地址 |
fileSize | String | 檔案大小 |
gmtCreate | Date | 建立時間 |
gmtModified | Date | 更新時間 |
h5Id | String | H5App 的 ID |
h5Name | String | H5App 的名稱 |
h5Version | String | 當前離線包的版本號碼 |
id | Long | 主鍵 |
installType | Integer | 含義和上傳離線包中的一致 |
lazyLoad | Integer | 啟動載入,目前都是 0 |
mainUrl | String | 含義和上傳離線包中的一致 |
md5 | String | 離線包檔案的md5 |
memo | String | 離線包的 |
metaId | Long | 無意義 |
modifier | 修改者 | 目前沒有使用 |
platform | 平台 | 含義和上傳離線包中的一致 |
publishPeriod | Integer | 發布狀態。 0:初始化; 1:內部灰階發布; 2:外部灰階發布; 3:正式發布; 4:復原發布; 5:發布任務結束。 |
releaseVersion | String | 發布版本號碼 |
resourceType | Integer | 含義和上傳離線包中的一致 |
status | Integer | 狀態 |
currentPage | Integer | 當前的頁數 |
pageSize | Integer | 每頁數量 |
totalCount | Long | 總數量 |
建立離線包發布任務
請求 - CreateMcubeNebulaTaskRequest
名稱 | 類型 | 是否必填 | 說明 |
publishType | Integer | 是 | 發布類型。
|
publishMode | Integer | 否 | 發布模式。若
|
memo | String | 否 | 發布描述 |
id | Long | 是 | 只能傳 0,表示建立,不可修改。 |
greyEndtimeData | String | 否 | 灰階時間窗發布的結束時間,格式為“YYYY-MM-dd HH:mm:ss”,時間必須大於目前時間並且與目前時間的間隔小於 7 天。當 publishMode 為 2 的時候必填。 |
greyEndTime | Date | 否 | Date 類型,值和 |
greyNum | Integer | 否 | 時間窗灰階的人數。當 |
whitelistIds | String | 否 | 白名單主鍵 ID。當 |
packageId | Long | 是 | 發布的資源套件主鍵 ID |
greyConfigInfo | String | 否 | 發布的進階規則條件,JSON 字串,具體含義見下表。樣本:[{“ruleElement”:”city”,”operation”:1,”value”:”上海市,北京市,天津市”},{“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”}] |
進階規則說明
名稱 | 類型 | 說明 |
ruleElement | String | 規則類型:
|
value | String | 規則值,多個規則使用”,”分隔,當 |
operation | Integer | 操作關係:
當 |
傳回值 - CreateMcubeNebulaTaskResponse
{
"createMcubeNebulaTaskResult":{
"nebulaTaskId":"6664",
"resultMsg":"",
"success":true
},
"requestId":"BBDF54E1-2783-4E5A-AE19-F7BC3A1BB3C2",
"resultCode":"OK"
}返回的nebulaTaskId為建立的發布任務對應的 ID。
擷取發布工作清單
請求 - ListMcubeNebulaTasksRequest
名稱 | 類型 | 說明 |
id | Long | 任務對應的離線資源套件 ID |
傳回值 - 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"
}傳回值說明
名稱 | 類型 | 說明 |
appCode | String | appId+workspaceId |
bizType | String | 離線包為 |
bundles | Array | 目前沒有使用 |
creator | String | 目前沒有使用 |
gmtCreate | Date | 建立時間 |
gmtModified | Date | 更新時間 |
gmtModifiedStr | String | 更新時間字串 |
greyConfigInfo | String | 進階規則的字串,和上傳時的展示方式不同,具體見下表。 |
greyEndtime | Date | 時間窗灰階截止時間 |
greyEndtimeData | String | 時間窗灰階截止時間字串 |
greyNum | Integer | 時間窗灰階人數 |
id | Long | 當前發布任務主鍵 ID |
memo | String | 發布描述 |
modifier | String | 更新者,沒有使用 |
packageId | Long | 當前任務對應離線資源套件的 ID |
percent | Integer | 灰階百分比,目前都是 0。 |
platform | String | 當前發布任務的平台,可選 all(雙平台)、iOS、Android 或 Harmony。 |
productId | String | 產品識別碼,格式為“appId + workspaceId + h5id”。 |
productVersion | String | 離線資源套件的版本號碼 |
publishMode | Integer | 發布模型。0:預設值,1:白名單,2:時間窗。 |
publishType | Integer | 發布類型。2:灰階發布;3:正式發布。 |
releaseVersion | String | 內部版本版本號碼 |
resIds | String | 對應的離線資源套件 ID |
status | Integer | 狀態。0:無效,1:有效 |
syncResult | String | 目前沒有使用 |
taskName | String | 任務名稱,和小程式 App 名稱相同 |
taskStatus | Integer | 任務狀態。0:待發布;1.發布中;2:已結束;3:暫停 |
taskType | Integer | 任務類型。0:普通任務 1:復原任務。 |
taskVersion | Long | 任務版本號碼,使用的是任務建立的目前時間 |
upgradeNoticeNum | Integer | 目前沒有使用 |
upgradeProgress | String | 目前沒有使用 |
whitelistIds | String | 白名單主鍵 ID,多個 ID 使用”,”分隔 |
greyConfigInfo 欄位內容解釋
名稱 | 類型 | 說明 |
operator | String | 規則關係, |
defaultResult | boolean | 預設返回的結果 |
subRules | List | 規則集合 |
operator | String | 規則名稱
|
left | List/Object | 當 |
right | String | 規則類型名稱 |
defaultResult | Boolean | 預設結果 |
greyConfigInfo 中兩個 operator 欄位表示的含義不同。
{
"operator":"and",
"subRules":[
{
"operator":"excludes",
"left":[
"青島市",
"長沙市",
"重慶市"
],
"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
}根據 ID 擷取任務詳情
請求 - GetMcubeNebulaTaskDetailRequest
名稱 | 類型 | 說明 |
taskId | Long | 想要查詢的任務 ID 主鍵 |
傳回值 - 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"
}傳回值說明
名稱 | 類型 | 說明 |
appCode | String | appId+workspaceId |
appId | String | 沒有使用 |
atomic | Integer | 1 為原子包, 0 為組合包,目前可以忽略 |
baseInfoId | Long | 關聯的基礎資訊的主鍵 ID,可以忽略 |
bizType | String | 離線包為 |
bundles | List | 沒有使用 |
creator | String | 沒有使用 |
cronexpress | Integer | iOS 使用 0,表示執行一次,1 表示執行多次 |
downloadUrl | String | 下載地址。分號前半部分為內網地址,後半部分為公網地址 |
extraData | String | JSON 字串,擴充資料 |
fileSize | String | 檔案大小 |
gmtCreate | Date | 建立時間 |
gmtModified | Date | 更新時間 |
greyConfigInfo | String | 進階規則字串 |
greyEndTime | Date | 時間窗灰階結束時間 |
greyEndtimeData | String | 時間窗灰階發布結束時間字串 |
id | Long | 主鍵 ID |
issueDesc | String | 問題描述,目前沒有使用 |
mds | String | 檔案的 md5 值 |
memo | String | 發布描述 |
modifier | String | 修改者,沒有使用 |
ossPath | String | 離線包沒有使用 |
packageId | Long | 發布任務對應的離線資源套件 ID |
percent | Integer | 發布百分比,離線包沒有使用 |
platform | String | 發布平台,值可以是 all、iOS、Android 或 Harmony。 |
product_id | String | 格式為“appId+workspaceId + H5Appid” |
productVersion | String | 離線資源套件的版本 |
resIds | String | 離線資源套件的 ID |
ruleJsonList | List | 發布進階規則的對象形式,按照上面的字串形式使用即可 |
sourceId | String | 來源 ID,離線包沒有使用 |
sourceName | String | 離線包沒有使用 |
sourceType | String | 來源類型,離線包沒有使用 |
status | Integer | 狀態:
|
syncResult | String | 離線包目前沒有使用 |
syncType | String | 離線包沒有使用 |
taskName | String | 任務名稱 |
taskStatus | Integer | 任務狀態。
|
taskType | Integer | 任務類型
|
taskVersion | Long | 發布版本號碼,是建立發布的目前時間戳 |
upgradeNoticeNum | Integer | 目前沒有使用 |
upgradeProgress | String | 目前沒有使用 |
vmType | String | Android 虛擬機器類型,逗號分隔。
|
whitelist | List | 離線包發布任務的白名單資訊。詳情請參考 白名單管理。 |
修改離線包任務狀態
請求 - ChangeMcubeNebulaTaskStatusRequest
名稱 | 類型 | 說明 |
bizType | String | 傳 nebula |
packageId | Long | 任務對應的離線資源套件的 ID |
taskId | Long | 當前發布任務的 ID |
taskStatus | Integer | 需要改變到的狀態。
|
傳回值 - ChangeMcubeNebulaTaskStatusResponse
{
"changeMcubeNebulaTaskStatusResult":{
"resultMsg":"",
"success":true
},
"requestId":"595F4CB4-ACFE-4A5B-AF5B-4ED837CAEF95",
"resultCode":"OK"
}