Skip to main content
POST
Explain search results
Explain a result set you already fetched. Unlike the three search endpoints this one takes a JSON body: search_id (required — the id returned by post_scholar_search_web, post_scholar_search_scholar or post_scholar_search_mixed), plus detail_level (BRIEF / MODERATE / DETAILED), language, and response_mode. ⚠️ Use response_mode: NON_STREAMING. It returns {"message": "…"} as JSON, measured at about 2 KB. The COMPLETE and INCREMENTAL modes emit server-sent events in which each event repeats the whole answer so far — the identical explanation measured 177 KB that way, roughly 90 times larger, and a tool call cannot consume a stream incrementally anyway. It only ever explains an existing search; it cannot run one.

Example

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
search_id
string
required

ID of the search to explain

response_mode
enum<string>
default:NON_STREAMING

Format of the explanation response. COMPLETE and INCREMENTAL stream server-sent events; NON_STREAMING returns a JSON response.

Available options:
COMPLETE,
INCREMENTAL,
NON_STREAMING
language
string
default:en

Language code for the explanation (e.g., en, zh, ar)

Example:

"ar"

detail_level
enum<string>
default:MODERATE

Level of detail in the explanation

Available options:
BRIEF,
MODERATE,
DETAILED

Response

Successful explanation response. COMPLETE/INCREMENTAL stream text/event-stream; NON_STREAMING returns application/json.

JSON explanation response returned when response_mode is NON_STREAMING.

message
string
required

Generated explanation text.