Example request
citationPills array documented below.
Overview
ChatGPT cites sources inline as it answers; theresult.citationPills array exposes those citations denormalized: each entry is one (pill, source) pair carrying a per-source label (the source’s own page title from the citation event), a citationPillId that groups entries from the same chip, and the per-source url/domain/description/position, plus the ChatGPT-only type and datePublished fields.
When a chip cites N sources, the array contains N entries sharing the same citationPillId but carrying different per-source label, url, and domain. Group by citationPillId to recover the pill-level structure.
The markdown field contains these citations as inline [label](url) links; the text field contains plain text without the links. The citationPills array provides structured metadata about all inline citations.
The field is omitted from result when the answer has no pills.
Citation pill structure
Each citation pill contains:type values
type reflects the structure of the underlying citation event in ChatGPT’s response:
"searchResult"— a regular web search hit. ChatGPT provides a snippet, sodescriptionis populated."groupedWebpage"— a citation rendered in the ChatGPT UI as a multi-source card (commonly used for community references like Reddit, Wikipedia, and ArXiv). ChatGPT does not provide a per-source snippet for these, so thedescriptionkey is omitted entirely from the pill object.