Update product

Updates an existing product. Variants and options on the request are upserted by ID. Requires the PRODUCTS_WRITE scope.

PATCH https://api.pandabase.io/v2/core/stores/{storeId}/products/{productId}

Authentication

Requires a bearer token (sk_…) or an API key in the header Authorization.

Path parameters

storeId string required

(length 12–48)

productId string required

(length 12–48)

Header parameters

idempotency-key string

(length 8–32)

Body parameters

title string

(length 1–256)

subtitle string or null

No description.

description string or null

No description.

productType enum

No description.

price integer

(range 0–∞)

compareAtPrice integer or null

No description.

images array of string

No description.

message string or null

No description.

inStock boolean

No description.

fulfillmentMode enum or null

No description.

pricingModel enum

No description.

status enum

No description.

minimumPrice integer or null

No description.

maxPerCustomer integer or null

No description.

availableFrom date-time or null

No description.

availableUntil date-time or null

No description.

downloadUrl string or null

No description.

redirectUrl string or null

No description.

keyFormat enum or null

No description.

customPrefix string or null

No description.

maxActivations integer or null

No description.

licenseDuration enum or null

No description.

revokeOnRefund boolean

No description.

lowStockThreshold integer or null

No description.

webhookUrl string or null

No description.

webhookSecret string or null

No description.

billingInterval enum or null

No description.

billingAnchor enum or null

No description.

trialDays integer or null

No description.

licenseKeys array of string

No description.

variants array of object

No description.

options array of object

No description.

categoryIds array of string

No description.

Response 200

Default Response

ok enum required

(one of true)

data object required

No description.

Response 400

Default Response

ok enum required

(one of false)

error string required

No description.

Request
curl -X PATCH https://api.pandabase.io/v2/core/stores/:storeId/products/:productId \  -H "Content-Type: application/json" \  -d '{"title":"string","subtitle":"string","description":"string","productType":"SUBSCRIPTION","price":0,"compareAtPrice":0,"images":["string"],"message":"string","inStock":true,"fulfillmentMode":"MANAGED_LICENSE","pricingModel":"STANDARD","status":"DRAFT","minimumPrice":0,"maxPerCustomer":0,"availableFrom":"2024-01-01T00:00:00Z","availableUntil":"2024-01-01T00:00:00Z","downloadUrl":"string","redirectUrl":"string","keyFormat":"ALPHANUMERIC","customPrefix":"string","maxActivations":0,"licenseDuration":"THIRTY_DAYS","revokeOnRefund":true,"lowStockThreshold":0,"webhookUrl":"string","webhookSecret":"string","billingInterval":"WEEKLY","billingAnchor":"IMMEDIATELY","trialDays":0,"licenseKeys":["string"],"variants":[{"id":"string","title":"string","slug":"string","description":"string","sku":"string","options":null,"price":0,"compareAtPrice":0,"images":["string"],"inStock":true,"quantity":0,"trackStock":true,"position":0}],"options":[{"name":"string","values":["string"],"position":0}],"categoryIds":["string"]}'
Response
{  "ok": true,  "data": {    "id": "prd_8h4t6sqzy3x9w5n2k1m0vqbf",    "title": "Pro Plan",    "subtitle": "Everything you need to ship",    "description": "Full access to the platform. Unlimited stores, no transaction caps.",    "handle": "pro-plan",    "price": 2900,    "compareAtPrice": 4900,    "images": [      "https://cdn.pandabase.io/products/img_xxx.jpg"    ],    "inStock": true,    "currency": "USD",    "productType": "DIGITAL",    "fulfillmentMode": "LICENSE_POOL",    "pricingModel": "STANDARD",    "status": "ACTIVE",    "minimumPrice": null,    "maxPerCustomer": null,    "availableFrom": null,    "availableUntil": null,    "revokeOnRefund": true,    "options": [],    "variants": [],    "categories": []  }}