Skip to main content
POST /api/v2/buyer/discovery/{discoveryId}/products Adds products to the session selection. Pass the productId from your Discover products or Browse products results. When a result includes inventorySourceId, preserve it in the selection so identical product IDs from different inventory sources remain unambiguous. salesAgentId, groupId, and groupName are optional and resolved server-side from those results, so pass them only to disambiguate a product that appears in more than one group. Optionally pin a budget, pricing option, bid, or per-line-item targeting. By default products merge into the existing selection; set replace: true to swap the whole set. When you pass pricingOptionId, Scope3 validates it against the exact pricing in the session’s current discovery result and carries that option into campaign staging. A separate catalog refresh cannot invalidate an option that result just returned. Re-run discovery when the option is no longer present in the current result or its quoted price has expired. Older sessions whose results predate pricing evidence recording use current catalog validation and may also require a new discovery run. To select the same product more than once, omit selectionId for its single base selection and give each repeat a distinct selectionId. Each selection becomes an independent media-buy line item. Re-sending an existing selectionId updates that instance instead of adding another copy.

Request

Parameters

Response

Returns the full selection after the add, so you do not need a separate Get products call to confirm. Repeat instances return their selectionId; the base instance omits it. Keep that value when updating or removing one repeat. Reconciliation preserves repeat instances as distinct line items, so their budget and targeting do not collapse into the base selection.

Errors

  • 400 VALIDATION_ERROR — empty products, missing a required selection field, or a productId not present in the session’s discovery results.
  • 404 NOT_FOUNDdiscoveryId does not exist or is not visible to the authenticated account.
See Errors for the full error contract.

Discovery overview

Selection model and budget allocation

Get products

List the current selection

Remove products

Drop products from the selection

Apply proposal

Add a whole proposal at once