Dispatch a run
Dispatch a deep-research agent run over Tako knowledge and the web
Notes
- To authenticate, you’ll need a Tako API key. It’s best practice to store it as an environment variable to avoid hardcoding sensitive credentials in your code.
- The agent is asynchronous: this endpoint returns
202with anAgentRunwhosestatusisqueued. Poll Poll a run untilstatusiscompletedorfailed— theresult(a markdownanswerplus thecardsandweb_resultsthat back it) is populated oncompleted. - To stream progress live instead of polling, send
Accept: text/event-stream. The response is then a Server-Sent Events stream ofAgentStreamEnvelopeevents. See the Agent guide for an end-to-end example.
Choosing sources
By default the agent researches both Tako’s curated knowledge graph and the live web.source_indexes is optional — pass it only to restrict to one source. It’s a non-empty subset of ["data", "web"]:
["data", "web"](default) — both.["data"]— Tako’s curated knowledge graph only.["web"]— the live web only.
tako is accepted as a synonym for data.
Continuing a thread
Pass thethread_id from a prior run to ask a follow-up in the same conversation. Omit it to start a new thread.Authorizations
Body
Natural-language request for the agent.
"Compare Nvidia and AMD headcount since 2013"
Existing thread to continue (follow-up). Omit to start a new thread.
Agent effort level. Only 'medium' is currently supported.
medium Which sources the agent may use: 'data' (curated knowledge) and/or 'web' (open-web search). Defaults to ['data', 'web']. The legacy value 'tako' is accepted as a synonym for 'data'.
data, web ["data"]["web"]["data", "web"]BCP-47 locale. Drives the language of the agent's answer (a non-English locale makes the agent respond in that language) and the locale used when rendering card preview images. Defaults to en-US.
IANA timezone (e.g. 'America/New_York') used to render dates/times in card preview images. Does not affect the returned data.
Settings controlling the response/rendering.
Response
Run dispatched. With Accept: application/json, poll GET /v1/agent/runs/{run_id} for status. With Accept: text/event-stream, the response is an SSE stream of AgentStreamEnvelope events terminating at stream_done; if the stream ends without an agent_result event, poll GET /v1/agent/runs/{run_id} for terminal status.
The run resource returned by dispatch (202) and poll (GET).
queued, running, completed, failed "agent.run"Final agent output. answer is markdown; cards reuse the sibling TakoCard.