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.

    Cruxo

    View source

    Cruxo is a retail-media platform. Register a Cruxo account as a sponsored-products provider with "platform": "cruxo" in config, and the rest of config is read against Cruxo’s contract.

    Cruxo names its parameters differently per account, so most of this config records the names your account uses. Your Cruxo contact supplies every value here.

    FieldRequiredDefaultMeaning
    platformYes"cruxo"
    base_urlYesBase URL of your Cruxo endpoint
    service_pathYesThe path segment Cruxo serves this account on
    domainYesThe domain Cruxo knows this storefront by
    areaYesThe Cruxo area this account serves, such as search
    sizeYesCruxo’s format name for this account, such as product. A name, not a count.
    product_id_pathYesWhere the product id sits in a Cruxo response entry, as key||key
    position_pathNononeWhere a position sits in a response entry, same form. Omit it and no positions are read — see Positions.
    aliasesNo{}Cruxo’s names for the request parameters, as standard name → your account's name
    use_pageNotrueWhether the page number is sent along with the request
    testNononeCruxo’s test flag. Set it and the traffic is marked non-billable.
    change_item_urlNofalseWhether a sponsored hit’s URL is replaced with the click-tracking URL Cruxo returns

    A complete registration:

    Terminal window
    curl -X POST 'https://api.eu1.luigisbox.ai/platform/v1/sponsored-providers' \
    -H 'Authorization: Bearer <token>' \
    -H 'Content-Type: application/json' \
    -d '{
    "organization_id": "lbo_r2vn8c",
    "name": "Cruxo — example.com search",
    "config": {
    "platform": "cruxo",
    "base_url": "https://ads.example-cruxo.io",
    "service_path": "retail",
    "domain": "example.com",
    "area": "search",
    "size": "product",
    "product_id_path": "ad||productId",
    "position_path": "ad||position",
    "aliases": { "site": "outpost", "cdomain": "cdom", "size": "fmt" }
    }
    }'

    Cruxo does not authenticate its callers, so a Cruxo provider is normally registered without credentials.

    aliases accepts site, cdomain, viewId, random, layout, size, keyword and mid.

    A renamed parameter is sent only if you name it. site, cdomain, viewId, random, layout and size are omitted from the request entirely when they are absent from aliases — so a Cruxo account that expects site under its own name gets no domain at all until that entry is there. keyword and mid are always sent, under their alias when you give one and under their standard name otherwise.

    position_path decides whether Cruxo’s own positions are used. With it, they are honoured. Without it, positions are not read, no fixed-position pinning happens, and sponsored results are only promoted within ranking.

    A placement’s max_placements_pin above 0 does nothing unless position_path is set.