Products

Upsert a product

Create a new product or update the existing one whose externalId matches the body. Embeddings for the product's searchable text are generated and persisted as part of the call, so the product becomes searchable immediately after a successful response. Required fields: externalId, name. Optional: description, price (in cents), priceMin / priceMax, stockStatus (in_stock | out_of_stock | limited), images (array of URLs), brand, category, attributes (key/value). Workspaces with native Shopify / WooCommerce sync should normally rely on the plugin rather than calling this endpoint directly. Idempotent on externalId.

post/products

Request

  • Base URL: https://api.savanto.ai
  • URL: https://api.savanto.ai/products
  • Auth: HTTP bearer

Request body

idstring required
namestring required
contentstring
searchableTextstring
excerptstring
pricenumber nullable
salePricenumber nullable
regularPricenumber nullable
onSaleboolean
priceMinnumber nullable
priceMaxnumber nullable
stockQuantitynumber nullable
stockStatus'instock' | 'outofstock' | 'onbackorder'
skustring
type'simple' | 'variable' | 'grouped' | 'external'
weightnumber nullable
ratingnumber nullable
reviewCountnumber
categoriesstring[]
tagsstring[]
brandsstring[]
imagestring nullable
urlstring
statusstring
visibilitystring
featuredboolean
virtualboolean
downloadableboolean
attributesobject nullable
metadataobject
sourcestring
indexStatus'active' | 'hidden' | 'disabled'

Response

Product upserted successfully

object'product' required
requestIdstring required

Changes

No recorded changes to this operation across all 1 revision of this API.