Skip to main content
GET /api/v2/buyer/discovery/{discoveryId}/products Returns the products currently selected in the session, with their per-product budget allocations and budget context. This is the selection you build with Add products and Apply proposal — distinct from the browsable discovery results.

Request

curl -X GET "https://api.interchange.io/api/v2/buyer/discovery/disc_01HZX3YQ7K9R6V3M2P1E0F8B2T/products" \
  -H "Authorization: Bearer $SCOPE3_API_KEY"

Parameters

FieldTypeRequiredNotes
discoveryIdstringYesPath param — session to read

Response

{
  "discoveryId": "disc_01HZX3YQ7K9R6V3M2P1E0F8B2T",
  "products": [
    {
      "productId": "prod_acme_ctv_sports",
      "salesAgentId": "agent_acme_media",
      "bidPrice": 32.5,
      "budget": 150000,
      "groupId": "ctx_disc_01HZX3-group-0",
      "groupName": "Acme Media Connected TV",
      "selectedAt": "2026-06-07T15:04:00Z"
    }
  ],
  "totalProducts": 1,
  "budgetContext": { "sessionBudget": 250000, "allocatedBudget": 150000, "remainingBudget": 100000 }
}
budgetContext.remainingBudget is the session budget minus the sum of selected budget allocations. An empty products array means nothing has been added yet.

Errors

  • 404 NOT_FOUNDdiscoveryId does not exist or is not visible to the authenticated customer.
See Errors for the full error contract.

Discovery overview

Sessions and selection model

Add products

Add products to the selection

Remove products

Drop products from the selection

Apply proposal

Accept a seller’s full allocation