stable本次发布有变化全部展示
来自 Shopee 官方资料快照 ·
- 当前资料结构化阅读页
- 固定快照已留存,可追溯
- 官方原文可核对
资料正文
§1 v2.ams.get_optimization_suggestion_product
Retrieve products with suggestions to improve performance
§2 Overview
Overview
| Field | Value |
|---|---|
| Module | AMS |
| API type | Shop |
| HTTP method | GET |
| Path | /api/v2/ams/get_optimization_suggestion_product |
| Production URL | https://partner.shopeemobile.com/api/v2/ams/get_optimization_suggestion_product |
| Sandbox URL | https://partner.test-stable.shopeemobile.com/api/v2/ams/get_optimization_suggestion_product |
| Permission | Affiliate Marketing Solution Management |
§3 Request parameters
Request parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| page_no | int32 | Yes | 1 | Specifies the page number of data to return in the current call. Starting from 1. if data is more than one page, the page_no can be some entry to start next call. |
| page_size | int32 | Yes | 20 | Each result set is returned as a page of entries. Use the "page_size" filters to control the maximum number of entries to retrieve per page (i.e., per call). This integer value is used to specify the maximum number of entries to return in a single "page" of data.The limit of page_size if between 1 and 100. |
| rcmd_reason_filter | string | Yes | product_opportunities | Recommended types. Applicable values: product_opportunities; optimize_increase_commission_rate; optimize_extend_promotion_period |
§4 Response parameters
Response parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| error | string | error_business | Indicate error type if hit error. Empty if no error happened. | |
| message | string | Please agree to the AMS T&C in Seller Center - Affiliate Marketing Solutions first before using Open API. | Indicate error details if hit error. Empty if no error happened. | |
| request_id | string | b937c04e554847789cbf3fe33a0ad5f1 | The identifier for an API request for error tracking. | |
| response | object | Detail informations you are querying. | ||
| response.item_list | object[] | |||
| response.item_list.item_id | int64 | 123 | Item ID | |
| response.item_list.item_name | string | test | Item Name | |
| response.item_list.rcmd_reason | string[] | ["severe_shortage","high_popularity"] | Recommend reason. Applicable values: severe_shortage; high_popularity optimize_commission_rate; extend_time_period | |
| response.item_list.campaign_id | int64 | 123 | Campaign ID | |
| response.item_list.commission_rate | float | 1.1 | Commission Rate, 1.11 means 1.11%, support two decimal places | |
| response.item_list.period_start_time | timestamp | 1735660800 | Period Start Time | |
| response.item_list.period_end_time | timestamp | 1735660800 | Period End Time, if get 32503651199 (2999-12-31 23:59:59), it means no limit | |
| response.item_list.affiliate_count | int64 | 123 | The total number of affiliates who have ever shared the product in the last 90 days | |
| response.item_list.item_sold | int64 | 123 | If the requested rcmd_reason_filter is product_opportunition, it is represented as item sales. Other scenarios are the total number of item sold for each product of the shop through AMS in the last 90 days | |
| response.item_list.campaign_status | string | Ongoing | Campaign Status: Upcoming; Ongoing; Terminating | |
| response.item_list.l2_category_order_count | int64 | 123 | The total number of AMS orders for the product's L2 category in the last 30 days, only available when requested rcmd_reason_filter is product_opportunition | |
| response.item_list.suggest_min_rate | float | 1.1 | Minimum suggested commission rate, 1.1 means 1.1%, support two decimal places | |
| response.item_list.suggest_max_rate | float | 1.2 | Maximum suggested commission rate, 1.2 means 1.2%, support two decimal places | |
| response.item_list.prefill_rate | float | 1.1 | Prefill rate, 1.1 means 1.1%, support two decimal places | |
| response.item_list.prefill_subsidy_rate | float | 1.2 | Prefill subsidy rate, platform commission rate calculated based on seller commission, 1.2 means 1.2%, support two decimal places | |
| response.item_list.display_price | string | 1.23 | Display price | |
| response.item_list.has_subsidy_data | boolean | true | Has subsidy rate | |
| response.total | int32 | 1000 | Total number of items that match the condition | |
| response.has_more | boolean | true | This is to indicate whether the item list is more than one page. If this value is true, you may want to continue to check next page to retrieve orders. |
§5 Common parameters
Common parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| partner_id | int | 1 | Partner ID is assigned upon registration is successful. Required for all requests. | |
| timestamp | timestamp | 1610000000 | This is to indicate the timestamp of the request. Required for all requests. Expires in 5 minutes. | |
| access_token | string | c09222e3fc40ffb25fc947f738b1abf1 | The token for API access, using to identify your permission to the api. Valid for multiple use and expires in 4 hours. | |
| shop_id | int | 600000 | Shopee's unique identifier for a shop. Required param for most APIs. | |
| sign | string | e318d3e932719916a9f9ebb57e2011961bd47abfa54a36e040d050d8931596e2 | Signature generated by partner_id, api path, timestamp, access_token, shop_id and partner_key via HMAC-SHA256 hashing algorithm. More details: https://open.shopee.com/documents?module=87&type=2&id=58&version=2 |
§6 Request samples
Request samples
§7 Java
Java
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.get("https://partner.shopeemobile.com/api/v2/ams/get_optimization_suggestion_product?access_token=access_token&page_no=1&page_size=20&partner_id=partner_id&rcmd_reason_filter=product_opportunities&shop_id=shop_id&sign=sign×tamp=timestamp")
.asString();
§8 PHP
PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://partner.shopeemobile.com/api/v2/ams/get_optimization_suggestion_product?access_token=access_token&page_no=1&page_size=20&partner_id=partner_id&rcmd_reason_filter=product_opportunities&shop_id=shop_id&sign=sign×tamp=timestamp',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
§9 cURL
cURL
curl --location --request GET 'https://partner.shopeemobile.com/api/v2/ams/get_optimization_suggestion_product?access_token=access_token&page_no=1&page_size=20&partner_id=partner_id&rcmd_reason_filter=product_opportunities&shop_id=shop_id&sign=sign×tamp=timestamp'
§10 Python
Python
import requests
url = "https://partner.shopeemobile.com/api/v2/ams/get_optimization_suggestion_product?access_token=access_token&page_no=1&page_size=20&partner_id=partner_id&rcmd_reason_filter=product_opportunities&shop_id=shop_id&sign=sign×tamp=timestamp"
payload={}
headers = {
}
response = requests.RPCRequest("GET",url,headers=headers, data=payload, allow_redirects=False)
print(response.text)
§11 Response sample
Response sample
§12 JSON
JSON
{
"error": "",
"message": "",
"request_id": "b937c04e554847789cbf3fe33a0ad5f1",
"response": {
"item_list": [
{
"item_id": 123,
"item_name": "test",
"rcmd_reason": [
"severe_shortage",
"high_popularity"
],
"campaign_id": 123,
"commission_rate": 1.1,
"period_start_time": 1735660800,
"period_end_time": 1735660800,
"affiliate_count": 123,
"item_sold": 123,
"campaign_status": "Ongoing",
"l2_category_order_count": 123,
"suggest_min_rate": 1.1,
"suggest_max_rate": 1.2,
"prefill_rate": 1.1,
"prefill_subsidy_rate": 1.2,
"display_price": "1.23",
"has_subsidy_data": true
}
],
"total": 1000,
"has_more": true
}
}
§13 Error example
Error example
§14 JSON
JSON
{
"error": "error_business",
"message": "Please agree to the AMS T&C in Seller Center - Affiliate Marketing Solutions first before using Open API.",
"request_id": "b937c04e554847789cbf3fe33a0ad5f1"
}
§15 Errors
Errors
| Error | Description | Solution |
|---|---|---|
| error_param | invalid page_no | |
| error_param | invalid page_size | |
| error_param | invalid param | |
| error_param | invalid rcmd_reason | |
| error_server | Something wrong. Please try later. | |
| error_business | Sorry you don't have access to AMS features. | |
| error_business | Please agree to the AMS T&C in Seller Center - Affiliate Marketing Solutions first before using Open API. | |
| error_business | The seller commission operation is frozen. |
§16 Common errors
Common errors
| Error | Description | Solution |
|---|---|---|
| error_auth | partner_id is invalid | |
| error_auth | The App is deleted, and you'll be unable to make any API call. | |
| error_auth | App developer’s permissions for authorizations have been restricted. If you’re a seller, contact the developer for more information. If you’re the developer, refer to the Open Platform Console for details. | |
| error_param | There is no partner_id in query. | |
| error_param | Invalid partner_id. | |
| error_param | no timestamp | |
| error_param | Invalid timestamp | |
| error_param | There is no sign in query. | |
| error_sign | Wrong sign. | |
| invalid_partner_id | Invalid partner_id, please have a check. | |
| error_auth | No permission to current api. | |
| error_api_call_restricted | The App permission for api call have been restricted. If you’re a seller, contact the developer for more information. If you’re the developer, refer to the Open Platform Console for details. | |
| api_suspended | The API is offline. Please call v2 API instead. | |
| error_limit | The total API call number made by your APP has reached the daily API call limit, please try again after 00: 00 (UTC+08:00) | |
| error_rate_limit | Too many requests. You have reached the rate limit. Please try again later. | |
| source_ip_undeclared | Request Source IP ({ip}) is undeclared. Please declare all your IP addresses in the Shopee Open Platform Console > App list > IP Address Whitelist | |
| error_param | Permission denied. This API is currently offline or the request path is incorrect. | |
| error_param | Partner_id is invalid, should be an integer between 0 and 4294967295. | |
| error_param | no timestamp. | |
| error_param | Timestamp is invalid, should be an integer between 0 and 4294967295. | |
| error_param | Timestamp is expired. | |
| error_partner_key_expired | Your API partner key has expired, please reset the Live API Partner Key in Console to get a new valid partner key to call open api. | |
| error_api_permission | This app type has no permission to this API. | |
| error_param | There is no access_token in query. | |
| error_auth | Invalid access_token. | |
| error_auth | Invalid partner_id or shopid. | |
| shop_no_linked | Partner and shop has no linked. | |
| shop_banned | The shop account has been banned. Permissions for shop authorization and API calls have been suspended until the shop account is restored. | |
| invalid_acceess_token | Invalid access_token, please have a check. | |
| partner_shop_no_link | Invalid partner_id or shop_id, please have a check. | |
| error_ashop_api_permission | The shop is Affiliate shop has no permission to call this API. | |
| error_kyc_auth | No permission. Please inform the seller to complete the Seller Registration on Shopee Seller Center first, then this shop can call for this API. | |
| error_auth | System error, please try again later. | |
| error_param | There is no shop_id in query. | |
| error_param | shop_id is invalid, should be an integer between 0 and 4294967295. |
§17 Update log
Update log
| Date | Change |
|---|---|
| - | New API |
