保利威文档中心

幫助中心

新增頻道商品

更新時間:2026-01-12 14:16:50

介面描述

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

接口URL

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

線上API呼叫

請求方式

POST

介面限制

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

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

請求參數說明

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

請求體參數描述

參數名 必填 類型 說明
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
wxMiniprogramAppId false String 多平台連結,小程式端appId
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 false String 職位商品(productType為position)時,按鈕顯示文案,必填
其他非必填,預設值:去購買
yield false String 金融商品(productType為finance)參數,產品收益率/價格
originId false String 平台商品id,(有值則平台商品庫複製新建頻道商品,此時其他欄位只有status為必填)
strategy false String originId非空時的複製平台商品的策略,可選值: copy-複製, ref-引用(推薦使用此值),預設值為copy (引用平台商品庫的商品:平台商品庫改動商品欄位,會自動同步到頻道商品庫中
拷貝平台商品庫的商品:平台商品庫改動商品欄位,不會自動同步到頻道商品庫中)
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/add?appId=frlr1zazn3&sign=8C89A574637594B0CB524039FC6D66C9&channelId=2288633&timestamp=1622177434141

請求體參數

{
    "name": "测试添加金融产品1",
    "status": "1",
    "linkType": 10,
    "link": "http://live.polyv.net",
    "btnShow": "测试按钮显示",
    "strategy":"copy",
    "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 Object 請求成功時為商品資訊【詳見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
wxMiniprogramAppId String 多平台連結,小程式端 appID
mobileAppLink String 多平台連結,行動 APP 端跳轉連結
androidLink String 多平台連結,行動 APP-Android 系統原生頁面連結
iosLink String 多平台連結,行動 APP-iOS 系統原生頁面連結
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/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\", \"strategy\":\"copy\"}";
        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": "",
        "wxMiniprogramAppId": "",
        "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": ""
}
联系客服,在线咨询