Polyv Help Center

Help Center

Push Channel Product

Updated: 2026-09-24 16:10:00

Interface Description

1、推送频道商品库商品
2、接口支持https协议

Interface URL

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

Online API Call

Request Method

POST

Interface Constraints

  1. The interface supports both HTTP and HTTPS. HTTPS is recommended to ensure interface security. Interface calls have frequency limits. See details

Request Parameter Description

Parameter Required Type Description
appId true String Account appId See details on obtaining keys
timestamp true Long Current 13-digit millisecond timestamp, valid within 3 minutes
sign true String Signature, a 32-character uppercase MD5 value. The appSecret key used to generate the signature is critical for communication data security. It must never be saved or used directly on the client side. All APIs must be called through your own server to relay requests to the POLYV server for response data. See signature generation rules
channelId true String Channel ID
productId true Integer Product ID
pushCardType false String Product push card type [Optional values: smallCard, bigCard, bottomCard]

When the channel product push rule is set to "Select on Push" (chooseCard), the push is performed according to the type specified by pushCardType. If this parameter is not passed, the default push is a small card. When the channel has a fixed card type set, the push follows the channel configuration.

Example

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

Form parameters:

productId=29426&appId=frlr1zazn3&sign=25B1C55EA9B53C8BBD7D835A9CAF8B3B&channelId=1965681&timestamp=1621843461972

Response Parameter Description

Parameter Type Description
code Integer Response status code, 200 for success, non-200 for failure See global error description
status String Response status text
message String Response description message, assists in describing error reasons when code is 400 or 500
data String Returns null on success, returns empty string on failure

Java Request Example

For quick integration of basic code, download the relevant dependency source code. Click to download source code. After downloading, add it to your own source project. The test cases include HttpUtil.java and LiveSignUtil.java, both contained in the download file.

It is strongly recommended to use the Live Java SDK for API integration. The Live Java SDK provides unified encapsulation and optimization for API call logic, exception handling, data signing, and HTTP request thread pools.

private static final Logger log = LoggerFactory.getLogger(ChannelOperateTest.class);
/**
 * 推送商品库商品
 * @throws IOException
 * @throws NoSuchAlgorithmException
 */
@Test
public void testPushChannelProduct() throws IOException, NoSuchAlgorithmException {
    //公共参数,填写自己的实际
    String appId = super.appId;
    String appSecret = super.appSecret;
    String userId = super.userId;
    String timestamp = String.valueOf(System.currentTimeMillis());
    //业务参数
    String url="http://api.polyv.net/live/v3/channel/product/push-product";
    String channelId="1965681";
    String productId="29426";

    //http 调用逻辑
    Map<String, String> requestMap = new HashMap<>();
    requestMap.put("appId", appId);
    requestMap.put("timestamp", timestamp);
    requestMap.put("channelId", channelId);
    requestMap.put("productId", productId);
    // 频道商品推送规则为“推送时选择”时,指定推送底部卡片
    requestMap.put("pushCardType", "bottomCard");
    requestMap.put("sign", LiveSignUtil.getSign(requestMap, appSecret));
    String response = HttpUtil.postFormBody(url,requestMap);
    log.info("测试推送商品库商品,返回值:{}", response);
    //do somethings

}

Response Example

For system global error descriptions, see Global Error Description

Success Example

{
    "code":200,
    "status":"success",
    "message":"",
    "data":null
}

Error Example

{
    "code": 400,
    "status": "error",
    "message": "invalid signature.",
    "data": ""
}

Frequently Asked Questions

Q: How to push a bottom card via the API?

A: Set the channel product push rule to "Select on Push" (chooseCard), and pass pushCardType=bottomCard when calling this interface. When generating the signature, pushCardType must be included as a signature parameter. See the Java request example above.

Q: Why does passing pushCardType=bottomCard still result in a different card type being pushed?

A: When the channel has a fixed card type set, the interface follows the channel configuration. Only when the channel product push rule is set to "Select on Push" (chooseCard) will the passed pushCardType be used.

联系客服,在线咨询
在线咨询