stable本次发布有变化全部展示
来自 Shopee 官方资料快照 ·
- 当前资料结构化阅读页
- 固定快照已留存,可追溯
- 官方原文可核对
资料正文
§1 v2.product.update_kit_item
Update the kit basic information and kit components, only support adding kit variations and updating existing kit variation’s image, price, and model_sku, don’t support deleting existing kit variations and updating the items, main component and quantity per kit of existing kit variations.
§2 Overview
Overview
| Field | Value |
|---|---|
| Module | Product |
| API type | Shop |
| HTTP method | POST |
| Path | /api/v2/product/update_kit_item |
| Production URL | https://partner.shopeemobile.com/api/v2/product/update_kit_item |
| Sandbox URL | https://partner.test-stable.shopeemobile.com/api/v2/product/update_kit_item |
| Permission | ERP System; Seller In House System; Product Management; Swam ERP |
§3 Request parameters
Request parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| item_id | int64 | Yes | 28001430 | ID of kit item. |
| item_setting | object | No | ||
| item_setting.item_name | string | No | item name sample | The name of this kit item. |
| item_setting.images | object | No | Item images with 1:1 ratio. | |
| item_setting.images.image_id_list | string[] | Yes | ID of image. | |
| item_setting.long_images | object | No | Item images with 3:4 ratio. | |
| item_setting.long_images.image_id_list | string[] | Yes | ID of image. | |
| item_setting.video_upload_id | string[] | No | ["sg_f4bde9bc-ff3c-485e-a6dd-3161dab4b942_000000"] | Video upload ID returned from video uploading API. Only accept one video_upload_id. |
| item_setting.description | string | No | item description sample | If description_type is normal, description information should be set by this field. |
| item_setting.description_info | object | No | Rich text description field. Only whitelist sellers can use it. If you use the field, please upload the description_type=extended otherwise api will return error. If you don't use this field, you don't need to upload the description_type or upload description_type=normal | |
| item_setting.description_info.extended_description | object | Yes | If description_type is extended , Description information should be set by this field. | |
| item_setting.description_info.extended_description.field_list | object[] | Yes | Field of extended description. | |
| item_setting.description_info.extended_description.field_list.field_type | string | Yes | Type of extended description field. See Data Definition- description_field_type (text , image). | |
| item_setting.description_info.extended_description.field_list.text | string | Yes | If field_type is text, text information will be set by this field. | |
| item_setting.description_info.extended_description.field_list.image_info | object | No | If field_type is image, image will be set by this field. | |
| item_setting.description_info.extended_description.field_list.image_info.image_id | string | Yes | Image id. | |
| item_setting.description_type | string | No | extended | See Data Definition- description_type (normal , extended). If you want to use extended_description, this field must be inputed. |
| item_setting.logistic_info | object[] | No | Logistic channel setting. | |
| item_setting.logistic_info.logistic_id | int64 | Yes | ID of the channel. | |
| item_setting.logistic_info.enabled | boolean | Yes | Whether channel is enabled for this kit item. | |
| item_setting.logistic_info.shipping_fee | float | No | Shipping fee. Only needed when logistics fee_type = CUSTOM_PRICE. | |
| item_setting.logistic_info.size_id | int64 | No | Size ID. Only needed when logistic fee_type = SIZE_SELECTION. | |
| item_setting.logistic_info.is_free | boolean | No | Whether cover shipping fee for buyer. | |
| item_setting.unlisted | boolean | No | false | Unlist or not. |
| item_setting.item_sku | string | No | item sku sample | SKU tag of item |
| item_setting.weight | float | No | 1.1 | The weight of this kit item, the unit is KG. |
| item_setting.dimension | object | No | The dimension of this kit item. | |
| item_setting.dimension.package_length | int32 | Yes | 11 | The length of package for this kit item, the unit is CM. |
| item_setting.dimension.package_width | int32 | Yes | 11 | The width of package for this kit item, the unit is CM. |
| item_setting.dimension.package_height | int32 | Yes | 11 | The height of package for this kit item, the unit is CM. |
| item_setting.pre_order | object | No | Pre order setting. | |
| item_setting.pre_order.is_pre_order | boolean | Yes | false | Whether kit item is pre order. |
| item_setting.pre_order.days_to_ship | int64 | No | 10 | The guaranteed days to ship orders. Please get the days_to_ship range from get_kit_item_limit api. |
| item_setting.model_list | object[] | No | Model info list, model number at most 9. | |
| item_setting.model_list.model_id | int64 | No | 1002066586922 | ID of this kit model. |
| item_setting.model_list.tier_index | int64[] | Yes | [2] | Tier index of this kit model. |
| item_setting.model_list.model_sku | string | No | model sku sample | Seller SKU of this kit model, model_sku length information needs to be no more than 100 characters. |
| item_setting.model_list.original_price | float | No | 38.3 | Original price of this kit model. |
| item_setting.model_list.component_list | object[] | No | Please get the amount of item/model that one kit model support from get_kit_item_limit. | |
| item_setting.model_list.component_list.component_item_id | int64 | Yes | 892568916 | ID of the item that composes this kit model. |
| item_setting.model_list.component_list.component_model_id | int64 | No | 8501462426 | ID of the model that composes this kit model. |
| item_setting.model_list.component_list.quantity | int64 | Yes | 2 | The amount of the item/model that composes this kit model. |
| item_setting.model_list.component_list.main_component | boolean | No | false | Whether this item/model is the main component for this kit.; One kit item can only have one item/model as main component. |
| item_setting.tier_variation_list | object[] | No | Tier variation info list.; Only support one tier variation, and each kit item can have from 1 to 9 kit variations. | |
| item_setting.tier_variation_list.name | string | No | Tier variation name. | |
| item_setting.tier_variation_list.option_list | object[] | Yes | Tier variation option info list. | |
| item_setting.tier_variation_list.option_list.option | string | Yes | Option name. | |
| item_setting.tier_variation_list.option_list.image | object | No | Option image. | |
| item_setting.tier_variation_list.option_list.image.image_id | string | Yes | ID of image. If you choose to define, you need to define an image for all options. | |
| sync_setting | object | No | ||
| sync_setting.auto_sync_dts | boolean | Yes | Auto sync the pre_order setting from main component or not. |
§4 Response parameters
Response parameters
| Name | Type | Required | Sample | Description |
|---|---|---|---|---|
| error | string | |||
| message | string | |||
| warning | string | |||
| request_id | string |
§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 Payload
Payload
{
"item_id": 885138339,
"sync_setting": {
"auto_sync_dts": true
},
"item_setting": {
"item_name": "item name sample",
"images": {
"image_id_list": [
"br-11134207-7r98o-lzytw8irwzy729"
]
},
"description_type": "extended",
"description_info": {
"extended_description": {
"field_list": [
{
"field_type": "text",
"text": "item description sample "
}
]
}
},
"logistic_info": [
{
"logistic_id": 90003,
"enabled": true
}
],
"weight": 1.1,
"model_list": [
{
"model_id": 19250366421,
"tier_index": [
0
],
"original_price": 19,
"component_list": [
{
"component_item_id": 885138319,
"component_model_id": 8501469325,
"main_component": false,
"quantity": 1
},
{
"component_item_id": 892571466,
"component_model_id": 18500721259,
"main_component": true,
"quantity": 1
}
]
},
{
"model_id": 19250366422,
"tier_index": [
1
],
"original_price": 12,
"component_list": [
{
"component_item_id": 885138319,
"component_model_id": 8501469324,
"main_component": false,
"quantity": 2
},
{
"component_item_id": 892571466,
"component_model_id": 18500721256,
"main_component": false,
"quantity": 3
}
]
},
{
"model_id": 0,
"tier_index": [
2
],
"original_price": 12,
"component_list": [
{
"component_item_id": 892568916,
"component_model_id": 8501462425,
"main_component": false,
"quantity": 1
},
{
"component_item_id": 892570838,
"component_model_id": 9250740314,
"main_component": false,
"quantity": 2
}
]
}
],
"tier_variation_list": [
{
"name": " ",
"option_list": [
{
"option": "Kit Variation 1"
},
{
"option": "Kit Variation 2"
},
{
"option": "Kit Variation 3"
}
]
}
]
}
}
§8 Java
Java
Unirest.setTimeouts(0, 0);
HttpResponse<String> response = Unirest.post("https://partner.uat.shopeemobile.com/api/v2/product/update_kit_item?access_token=access_token&partner_id=partner_id&shop_id=shop_id&sign=sign×tamp=timestamp")
.header("Content-Type","application/json")
.body("{
\"item_id\": 0,
\"item_setting\": {
\"description\": \"-\",
\"description_info\": {
\"extended_description\": {
\"field_list\": [
{
\"field_type\": \"-\",
\"image_info\": {
\"image_id\": \"-\"
},
\"text\": \"-\"
}
]
}
},
\"description_type\": \"-\",
\"dimension\": {
\"package_height\": 0.1,
\"package_length\": 0.1,
\"package_width\": 0.1
},
\"images\": {
\"image_id_list\": [
\"-\"
]
},
\"item_name\": \"-\",
\"item_sku\": \"-\",
\"logistic_info\": [
{
\"enabled\": true,
\"is_free\": true,
\"logistic_id\": 0,
\"shipping_fee\": 0.1,
\"size_id\": 0
}
],
\"long_images\": {
\"image_id_list\": [
\"-\"
]
},
\"model_list\": [
{
\"component_list\": [
{
\"component_item_id\": 0,
\"component_model_id\": 0,
\"main_component\": true,
\"quantity\": 0
}
],
\"model_id\": 0,
\"model_sku\": \"-\",
\"original_price\": 0.1
}
],
\"pre_order\": {
\"days_to_ship\": 0,
\"is_pre_order\": true
},
\"tier_variation_list\": [
{
\"name\": \"-\",
\"option_list\": [
{
\"image\": {
\"image_id\": \"-\"
},
\"option\": \"-\"
}
]
}
],
\"unlisted\": true,
\"video_upload_id\": [
\"-\"
],
\"weight\": 0.1
},
\"sync_setting\": {
\"auto_sync_dts\": true
}
}")
.asString();
§9 PHP
PHP
<?php
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://partner.uat.shopeemobile.com/api/v2/product/update_kit_item?access_token=access_token&partner_id=partner_id&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 => 'POST',
CURLOPT_POSTFIELDS => '{
"item_id": 0,
"item_setting": {
"description": "-",
"description_info": {
"extended_description": {
"field_list": [
{
"field_type": "-",
"image_info": {
"image_id": "-"
},
"text": "-"
}
]
}
},
"description_type": "-",
"dimension": {
"package_height": 0.1,
"package_length": 0.1,
"package_width": 0.1
},
"images": {
"image_id_list": [
"-"
]
},
"item_name": "-",
"item_sku": "-",
"logistic_info": [
{
"enabled": true,
"is_free": true,
"logistic_id": 0,
"shipping_fee": 0.1,
"size_id": 0
}
],
"long_images": {
"image_id_list": [
"-"
]
},
"model_list": [
{
"component_list": [
{
"component_item_id": 0,
"component_model_id": 0,
"main_component": true,
"quantity": 0
}
],
"model_id": 0,
"model_sku": "-",
"original_price": 0.1
}
],
"pre_order": {
"days_to_ship": 0,
"is_pre_order": true
},
"tier_variation_list": [
{
"name": "-",
"option_list": [
{
"image": {
"image_id": "-"
},
"option": "-"
}
]
}
],
"unlisted": true,
"video_upload_id": [
"-"
],
"weight": 0.1
},
"sync_setting": {
"auto_sync_dts": true
}
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json'
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;
§10 cURL
cURL
curl --location --request POST 'https://partner.uat.shopeemobile.com/api/v2/product/update_kit_item?access_token=access_token&partner_id=partner_id&shop_id=shop_id&sign=sign×tamp=timestamp' \
--header 'Content-Type: application/json' \
--data-raw '{
"item_id": 0,
"item_setting": {
"description": "-",
"description_info": {
"extended_description": {
"field_list": [
{
"field_type": "-",
"image_info": {
"image_id": "-"
},
"text": "-"
}
]
}
},
"description_type": "-",
"dimension": {
"package_height": 0.1,
"package_length": 0.1,
"package_width": 0.1
},
"images": {
"image_id_list": [
"-"
]
},
"item_name": "-",
"item_sku": "-",
"logistic_info": [
{
"enabled": true,
"is_free": true,
"logistic_id": 0,
"shipping_fee": 0.1,
"size_id": 0
}
],
"long_images": {
"image_id_list": [
"-"
]
},
"model_list": [
{
"component_list": [
{
"component_item_id": 0,
"component_model_id": 0,
"main_component": true,
"quantity": 0
}
],
"model_id": 0,
"model_sku": "-",
"original_price": 0.1
}
],
"pre_order": {
"days_to_ship": 0,
"is_pre_order": true
},
"tier_variation_list": [
{
"name": "-",
"option_list": [
{
"image": {
"image_id": "-"
},
"option": "-"
}
]
}
],
"unlisted": true,
"video_upload_id": [
"-"
],
"weight": 0.1
},
"sync_setting": {
"auto_sync_dts": true
}
}'
§11 Python
Python
import requests
import json
url = "https://partner.uat.shopeemobile.com/api/v2/product/update_kit_item?access_token=access_token&partner_id=partner_id&shop_id=shop_id&sign=sign×tamp=timestamp"
payload=json.dumps({
"item_id": 0,
"item_setting": {
"description": "-",
"description_info": {
"extended_description": {
"field_list": [
{
"field_type": "-",
"image_info": {
"image_id": "-"
},
"text": "-"
}
]
}
},
"description_type": "-",
"dimension": {
"package_height": 0.1,
"package_length": 0.1,
"package_width": 0.1
},
"images": {
"image_id_list": [
"-"
]
},
"item_name": "-",
"item_sku": "-",
"logistic_info": [
{
"enabled": True,
"is_free": True,
"logistic_id": 0,
"shipping_fee": 0.1,
"size_id": 0
}
],
"long_images": {
"image_id_list": [
"-"
]
},
"model_list": [
{
"component_list": [
{
"component_item_id": 0,
"component_model_id": 0,
"main_component": True,
"quantity": 0
}
],
"model_id": 0,
"model_sku": "-",
"original_price": 0.1
}
],
"pre_order": {
"days_to_ship": 0,
"is_pre_order": True
},
"tier_variation_list": [
{
"name": "-",
"option_list": [
{
"image": {
"image_id": "-"
},
"option": "-"
}
]
}
],
"unlisted": True,
"video_upload_id": [
"-"
],
"weight": 0.1
},
"sync_setting": {
"auto_sync_dts": True
}
})
headers = {
'Content-Type': 'application/json'
}
response = requests.RPCRequest("POST",url,headers=headers, data=payload, allow_redirects=False)
print(response.text)
§12 Response sample
Response sample
§13 JSON
JSON
{
"error": "",
"message": "",
"request_id": "cfe8f48ee16ed5d246259e6e88551041",
"warning": ""
}
§14 Error example
Error example
§15 JSON
JSON
{
"error": "product.error_price_out_of_range",
"message": "Price should be within 1.00-499999.00 for model Kit Variation 1",
"request_id": "49fdee554984f9d91df528fa14c5dc41",
"warning": ""
}
§16 Errors
Errors
| Error | Description | Solution |
|---|---|---|
| error_data | parse data failed | |
| error_data | data not exist | |
| error_param | parameter invalid | |
| error_param | The information you queried is not found. | |
| error_param | Wrong parameters, detail: {msg}. | |
| error_server | Something wrong. Please try later. | |
| error_shop | shopid is invalid | |
| error_param | request not from gateway |
§17 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. |
§18 Update log
Update log
| Date | Change |
|---|---|
| 2024-10-18 | New API |
