Skip to content
Developers
Pilot. The API is open to a small number of organisations and may change — every change is in the changelog.

Reference · Products

Change prices

POST/v1/sites/{siteId}/products/prices

Sets the price of up to 500 products at once. All change together, or none do. Price books that follow a product's price are updated with it.

Needs Catalogue: writeChanges live data

Path

  • siteIdrequired

    The site, from GET /v1/sites.

    string

Headers

  • Authorizationrequired

    An API key from Automation > Access in the Dnero portal, sent as Authorization: Bearer <key>.

    string

  • Idempotency-Key

    A value you choose, unique to what this request creates: a UUID, or your own id for it. Sending it again with the same body returns the first response and creates nothing more. Required.

    string · at most 255 characters

Body

  • changesrequired

    The products to reprice, up to 500 at once. All change, or none do.

    array of objects · at least 1 · at most 500

    2 fields in each
    • coderequired

      The product's code.

      string

    • pricerequired

      Its new price, in minor units.

      integer · ≥ 0

Responses

200 OK

  • datarequired

    The records, in a stable order.

    array of objects

    23 fields in each
    • activerequired

      False for a retired product, which is listed only with includeInactive.

      boolean

    • availablerequired

      False while it is sold out.

      boolean

    • barcodesrequired

      Its barcodes.

      array of string

    • childrenrequired

      For a product, its modifier groups. For a modifier group, its options. Empty otherwise.

      array of objects

      4 fields in each
      • coderequired

        The child product's code.

        string

      • defaultQty

        How many of this child come by default.

        integer

      • maxQty

        The most of this child that may be chosen.

        integer

      • minQty

        The fewest of this child that may be chosen.

        integer

    • coderequired

      The product's code, the same at every site that has it.

      string

    • namerequired

      The product's name in the portal and reports.

      string

    • pricerequired

      The price, in the site's currency's minor units: 450 is $4.50.

      integer

    • soldIndividuallyrequired

      Whether it can be ordered on its own. False for a modifier or an ingredient.

      boolean

    • taxCodesrequired

      The taxes it is charged with, by code.

      array of string

    • typerequired

      What 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"

    • categoryCode

      The category it is in, by code.

      string

    • costPrice

      What it costs to buy or make, in minor units. For reporting; never what a customer pays.

      integer

    • courseCode

      The course it goes to the kitchen with, by code.

      string

    • description

      The product's description.

      string

    • displayName

      The name customers see, when it differs from name.

      string

    • imageUrl

      Its picture.

      string · uri

    • maxChoices

      For a modifier group: the most options a customer may choose.

      integer

    • minChoices

      For a modifier group: the fewest options a customer must choose.

      integer

    • printName

      The name printed on kitchen dockets and receipts.

      string

    • reportGroupCode

      The reporting group it is counted in, by code.

      string

    • sku

      Your stock-keeping unit for it.

      string

    • soldOutUntil

      When 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

    • updatedAt

      When the product last changed.

      string · date-time

  • nextCursor

    Pass as cursor to get the next page. Absent on the last page.

    string