快工助手跨境电商知识与商机助手

v2.product.batch_add_item

Shopee 官方资料 · Shopee Open Platform 接口参考 · 适合开发者

stable本次发布有变化全部展示

来自 Shopee 官方资料快照 ·

打开官方原文 ↗
  1. 当前资料结构化阅读页
  2. 固定快照已留存,可追溯
  3. 官方原文可核对
查看技术与溯源信息
平台 / profile
Shopee / profile.shopee.api_reference
语言
en-US
发布版本
cn-20260909-2
标签
zhuge/sourceplatform/shopeeaudience/developercategory/api_doctopic/apitopic/developer

资料正文

§1 v2.product.batch_add_item

Create asynchronous task to batch add item

#

§2 Overview

Overview

FieldValue
ModuleProduct
API typeShop
HTTP methodPOST
Path/api/v2/product/batch_add_item
Production URLhttps://partner.shopeemobile.com/api/v2/product/batch_add_item
Sandbox URLhttps://partner.test-stable.shopeemobile.com/api/v2/product/batch_add_item
PermissionERP System; Seller In House System; Product Management
#

§3 Request parameters

Request parameters

NameTypeRequiredSampleDescription
item_listobject[]YesThe item list to batch add. The list size must be between 1 and 100.
item_list.original_pricefloatYesItem price
item_list.descriptionstringYesitem description testif description_type is normal , Description information should be set by this field.
item_list.weightfloatYesThe weight of this item, the unit is KG.
item_list.item_namestringYesItem Name ExampleItem name
item_list.item_statusstringNoUNLISTItem status, could be UNLIST or NORMAL
item_list.dimensionobjectNoThe dimension of this item.
item_list.dimension.package_heightint32YesThe height of package for this item, the unit is CM.
item_list.dimension.package_lengthint32YesThe length of package for this item, the unit is CM.
item_list.dimension.package_widthint32YesThe width of package for this item, the unit is CM.
item_list.logistic_infoobject[]YesLogistic channel setting
item_list.logistic_info.size_idint32NoSize ID, If specify logistic fee_type is SIZE_SELECTION size_id is required.
item_list.logistic_info.shipping_feefloatNoShipping fee, Only needed when logistics fee_type = CUSTOM_PRICE.
item_list.logistic_info.enabledbooleanYestrueWhether channel is enabled for this item
item_list.logistic_info.logistic_idint32YesID of the channel
item_list.logistic_info.is_freebooleanNofalseWhether cover shipping fee for buyer
item_list.attribute_listobject[]NoThis field is optional(expect Indonesia) depending on the specific attribute under different categories. Should call shopee.item.GetAttributes to get attribute first. Must contain all all mandatory attribute.
item_list.attribute_list.attribute_idint32YesID of attribute
item_list.attribute_list.attribute_value_listobject[]No
item_list.attribute_list.attribute_value_list.value_idint32Yes32142Value ID. In the following cases, the value id needs to be uploaded as 0, and original_value_name is mandatory, needs to be filled in customized value. (1) AttributeInputType is TEXT_FILED; (2) AttributeInputType is COMBO_BOX or MULTIPLE_SELECT_COMBO_BOX, and the seller want to fill in a customized value.
item_list.attribute_list.attribute_value_list.original_value_namestringNoBrandValue name. original_value_name from product.get_attributes api. If value id=0, this field is required. If AttributeType is DATE_TYPE or TIMESTAMP_TYPE, you can upload timestamp(string type) as the original_value_name.
item_list.attribute_list.attribute_value_list.value_unitstringNokgUnit of attribute value (quantitative attribute only).
item_list.category_idint32YesID of category
item_list.imageobjectYesItem images
item_list.image.image_id_liststring[]YesID of image
item_list.image.image_ratiostringNoRatio of image, OptionalAllowed ratios : "1:1" (default) "3:4"; only applicable to whitelisted seller.
item_list.pre_orderobjectNoPre order setting
item_list.pre_order.is_pre_orderbooleanYesfalseWhether item is pre order
item_list.pre_order.days_to_shipint32No3The guaranteed days to ship orders. Please get the days_to_ship range from get_dts_limit api
item_list.item_skustringNoSKU tag of item
item_list.conditionstringNoNEWCondition of item, could be USED or NEW
item_list.wholesaleobject[]NoWholesale setting
item_list.wholesale.min_countint32Yes1Minimum count of this tier
item_list.wholesale.max_countint32Yes100Maximum count of this tier
item_list.wholesale.unit_pricefloatYes28.3Unit price of this tier
item_list.video_upload_idstring[]No["sg_f4bde9bc-ff3c-485e-a6dd-3161dab4b942_000000"]Video upload ID returned from video uploading API. Only accept one video_upload_id.
item_list.brandobjectNo
item_list.brand.brand_idint32Yes0Id of brand.
item_list.brand.original_brand_namestringYesnikeOriginal name of brand( No Brand if not brand).
item_list.item_dangerousint32No0This field is only applicable for local sellers in Indonesia and Malaysia. Use this field to identify whether a product is a dangerous product. 0 for non-dangerous product and 1 for dangerous product. For more information, please visit the market's respective Seller Education Hub.
item_list.tax_infoobjectNoTax information
item_list.tax_info.ncmstringNoMercosur Common Nomenclature, it is a convention between Mercosur member countries to easily recognize goods, services and productive factors negotiated among themselves. (BR region); NCM must have 8 digits, OR, if your item doesn't have a NCM enter the value "00"
item_list.tax_info.same_state_cfopstringNoTax Code of Operations and Installments for orders that seller and buyer are in the same state. It identifies a specific operation by category at the time of issuing the invoice.(BR region)
item_list.tax_info.diff_state_cfopstringNoTax Code of Operations and Installments for orders that seller and buyer are in different states. It identifies a specific operation by category at the time of issuing the invoice.(BR region)
item_list.tax_info.csosnstringNoCode of Operation Status – Simples Nacional, code for company operations to identify the origin of the goods and the taxation regime of the operations.(BR region)
item_list.tax_info.originstringNoProduct source, domestic or foreig (BR region).; |0 - National, except for those indicated in codes 3, 4, 5, and 8| |1 - Foreign: Direct import, except for that indicated in code 6| |2 - Foreign: Acquired in the domestic market, except for that indicated in code 7| |3 - National: Goods or products with Import Content greater than 40% and less than or equal to 70%| |4 - National: Produced in compliance with the basic production processes outlined in the legislations cited in the Agreements| |5 - National: Goods or products with Import Content less than or equal to 40%| |6 - Foreign: Direct import, without a national equivalent, listed by CAMEX and natural gas| |7 - Foreign: Acquired in the domestic market, without a national equivalent, listed by CAMEX and natural gas| |8 - National: Goods or products with Import Content greater than 70%|
item_list.tax_info.ceststringNoTax Replacement Specifying Code (CEST), to separate within the same NCM products that do or do not have ICMS tax substitution. (BR region) CEST must have 7 digits, OR, if your item doesn't have a CEST enter the value "00".
item_list.tax_info.measure_unitstringNo(BR region)
item_list.tax_info.tax_typeint32Notax_type only for TW whitelist shop. Shopee will referred Tax type when substitute sellers for issuing e-receipts to buyers. All variations share the same tax type. The meaning of value: 0: no tax type; 1: tax-able; 2: tax-free
item_list.tax_info.pisstringNoOnly for BR shop.; PIS - Programa de Integração Social (Social Integration Program). It is a government tax to collect resources for the payment of unemployment insurance and other employee related rights.; PIS % - the tax applied to this product
item_list.tax_info.cofinsstringNoOnly for BR shop.; COFINS – Contribuição para Financiamento da Seguridade Social (Contribution for Social Security Funding). It is a government tax to collect resources for public health system and social security.; COFINS % - the tax applied to this product
item_list.tax_info.icms_cststringNoOnly for BR shop.; ICMS - Imposto sobre Circulação de Mercadorias e Serviços (Circulation of Goods and Services Tax).; CST - Código da Situação Tributária (Tax Situation Code) is represented by a combination of 3 numbers with the purpose of demonstrating the origin of a product and determining the form of taxation that will apply to it. Therefore, each digit in the CST Table has a specific meaning: the first digit indicates the origin of the operation, the second digit represents the ICMS taxation on the operation and the third digit provides additional information about the form of taxation.
item_list.tax_info.pis_cofins_cststringNoOnly for BR shop.; The CST PIS/Cofins is a code on the Electronic Invoice (NF-e) that identifies the tax situation of PIS (Programa de Integração Social) and Cofins (Contribuição para o Financiamento da Seguridade Social) in sales of goods.
item_list.tax_info.federal_state_taxesstringNoOnly for BR shop.; Enter the total percentage of the combination of federal, state, and municipal taxes, using up to two decimals.
item_list.tax_info.operation_typestringNoOnly for BR shop.; 1: Retailer; 2: Manufacturer
item_list.tax_info.ex_tipistringNoOnly for BR shop.; The EXTIPI field in the NF-e (Nota Fiscal Eletrônica) is used to indicate if there's an exception to the IPI (Imposto sobre Produtos Industrializados) tax rate for a specific product.
item_list.tax_info.fci_numstringNoOnly for BR shop.; The FCI Control Number is a unique identifier assigned to each import FCI (Import Content Form). It's mandatory on the corresponding NF-e (electronic invoice) to ensure compliance with Brazilian import tax regulations.
item_list.tax_info.recopi_numstringNoOnly for BR shop.; RECOPI NACIONAL is a Brazilian government system that facilitates the registration and management of tax-exempt operations involving paper destined for printing books, newspapers, and periodicals (known as "papel imune" in Portuguese).
item_list.tax_info.additional_infostringNoOnly for BR shop.; Include relevant information to display on Invoice.
item_list.tax_info.group_item_infoobjectNoOnly for BR shop.; Required if the item is a group item.
item_list.tax_info.group_item_info.group_qtdstringNoExample: The package contains 6 soda cans. Whether you are selling a pack of 6 cans (fardo) or a single can (unit), enter 6.
item_list.tax_info.group_item_info.group_unitstringNoExample: The package contains 6 soda cans. Whether you are selling a pack of 6 cans (fardo) or a single can (unit), enter UNI for the individual can.
item_list.tax_info.group_item_info.group_unit_valuestringNoExample: The package contains 6 soda cans. Whether you are selling a pack of 6 cans (fardo) or a single can (unity), enter the value of the individual can.
item_list.tax_info.group_item_info.original_group_pricestringNoExample: The item is a package that contains 6 soda cans. Enter the price of the whole package.
item_list.tax_info.group_item_info.group_gtin_ssccstringNoExample: The item is a package that contains 6 soda cans. Please inform the GTIN SSCC code for the package.
item_list.tax_info.group_item_info.group_grai_gtin_ssccstringNoExample: The item is box, that contain 6 packages. Each package contains 6 soda cans. Please inform the GRAI GTIN SSCC code for the Box.
item_list.tax_info.export_cfopstringNo7101[BR region]; 7101 - for sales of self-produced goods; 7102 - resale of third-party goods
item_list.complaint_policyobjectNoComplaint Policy for item. Only required for local PL sellers, ignored otherwise.
item_list.complaint_policy.warranty_timestringNoValue should be in one of ONE_YEAR TWO_YEARS OVER_TWO_YEARS.
item_list.complaint_policy.exclude_entrepreneur_warrantybooleanNoWhether to exclude warranty complaints for entrepreneurs.If True means "I exclude warranty complaints for entrepreneur"
item_list.complaint_policy.complaint_address_idint64NoAddress for complaint. Fetch available addresses using v2.logistics.get_address_list, and use address_id returned from it.
item_list.complaint_policy.additional_informationstringNoAdditional information for warranty claim. Should be less than 1000 characters.
item_list.description_infoobjectNoNew 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_list.description_info.extended_descriptionobjectNoIf description_type is extended , Description information should be set by this field.
item_list.description_info.extended_description.field_listobject[]NoField of extended description.
item_list.description_info.extended_description.field_list.field_typestringNoType of extended description field :values: See Data Definition- description_field_type (text , image).
item_list.description_info.extended_description.field_list.textstringNoIf field_type is text, text information will be set by this field.
item_list.description_info.extended_description.field_list.image_infoobjectNoIf field_type is image,image url will be set by this field.
item_list.description_info.extended_description.field_list.image_info.image_idstringNoImage id.
item_list.description_typestringNoValues: See Data Definition- description_type (normal , extended). If you want to use extended_description, this field must be inputed
item_list.seller_stockobject[]Noseller stock(Please notice that stock(including Seller Stock and Shopee Stock) should be larger than or equal to real-time reserved stock)
item_list.seller_stock.location_idstringNolocation id
item_list.seller_stock.stockint32Yesstock
item_list.gtin_codestringNo- GTIN is an identifier for trade items, developed by the international organization GS1. - They have 8 to 14 digits. The most common are UPC, EAN, JAN and ISBN. - GTIN will help boost positioning in online marketing channels like Google and Facebook. - That incorporation with GTIN will also aid in Search and Recommendation in Shopee itself allowing buyers to have higher likelihood of finding one's listing.; Note: If you want to set “Item without GTIN”, please pass the gtin_code as "00". The validation rule is based on the value return in gtin_validation_rule" field in v2.product.get_item_limit API; - Mandatory: This field is required and must contain a correctly formatted GTiN number.; - Flexible: This field is required and must contain either a correctly formatted GTlN number or "00" to declare that the item/model has no valid GTlN. - Optional: This field is optional and can contain a correctly formatted GTiN number, "00" or be omitted entirely.
item_list.ds_cat_rcmd_idstringNocategory recommendation service id
item_list.promotion_imagesobjectNoPromotion Image Currently only allow one promoton image You could set promotion image only if the product images' ratio is 3:4
item_list.promotion_images.image_id_liststring[]NoPromotion Image
item_list.compatibility_infoobjectNo
item_list.compatibility_info.vehicle_info_listobject[]Yes
item_list.compatibility_info.vehicle_info_list.brand_idint64Yes1234ID of the brand.
item_list.compatibility_info.vehicle_info_list.model_idint64Yes2345ID of the model.
item_list.compatibility_info.vehicle_info_list.year_idint64No3456ID of the year.
item_list.compatibility_info.vehicle_info_list.version_idint64No4567ID of the version.
item_list.scheduled_publish_timetimestampNo1733590920Scheduled publish time of this item: 1) Can only set scheduled_publish_time for item with UNLIST status; 2) Can only set the time from current time +1hour to current time +90days, and the time is only allowed to be accurate to the minute
item_list.authorised_brand_idint64NoID of authorised reseller brand.
item_list.size_chart_infoobjectNo
item_list.size_chart_info.size_chartstringNoID of size chart image. If you want to remove the image size chart of the item, please pass the "size_chart" empty.; You only need to fill out either the image or template. If both are filled, only the template will be kept.; Notes: Both CB shops and local shops are supported to set "size_chart".
item_list.size_chart_info.size_chart_idint64NoID of template size chart. If you want to remove the template size chart of the item, please pass the "size_chart_id" as 0.; You only need to fill out either the image or template. If both are filled, only the template will be kept.; Notes: Only local shops are supported to set "size_chart_id", for CB shops please use "size_chart".
item_list.certification_infoobjectNoFor PH product certification input Required for some category and attribute option
item_list.certification_info.certification_listobject[]NoArray of certification records for the product, each containing type, certificate number, permit ID, and proof documents.
item_list.certification_info.certification_list.certification_nostringYesCertification No.
item_list.certification_info.certification_list.permit_idint64YesPermit ID, get from v2.product.get_product_certification_rule
item_list.certification_info.certification_list.expiry_dateint32No1610000000Expiry timestamp. Required for PH, but not needed for TW.
item_list.certification_info.certification_list.certification_proofsobject[]YesAn array of proof documents for the certification; each element represents one proof file.<path></path>
item_list.certification_info.certification_list.certification_proofs.file_namestringYesThe name of the uploaded certification proof file.
item_list.certification_info.certification_list.certification_proofs.image_idint32YesThe unique image ID of the certification proof, returned by the image upload API.
item_list.certification_info.certification_list.certification_proofs.ratiofloatYesimage weight/ image height Will be optional in the future; can input 0.75 by default
item_list.purchase_limit_infoobjectNopurchase limit info
item_list.purchase_limit_info.min_purchase_limitint32Nominimum purchase count for each order
item_list.purchase_limit_info.max_purchase_limitobjectNo
item_list.purchase_limit_info.max_purchase_limit.purchase_limitint32Nomaximum purchase limit for each order.
item_list.medicine_idint64No[Only for ID local sellers] as a unique identifier for each standardized medicine, the medicine id can only be obtained offline
#

§4 Response parameters

Response parameters

NameTypeRequiredSampleDescription
errorstringIndicate error type if hit error. Empty if no error happened.
messagestringIndicate error details if hit error. Empty if no error happened.
warningstringIndicate waring details if hit waring. Empty if no waring happened.
request_idstringThe identifier for an API request for error tracking.
responseobject
response.task_idint64The task ID of the batch add item task.
#

§5 Common parameters

Common parameters

NameTypeRequiredSampleDescription
partner_idint1Partner ID is assigned upon registration is successful. Required for all requests.
timestamptimestamp1610000000This is to indicate the timestamp of the request. Required for all requests. Expires in 5 minutes.
access_tokenstringc09222e3fc40ffb25fc947f738b1abf1The token for API access, using to identify your permission to the api. Valid for multiple use and expires in 4 hours.
shop_idint600000Shopee's unique identifier for a shop. Required param for most APIs.
signstringe318d3e932719916a9f9ebb57e2011961bd47abfa54a36e040d050d8931596e2Signature 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_list": [
		{
			"category_id": 100017,
			"item_name": "Example Item 1",
			"description": "Example item description 1",
			"item_sku": "SKU-001",
			"image": {
				"image_id_list": [
					"c54265d475b85e00ffb2404585e32b6f"
				]
			},
			"tier_variation": [
				{
					"name": "Color",
					"option_list": [
						{
							"option": "Red"
						},
						{
							"option": "Blue"
						}
					]
				}
			],
			"model_list": [
				{
					"model_sku": "SKU-001-RED",
					"original_price": 12.34,
					"seller_stock": [
						{
							"location_id": "SGZ",
							"stock": 100
						}
					],
					"tier_index": [
						0
					]
				},
				{
					"model_sku": "SKU-001-BLUE",
					"original_price": 13.34,
					"seller_stock": [
						{
							"location_id": "SGZ",
							"stock": 80
						}
					],
					"tier_index": [
						1
					]
				}
			],
			"weight": 1.2,
			"dimension": {
				"package_length": 10,
				"package_width": 8,
				"package_height": 5
			},
			"logistic_info": [
				{
					"logistic_id": 50001,
					"enabled": true
				}
			],
			"brand": {
				"brand_id": 0
			}
		},
		{
			"category_id": 100017,
			"item_name": "Example Item 2",
			"description": "Example item description 2",
			"item_sku": "SKU-002",
			"image": {
				"image_id_list": [
					"6fb33d484f232510b5f9b169f2758322"
				]
			},
			"tier_variation": [
				{
					"name": "Size",
					"option_list": [
						{
							"option": "M"
						},
						{
							"option": "L"
						}
					]
				}
			],
			"model_list": [
				{
					"model_sku": "SKU-002-M",
					"original_price": 15.99,
					"seller_stock": [
						{
							"location_id": "SGZ",
							"stock": 60
						}
					],
					"tier_index": [
						0
					]
				},
				{
					"model_sku": "SKU-002-L",
					"original_price": 16.99,
					"seller_stock": [
						{
							"location_id": "SGZ",
							"stock": 40
						}
					],
					"tier_index": [
						1
					]
				}
			],
			"weight": 1.5,
			"dimension": {
				"package_length": 12,
				"package_width": 9,
				"package_height": 6
			},
			"logistic_info": [
				{
					"logistic_id": 50001,
					"enabled": true
				}
			],
			"brand": {
				"brand_id": 0
			}
		}
	]
}
#

§8 Response sample

Response sample

#

§9 JSON

JSON

{
	"error": "",
	"message": "",
	"warning": "",
	"request_id": "f9f2c3d4e5f6a7b8",
	"response": {
		"task_id": 900000004
	}
}
#

§10 Error example

Error example

#

§11 JSON

JSON

{
    "error": "product.error_param",
    "message": "shop_id not found",
    "warning": "",
    "request_id": "e3e3e7f3549798db60beb2604da2f600"
}
#

§12 Common errors

Common errors

ErrorDescriptionSolution
error_authpartner_id is invalid
error_authThe App is deleted, and you'll be unable to make any API call.
error_authApp 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_paramThere is no partner_id in query.
error_paramInvalid partner_id.
error_paramno timestamp
error_paramInvalid timestamp
error_paramThere is no sign in query.
error_signWrong sign.
invalid_partner_idInvalid partner_id, please have a check.
error_authNo permission to current api.
error_api_call_restrictedThe 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_suspendedThe API is offline. Please call v2 API instead.
error_limitThe 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_limitToo many requests. You have reached the rate limit. Please try again later.
source_ip_undeclaredRequest Source IP ({ip}) is undeclared. Please declare all your IP addresses in the Shopee Open Platform Console > App list > IP Address Whitelist
error_paramPermission denied. This API is currently offline or the request path is incorrect.
error_paramPartner_id is invalid, should be an integer between 0 and 4294967295.
error_paramno timestamp.
error_paramTimestamp is invalid, should be an integer between 0 and 4294967295.
error_paramTimestamp is expired.
error_partner_key_expiredYour 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_permissionThis app type has no permission to this API.
error_paramThere is no access_token in query.
error_authInvalid access_token.
error_authInvalid partner_id or shopid.
shop_no_linkedPartner and shop has no linked.
shop_bannedThe shop account has been banned. Permissions for shop authorization and API calls have been suspended until the shop account is restored.
invalid_acceess_tokenInvalid access_token, please have a check.
partner_shop_no_linkInvalid partner_id or shop_id, please have a check.
error_ashop_api_permissionThe shop is Affiliate shop has no permission to call this API.
error_kyc_authNo permission. Please inform the seller to complete the Seller Registration on Shopee Seller Center first, then this shop can call for this API.
error_authSystem error, please try again later.
error_paramThere is no shop_id in query.
error_paramshop_id is invalid, should be an integer between 0 and 4294967295.
#

§13 Update log

Update log

DateChange
-New API
#