Introduction
Auction Display Line Items define how Onsite Display campaigns deliver ads across retailer inventory. They control targeting, creatives, bidding, pacing, and scheduling. Line items operate under a Display Campaign and follow a proposal workflow before activation.Business Context
Onsite Display line items enable advertisers to configure auction-based display advertising using CPM bidding. They support automation-first defaults while allowing granular control over bidding, pacing, and targeting when needed.Prerequisites
- Valid
accountIdanddisplayCampaignId - Authenticated request using Bearer token
- Existing Display Campaign
Endpoints Overview
Verb | Endpoint | Description |
|---|---|---|
POST |
| Create a new Auction Display Line Item |
PATCH |
| Update an existing Auction Display Line Item |
POST |
| Search and filter Auction Display Line Items |
POST |
| Submit a line item for review |
POST |
| Recall a submitted line item |
Attributes
Attribute | Data Type | Description |
|---|---|---|
| string | Line item ID generated by the system. Writeable: No. Nullable: No |
| string | Display name of the line item. Writeable: Yes. Nullable: No |
| string | The retailer ID where ads will serve. Cannot be changed after creation. |
| string | The parent Display Campaign ID. Cannot be changed after creation. |
| number | Lifetime spend cap for the line item. Uncapped if omitted. |
| string | Line item status. Accepted values: |
| boolean | Whether the line item is actively eligible to serve. |
| string | When the line item begins serving. Format: ISO 8601 ( |
| string | When the line item stops serving. Optional; omit for no end date. Format: ISO 8601 ( |
| string | Media type for this line item. Currently supported: |
| array of strings | Page types where ads will be eligible to serve. Accepted values: At least one must be specified. |
| array of strings | List of product (SKU) IDs to promote. When provided, overrides dynamic SKU allocation. |
| array of strings | List of creative IDs to associate with this line item. |
| string | Controls how budget is distributed over time. Accepted values: |
| number | Required when |
| string | Bidding strategy to use. Accepted values: |
| array of objects | Required when |
| string | The page type this bid applies to. Must match a value in |
| number | CPM bid amount in account currency for the specified page type. |
| object | Targeting configuration. Input audience IDs here. |
| object | Line item-level frequency cap. Inherits campaign-level settings if |
- Writeable (Y/N): Indicates if the field can be modified in requests.
- Nullable (Y/N): Indicates if the field can accept null/empty values.
- Primary Key: A unique, immutable identifier of the entity, generated internally by Criteo. Primary keys are typically ID fields (e.g.,
retailerId,campaignId,lineItemId) and are usually required in the URL path.
Actor Differences
Some behaviors and available fields differ depending on whether the request is made by a Retailer (Supply) or an Advertiser (Demand).Feature | Supply Account User | Demand Brand User |
|---|---|---|
|
|
|
| Supported on campaigns | Not applicable |
Default |
|
|
Default |
|
|
Key Concepts
Page Types
Display line items can serve on the following page types:searchcategory
Bidding
One strategy is supported:manual— Requires specifying a CPM bid per page type viaauctionBids
Pacing
Controls how the budget is spent over time:even— Distributes spend evenlyahead— Spends slightly faster than even pacingasSoonAsPossible— Spends as fast as possibledailyBudgetCap— Enforces a daily spend limit viapacingAmount
Create Auction Display Line Item
Creates a new line item in draft (proposal) state. Sample RequestUpdate Auction Display Line Item
Updates an existing line item, and supports partial updates.Updating Bidding Configuration
Updating Basic Fields
You can also update fields likename and creativeIds independently.
Search Auction Display Line Items
Retrieves line items using filters. Supports pagination viaoffset and limit. Use the optional fields query parameter to restrict which attributes are returned.
Sample Request
Filter Attributes
Attribute | Type | Description |
|---|---|---|
| string | Filter results to line items belonging to a specific campaign. |
| string | Filter results to a specific retailer. |
| array of strings | Filter to specific line item IDs. Pass an empty array to return all. |
| boolean | When true, returns only line items in proposal status (pending review). |
Proposal Workflow
Line items follow a lifecycle:- Draft → Created but not submitted
- Submitted → Pending review
- Recalled → Returned to draft
- Approved / Rejected → Reviewed by retailer
Submit Proposal
Sample RequestRecall Proposal
Use this endpoint to retract a submitted proposal before it is reviewed — for example, to make further edits.HTTP 204 with no body.Proposal Constraints
The proposal workflow enforces the following rules:- A line item must be in
draftstate before it can be submitted - Submitting an already submitted line item will fail
- A line item must be in
submittedstate to be recalled - Recalling a line item that was never submitted will fail
- Line items cannot be modified while in submitted (pending review) state
- Once a line item is approved or rejected, it can no longer be recalled
Validations Rules, Responses & Errors
Validation Rules
Common validation errors include:bidStrategy = manualbutmanualBiddingis missingmanualBiddingis provided but does not include a bid for every page type defined inpageTypes- Invalid
pacingTypevalue - Missing
pacingAmountwhenpacingType = dailyBudgetCap endDateis beforestartDate- Invalid or unsupported
pageTypes retailerIddoes not match the parent campaigncreativeIdsreference non-existent or inaccessible creatives
Responses
Response | Title | Detail | Troubleshooting |
|---|---|---|---|
🟢 | Success | Request processed successfully | Verify response payload |
🟢 | Created | Line item created successfully | N/A |
🟢 | No Content | Proposal action succeeded | N/A |
🔴 | Invalid Request | Missing or invalid fields | Check bidding, pacing, and |
🔴 | Unauthorized | Invalid or missing token | Verify Bearer token |
🔴 | Forbidden | Access denied | Check permissions |
Reasons for Errors
Authentication & Authorization Missing or expired Bearer tokens will result in a401 response
PermissionsHaving the wrong scope or attempting to call accounts, campaigns, or line items you do not have consent to will result in a
403 response
Invalid Fields Having invalid entries for certain attributes can result in a 400 response with an explanation of what to correct
At the Campaign Level, this can mean:
- Not including the
buyType - Invalid value for the frequency cap duration type
- Attribution scope & windows not within the accepted values
- Inaccessible Balance ID
- Unsupported
PageTypeis entered PageTypeand bid are not aligned for manual bidding- No max CPM for automated bidding
bidStrategyis manual butmanualBiddingis absent- When
bidStrategyis set to manual, themanualBiddingobject withauctionBidsis required. Omitting it fails bidStrategyis automatic butmanualBiddingis still included- Sending
manualBiddingwhenbidStrategyis automatic is likely to cause a conflict error. The automatic strategy requires no bid configuration pacingAmountmissing whenpacingTypeisdailyBudgetCappacingTypeinvalid value. Accepted values:even,ahead,asSoonAsPossible,dailyBudgetCap. Other values failendDatebeforestartDate. If provided,endDatemust be afterstartDateretailerIddoes not match the campaign’s configured retailer- The
retailerIdon a line item must correspond to a retailer that is valid for the parent campaign. Using a retailer ID the account doesn’t have access to will fail. creativeIdsreference non-existent or inaccessible creatives- If a creative ID doesn’t exist or belongs to a different account, the request will fail.
- Submitting a proposal that is already submitted. Calling
submit-proposalon a line item that is already in a submitted/pending state will fail. A line item must be in Draft state to be submitted - Recalling a proposal that was never submitted. Calling
recall-proposalon a line item that is not currently in a submitted/pending state will fail - Recalling or modifying a line item that has been approved or rejected. Once a proposal has been reviewed (approved or rejected), it can no longer be recalled. Attempting to do so will return an error
- Editing a line item while it is in submitted/pending state. A
PATCHto a line item that is pending review will likely be rejected until it is recalled first