For the complete documentation index, see llms.txt. This page is also available as Markdown.

[PUT] Update product

* Authentication

Required Authorization

Limit throttle: 30,1

Endpoint [PUT] - /shop-api/pre-order/products/update

Headers

Header
Required
Description

Authorization

Yes

Shop public API key Bearer token

Content-Type

Yes

application/json


1. Request Payload

Field
Type
Required
Description

products

array

Yes

Product lines to update (min 1)

products.*.id

integer | string

Yes

Product line DB ID (from List Products)

products.*.product_id

integer | string

Yes

Shopify product ID

products.*.variant_id

integer | string

Yes

Shopify variant ID

products.*.profile_id

integer | string

Yes

Target offer ID

products.*.limit

number | string | null

No

Unit limit; null / "" = unlimited

products.*.end_quantity

number | string | null

No

End quantity; null / "" clears it

Example


2. Success Response 200

If every line was unchanged or not found:


3. Response Keys & Fields

Top-level

Key
Type
Description

success

boolean

true when the request completes successfully

message

string

"Products updated"

changed_line_ids

array

Product line ids that were actually modified

Request field reference

Field
Type
Description

id

integer

Internal product-line ID (not Shopify ID)

product_id

integer

Shopify product ID

variant_id

integer

Shopify variant ID

profile_id

integer

Offer (profile) ID to assign

limit

number | null

Max pre-order units; null = unlimited

end_quantity

number | null

Inventory end-quantity threshold

Side effects

Change
Side effect

limit changed

updateRemainingUnitsMetafield job

end_quantity changed

updateEndQuantityVariantsMetafield job

profile_id changed

Profiles metafield refresh; possible selling-plan variant add/remove


4. Failed Response

Validation error — HTTP 200

Unexpected server error — HTTP 200

Last updated

Was this helpful?