curl --request GET \
--url https://api.interchange.io/api/v2/storefront/intelligence-runs/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.interchange.io/api/v2/storefront/intelligence-runs/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.interchange.io/api/v2/storefront/intelligence-runs/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "<string>",
"purpose": "live",
"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": {
"kind": "ok",
"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"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}Get a storefront intelligence-run record
Fetch one intelligence-run record by id including the full prompt, raw and parsed LLM output, run rationale, composed product ids, and any evaluator label.
curl --request GET \
--url https://api.interchange.io/api/v2/storefront/intelligence-runs/{id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.interchange.io/api/v2/storefront/intelligence-runs/{id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.interchange.io/api/v2/storefront/intelligence-runs/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "<string>",
"purpose": "live",
"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": {
"kind": "ok",
"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"
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}{
"data": null,
"error": {
"code": "<string>",
"message": "<string>",
"field": "<string>",
"details": {}
}
}Authorizations
API key or access token
Path Parameters
Surrogate id of the intelligence-run row.
0 < x <= 900719925474099142
Response
Get a storefront intelligence-run record
A single storefront intelligence run: inputs, prompt, raw + parsed LLM output, persisted product ids, and result envelope.
Trusted execution classification. Null is reserved for historical runs recorded before purpose was required.
live, setup_test, simulation, probe, evaluation -9007199254740991 <= x <= 9007199254740991-9007199254740991 <= x <= 9007199254740991Buyer scope extracted from the AdCP get_products request that drove this run.
Show child attributes
Show child attributes
Resolver output: which buyer-instructions rows matched and the effective discount + notes applied.
Show child attributes
Show child attributes
Sanitized, user-facing explanation derived from the persisted run record: selected products, reasoning, pricing notes, buyer-instruction effects, and failures.
Show child attributes
Show child attributes
Outcome envelope: ok on success, error with code/message on failure, skipped when the pipeline short-circuited.
Show child attributes
Show child attributes
-9007199254740991 <= x <= 9007199254740991Compact seller-facing analytics derived from the buyer request and storefront response: refine counts, ask categories, product ids shown, and acknowledgement counts.
^(?:(?:\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))$