POST /v3/bots/{bot_id}/runs
Starts a new task execution for a published Bot and returns a `task_id`.### How it works 1) Use `GET /v3/bots` to find a runnable Bot and copy its `bot_id`. 2) Use `GET /v3/bots/{bot_id}` to inspect its `input_schema`. 3) Provide an `input` object that conforms to that schema; use `{}` when no inputs are required.### Webhooks You can provide `callback_url` and/or `status_change_callback_url`. Both callbacks receive a complete `BotRunDetailResponse` without a data wrapper.
Authentication
HTTPBearer
Parameters
bot_id(path, string, required) — Public bot identifier.
Request body
{ "input": {}, "callback_url": "string", "status_change_callback_url": "string"}
Responses
200 — Run created.
{ "task_id": "string", "status": "created"}
400 — Bot not found (10111), or the current company's Bot is not published (10020).
{ "code": 123, "msg": "Invalid task_id", "data": null, "ts": 1786634400000, "time": "2026-08-13 18:00:00", "traceId": "a1b2c3d4e5f6"}
500 — Internal Server Error
{ "code": 123, "msg": "Invalid task_id", "data": null, "ts": 1786634400000, "time": "2026-08-13 18:00:00", "traceId": "a1b2c3d4e5f6"}
