Shopping & Ads
Commercial surfaces inside AI answers: the product cards models return and the paid placements that run alongside them, with the merchants and advertisers behind each. Scale plan or above required. Both endpoints are named for what they measure rather than for the assistant that first returned it, so narrow with model instead of reading the provider out of the path.
GET/dimensions/shopping
Product cards returned inside AI answers. view=products (default) returns one row per distinct product, merged across executions, with its appearance count, price range, rating and whether it is yours. view=merchants returns one row per selling merchant. A product is identified by its external product id, falling back to its title when the provider does not send a usable one, so the same product merges across executions instead of splitting into one row per answer.
project_idrequiredviewproducts|merchantsownedqueryorderproducts:appearances,price,rating,title; merchants:appearances,products,avg_price,avg_rating,merchantdirectionmodelcollection_idcountry_codelanguage_codepromptprompt_typebrand_kindrangefromtopageper_pageoutput
Every response also carries a totals block matching the KPI cards in the app.
GET/dimensions/ads
Paid placements returned inside AI answers. view=advertisers (default) returns one row per advertising domain with its placement count, prompt reach, average and best position. view=ads returns the individual placements with title, snippet, position and the prompt that triggered them. Position 1 is the best slot, so a lower average position is better.
project_idrequiredviewadvertisers|adsownedqueryorderadvertisers:ads,prompts,avg_position,domain; ads:recent,oldest,positiondirectionadvertisers only;avg_positionanddomaindefault to ascendingmodelcollection_idcountry_codelanguage_codepromptprompt_typebrand_kindrangefromtopageper_pageoutput