Create product

Creates a new product on the store. Subscription products require a billing interval. Requires the PRODUCTS_WRITE scope.

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

Authentication

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

Path parameters

storeId string required

(length 12–48)

Header parameters

idempotency-key string

(length 8–32)

Body parameters

title string required

(length 1–256)

subtitle string default:

(length 0–512, defaults to “)

description string default:

(length 0–10000, defaults to “)

productType enum required

No description.

price integer required

(range 0–∞)

compareAtPrice integer

(range 0–∞)

images array of string

No description.

message string

(length 0–1000)

fulfillmentMode enum

No description.

pricingModel enum

No description.

status enum

No description.

minimumPrice integer

(range 0–∞)

maxPerCustomer integer

(range 1–∞)

availableFrom date-time

(format date-time)

availableUntil date-time

(format date-time)

downloadUrl string

(length 0–2048)

redirectUrl string

(length 0–2048)

keyFormat enum

No description.

customPrefix string

(length 0–32)

maxActivations integer

(range 1–∞)

licenseDuration enum

No description.

revokeOnRefund boolean default: false

(defaults to false)

lowStockThreshold integer

(range 0–∞)

webhookUrl string

(length 0–2048)

webhookSecret string

(length 0–256)

billingInterval enum

No description.

billingAnchor enum

No description.

trialDays integer

(range 0–∞)

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 201

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 POST https://api.pandabase.io/v2/core/stores/:storeId/products/ \  -H "Content-Type: application/json" \  -d '{"title":"string","subtitle":"","description":"","productType":"SUBSCRIPTION","price":0,"compareAtPrice":0,"images":["string"],"message":"string","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":false,"lowStockThreshold":0,"webhookUrl":"string","webhookSecret":"string","billingInterval":"WEEKLY","billingAnchor":"IMMEDIATELY","trialDays":0,"licenseKeys":["string"],"variants":[{"title":"string","slug":"string","description":"string","sku":"string","options":null,"price":0,"compareAtPrice":0,"images":["string"],"inStock":true,"quantity":0,"trackStock":false,"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": []  }}