Skip to main content

Overview

The product pool of a line item holds the products that the line item can promote. Adding a product makes it available to the line item; it does not assign it to a Creative Product Collection. Removing a product takes it out of the pool, so the line item stops promoting it. Adding products is the step that follows creating a line item with Line Item Core. Identify eligible products to add by accessing your account catalog. Products can be removed from the pool at any point in the line item’s lifecycle.
The long-term goal is to support product operations across line item types. Initial documented support targets Onsite Display Auction line items and uses productType DisplayProduct. Additional product types will be documented as support is added.

Relationship to the current API

These endpoints replace the equivalent routes documented in Promoted Products, which remain available on stable versions in the meantime.
The removal route uses the same path on Experimental and on stable versions, but the request body is different. On experimental, send the productIds body described below. On a stable version, keep sending the array of promoted product resources documented in Promoted Products.

Endpoints

Add Products to a Line Item

Adds one or more products to the product pool of an existing line item.

Path parameters

Request attributes

The resource type is Products. Do not send response-only fields such as approvalStatus inside displayProductDetails.

Behavior

  • All items in the request must be added successfully; otherwise, no items are added to the product pool. If any productId is invalid, the entire request fails and the product pool is left unchanged.
  • A productId is invalid if it is missing, not present in the retailer catalog, marked as deleted, or unavailable in the line item’s account.
  • Adding a productId that is already in the product pool is a no-op. No duplicate is created and no error is returned for that product.
  • Duplicate productId values within the same request are deduplicated. The product is added once.
  • Products are added to the product pool only. They are not assigned to a Creative Product Collection.
Sample Request
Sample Response

Errors

Remove Products from a Line Item

Removes one or more products from the product pool of an existing line item.

Path parameters

Request attributes

The resource type is Products. Unlike the add operation, products are supplied as a flat list of IDs in productIds, not as objects in a details array.
The contract also accepts SponsoredProduct as a productType. Only DisplayProduct on Onsite Display Auction line items is supported by the service today. Other combinations are rejected.

Behavior

  • Removal is a soft delete. The product’s status becomes Removed and the line item stops promoting it. The product is not erased, and it remains in your account catalog.
  • Products are removed from both the current line item and its proposal, so a pending change set stays consistent with the live one.
  • The operation is idempotent. Removing a productId that is not in the product pool succeeds and removes nothing for that ID. It is not reported as an error, and repeating the same request has no further effect.
  • Duplicate productId values within the same request are deduplicated. Each product is removed once.
  • Validation is all-or-nothing. If any productId is malformed or unknown to the catalog, or the request exceeds 1500 IDs, the entire request is rejected and the product pool is left unchanged.
  • Products are removed from the product pool only. They are not yet removed from Creative Product Collections that reference them; that behavior will follow.
  • Removing every product from a line item is allowed. The line item may stop being served as a result.
Sample Request
Sample Response A successful call returns 200 with an empty outcome.
The response does not list the products that were removed. To confirm the resulting state of the pool, read the line item’s products with GET /line-items/{lineItemId}/products. Sample Error Response

Errors