Product APIs

POSTCreate Product

Inserts new product data into the system.

POSThttps://api.catalogix.ai/v1/products
Inserts new product data into the system. Each product_code may appear only once in the request and may not be empty or 'unknown'. The request body may not exceed 10 MiB, otherwise it fails with 413. product_code and parent_code may contain only letters, digits, spaces, hyphens and underscores. Otherwise the whole request fails with 422. A product whose image columns repeat the same URL is not written and is reported in failed_products. Products that already exist in the store are skipped and returned in existing_product_codes.

Authorization

Authorizationstringrequiredheader
Bearer token, Bearer <token>. Create one under Tokens in your workspace.

Query parameters

store_uuidstringrequired
Example: 67762d4ce590324df813bd8c
ontologystring
Ontology (marketplace) the products are written to, e.g. SMP or amazon. For a catalogix-taxonomy store it must be enabled on the store's channels, or the request fails with 400. For a brand-taxonomy store with a brand set it must equal that brand, or the request fails with 400; with no brand set it is ignored and the brand taxonomy decides. If not provided, the store default is used: catalogix stores use SMP, brand stores use the store's brand, or the first marketplace of the brand taxonomy when no brand is set.
Example: SMP

Headers

X-Request-Idstring
Optional trace ID. If not provided, one is generated automatically

Body

application/json required

An array of objects. Each item:

parent_codestringrequired
product parent code
Example: CI001
Image URL 1string
Image URL 1. Image columns come from the marketplace image configuration.
Example: https://assets-test.catalogix.ai/dee9c181338099b931cde78787df567a
statusstringdefault: "new"
Product status to set. The value is stored as sent and is never reset to new by this API. Case and surrounding spaces are ignored. If omitted, an existing product keeps its current status and a new product starts as new.
Allowed: active new problem inactive draft under review
Example: inactive
product_codestringrequired
Unique identifier for the product (SKU code)
Example: CI001-BLU

Responses

200Insert successful
statusobjectrequired
Status of the operation
Fields
codeintegerrequired
Status code of the operation. 1 means success. -1 means failure. 0 means process moved to background
Example: 0
messagestringrequired
Message describing the status
Example: success
request_idstring
Unique trace ID for the request. Echoed from X-Request-Id header or auto-generated.
Example: 8c8b2b7e-23d7-4c2a-91b0-2a7c4dfbb312
dataobjectrequired
Information related to insertion of each products
Fields
store_uuidstringrequired
Unique identifier for the store
Example: 67762d4ce590324df813bd8c
failed_productsobject
Products that were not written, keyed by product_code. The value describes the failure: an object of attribute to error message (for example a rejected attribute value, or a duplicate image URL), or a plain message.
successful_product_codesstring[]
Products submitted for writing that were not reported as failed.
existing_product_codesstring[]
Products that already exist in the store. They are skipped, not updated; use PUT to update them.
400The store or ontology could not be resolved, for example the store does not exist, has no store taxonomy set, or the requested ontology is not enabled on it
statusstringdefault: "error"
The status of the request, typically 'error'
detailstringrequired
A description of the error
401Unauthorized – Bearer token missing or invalid
statusobject
Fields
codeinteger
Example: -1
messagestring
Example: Unauthorized – invalid or missing Bearer token
413More than 100 products in the request, or a request body over 10 MiB
statusstringdefault: "error"
The status of the request, typically 'error'
detailstringrequired
A description of the error
422Validation error: a malformed body, a missing or non-string product_code or parent_code, a blank or 'unknown' product_code, a special character in a code, a repeated product_code, or an invalid status
detailobject[]
Item fields
locstring | integer[]requireddefault: ["body",""]
msgstringrequireddefault: "Field Required"
typestringrequireddefault: "missing"
500Internal server error
statusobject
Fields
codeinteger
Example: -1
messagestring
Example: Internal server error. Please contact support@catalogix.ai
502Downstream service unavailable, for example when the marketplace image configuration cannot be fetched
statusstringdefault: "error"
The status of the request, typically 'error'
detailstringrequired
A description of the error

Something missing or unclear? Write to support@streamoid.com.

esc