Skip to main content
PUT
/
intelligence-runs
/
{id}
/
label
Attach an evaluator label to an intelligence-run
curl --request PUT \
  --url https://api.interchange.io/api/v2/storefront/intelligence-runs/{id}/label \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "label": {}
}'
{
  "id": "<string>",
  "storefrontId": "<string>",
  "buyerCustomerId": 0,
  "operatingInstructionsVersion": 0,
  "buyerScope": {
    "operatorDomain": "<string>",
    "brandDomain": "<string>",
    "country": "<string>"
  },
  "buyerInstructions": {
    "matchedRowIds": [
      "<string>"
    ],
    "effectiveDiscountPercent": 123,
    "notes": [
      "<string>"
    ]
  },
  "brief": "<string>",
  "buyingMode": "<string>",
  "inventorySnapshot": "<unknown>",
  "prompt": "<string>",
  "rawLlmOutput": "<unknown>",
  "parsedOutput": "<unknown>",
  "runRationale": "<string>",
  "explanation": {
    "summary": "<string>",
    "selectedProducts": [
      {
        "productId": "<string>",
        "name": "<string>",
        "description": "<string>",
        "reasoning": "<string>",
        "pricing": {
          "baseCpm": 123,
          "currency": "<string>",
          "operatorDiscount": 123,
          "finalCpm": 123
        },
        "bundleIds": [
          "<string>"
        ],
        "signalIds": [
          "<string>"
        ],
        "formatIds": [
          {
            "agentUrl": "<string>",
            "id": "<string>"
          }
        ]
      }
    ],
    "unpricedProducts": [
      {
        "name": "<string>",
        "reasoning": "<string>",
        "reason": "<string>",
        "bundleIds": [
          "<string>"
        ],
        "signalIds": [
          "<string>"
        ]
      }
    ],
    "buyerInstructionNotes": [
      "<string>"
    ],
    "pricingNotes": [
      "<string>"
    ],
    "failure": {
      "code": "<string>",
      "message": "<string>"
    }
  },
  "composedProductIds": [
    "<string>"
  ],
  "result": {
    "code": "<string>",
    "message": "<string>"
  },
  "modelProvider": "<string>",
  "modelName": "<string>",
  "durationMs": 0,
  "refineSnapshot": "<unknown>",
  "refinementAppliedSnapshot": "<unknown>",
  "requestAsks": [
    "<string>"
  ],
  "shownProductsSnapshot": "<unknown>",
  "pricingSummary": "<unknown>",
  "negotiationSummary": "<unknown>",
  "commercialOutcome": "<unknown>",
  "evalLabel": "<unknown>",
  "createdAt": "2023-11-07T05:31:56Z"
}

Documentation Index

Fetch the complete documentation index at: https://docs.interchange.io/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

API key or access token

Path Parameters

id
integer
required

Surrogate id of the intelligence-run row.

Required range: x <= 9007199254740991
Example:

42

Body

application/json

Attach (or replace) an evaluator label on an intelligence-run row. The label is freeform JSON the eval workflow defines.

label
object
required

Response

Attach an evaluator label to an intelligence-run

A single storefront intelligence run: inputs, prompt, raw + parsed LLM output, persisted product ids, and result envelope.

id
string
required
storefrontId
string
required
buyerCustomerId
integer | null
required
Required range: -9007199254740991 <= x <= 9007199254740991
operatingInstructionsVersion
integer
required
Required range: -9007199254740991 <= x <= 9007199254740991
buyerScope
object
required

Buyer scope extracted from the AdCP get_products request that drove this run.

buyerInstructions
object
required

Resolver output: which buyer-instructions rows matched and the effective discount + notes applied.

brief
string | null
required
buyingMode
string
required
inventorySnapshot
any
required
prompt
string
required
rawLlmOutput
any
required
parsedOutput
any
required
runRationale
string | null
required
explanation
object
required

Sanitized, user-facing explanation derived from the persisted run record: selected products, reasoning, pricing notes, buyer-instruction effects, and failures.

composedProductIds
string[]
required
result
object
required

Outcome envelope: ok on success, error with code/message on failure, skipped when the pipeline short-circuited.

modelProvider
string | null
required
modelName
string
required
durationMs
integer | null
required
Required range: -9007199254740991 <= x <= 9007199254740991
refineSnapshot
any
required
refinementAppliedSnapshot
any
required
requestAsks
string[]
required
shownProductsSnapshot
any
required
pricingSummary
any
required
negotiationSummary
any
required

Compact seller-facing analytics derived from the buyer request and storefront response: refine counts, ask categories, product ids shown, and acknowledgement counts.

commercialOutcome
any
required
evalLabel
any
required
createdAt
string<date-time>
required
Pattern: ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$