Pre-launch API. The concepts described here are settled, but the API shape is not: request and response fields, parameters and defaults can still change. Build against it, and talk to your Luigi's Box contact before you put an integration into production.
const url = 'https://api.eu1.luigisbox.ai/platform/v1/channels';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"attribute_aliases":{"additionalProperty":"example"},"catalog_id":"example","name":"example","visibility_filter":{"$and":[{"brand":{"in":["nike","adidas"]}},{"lbx:price":{"gte":50,"lte":200}},{"$or":[{"condition":{"eq":"new"}},{"warranty_months":{"gte":12}}]},{"$not":{"material":{"eq":"leather"}}},{"image":{"exists":true}}]}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.eu1.luigisbox.ai/platform/v1/channels \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "attribute_aliases": { "additionalProperty": "example" }, "catalog_id": "example", "name": "example", "visibility_filter": { "$and": [ { "brand": { "in": [ "nike", "adidas" ] } }, { "lbx:price": { "gte": 50, "lte": 200 } }, { "$or": [ { "condition": { "eq": "new" } }, { "warranty_months": { "gte": 12 } } ] }, { "$not": { "material": { "eq": "leather" } } }, { "image": { "exists": true } } ] } }'A create is not scoped by the identifiers in its body: unlike the listing, it requires a grant spanning every organization.
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ”object
Channel-facing name (key) bound to a catalog field (value), e.g. {"product_name": "title"}. A request naming product_name resolves to catalog title and the response comes back keyed product_name, while the catalog field stays addressable under its own name. A key is checked against the catalog’s fields only as it is written: should the catalog later gain a field of that name, that field takes the name back and the alias stops taking effect. See Attribute aliases for the full contract.
object
A filter tree in group syntax: a boolean operator over leaves and nested groups.
not holds exactly one child. An empty and constrains nothing and an
empty or matches nothing; each endpoint says whether it accepts either.
object
Leaf conditions and nested groups.
One leaf of a group-syntax tree: a field compared against a value.
object
Object field the condition reads.
What a condition reading its value from the request’s anchors does when none carries the attribute.
fail_closed (the default) makes the whole filter tree match nothing. ignore
drops the condition instead, leaving the rest of the tree in force.
Comparison operator.
Provenance of the condition; stamped by the system, never read from a client.
Literal to compare against, or a trigger reference {trigger_ref: ...}; a scalar for eq/neq and the comparisons, a non-empty list for in/not_in, absent for exists.
Where a dynamic condition reads its value: an attribute of the request’s anchors.
object
Anchor attribute whose value the condition compares against.
Boolean combinator applied to conditions.
A group node: exactly one of $and, $or, $not.
object
Nodes that must all match.
A condition node: field names mapped to operator objects; sibling fields combine as AND.
object
Operators applied to one field. Several operators in one object combine as AND.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A condition node: field names mapped to operator objects; sibling fields combine as AND.
object
Operators applied to one field. Several operators in one object combine as AND.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
Nodes of which at least one must match.
A condition node: field names mapped to operator objects; sibling fields combine as AND.
object
Operators applied to one field. Several operators in one object combine as AND.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A condition node: field names mapped to operator objects; sibling fields combine as AND.
object
Operators applied to one field. Several operators in one object combine as AND.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
Responses
Section titled “ Responses ”Successful Response
object
Channel-facing name (key) bound to a catalog field (value), e.g. {"product_name": "title"}. A request naming product_name resolves to catalog title and the response comes back keyed product_name, while the catalog field stays addressable under its own name. A key is checked against the catalog’s fields only as it is written: should the catalog later gain a field of that name, that field takes the name back and the alias stops taking effect. See Attribute aliases for the full contract.
object
A filter tree in group syntax: a boolean operator over leaves and nested groups.
not holds exactly one child. An empty and constrains nothing and an
empty or matches nothing; each endpoint says whether it accepts either.
object
Leaf conditions and nested groups.
One leaf of a group-syntax tree: a field compared against a value.
object
Object field the condition reads.
What a condition reading its value from the request’s anchors does when none carries the attribute.
fail_closed (the default) makes the whole filter tree match nothing. ignore
drops the condition instead, leaving the rest of the tree in force.
Comparison operator.
Provenance of the condition; stamped by the system, never read from a client.
Literal to compare against, or a trigger reference {trigger_ref: ...}; a scalar for eq/neq and the comparisons, a non-empty list for in/not_in, absent for exists.
Where a dynamic condition reads its value: an attribute of the request’s anchors.
object
Anchor attribute whose value the condition compares against.
Boolean combinator applied to conditions.
A group node: exactly one of $and, $or, $not.
object
Nodes that must all match.
A condition node: field names mapped to operator objects; sibling fields combine as AND.
object
Operators applied to one field. Several operators in one object combine as AND.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A condition node: field names mapped to operator objects; sibling fields combine as AND.
object
Operators applied to one field. Several operators in one object combine as AND.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
Nodes of which at least one must match.
A condition node: field names mapped to operator objects; sibling fields combine as AND.
object
Operators applied to one field. Several operators in one object combine as AND.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A condition node: field names mapped to operator objects; sibling fields combine as AND.
object
Operators applied to one field. Several operators in one object combine as AND.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
A value resolved from the request’s trigger attributes at evaluation time.
object
A value read from the request’s anchor objects at evaluation time.
object
What the condition does when no anchor carries the attribute; defaults to fail_closed.
object
Example
{ "visibility_filter": { "$and": [ { "brand": { "in": [ "nike", "adidas" ] } }, { "lbx:price": { "gte": 50, "lte": 200 } }, { "$or": [ { "condition": { "eq": "new" } }, { "warranty_months": { "gte": 12 } } ] }, { "$not": { "material": { "eq": "leather" } } }, { "image": { "exists": true } } ] }}Missing or invalid credentials
Canonical error body — every non-2xx response uses this shape.
object
Machine-readable error context; empty object when there is nothing to add.
object
One field-level reason a request was rejected.
object
Path to the offending value from the request root, e.g. ["body", "filters", 0, "operator"].
What is wrong with the value at loc.
Stable machine code for the problem, e.g. missing or string_too_short.
Human-readable, actionable error message.
Example generated
{ "exception_details": { "validation_errors": [ { "loc": [ "example" ], "msg": "example", "type": "example" } ] }, "reason": "example", "request_id": "example"}Authenticated but not permitted
Canonical error body — every non-2xx response uses this shape.
object
Machine-readable error context; empty object when there is nothing to add.
object
One field-level reason a request was rejected.
object
Path to the offending value from the request root, e.g. ["body", "filters", 0, "operator"].
What is wrong with the value at loc.
Stable machine code for the problem, e.g. missing or string_too_short.
Human-readable, actionable error message.
Example generated
{ "exception_details": { "validation_errors": [ { "loc": [ "example" ], "msg": "example", "type": "example" } ] }, "reason": "example", "request_id": "example"}State conflict
Canonical error body — every non-2xx response uses this shape.
object
Machine-readable error context; empty object when there is nothing to add.
object
One field-level reason a request was rejected.
object
Path to the offending value from the request root, e.g. ["body", "filters", 0, "operator"].
What is wrong with the value at loc.
Stable machine code for the problem, e.g. missing or string_too_short.
Human-readable, actionable error message.
Example generated
{ "exception_details": { "validation_errors": [ { "loc": [ "example" ], "msg": "example", "type": "example" } ] }, "reason": "example", "request_id": "example"}Request validation failed
Canonical error body — every non-2xx response uses this shape.
object
Machine-readable error context; empty object when there is nothing to add.
object
One field-level reason a request was rejected.
object
Path to the offending value from the request root, e.g. ["body", "filters", 0, "operator"].
What is wrong with the value at loc.
Stable machine code for the problem, e.g. missing or string_too_short.
Human-readable, actionable error message.
Example generated
{ "exception_details": { "validation_errors": [ { "loc": [ "example" ], "msg": "example", "type": "example" } ] }, "reason": "example", "request_id": "example"}The catalog’s field types could not be read, so visibility_filter and attribute_aliases could not be checked against the catalog’s fields. Retryable: Retry-After carries the number of seconds to wait.
Canonical error body — every non-2xx response uses this shape.
object
Machine-readable error context; empty object when there is nothing to add.
object
One field-level reason a request was rejected.
object
Path to the offending value from the request root, e.g. ["body", "filters", 0, "operator"].
What is wrong with the value at loc.
Stable machine code for the problem, e.g. missing or string_too_short.
Human-readable, actionable error message.
Example generated
{ "exception_details": { "validation_errors": [ { "loc": [ "example" ], "msg": "example", "type": "example" } ] }, "reason": "example", "request_id": "example"}Headers
Section titled “Headers ”Seconds to wait before retrying the write.
Was this page helpful?
Thanks.