保利威文档中心

幫助中心

批次新增頻道商品

更新時間:2025-07-25 17:34:06

介面描述

1、批量添加频道商品库商品
2、(channelId, timestamp, appId)参与sign签名,并和sign一起通过url传递,请求体参数不参与签名,通过post请求体传递【请设置请求头contentType:application/json】
3、接口支持https协议

接口URL

http://api.polyv.net/live/v3/channel/product/batch-add

線上API呼叫

請求方式

POST

介面限制

1、介面同時支援 HTTP 與 HTTPS,建議使用 HTTPS 以確保介面安全,介面呼叫有頻率限制,詳細請參閱

2、當商品類型為一般商品時,商品名稱、商品封面連結、商品實際價格、商品上下架狀態、商品連結類型為必填,並根據商品連結類型傳入對應連結;當商品類型為金融商品時,商品名稱、商品上下架狀態、商品連結類型為必填,並根據商品連結類型傳入對應連結。

請求參數說明

參數名稱 必填 類型 說明
appId String 帳號 appId【詳見取得金鑰
timestamp Long 目前13位毫秒級時間戳記,3分鐘內有效
sign String 簽名,為32位大寫的MD5值,產生簽名的 appSecret 金鑰作為通訊資料安全的關鍵資訊,嚴禁儲存在用戶端直接使用,所有API都必須透過客戶自己的伺服器中轉呼叫POLYV伺服器取得回應資料【詳見簽名產生規則
channelId String 頻道號

請求體參數描述

參數名 必選 類型 說明
true array 商品 JSON 陣列

請求體參數描述

參數名 必填 類型 說明
productType false String 商品類型,可選值有:
normal: 一般商品
finance: 金融商品
position: 職位商品
不傳時預設為 normal
cover false String 一般商品(productType為normal)時,商品封面連結,必填且長度範圍:1-500
金融商品(productType為finance)時,產品封面,非必填
職位商品(productType為position)時,職位封面,非必填 cover和ext選擇其中一個欄位傳送,如果同時傳送以ext為準
name true String 一般商品(productType為normal)時,商品名稱,必填
金融商品(productType為finance)時,產品名稱,必填
職位商品(productType為position)時,職位名稱,必填
註:介面可支援1-100字元,直播後台設定僅支援1-50個字元
status true Integer 商品上下架狀態
1:上架狀態
2:下架狀態
linkType true Integer 商品連結類型
10:通用連結
11:多平台連結
link false String 通用連結,商品連結,連結位址長度為1-500
當請求參數linkType=10時,該參數必填
當請求參數linkType=11時,該參數為非必填
pcLink false String 多平台連結,PC端跳轉連結,連結位址長度為1-500
mobileLink false String 多平台連結,行動Web端連結
wxMiniprogramLink false String 多平台連結,小程式內頁面路徑及參數(對於path屬性,所宣告的頁面路徑必須添加.html後綴,如pages/home/index.html)
wxMiniprogramOriginalId false String 多平台連結,小程式端原始Id
mobileAppLink false String 多平台連結,行動App端連結
androidLink false String 多平台連結,行動APP-安卓系統原生頁面連結
iosLink false String 多平台連結,行動APP-蘋果系統原生頁面連結
params false String 自訂參數,該參數以String類型的json物件接收,請求時需要轉義,見下方請求體參數範例
一般商品(productType為normal)時範例:{"id":21,"color":"blue","level":1},非必填
金融商品(productType為finance)時範例:{"id":21,"color":"blue","level":1},非必填
職位商品(productType為position)時必填且必須上傳treatment(薪資/待遇)參數,例如:{"treatment":"7~8k"}
productDesc false String 一般商品(productType為normal)時,商品描述,非必填
金融商品(productType為finance)時,產品描述,非必填
職位商品(productType為position)時,職位描述,必填
features false String 該參數以String類型的json物件接收,請求時需要轉義,見下方請求體參數範例
一般商品(productType為normal)時,產品標籤,json陣列,例如:["tab1", "tab2"]
金融商品(productType為finance)時,產品標籤,json陣列,例如:["tab1", "tab2"]
職位商品(productType為position)時,職位標籤,json陣列,例如:["tab1", "tab2", "tab3"],職位商品標籤不足三個時用空字串代替
btnShow true String 按鈕顯示文案
yield false String 金融商品(productType為finance)參數,產品收益率/價格
productDetail false String 商品詳情
ext false String JSON物件字串:{"coverList":["封面圖位址,最多15個"], "videoList":[{"videoSource":"影片來源", "videoId":"影片ID"}]} 【詳情見EXT】 cover和ext選擇其中一個欄位傳送,如果同時傳送以ext為準
tagIds false String 商品標籤id列表:JSON陣列字串, 格式如: [100,102,103]
- - - 以下為一般商品專用參數 (productType=normal)
priceType false String 商品實際價格類型,可選值有:
AMOUNT: 金額
CUSTOM: 自訂
不傳時預設為 AMOUNT
realPrice false Float 商品實際價格-金額,priceType=AMOUNT 時必傳,最高精確度為兩位小數,如 12.34
customPrice false String 商品實際價格-自訂,priceType=CUSTOM 時必傳,最多20個字元
originalPriceType false String 商品原始價格(劃線價格)類型,可選值有:
AMOUNT: 金額
CUSTOM: 自訂
預設為 AMOUNT
price false Float 商品原始價格(劃線價格)-金額,originalPriceType=AMOUNT 時生效,最高精確度為兩位小數,如 12.34
customOrignalPrice false String 商品原始價格(劃線價格)-自訂,originalPriceType=CUSTOM 時生效,最多20個字元
備註:如果 price 和 customOriginalPrice 都為空,則表示不啟用原始價格(劃線價格)
- - - 以上為一般商品專用參數 (productType=normal)

EXT

參數名 必填 類型 說明
coverList true Array 封面圖網址陣列,最多15個
videoList false Array 影片陣列,最多1個【詳見ChannelProductExtVideo】需開通素材庫才能使用
jumpWay false String 購買方式為外鏈購買-通用連結的跳轉方式: POP_UP-彈出視窗開啟、NEW_WINDOW-新視窗開啟、CURRENT_WINDOW-當前視窗開啟

ChannelProductExtVideo

參數名稱 必填 類型 說明
videoId true String 影片ID
videoSource true String 影片來源: MATERIAL_LIBRARY-素材庫

範例

http://api.polyv.net/live/v3/channel/product/batch-add?appId=frlr1zazn3&sign=8C89A574637594B0CB524039FC6D66C9&channelId=2288633&timestamp=1622177434141

請求體參數

[
    {
        "name": "测试添加金融产品1",
        "status": "1",
        "linkType": 10,
        "link": "http://live.polyv.net",      
        "btnShow": "测试按钮显示",
        "productDesc": "测试产品描述",
        "yield": "10.01%",
        "features": "[\"tab1\", \"tab2\"]",
        "params": "{\"id\":21,\"color\":\"blue\",\"level\":1}",
        "productType": "finance",
        "productDetail" : "<p>这是商品详情!</p>"
    },
    {
        "name": "测试添加金融产品1",
        "status": "1",
        "linkType": 10,
        "link": "http://live.polyv.net",
        "btnShow": "测试按钮显示",
        "productDesc": "测试产品描述",
        "yield": "10.01%",
        "features": "[\"tab1\", \"tab2\"]",
        "params": "{\"id\":21,\"color\":\"blue\",\"level\":1}",
        "productType": "finance",
        "productDetail" : "<p>这是商品详情!</p>"
    }
]

回應參數說明

參數名 類型 說明
code Integer 回應狀態碼,200為成功回傳,非200為失敗【詳見全域錯誤說明
status String 回應狀態文字資訊
message String 回應描述資訊,當code為400或500時,輔助描述錯誤原因
data Array 請求成功時為商品資訊【詳見Data參數描述】,請求失敗時為空
Data參數說明
參數名 類型 說明
productId Integer 商品productId
userId String POLYV用戶ID,與保利威官網一致,取得路徑:官網->登入->直播(開發設定)
channelId String 頻道號
name String 商品名稱
productType String 商品類型,可能的值有:
normal: 一般商品
finance: 金融商品
position:職位商品
cover String 商品封面連結
link String 商品通用類型商品連結
status Integer 商品上下架狀態 ,
1:上架狀態
2:下架狀態
createdTime Long 建立商品時間,13位毫秒級時間戳
lastModified Long 更新商品時間,13位毫秒級時間戳
rank Integer 商品排序號
type String 平台標誌,預設live,其他無效
linkType Integer 商品連結類型,
10:通用連結
11:多平台連結
pcLink String 多平台連結,PC端跳轉連結
mobileLink String 多平台連結,行動WEB端跳轉連結
wxMiniprogramLink String 多平台連結,小程式端跳轉連結
wxMiniprogramOriginalId String 多平台連結,小程式端ID
mobileAppLink String 多平台連結,行動APP端跳轉連結
androidLink String 多平台連結,行動APP-安卓系統原生頁面連結
iosLink String 多平台連結,行動APP-蘋果系統原生頁面連結
params String 自訂參數,json物件
btnShow String 按鈕顯示文案
features String 一般商品(productType為normal)時,產品標籤,json陣列,例如:["tab1", "tab2"]
金融商品(productType為finance)時,產品標籤,json陣列,例如:["tab1", "tab2"]
職位商品(productType為position)時,職位標籤,json陣列,例如:["tab1", "tab2"]
productDesc String 產品描述,支援特殊字元
yield String 產品收益率/價格
productDetail String 商品詳情,回傳的是個內容存放的地址:例如 https://liveimages.videocc.net/product-info/product-detail/4d57ea01de/704007d1fdfd4cb2a5b3d3a842418831.json url存放的就是商品詳情內容
ext String JSON物件字串:{"coverList":["封面圖地址,最多15個"], "videoList":[{"videoSource":"影片來源", "videoId":"影片ID"}]} 【詳情見EXT
- - 以下為一般商品專用參數 (productType=normal)
priceType String 商品實際價格類型,可能的值有:
AMOUNT: 金額
CUSTOM: 自訂
realPrice Float 商品實際價格-金額,最高精確度為兩位小數,如 12.34
customPrice String 商品實際價格-自訂
originalPriceType String 商品原始價格(劃線價格)類型,可能的值有:
AMOUNT: 金額
CUSTOM: 自訂
price Float 商品原始價格(劃線價格)-金額,最高精確度為兩位小數,如 12.34
customOrignalPrice String 商品原始價格(劃線價格)-自訂備註:如果 price 和 customOriginalPrice 都為空,則表示不啟用原始價格(劃線價格)
- - 以上為一般商品專用參數 (productType=normal)

商品詳情productDetail url裡存放內容範例

{
"productDetail": "<p>这是商品详情</p>"
}

Java 請求範例

快速接入基礎程式碼請下載相關依賴原始碼點擊下載原始碼,下載後加入自己的原始碼工程中即可。測試案例中的HttpUtil.java 和 LiveSignUtil.java 都包含在下載檔案中。

強烈建議您使用直播Java SDK完成API的功能對接,直播Java SDK 對API呼叫邏輯、異常處理、資料簽名、HTTP請求執行緒池進行了統一封裝和最佳化。

private static final Logger log = LoggerFactory.getLogger(ChannelOperateTest.class);
/**
 * 添加商品
 * @throws IOException
 */
@Test
public void testAddChannelProduct() throws IOException, NoSuchAlgorithmException {
        //公共参数,填写自己的实际参数
        String appId = super.appId;
        String appSecret = super.appSecret;
        String userId = super.userId;
        String timestamp = String.valueOf(System.currentTimeMillis());

        //业务参数
        String channelId = "2288633";
        String url = "http://api.polyv.net/live/v3/channel/product/batch-add";

        //http 调用逻辑
        Map<String, String> requestMap = new HashMap<>();
        requestMap.put("appId", appId);
        requestMap.put("timestamp", timestamp);
        requestMap.put("channelId", channelId);
        requestMap.put("sign",LiveSignUtil.getSign(requestMap, appSecret));
        url=HttpUtil.appendUrl(url,requestMap);
        String json = "[{\"name\":\"测试添加金融产品1\",\"status\":\"1\",\"linkType\":10,\"link\":\"http://live.polyv.net\",\"btnShow\":\"测试按钮显示\",\"productDesc\":\"测试产品描述\",\"yield\":\"10.01%\",\"features\":\"[\\\"tab1\\\", \\\"tab2\\\"]\",\"productType\":\"finance\"}]";
        String response = HttpUtil.postJsonBody(url, json,null);
        log.info("测试添加商品:{}",response);
        //do somethings

}

回應範例

系統全域錯誤說明詳見全域錯誤說明

成功範例

{
    "code": 200,
    "status": "success",
    "message": "",
    "data": [
            {
            "productId": 134827,
            "userId": "1b448be323",
            "channelId": 2272655,
            "name": "测试添加金融产品1",
            "price": null,
            "cover": "",
            "link": "http://live.polyv.net",
            "status": 1,
            "createdTime": 1661390909000,
            "lastModified": 1661390909000,
            "rank": 55,
            "realPrice": 0,
            "type": "live",
            "linkType": 10,
            "pcLink": "",
            "mobileLink": "",
            "androidLink": null,
            "iosLink": null,
            "otherLink": null,
            "wxMiniprogramLink": "",
            "wxMiniprogramOriginalId": "",
            "mobileAppLink": "",
            "params": "{\"id\": 21, \"color\": \"blue\", \"level\": 1}",
            "productType": "finance",
            "btnShow": "测试按钮显示",
            "features": "[\"tab1\", \"tab2\"]",
            "productDesc": "测试产品描述",
            "yield": "10.01%", 
            "productDetail" : "https://liveimages.videocc.net/product-info/product-detail/4d57ea01de/704007d1fdfd4cb2a5b3d3a842418831.json"
        },
        {
            "productId": 134828,
            "userId": "1b448be323",
            "channelId": 2272655,
            "name": "测试添加金融产品1",
            "price": null,
            "cover": "",
            "link": "http://live.polyv.net",
            "status": 1,
            "createdTime": 1661390909000,
            "lastModified": 1661390909000,
            "rank": 55,
            "realPrice": 0,
            "type": "live",
            "linkType": 10,
            "pcLink": "",
            "mobileLink": "",
            "androidLink": null,
            "iosLink": null,
            "otherLink": null,
            "wxMiniprogramLink": "",
            "wxMiniprogramOriginalId": "",
            "mobileAppLink": "",
            "params": "{\"id\": 21, \"color\": \"blue\", \"level\": 1}",
            "productType": "finance",
            "btnShow": "测试按钮显示",
            "features": "[\"tab1\", \"tab2\"]",
            "productDesc": "测试产品描述",
            "yield": "10.01%",
            "productDetail" : "https://liveimages.videocc.net/product-info/product-detail/4d57ea01de/704007d1fdfd4cb2a5b3d3a842418831.json"
        }
    ]
}

異常範例

{
    "code": 400,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}
联系客服,在线咨询