Skip to content

    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.

    List sponsored-products providers

    View source
    GET
    /platform/v1/sponsored-providers
    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.

    organization_id
    Any of:
    string

    Only sponsored-products providers of this organization.

    platform
    Any of:
    SponsoredPlatform

    External sponsored-products platform a provider account lives on.

    string
    Allowed values: cruxo

    Only accounts on this sponsored-products platform.

    status
    Any of:
    SponsoredStatus

    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.

    string
    Allowed values: active disabled

    Keep only this status.

    page
    Page
    integer
    default: 1 >= 1
    size
    Size
    integer
    default: 20 >= 1 <= 100

    Successful Response

    Media type application/json
    Page[SponsoredProvider]
    object
    items
    required
    Items
    Array<object>
    SponsoredProvider

    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
    config
    required
    One of: discriminator: platform
    CruxoProviderConfig

    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
    aliases
    Aliases
    object
    key
    additional properties
    string
    area
    required
    Area
    string
    >= 1 characters
    base_url
    required
    Base Url
    string
    >= 1 characters
    change_item_url
    Change Item Url
    boolean
    domain
    required
    Domain
    string
    >= 1 characters
    platform
    required
    Platform
    string
    Allowed value: cruxo
    position_path
    Any of:
    string
    product_id_path
    required
    Product Id Path
    string
    >= 1 characters
    service_path
    required
    Service Path
    string
    >= 1 characters
    size
    required
    Size
    string
    >= 1 characters
    test
    Any of:
    integer
    use_page
    Use Page
    boolean
    default: true
    created_at
    required
    Created At
    string format: date-time
    created_by
    required
    Any of:
    string
    credentials_set
    required
    Credentials Set
    boolean
    id
    required
    Id
    string
    name
    required
    Name
    string
    organization_id
    required
    Organization Id
    string
    status
    required
    SponsoredStatus

    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.

    string
    Allowed values: active disabled
    updated_at
    required
    Updated At
    string format: date-time
    updated_by
    required
    Any of:
    string
    page
    required
    Page
    integer
    size
    required
    Size
    integer
    total
    required
    Total
    integer
    Example
    {
    "items": [
    {
    "config": {
    "change_item_url": false,
    "platform": "cruxo",
    "use_page": true
    },
    "status": "active"
    }
    ]
    }

    Missing or invalid credentials

    Media type application/json
    ErrorResponse

    Canonical error body — every non-2xx response uses this shape.

    object
    exception_details
    ExceptionDetails

    Machine-readable error context; empty object when there is nothing to add.

    object
    validation_errors
    Any of:
    Array<object>
    ValidationProblem

    One field-level reason a request was rejected.

    object
    loc
    required
    Loc

    Path to the offending value from the request root, e.g. ["body", "filters", 0, "operator"].

    Array
    msg
    required
    Msg

    What is wrong with the value at loc.

    string
    type
    required
    Type

    Stable machine code for the problem, e.g. missing or string_too_short.

    string
    key
    additional properties
    any
    reason
    required
    Reason

    Human-readable, actionable error message.

    string
    request_id
    Any of:
    string
    Example generated
    {
    "exception_details": {
    "validation_errors": [
    {
    "loc": [
    "example"
    ],
    "msg": "example",
    "type": "example"
    }
    ]
    },
    "reason": "example",
    "request_id": "example"
    }

    Authenticated but not permitted

    Media type application/json
    ErrorResponse

    Canonical error body — every non-2xx response uses this shape.

    object
    exception_details
    ExceptionDetails

    Machine-readable error context; empty object when there is nothing to add.

    object
    validation_errors
    Any of:
    Array<object>
    ValidationProblem

    One field-level reason a request was rejected.

    object
    loc
    required
    Loc

    Path to the offending value from the request root, e.g. ["body", "filters", 0, "operator"].

    Array
    msg
    required
    Msg

    What is wrong with the value at loc.

    string
    type
    required
    Type

    Stable machine code for the problem, e.g. missing or string_too_short.

    string
    key
    additional properties
    any
    reason
    required
    Reason

    Human-readable, actionable error message.

    string
    request_id
    Any of:
    string
    Example generated
    {
    "exception_details": {
    "validation_errors": [
    {
    "loc": [
    "example"
    ],
    "msg": "example",
    "type": "example"
    }
    ]
    },
    "reason": "example",
    "request_id": "example"
    }

    Request validation failed

    Media type application/json
    ErrorResponse

    Canonical error body — every non-2xx response uses this shape.

    object
    exception_details
    ExceptionDetails

    Machine-readable error context; empty object when there is nothing to add.

    object
    validation_errors
    Any of:
    Array<object>
    ValidationProblem

    One field-level reason a request was rejected.

    object
    loc
    required
    Loc

    Path to the offending value from the request root, e.g. ["body", "filters", 0, "operator"].

    Array
    msg
    required
    Msg

    What is wrong with the value at loc.

    string
    type
    required
    Type

    Stable machine code for the problem, e.g. missing or string_too_short.

    string
    key
    additional properties
    any
    reason
    required
    Reason

    Human-readable, actionable error message.

    string
    request_id
    Any of:
    string
    Example generated
    {
    "exception_details": {
    "validation_errors": [
    {
    "loc": [
    "example"
    ],
    "msg": "example",
    "type": "example"
    }
    ]
    },
    "reason": "example",
    "request_id": "example"
    }