Skip to main content
taskType selects the engine. The envelope around the result is identical for all of them; what varies is the response object inside it.
Seven answer surfaces are available: CHATGPT, GEMINI, PERPLEXITY, GOOGLE, AIMODE and the NAVER_* family.

Which payload field an engine reads

Validation accepts either prompt or query, but each engine only reads the one it expects. Send the wrong one and the task queues, then fails.

Reads prompt

CHATGPT PERPLEXITY GEMINI

Reads query

GOOGLE AIMODE NAVER_AI_BRIEF NAVER_AI_TABFalls back to prompt if query is absent.

The include flags mostly do nothing

payload.include is part of the request contract, but in this implementation most engines produce a fixed-shape response and ignore it entirely. Only ChatGPT honours the full set.
include.rawResponse returns parsed stream events on the engines that stream JSON, and the untouched response body — as rawContent, not rawResponse — on the ones we fetch as a document. Either way it can be hundreds of KB, so it is off by default.Naver accepted this flag and silently ignored it until 2026-07-26. If you tried it before then and got nothing back, try again.
markdown is not a flag on every engine that returns it: Naver ships markdown unconditionally, because for it that is the answer’s real shape rather than a copy of text.
Setting an unhonoured flag is silently ignored — no error, no field. Notably html is only ever produced by CHATGPT, even though several engines accept the flag.

Response shapes

Reads prompt. Always returns text, sources[], timing.
Optional extras when Perplexity surfaces them: videos, images, hotels, places, shopping_cards.
Reads prompt. Always returns text, sources[], timing.
Reads query. This is not a bare AI Overview object — it is a search-results envelope carrying the AI Overview as one nullable member.
aioverview: null is the documented signal that Google showed no AI Overview for that query. It is not an error, and the SERP fields around it are still populated.
Top-level text and sources are deprecated aliases that duplicate aioverview.text and aioverview.sources. They exist so consumers of the older bare-AIO shape keep working. Read aioverview.* in new code.SERP panels are omitted when absent rather than emitted as null or [] — treat every one of them as optional.
Reads query. Fixed shape, no markdown or timing.
Reads prompt. The richest response in the API, and the only one where every include flag works. All flags default to on.
ChatGPT also supports multi-turn conversations — see Multi-turn.

Multi-turn (ChatGPT)

ChatGPT can hold a conversation. Omit both fields for the default single-shot behaviour.
1

Start a thread

Send newConversation: true. The response carries a conversationId.
2

Continue it

Send that conversationId back on the next turn.
Conversations are bound to the device that created them and expire after roughly two hours. A stale conversationId cannot be resumed.

Engine guides