API Reference › Bots — Core
Login Bot
POST
/bots/{bot_id}/loginStart logging the bot in. Answers 202 straight away with status "connecting"; poll GET /bots/{bot_id} until status is "online" (or "error", with the reason in botError). Answers 200 if the bot is already online.
Find the user's bots, read their state, and start or stop them. Any bots:* scope grants the read endpoints here, since an app must be able to discover the bots it is allowed to control.
Usage
curl -X POST "https://api.lifebots.cloud/api/v1/bots/$BOT_ID/login" \
-H "Authorization: Bearer $ACCESS_TOKEN"Path parameters
| Name | Type | Description |
|---|---|---|
bot_id | UUID | The bot's avatar UUID (agentId from GET /bots). |
Body
None — send an empty body.
Example response
{
"success": true,
"data": {
"result": "OK",
"status": "connecting",
"message": "Login started. Poll GET /bots/{bot_id} until status is online or error."
},
"meta": {
"timestamp": "2026-10-02T12:00:00.000Z",
"version": "1.0"
}
}HTTP 202. Fails with 409 BOT_EXPIRED, PASSWORD_REQUIRED or NO_HOSTING_CHANNEL when the bot cannot be started.
Always check success; for commands the bot carries out, also check data.result. See Responses & errors.