Reference · Products
Update a product
/v1/sites/{siteId}/products/{code}Changes a product, modifier group or modifier: its names, price, category, taxes, or whether it is retired. Only the fields sent change. A product is never deleted: retire it with active false.
Path
siteIdrequiredThe site, from GET /v1/sites.
string
coderequiredThe record's code.
string
Headers
AuthorizationrequiredAn API key from Automation > Access in the Dnero portal, sent as
Authorization: Bearer <key>.string
Body
activeFalse to retire it, true to bring it back. A retired product is kept, so past orders and reports that name it are unaffected.
boolean
categoryCodeMove it to this category, by code.
string
costPriceA new cost price, in minor units.
integer · ≥ 0
descriptionA new description. An empty string clears it.
string · at most 2000 characters
displayNameA new customer-facing name.
string · 1–200 characters
nameA new name. A print name that only repeated the old name follows it.
string · 1–200 characters
priceA new price, in minor units.
integer · ≥ 0
printNameA new name for dockets and receipts.
string · 1–200 characters
reportGroupCodeCount it in this reporting group, by code.
string
skuA new SKU. An empty string clears it.
string · at most 100 characters
soldIndividuallyWhether it can be ordered on its own.
boolean
taxCodesReplaces its taxes, by code. Send an empty array to clear them; leave it out to keep them.
array of string
Responses
- bad_requestinvalid_cursoridempotency_key_required
- missing_keyinvalid_keykey_expired+1 more
- key_revokedassistant_keykey_without_access+7 more
- site_not_foundnot_found
- idempotency_key_reusedrequest_in_progress
- invalid_requestnot_a_modifier_group
- rate_limited
- server_error
- upstream_unavailable
200 OK
activerequiredFalse for a retired product, which is listed only with includeInactive.
boolean
availablerequiredFalse while it is sold out.
boolean
barcodesrequiredIts barcodes.
array of string
childrenrequiredFor a product, its modifier groups. For a modifier group, its options. Empty otherwise.
array of objects
4 fields in each
coderequiredThe child product's code.
string
defaultQtyHow many of this child come by default.
integer
maxQtyThe most of this child that may be chosen.
integer
minQtyThe fewest of this child that may be chosen.
integer
coderequiredThe product's code, the same at every site that has it.
string
namerequiredThe product's name in the portal and reports.
string
pricerequiredThe price, in the site's currency's minor units: 450 is $4.50.
integer
soldIndividuallyrequiredWhether it can be ordered on its own. False for a modifier or an ingredient.
boolean
taxCodesrequiredThe taxes it is charged with, by code.
array of string
typerequiredWhat it is. product is sold on its own. A modifierGroup is a choice on a product, such as Milk; its children are the options. A modifier is one option, such as Oat milk.
string · one of "product", "modifierGroup", "modifier", "inventory", "combo"
categoryCodeThe category it is in, by code.
string
costPriceWhat it costs to buy or make, in minor units. For reporting; never what a customer pays.
integer
courseCodeThe course it goes to the kitchen with, by code.
string
descriptionThe product's description.
string
displayNameThe name customers see, when it differs from name.
string
imageUrlIts picture.
string · uri
maxChoicesFor a modifier group: the most options a customer may choose.
integer
minChoicesFor a modifier group: the fewest options a customer must choose.
integer
printNameThe name printed on kitchen dockets and receipts.
string
reportGroupCodeThe reporting group it is counted in, by code.
string
skuYour stock-keeping unit for it.
string
soldOutUntilWhen a sold-out product comes back on its own. Absent when it is not sold out, or is sold out until someone says otherwise.
string · date-time
updatedAtWhen the product last changed.
string · date-time