For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
DocumentationAPI Reference
DocumentationAPI Reference
  • API Reference
      • POSTMerge Variants
      • GETGet Product
      • DELDelete Product Bundle
      • PATCHUpdate Product
      • GETGet Taxonomies
      • GETGet Products
      • POSTCreate Product
      • GETGet Product Variants
      • POSTAdd Product Variants
      • PATCHUpdate Product Variants
      • POSTMove Variants to New Product
      • GETGet Packaging Requirement
      • GETGet Taxonomy by ID
      • GETGet Taxonomy Parent
      • POSTMove Variants Between Products
      • POSTConvert Variant to Bundle
LogoLogo
API ReferenceProducts

Update Product Variants

||View as Markdown|
PATCH
https://sandbox-api.shipbob.com/2026-01/product/:productId/variants
PATCH
/2026-01/product/:productId/variants
$curl -X PATCH https://sandbox-api.shipbob.com/2026-01/product/1/variants \
> -H "Authorization: Bearer <token>" \
> -H "Content-Type: application/json" \
> -d '{
> "additional_hazmat_attributes": {
> "charge_state_percentage": 0.1,
> "container_metal": true,
> "container_type": "string",
> "lithium_battery_packaging": "string",
> "lithium_battery_type": "string",
> "magnet": true,
> "net_volume": 0.1,
> "net_weight": 0.1
> },
> "barcodes": [
> {
> "sticker_url": "string",
> "value": "string"
> }
> ],
> "bundle_definition": [
> {
> "quantity": 0,
> "variant_id": 0
> }
> ],
> "channel_metadata": [
> {
> "asin": "string",
> "fnsku": "string",
> "fulfillment_channel": "string",
> "channel_id": 0,
> "channel_name": "string",
> "currency": "string",
> "id": 0,
> "is_inventory_sync_enabled": true,
> "legacy_product_id": 0,
> "platform": "string",
> "platform_identifier": "string",
> "platform_inventory_item_id": "string",
> "price": 0.1,
> "seller_sku": "string"
> }
> ],
> "customs": {
> "country_code_of_origin": "string",
> "currency": "string",
> "description": "string",
> "hs_tariff_code": "string",
> "is321_eligible": true,
> "value": 0
> },
> "dimension": {
> "height": 0.1,
> "length": 0.1,
> "width": 0.1
> },
> "fulfillment_settings": {
> "dangerous_goods": true,
> "is_bpm_parcel": true,
> "is_case_pick": true,
> "msds_url": "string",
> "requires_prop65": true,
> "serial_scan": {
> "exact_character_length": 0,
> "is_enabled": true,
> "prefix": "string",
> "suffix": "string"
> }
> },
> "gtin": "string",
> "id": 0,
> "is_digital": true,
> "lot_information": {
> "is_lot": true,
> "minimum_shelf_life_days": 0
> },
> "name": "string",
> "packaging_material_type_id": 0,
> "packaging_requirement_id": 0,
> "return_preferences": {
> "backup_action_id": 0,
> "instructions": "string",
> "primary_action_id": 0,
> "return_to_sender_backup_action_id": 0,
> "return_to_sender_primary_action_id": 0
> },
> "reviews_pending": [
> 0
> ],
> "sku": "string",
> "status": 1,
> "upc": "string",
> "weight": 0.1
>}'
200default
1[
2 {
3 "additional_hazmat_attributes": {
4 "charge_state_percentage": 0.1,
5 "container_metal": true,
6 "container_type": "string",
7 "lithium_battery_packaging": "string",
8 "lithium_battery_type": "string",
9 "magnet": true,
10 "net_volume": 0.1,
11 "net_weight": 0.1
12 },
13 "associated_bundles": [
14 {
15 "product_id": 0,
16 "product_name": "string",
17 "quantity": 0,
18 "variant_id": 0,
19 "variant_sku": "string"
20 }
21 ],
22 "barcodes": [
23 {
24 "sticker_url": "string",
25 "value": "string"
26 }
27 ],
28 "bundle_definition": [
29 {
30 "product_id": 0,
31 "quantity": 0,
32 "variant_id": 0,
33 "variant_name": "string",
34 "variant_sku": "string"
35 }
36 ],
37 "channel_metadata": [
38 {
39 "channel_id": 0,
40 "channel_name": "string",
41 "currency": "string",
42 "id": 0,
43 "is_inventory_sync_enabled": true,
44 "legacy_product_id": 0,
45 "platform": "string",
46 "platform_identifier": "string",
47 "platform_inventory_item_id": "string",
48 "price": 0.1,
49 "seller_sku": "string"
50 }
51 ],
52 "created_on": "2019-08-24T14:15:22+00:00",
53 "customs": {
54 "country_code_of_origin": "string",
55 "currency": "string",
56 "description": "string",
57 "hs_tariff_code": "string",
58 "is321_eligible": true,
59 "value": 0
60 },
61 "dimension": {
62 "height": 0.1,
63 "is_locked": true,
64 "length": 0.1,
65 "source": "string",
66 "unit": "string",
67 "width": 0.1
68 },
69 "fulfillment_settings": {
70 "dangerous_goods": true,
71 "is_bpm_parcel": true,
72 "is_case_pick": true,
73 "msds_url": "string",
74 "requires_prop65": true,
75 "serial_scan": {
76 "exact_character_length": 0,
77 "is_enabled": true,
78 "prefix": "string",
79 "suffix": "string"
80 }
81 },
82 "gtin": "string",
83 "id": 0,
84 "inventory": {
85 "inventory_id": 0,
86 "on_hand_qty": 0
87 },
88 "is_digital": true,
89 "is_image_uploaded": true,
90 "lot_information": {
91 "is_lot": true,
92 "minimum_shelf_life_days": 0
93 },
94 "merge_children": [
95 {
96 "channel_ids": [
97 0
98 ],
99 "completed_at": "2019-08-24T14:15:22+00:00",
100 "inventory_id": 0,
101 "variant_id": 0,
102 "variant_name": "string"
103 }
104 ],
105 "name": "string",
106 "packaging_material_type": {
107 "id": 0,
108 "name": "string"
109 },
110 "packaging_requirement": {
111 "id": 0,
112 "name": "string"
113 },
114 "return_preferences": {
115 "backup_action": {
116 "id": 0,
117 "name": "string"
118 },
119 "instructions": "string",
120 "primary_action": {
121 "id": 0,
122 "name": "string"
123 },
124 "return_to_sender_backup_action": {
125 "id": 0,
126 "name": "string"
127 },
128 "return_to_sender_primary_action": {
129 "id": 0,
130 "name": "string"
131 }
132 },
133 "reviews_pending": [
134 "string"
135 ],
136 "sku": "string",
137 "status": "string",
138 "upc": "string",
139 "updated_on": "2019-08-24T14:15:22+00:00",
140 "weight": {
141 "unit": "string",
142 "weight": 0.1
143 }
144 }
145]
Updates one or more product variants. The request body must be an array of variant objects. Each variant must include the variant ID, and only the fields provided will be updated.
Was this page helpful?
Previous

Add Product Variants

Next

Move Variants to New Product

Built with

Authentication

AuthorizationBearer

Authentication using Personal Access Token (PAT) token

OR
AuthorizationBearer
OAuth2 authentication using JWT tokens

Path parameters

productIdlongRequired

Request

additional_hazmat_attributesobjectOptional
barcodeslist of objectsOptional
bundle_definitionlist of objectsOptional
channel_metadatalist of objectsOptional
customsobjectOptional
dimensionobjectOptional
fulfillment_settingsobjectOptional
gtinstringOptional
idlongOptional
is_digitalbooleanOptional
lot_informationobjectOptional
namestringOptional
packaging_material_type_idintegerOptional
packaging_requirement_idintegerOptional
return_preferencesobjectOptional
reviews_pendinglist of enumsOptional
Allowed values:
skustringOptional
statusenumOptional
Allowed values:
upcstringOptional
weightdoubleOptional

Response

Success
additional_hazmat_attributesobject
Additional hazardous materials attributes for lithium batteries and dangerous goods
associated_bundleslist of objects
List of bundle products that include this variant as a component
barcodeslist of objects

List of barcodes associated with this variant (UPC, EAN, etc.)

bundle_definitionlist of objects
If this variant is a bundle, defines which variants and quantities make up the bundle
channel_metadatalist of objects

Platform-specific metadata for sales channels (e.g., Amazon ASIN, Shopify product IDs)

created_ondatetime
Timestamp when the variant was created
customsobject

Customs and international shipping information (tariff codes, country of origin, declared value)

dimensionobject

Physical dimensions of the variant (length, width, height)

fulfillment_settingsobject

Fulfillment-specific settings (Prop 65, dangerous goods, serial scanning, case pick)

gtinstring

Global Trade Item Number - standardized product identifier

idlong
Unique identifier for the variant
inventoryobject

Current inventory information including on-hand quantity

is_digitalboolean

Flag indicating whether this is a digital product (no physical fulfillment)

is_image_uploadedboolean
Flag indicating whether a product image has been uploaded for this variant
lot_informationobject
Lot tracking settings including whether lot tracking is enabled and minimum shelf life requirements
merge_childrenlist of objects
List of variants that have been merged into this variant
namestring
Variant name or descriptor
packaging_material_typeobject

Type of packaging material used for this variant (ID and name)

packaging_requirementobject

Special packaging requirements for this variant (ID and name)

return_preferencesobject
Customer return handling preferences including primary and backup actions
reviews_pendinglist of strings

List of pending review types for this variant (e.g., compliance checks, quality reviews)

skustring

Stock Keeping Unit - unique identifier for the variant used in inventory management

statusstring

Current status of the variant (e.g., ‘Active’, ‘Inactive’)

upcstring

Universal Product Code - 12-digit barcode identifier

updated_ondatetime
Timestamp when the variant was last updated
weightobject
Weight of the variant including unit of measure