Create a new product or update an existing one (upsert).
If external_id is provided and already exists for this site, the product is updated. Otherwise a new product is created.
The sync_hash field enables delta updates: if the hash matches the existing product’s hash, re-embedding is skipped (only metadata like price/availability is updated).
Documentation Index
Fetch the complete documentation index at: https://docs.big-panda.ai/llms.txt
Use this file to discover all available pages before exploring further.
API-Token aus dem Big-Panda-Admin-UI unter Einstellungen → API-Keys. Header: Authorization: Bearer <token>.
Site to push the product to (UUID or slug)
Payload for creating/upserting a product.
If external_id is provided and already exists for this site, the product is updated (upsert). Otherwise a new product is created.
Embedding texts are optional — if provided, they are used directly for embedding generation. If omitted, the system generates them from title + description/properties/attributes.
12 - 5200100GTIN/EAN barcode
502003500 <= x <= 5x >= 0external_id of the parent product (for variants)
True for concrete variants (children of a parent).
True for abstract parent/master products that have variant children. Excluded from search when the tenant runs with variant_strategy=children_only.
Anchor text for the centroid_similar.py 'find related' path. Connector typically composes this from a small, stable set of attributes (e.g. perfume: 'Duft + Saison').
Alternative spellings / synonyms / JTL-Suchbegriffe. Boosts BM25-matches without affecting semantic search.
Pre-assembled text for description embedding. If omitted, generated from title + description.
Pre-assembled text for properties embedding. If omitted, generated from title + properties.
Pre-assembled text for attributes embedding. If omitted, generated from title + attributes.
Hash of the source data. If unchanged from last sync, skip re-embedding.
64Successful Response
Product data returned in API responses.
^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$^(?!^[-+.]*$)[+-]?0*\d*\.?\d*$