Lifebots symbol
Lifebots.cloud
OAuth 2.0 API
Getting started

Responses & errors

Every /user, /bots and /groups response uses the same envelope. Check success first; the result is in data, the problem in error.

Success

HTTP 200
{
  "success": true,
  "data": { "result": "OK", "action": "group_invite" },
  "meta": { "timestamp": "2026-10-02T12:00:00.000Z", "version": "1.0" }
}

The API refused the request

success is false and the HTTP status is 4xx or 5xx.

HTTP 403
{
  "success": false,
  "error": {
    "code": "INSUFFICIENT_SCOPE",
    "message": "Token does not have required scope: bots:groups",
    "details": {
      "required_scope": "bots:groups",
      "accepted_scopes": ["bots:groups"],
      "provided_scopes": ["read:profile", "bots:chat"]
    }
  },
  "meta": { "timestamp": "2026-10-02T12:00:00.000Z", "version": "1.0" }
}

The bot couldn't do it

The request was fine and reached the bot, but the bot couldn't carry it out — an invite still on cooldown, an avatar that doesn't exist. The HTTP status is still 200 and success is true; the outcome is in data.result ("OK" or "FAIL") with the reason in data.resulttext.

HTTP 200
{
  "success": true,
  "data": {
    "success": false,
    "result": "FAIL",
    "resulttext": "Invite on cooldown. 240s remaining.",
    "action": "group_invite"
  },
  "meta": { "timestamp": "2026-10-02T12:00:00.000Z", "version": "1.0" }
}
Some Second Life actions never report failure. An invite or eject in a group where the bot lacks that power returns "OK" but does nothing.

Error codes

CodeHTTPMeaning
INVALID_TOKEN401The token is missing, revoked or expired. Refresh it, or send the user through authorization again.
INSUFFICIENT_SCOPE403The token lacks the scope this endpoint needs. details lists the accepted and provided scopes.
MISSING_PARAMETERS400A required parameter is missing.
INVALID_PARAMETER400A parameter has the wrong format or value, e.g. a UUID that isn't one.
BOT_EXPIRED409The bot's subscription has expired, so it cannot be started.
PASSWORD_REQUIRED409The bot has no Second Life password stored. The owner must set it on lifebots.cloud.
NO_HOSTING_CHANNEL409The bot has no hosting slot assigned. Contact LifeBots support.
BOT_NOT_FOUND404No bot with that id belongs to the user.
GROUP_NOT_FOUND404The group isn't registered to the user (Registered Groups endpoints only).
GROUP_NOT_ACTIVE400The registered group isn't running — for example it is unpaid, expired, or its bot is not in the group.
USER_NOT_FOUND404The user's profile or avatar link is missing.
CANNOT_REVOKE_CURRENT_TOKEN400An app tried to revoke its own access with the token making the call.
COMMAND_FAILED500The bot could not be reached or the command threw. details.error says why, e.g. "Bot is not online."
RATE_LIMIT_EXCEEDED429Too many requests. Wait for Retry-After seconds.
INTERNAL_ERROR500Something failed on our side. Safe to retry later.

OAuth endpoint errors

/oauth/token, /oauth/tokeninfo, /oauth/userinfo and /oauth/revoke follow the OAuth 2.0 standard instead: no envelope, and errors carry error and error_description.

HTTP 400
{
  "error": "invalid_grant",
  "error_description": "Invalid or expired authorization code"
}
errorMeaning
invalid_requestA required parameter is missing, or PKCE is missing for a public app.
invalid_clientUnknown client_id or wrong client_secret.
invalid_grantThe code or refresh token is wrong, expired or already used, the redirect_uri doesn't match, or the code_verifier is wrong.
unauthorized_clientToken refresh is turned off for this app.
unsupported_grant_typeUse authorization_code or refresh_token.
invalid_tokenThe bearer token is missing, revoked or expired.
insufficient_scopeThe token lacks read:profile (userinfo).

Rate limits

EndpointsLimitCounted per
/oauth/*10 requests / minuteIP address
/bots/*60 requests / minuteAccess token
/user/*, /groups/*100 requests / minuteAccess token

Every response carries X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset. Over the limit you get 429RATE_LIMIT_EXCEEDED and a Retry-After header — wait that many seconds before trying again.

Lifebots symbol
Lifebots.cloud

Empowering Second Life experiences with intelligent bot automation and seamless group management solutions.

Product
Support
Company
Visit Us

© 2025 - 2026 LifeBots. Made with ❤️. All rights reserved.

LifeBots is not affiliated with Linden Research, Inc., or any of its affiliated entities or products, including, without limitation, Second Life (collectively, “Linden Lab”).

Initializing A New World of Second Life Bots...