Properties
| Name | Type | Description |
|---|---|---|
| success | boolean | |
| result | object | Data from ChatGPT's reply |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://artifacts.apis.io/answerline-dev/json-schema/answerline-dev-chat-gptmonitor-response-schema.json",
"title": "ChatGPTMonitorResponse",
"x-generated": "2026-10-30",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/answerline-dev-openapi.json#/components/schemas/ChatGPTMonitorResponse",
"required": [
"success",
"result"
],
"type": "object",
"properties": {
"success": {
"type": "boolean"
},
"result": {
"description": "Data from ChatGPT's reply",
"type": "object",
"properties": {
"text": {
"type": "string",
"description": "Text of ChatGPT's reply"
},
"sources": {
"type": "array",
"description": "Sources the response cites; an empty array if there are none.",
"items": {
"type": "object",
"properties": {
"position": {
"type": "number",
"description": "Where the source sits in the response, as an index"
},
"url": {
"type": "string",
"description": "Link to the source"
},
"label": {
"type": "string",
"description": "Title of the source article"
},
"description": {
"type": "string",
"description": "Excerpt or short summary taken from the source"
},
"footnote": {
"type": "boolean",
"description": "True if the source is shown as a footnote, i.e. in a later list inside the sources modal"
},
"datePublished": {
"type": "string",
"description": "Date the source was published. If the source has no such date, the field is left out entirely rather than set to `null`."
}
}
}
},
"html": {
"type": "string",
"format": "uri",
"description": "Present when include.html is true: the link to the stored copy of the ChatGPT page."
},
"markdown": {
"type": "string",
"description": "ChatGPT's reply as Markdown; returned only if include.markdown is true"
},
"rawResponse": {
"type": "array",
"description": "The answer as normalized stream events (present when include.rawResponse is true). For the engine's answer as received, use include.rawWire.",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Identifier of the event's type"
},
"token": {
"type": "string",
"description": "Token for picking the ChatGPT conversation back up"
},
"conversation_id": {
"type": "string",
"description": "Identifier of the ChatGPT conversation"
},
"message": {
"type": "object",
"description": "Payload of the event that describes the assistant's message",
"properties": {
"id": {
"type": "string"
},
"role": {
"type": "string"
},
"model": {
"type": "string"
}
}
},
"delta": {
"type": "object",
"description": "Delta payload streamed by ChatGPT",
"properties": {
"content": {
"type": "array",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string"
},
"text_delta": {
"type": "string"
}
}
}
}
}
},
"reason": {
"type": "string",
"description": "Reason ChatGPT ended the stream"
}
}
}
},
"searchQueries": {
"type": "array",
"description": "The fan-out queries ChatGPT issued while producing the response (present when include.searchQueries is true)",
"items": {
"type": "string"
}
},
"model": {
"type": [
"string",
"null"
],
"description": "ChatGPT model that produced the answer. Empty when the response came through OpenAI's mobile-web format."
},
"shoppingCards": {
"type": "array",
"description": "Shopping/product cards parsed from the response. When `include.shopping` is `false` or not set, `result` does not contain this field at all, so treat it as optional instead of relying on an empty array.",
"items": {
"type": "object",
"properties": {
"tags": {
"type": "array",
"description": "Tags naming the shopping card's categories",
"items": {
"type": "string"
}
},
"products": {
"type": "array",
"description": "List of product details",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Product name"
},
"position": {
"type": "integer",
"description": "Rank starting at 1, counted over every product in every shopping card of the response (one continuous sequence that does not restart for each card)."
},
"url": {
"type": "string",
"description": "Product page link carrying ChatGPT attribution"
},
"price": {
"type": "string",
"description": "Current price"
},
"featured_tag": {
"type": "string",
"description": "Style or category tag for the product"
},
"merchant": {
"type": "string",
"description": "Merchant information"
},
"image_urls": {
"type": "array",
"description": "URLs of the product's images",
"items": {
"type": "string"
}
},
"rating": {
"type": "number",
"description": "Rating of the product, on a 0-5 scale"
},
"num_reviews": {
"type": "integer",
"description": "Review count"
},
"id": {
"type": "string",
"description": "Identifier unique to the product"
},
"offers": {
"type": "array",
"description": "Offers for the product from various merchants",
"items": {
"type": "object",
"properties": {
"merchant_name": {
"type": "string",
"description": "Merchant name"
},
"product_name": {
"type": "string",
"description": "Product title as the merchant lists it"
},
"url": {
"type": "string",
"description": "Offer link carrying ChatGPT attribution"
},
"price": {
"type": "string",
"description": "Offer price"
},
"details": {
"type": "string",
"description": "Availability and delivery details"
},
"available": {
"type": "boolean",
"description": "Stock/availability status of the offer"
},
"checkoutable": {
"type": "boolean",
"description": "True if the offer supports direct checkout"
},
"price_details": {
"type": "object",
"description": "Itemized breakdown of the price",
"properties": {
"base": {
"type": "string",
"description": "Base price of the product"
},
"total": {
"type": "string",
"description": "Overall price with all extra charges added"
}
}
},
"tag": {
"type": "object",
"description": "Promotional tag",
"properties": {
"text": {
"type": "string",
"description": "Tag text"
}
}
}
}
}
},
"rating_grouped_citation": {
"type": "object",
"description": "Details about where the rating comes from",
"properties": {
"title": {
"type": "string",
"description": "Source title"
},
"url": {
"type": "string",
"description": "Source URL"
},
"supporting_websites": {
"type": "array",
"description": "Websites cited in support",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Website title"
},
"url": {
"type": "string",
"description": "Website URL"
}
}
}
}
}
}
}
}
}
}
}
},
"inlineProducts": {
"type": "array",
"description": "Products shown inline, with their prices and offers. When `include.shopping` is `false` or not set, `result` does not contain this field at all, so treat it as optional instead of relying on an empty array.",
"items": {
"$ref": "#/$defs/InlineProduct"
}
},
"entities": {
"type": "array",
"description": "Entities parsed from the response (if any). With include.shopping, an entity ChatGPT links to a product also carries `product`.",
"items": {
"type": "object",
"properties": {
"type": {
"type": "string",
"description": "Identifier of the entity's type"
},
"name": {
"type": "string",
"description": "Entity name"
},
"product": {
"$ref": "#/$defs/ShoppingProduct",
"description": "The product ChatGPT links this entity to: its price, url and merchant offers, as an inline product carries them. Present with `include.shopping` when the entity is a product ChatGPT shows a listing for; absent otherwise."
}
},
"required": [
"type",
"name"
]
}
},
"map": {
"type": "array",
"description": "Map entries for businesses or places parsed from the response (if any). Entries originate from the enrichment providers ChatGPT uses (Yelp, Google Business), with field names in camelCase. Only the fields filled in most often appear here; see the [API reference](/docs/reference) for every field.",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Identifier of the business (a Yelp ID or a Google Place ID)"
},
"provider": {
"type": "string",
"description": "Source of the data: \"yelp\", \"b1\" or \"b3\" (Google), or \"yelp-feed\""
},
"name": {
"type": "string",
"description": "Business name"
},
"position": {
"type": "integer",
"description": "Rank/position in the results (set by the parser)"
},
"address": {
"type": "string",
"description": "Complete street address"
},
"latitude": {
"type": "number",
"description": "Latitude from GPS"
},
"longitude": {
"type": "number",
"description": "Longitude from GPS"
},
"categories": {
"type": "array",
"description": "Business categories",
"items": {
"type": "string"
}
},
"rating": {
"type": "number",
"description": "Rating of the business (scale of 0-5)"
},
"reviewCount": {
"type": "integer",
"description": "Review count"
},
"description": {
"type": "string",
"description": "Business description"
},
"phone": {
"type": "string",
"description": "Phone number for contact"
},
"websiteUrl": {
"type": "string",
"format": "uri",
"description": "URL of the business's website"
}
}
}
},
"citationPills": {
"type": "array",
"description": "Inline citation pills parsed from the response (if any), i.e. citations shown in the body of the text. Every entry represents a single (pill, source) pair; grouping on `citationPillId` rebuilds each pill.",
"items": {
"type": "object",
"required": [
"label",
"citationPillId",
"url",
"domain",
"type",
"position"
],
"properties": {
"url": {
"type": "string",
"format": "uri",
"description": "URL the citation points to"
},
"label": {
"type": "string",
"description": "Title of this individual cited source. Never missing, but can be an empty string if the citation event carries no title — then identify the source by `domain` / `url`."
},
"description": {
"type": "string",
"description": "Text describing what the citation contains; left out if the citation event has no snippet, as with grouped-webpage cards that show only a title."
},
"domain": {
"type": "string",
"description": "Domain the cited source belongs to"
},
"datePublished": {
"type": "string",
"description": "Publication date of the source as an ISO 8601 date string. Left out when the citation event has no publication date."
},
"citationPillId": {
"type": "integer",
"description": "Zero-based ID common to every entry that comes from one chip; grouping on `citationPillId` rebuilds each pill. **Note:** ChatGPT numbers these from 0 for legacy reasons, whereas every other engine (Google AIO, AI Mode, Copilot, Perplexity, Gemini) numbers `citationPillId` from 1."
},
"type": {
"type": "string",
"enum": [
"searchResult",
"groupedWebpage"
],
"description": "Indicates which kind of citation event this came from: `searchResult` means an inline search citation, `groupedWebpage` a grouped-webpage card."
},
"position": {
"type": "integer",
"description": "Index of this source within the sibling `result.sources` array, starting at 1."
}
}
}
},
"ads": {
"type": "array",
"description": "Ads delivered with the ChatGPT response (present when include.ads is true). Several candidate ads are sent by OpenAI, yet the interface displays one at most; check `rendered` to see which ones were really displayed.",
"items": {
"type": "object",
"properties": {
"brand": {
"type": "object",
"description": "Details about the advertiser's brand",
"properties": {
"name": {
"type": "string",
"description": "Name of the advertiser's brand"
},
"url": {
"type": "string",
"format": "uri",
"description": "URL of the advertiser's brand"
},
"favicon": {
"type": "string",
"format": "uri",
"description": "Favicon URL of the advertiser's brand"
}
},
"required": [
"name",
"url"
]
},
"cards": {
"type": "array",
"description": "Carousel cards contained in the ad",
"items": {
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "Card title"
},
"body": {
"type": "string",
"description": "Text describing the card"
},
"url": {
"type": "string",
"format": "uri",
"description": "URL the card links to"
},
"image": {
"type": "string",
"format": "uri",
"description": "URL of the card's image"
}
},
"required": [
"title",
"body",
"url"
]
}
},
"visibility": {
"type": "string",
"description": "Whether OpenAI served the ad. `allowed`: the ad qualified to be shown; `hidden`: OpenAI suppressed it (an integrity check, for instance)."
},
"adsResponseIndex": {
"type": "integer",
"description": "Position of the ad's slot in the ad response OpenAI served. It reflects the order ads were served in, not what was displayed; use `rendered` for real exposure."
},
"rendered": {
"type": "boolean",
"description": "Indicates if the ad was rendered on screen as a card within the response. ChatGPT returns multiple candidate ads, yet the UI displays one at most; an ad with `rendered: false` was delivered but never shown."
}
},
"required": [
"brand",
"cards",
"visibility",
"adsResponseIndex",
"rendered"
]
}
},
"images": {
"type": "array",
"description": "The pictures ChatGPT shows in its answer, beside the places and things it names, in answer order: medium image, the page each comes from (url), its title and the picture shown (thumbnail). Absent when the answer shows none.",
"items": {
"$ref": "#/$defs/MediaItem"
}
},
"screenshot": {
"type": "string",
"format": "uri",
"description": "Present when include.screenshot is true and the answer came from a rendered page: the link to the PNG screenshot of the ChatGPT page once the answer finished."
}
}
}
},
"$defs": {
"ImagePosition": {
"type": "object",
"description": "Image offset within a slot, in pixels",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
}
},
"required": [
"x",
"y"
]
},
"InlineProduct": {
"type": "object",
"description": "Product mentioned inline in the response text, with prices and offers",
"properties": {
"product": {
"$ref": "#/$defs/ShoppingProduct"
},
"render_as": {
"type": "string",
"description": "Way the product is displayed in the response",
"enum": [
"inline",
"hero",
"block"
]
},
"details": {
"type": "object",
"description": "Product reasoning and reviews loaded from the sidebar API",
"properties": {
"rationale": {
"type": "object",
"properties": {
"rationale": {
"type": "string",
"description": "Explanation the AI gave for suggesting this product"
},
"citations": {
"type": "array",
"description": "Sources cited in support of the rationale",
"items": {
"type": "object"
}
}
}
},
"reviews": {
"type": "object",
"properties": {
"summary": {
"type": "string",
"description": "Overview of what product reviews say"
},
"reviews": {
"type": "array",
"items": {
"$ref": "#/$defs/ProductReview"
}
}
}
}
}
}
}
},
"MediaItem": {
"type": "object",
"description": "A video or image that appears in the response",
"properties": {
"title": {
"type": "string",
"description": "Media title"
},
"url": {
"type": "string",
"description": "Media URL"
},
"thumbnail": {
"type": "string",
"description": "Thumbnail URL"
},
"medium": {
"type": "string",
"description": "Media type",
"enum": [
"video",
"image",
"map"
]
},
"source": {
"type": "string",
"description": "Source platform"
},
"image_width": {
"type": "number",
"description": "Width of the original image"
},
"image_height": {
"type": "number",
"description": "Height of the original image"
},
"thumbnail_width": {
"type": "number",
"description": "Thumbnail width"
},
"thumbnail_height": {
"type": "number",
"description": "Thumbnail height"
}
}
},
"OfferTag": {
"type": [
"object",
"null"
],
"description": "Promotion label attached to an offer",
"properties": {
"text": {
"type": "string",
"description": "Tag text"
},
"tooltip": {
"type": "string",
"description": "Text of the tag's tooltip"
}
}
},
"PriceDetails": {
"type": "object",
"description": "Itemized breakdown of an offer's price",
"properties": {
"display_price": {
"type": [
"string",
"null"
],
"description": "Price formatted for display"
},
"base": {
"type": "string",
"description": "Base price of the product"
},
"shipping": {
"type": [
"string",
"null"
],
"description": "Shipping cost"
},
"tax": {
"type": [
"string",
"null"
],
"description": "Tax amount"
},
"total": {
"type": "string",
"description": "Total price"
}
}
},
"ProductReview": {
"type": "object",
"description": "A single product review taken from the sources",
"properties": {
"source": {
"type": "string",
"description": "Review source"
},
"theme": {
"type": "string",
"description": "Aspect or theme the review covers"
},
"summary": {
"type": "string",
"description": "Text summarizing the reviews"
},
"sentiment": {
"type": "string",
"description": "Review sentiment",
"enum": [
"positive",
"neutral",
"negative"
]
},
"cite": {
"type": [
"string",
"null"
],
"description": "Citation reference"
},
"rating": {
"type": [
"number",
"null"
],
"description": "Source rating"
},
"num_reviews": {
"type": [
"integer",
"null"
],
"description": "Review count reported by the source"
},
"cite_url": {
"type": [
"string",
"null"
],
"description": "Citation URL"
}
}
},
"RatingGroupedCitation": {
"type": "object",
"description": "Details about where the rating comes from, including supporting websites",
"properties": {
"title": {
"type": "string",
"description": "Source title"
},
"url": {
"type": "string",
"description": "Source URL"
},
"supporting_websites": {
"type": "array",
"description": "Websites cited in support",
"items": {
"type": "object"
}
}
}
},
"ShoppingOffer": {
"type": "object",
"description": "Offer from one specific merchant, with price details",
"properties": {
"merchant_name": {
"type": "string",
"description": "Merchant name"
},
"merchant_subtitle": {
"type": [
"string",
"null"
],
"description": "Subtitle or extra details for the merchant"
},
"product_name": {
"type": "string",
"description": "Product title as the merchant lists it"
},
"url": {
"type": "string",
"description": "Offer link carrying attribution"
},
"price": {
"type": "string",
"description": "Offer price"
},
"details": {
"type": "string",
"description": "Availability and delivery details"
},
"original_price": {
"type": [
"string",
"null"
],
"description": "Pre-discount price"
},
"available": {
"type": "boolean",
"description": "Product availability flag"
},
"checkoutable": {
"type": "boolean",
"description": "True if the product supports direct checkout"
},
"is_digital": {
"type": [
"boolean",
"null"
],
"description": "True for digital goods"
},
"checkout_payload": {
"type": [
"string",
"null"
],
"description": "Data carried in the checkout payload"
},
"checkout_image_urls": {
"type": [
"array",
"null"
],
"description": "URLs of images shown at checkout",
"items": {
"type": "string"
}
},
"shop_id": {
"type": [
"string",
"null"
],
"description": "Shop identifier"
},
"provider": {
"type": "string",
"description": "Identifier of the engine's source for this product"
},
"price_details": {
"$ref": "#/$defs/PriceDetails"
},
"tag": {
"$ref": "#/$defs/OfferTag"
}
}
},
"ShoppingProduct": {
"type": "object",
"description": "Details for a single product",
"properties": {
"title": {
"type": "string",
"description": "Product name"
},
"position": {
"type": "integer",
"description": "Rank starting at 1, counted over every product in every shopping card of the response (one continuous sequence that does not restart for each card)."
},
"url": {
"type": "string",
"description": "URL of the product page"
},
"description": {
"type": "string",
"description": "Product description"
},
"price": {
"type": "string",
"description": "Current price"
},
"featured_tag": {
"type": "string",
"description": "Style or category tag for the product"
},
"rating": {
"type": "number",
"description": "Rating of the product (0-5)"
},
"num_reviews": {
"type": "integer",
"description": "Review count"
},
"image_urls": {
"type": "array",
"description": "URLs of the product images",
"items": {
"type": "string"
}
},
"id": {
"type": "string",
"description": "Product identifier"
},
"variants": {
"description": "Variants of the product (e.g. size or color)"
},
"offers": {
"type": "array",
"description": "Offers from several merchants, each with price details",
"items": {
"$ref": "#/$defs/ShoppingOffer"
}
},
"rating_grouped_citation": {
"$ref": "#/$defs/RatingGroupedCitation"
# --- truncated at 32 KB (36 KB total) ---
# Full source: https://artifacts.apis.io/answerline-dev/json-schema/answerline-dev-chat-gptmonitor-response-schema.json
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/answerline-dev-chat-gptmonitor-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.