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/sponsored-providers?page=1&size=20';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.eu1.luigisbox.ai/platform/v1/sponsored-providers?page=1&size=20' \ --header 'Authorization: Bearer <token>'List sponsored-products providers, ordered by id. Listing without organization_id spans every organization, which requires a grant that wide; name your organization instead. GET /platform/v1/me/entitlements returns the organizations your credentials reach, with their ids.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters ”External sponsored-products platform a provider account lives on.
Only accounts on this sponsored-products platform.
Lifecycle state of a sponsored-products provider or placement.
Only an active one serves sponsored objects. A disabled one stops
serving shortly after the change and stays editable over the API.
Keep only this status.
Responses
Section titled “ Responses ”Successful Response
object
Provider response. credentials is write-only and surfaces only as credentials_set.
The platform is reported inside config (the platform discriminator), not as a
separate top-level field.
object
The connection-level half of a cruxo config — everything tied to the account itself.
None of it varies by channel or surface. An account needing both a search and a
product variant is two providers.
object
object
Lifecycle state of a sponsored-products provider or placement.
Only an active one serves sponsored objects. A disabled one stops
serving shortly after the change and stays editable over the API.
Example
{ "items": [ { "config": { "change_item_url": false, "platform": "cruxo", "use_page": true }, "status": "active" } ]}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"}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"}Was this page helpful?
Thanks.