ChatGPT is becoming a shopping surface — and its product recommendations are a black box unless you sample them. cloro returns the shopping carousels and inline product references as structured JSON: title, price, merchant, rating, offers, and the generated shopping query behind each pick.
4.8 · 33 reviewsPass include.shopping: true (+2 credits) to opt in. Grouped carousels land in result.shoppingCards; standalone product references land in result.inlineProducts.
import requests
response = requests.post(
"https://api.cloro.dev/v1/monitor/chatgpt",
headers={
"Authorization": "Bearer sk_live_your_api_key_here",
"Content-Type": "application/json"
},
json={
"prompt": "best running shoes for flat feet",
"country": "US",
"include": {
"shopping": True
}
}
)
print(response.json()) {
"success": true,
"result": {
"text": "For flat feet, look for stability shoes with structured midsoles...",
"shoppingCards": [
{
"tags": [
"Stability running shoes"
],
"products": [
{
"title": "Brooks Adrenaline GTS 24",
"position": 1,
"url": "https://example-store.com/brooks-adrenaline-gts-24?utm_source=chatgpt.com",
"price": "$139.95",
"merchant": "Example Store",
"rating": 4.6,
"num_reviews": 8214,
"image_urls": [
"https://cdn.example-store.com/gts24.jpg"
],
"id": "prod_8f2k..."
}
]
}
],
"inlineProducts": [
{
"product": {
"title": "ASICS Gel-Kayano 31",
"position": 2,
"price": "$164.99",
"rating": 4.7,
"num_reviews": 5031,
"generatedProductQuery": "asics gel kayano 31 stability running shoe"
},
"render_as": "carousel"
}
]
}
} shoppingCards groups products under category tags; inlineProducts carries standalone references with richer metadata.
| Field | Type | Description |
|---|---|---|
| shoppingCards[].tags | string[] | Category tags for the shopping card group. |
| products[].title / url | string | Product name and product-page URL (carries ChatGPT attribution parameters — how you spot AI-driven sessions in analytics). |
| products[].position | integer | 1-indexed rank across all products in all shopping cards in the response. |
| products[].price | string | Current price as displayed. |
| products[].merchant | string | Merchant information. |
| products[].rating / num_reviews | number / integer | Product rating (0–5) and review count. |
| products[].offers | object[] | Shopping offers from different merchants. |
| inlineProducts[].product | object | Standalone product reference with description, variants, offers, and rating-source metadata. |
| inlineProducts[].product.generatedProductQuery | string | The broad shopping query ChatGPT generated for this product — the keyword you'd need to win. |
| inlineProducts[].render_as | string | How the product renders in the response UI. |
Pick a plan that fits your volume. Price per credit drops as you scale.
Increased concurrency, overages on credits and credit discounts for annual contracts.
Know moreCredit cost per request varies by provider. The rates below apply to async/batch requests; sync requests add a +2 credit surcharge.
ChatGPT full response includes query fan-out, ads, and shopping data. Google News uses the same pricing as Google Search.
When a buyer asks ChatGPT what to buy, the carousel is the shelf. If your product isn't in it — or shows the wrong price or a reseller instead of you — you're losing sales you can't see in any dashboard. Sampling the carousel across your category prompts is the only way to know.
shoppingCards are the grouped carousels with category tags. inlineProducts are individual product references ChatGPT weaves into the answer, with richer metadata — variants, per-merchant offers, rating attribution, and the generatedProductQuery ChatGPT used to source the pick.
Pass `include.shopping: true` on `/v1/monitor/chatgpt`. Base request is 5 credits; shopping (with inline products) is part of a combined +2-credit add-on bundle shared with query fan-out, ads, and raw response — enabling any or all adds just +2.
It's the shopping query ChatGPT synthesized to retrieve that product — effectively the keyword your product feed needs to win to enter the carousel. Aggregating these across prompts gives you a ChatGPT-native shopping keyword set no other tool exposes.
Product URLs carry ChatGPT attribution parameters (utm_source=chatgpt.com), so you can join carousel presence against your analytics to measure how carousel placement converts to sessions and revenue.
Yes — advertiser branding cards are a separate surface from organic shopping picks. See the ChatGPT Ads scraper for tracking those, and ChatGPT Sources for the citations behind the recommendation text.