Update a product

Same rules as bulkupdate, for a single product object. Only reference is required.

Empty values

A field sent as null is treated as absent and left unchanged, except noveltyAlertDate and preorder_date (see below).

How to clear a value:

FieldSendEffect
subtitle, description, model""Empties the field
discountedprice0Removes the discounted price
discountbegin + discountend"@0" for bothRemoves the discount period
label1.id / label2.id0Removes the label
label1 / label2 begin + end"@0" for bothRemoves the label period
noveltyAlertDate, preorder_datenullDisables novelty / pre-order
eligible_carriers, cms_page, cross_sells, gammes[]Removes every link
attributesvalue_code suffixed with -deleteUnlinks that attribute value ([] removes nothing)

Rejected when empty ("", or [] / {} for collections): title, site, season, department, collection, width, height, length, weight, provider, type, brand, carrier, noveltyAlertDate, preorder_date, gallery, parcel, inventory, pricing_matrix, association, translations (and any empty string inside a translation), batch_contents for a batch type.

Do not send an empty string to a numeric or 0/1 field (price, buyingprice, ecotax, packing, visible, dispo_mag, click_and_collect, click_and_go, e_reservation, backInStock, allowed_relay_point, allowed_restocking, unlimited_stock, return_paid, ship_from_store, flag_redirection, robot_index, robot_follow, fdp_offert): it is currently stored as 0 / non (e.g. visible: "" hides the product, buyingprice: "" sets the selling price to 0). Send the explicit value instead, or omit the field. Likewise an empty discountbegin, discountend or label begin / end is stored as the current date, not cleared.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Body Params
string
required
length ≤ 40
string
length ≤ 100
string
length ≤ 200

Send "" to empty it

string

Send "" to empty it. Allows HTML tags: <b>, <i>, <u>, <br>, used without attributes. Malformed markup, or an HTML attribute carrying an inline JavaScript event handler (onclick, onerror, onload, etc.), is rejected with PDT0072 (PDT0189 for a translations entry).

integer

Season id from /seasons/get

string
^(00P|[HPEA][0-9]{2})$

00P (permanent) or season letter (H, P, E, A) followed by 2-digit year

integer

Department id from /departments/get

string
enum
Allowed:
number

cm

number

cm

number

cm

number

kg

number

Purchase price

number

Selling price, VAT included. Must be greater than price

number

Send 0 to remove the discounted price

date-time

Must be sent with discountend. Send "@0" for both to remove the discount period (an empty string is stored as the current date)

date-time

Must be sent with discountbegin. Send "@0" for both to remove the discount period (an empty string is stored as the current date)

number
number
integer
enum
Allowed:
integer
enum
Allowed:
integer
integer

Brand id

integer
enum
Allowed:
integer
enum
Allowed:
integer
enum
Allowed:
integer
enum
Allowed:
integer
enum
Allowed:
integer
enum
Allowed:
integer
enum
Allowed:
integer
enum
Allowed:
integer
enum
Allowed:
integer
enum
Allowed:
inventory
array of objects

EAN variants (color/size combinations). Can only be updated if the product has never been put online.

inventory
attributes
array of objects

Adds or repositions attribute values; values not listed are kept. To unlink a value, suffix its value_code with -delete. An empty array removes nothing.

attributes
ranking
object

Department ranking: {"1":{"department_id":"10","position":"1"}}

custom_data
array of objects

List of custom data values to attach/update/detach for this product. Supports SIMPLE, GROUP and UNLINK modes. For a predefined-values custom data you may send either values (exact predefined strings) or valuesCode (integer predefined IDs), but not both simultaneously. See ProductCustomDataItem in components.schemas for the full contract and validation rules (CD0023, CD0025, CD0040, CD0041, CD0042, CD0067, CD0069, CD0078, CD0083, CD0084, CD0085, CD0086, CD0087, CD0088, CD0089, CD0090, CD0094, CD0095, CD0096).

custom_data
pricing_matrix
array of objects
pricing_matrix
string
enum
Allowed:
string
length ≤ 50

Send "" to empty it

date-time | null

Format (YYYY-MM-DD HH:II:SS). Send null to disable pre-order; an empty string is rejected

date-time | null

Format (YYYY-MM-DD HH:II:SS). Send null to disable the novelty alert; an empty string is rejected

translations
object

Translations keyed by language code (e.g. 'fr', 'en', 'es'). The language code must exist in supportedLanguages.

integer

VAT id. When provided, updates the product VAT and its VAT grid (grid of this VAT, or the site default grid) and is used to compute excl. VAT prices of this call

integer
enum

Free shipping

Allowed:
integer
enum

Available in store

Allowed:
integer
enum

Back in stock alert enabled

Allowed:
integer
enum
Allowed:
integer

Number of pieces per parcel

parcel
array of objects
parcel
integer

Carrier id

eligible_carriers
array of objects

Replaces the eligible carriers. Send [] to remove them all

eligible_carriers
integer

Provider id

uri

Product PDF. Enables the PDF when set. An empty string does not disable the PDF

label1
object

Round label

label2
object

Rectangular label

cms_page
array of objects

Replaces the CMS pages linked to the product. Send [] to remove them all

cms_page
gammes
array of objects

Replaces the gammes linked to the product. Send [] to remove them all

gammes
batch_contents
array of objects

Required when type is batch_similar or batch_distinct

batch_contents
association
array of objects

Replaces the associated products

association
string

Reference of the parent product (main site)

string

Can be used instead of site to target a sub-site by its URL

cross_sells
array of objects

Replaces all the cross-sells linked to the product. Send [] to remove them all

cross_sells
Responses

Language
Credentials
Bearer
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json