# Bot Commands

HTTP API commands are being sent to the bot by calling a special HTTP URL:

<https://api.mysmartbots.com/api/bot.html>

The request can be either **GET** or **POST**. Read the [Doing HTTP API Calls](/doc/doing-http-api-calls-c6FSEMF7bP) page for more info.

# Testing

You can compose and test your queries using SmartBots API Testing Suite:  
<https://www.mysmartbots.com/api/testing.html>

# Available bot HTTP commands

| Command | Description |
|---------|-------------|
| **Status** |
| [`status`](/doc/status-as42ONyZD5) | Returns the online status of the bot. |
| [`login`](/doc/login-oa8EbiQ8cj) | Initiates bot login sequence. |
| [`logout`](/doc/logout-3gvrtMhaAr) | Initiates bot logout sequence. |
| [`set_http_callback`](/doc/set_http_callback-YXRAyPW1xi) | Specifies your HTTP callback script to receive bot events (invitations, IMs etc). |
| **Messaging** |
| [`im`](/doc/im-cvxfifKLCr) | Sends an Instant Message to a specific user. |
| [`reply_dialog`](/doc/reply_dialog-LuoJfbkNCr) | Virtually "presses" a pop-up dialog button (which was displayed by an in-world script). |
| [`say_chat_channel`](/doc/say-98qcGDYRYO) | Says message over a specific chat channel. |
| [`typing_start`](/doc/typing_start-9JVJFHarAq) | Sends "typing" in chat to a specific user. |
| [`typing_stop`](/doc/typing_stop-El5bdwRh4p) | Stops sending "typing" in chat to a specific user. |
| **Friendship** |
| [`cancel_friendship`](/doc/cancel_friendship-pZ8Dy9slkO) | Removes an avatar from the bots friend list. |
| [`edit_friendship`](/doc/edit_friendship-SzkRU3dLP2) | Enables/Disables friend abilities such as Online Status, Show On Map, or Edit Rights |
| [`friends`](/doc/friends-UJXPL5cS2R) | Lists the bot’s friends. |
| [`friendship_offer_accept`](/doc/friendship_offer_accept-buYUZr6uaS) | Accept (or reject) a friendship offer sent by other avatar. |
| [`offer_friendship`](/doc/offer_friendship-Q1VorTg6lL) | Offers friendship to a resident. |
| **Inventory** |
| [`inventory_delete`](/doc/inventory_delete-LhWcG2DGGm) | Deletes an item from the bot's inventory. |
| [`inventory_give`](/doc/inventory_give-froLVSjDID) | Commands bot to send an inventory item or folder to specific avatar. |
| [`inventory_list`](/doc/inventory_list-z71e9CPOK6) | Returns a list ofthe bot's inventory folder contents. |
| [`inventory_offer_accept`](/doc/inventory_offer_accept-8A4Dzkl9fd) | Accept (or reject) an inventory invitation sent by other avatar or in-world script. |
| [`inventory_to_prim`](/doc/inventory_to_prim-FrN11Mej52) | Put an item from inventory to in-world prim |
| [`notecard_create`](/doc/notecard_create-j4K6GxnZeZ) | Create a notecard in the bot's inventory. |
| [`notecard_edit`](https://n) | Edit a notecard in the bot's inventory. |
| [`notecard_read`](/doc/notecard_read-Qg2zhntcaP) | Edit a notecard in the bot's inventory. |
| [`texture_upload`](/doc/texture_upload-SlHMINVoow) | Uploads and creates a new texture in inventory |
| **Appearance** |
| [`rebake`](/doc/rebake-2RE9OfXeRW) | Commands bot to rebake its appearance (reload its clothing and skin textures). |
| [`takeoff`](/doc/takeoff-2Jy7YDlhmf) | Removes a clothing item, body part or attachment (the opposite of the wear command). |
| [`wear`](/doc/wear-7Y2oATU3OE) | Commands bot to wear a clothing item, body part or attach an object. |
| **Group control** |
| [`group_activate`](/doc/group_activate-myqsLm18vn) | Activates a specific group (for example, to get build rights on the parcel). |
| [`group_role_activate`](/doc/activate_role-lEvBkA2wJ8) | Changes the active group tag/title to the corresponding role UUID. |
| [`group_info_2`](/doc/group_info_2-3mTFEUgS8I) | Returns the information about Second Life group, along with roles and titles. |
| [`group_join`](/doc/group_join-qPh44lAuTM) | Tries to join a group by UUID. |
| [`group_leave`](/doc/group_leave-I8ayQoRsgi) | Commands bot to leave the group specified by a UUID. |
| [`group_list_2`](/doc/group_list2-UH2HnoZbxe) | Returns the bot's groups list as JSON, along with roles and titles. |
| [`group_list_roles`](/doc/list_group_roles-i8kFKeI1rf) | Returns a list the roles in given group. |
| [`group_offer_accept`](/doc/group_offer_accept-ikXknpi6rD) | Accept (or reject) a group invitation sent by other avatar. |
| [`group_visibility`](/doc/group_visibility-Cu1lNWftp6) | Controls the group visibility in bot profile. |
| *Older commands:* |             |
| [`group_info`](/doc/group_info-ZT7LRPlbha) | Returns the information about Second Life group.<br>*(Usage of* [`*group_info_2*`](/doc/group_info_2-3mTFEUgS8I) *is recommended)* |
| [`listgroups`](/doc/listgroups-2cvcMtEc2O) | Returns a list of the Second Life groups the bot is member of (plain LSL-friendly version) |
| [`listgroups_extended`](/doc/listgroups_extended-gllXgbTvxn) | Returns the bot's groups list, with additional details.<br>*(Usage of* `*group_list_2*` *isrecommended)* |
| *activate_group* | Older name and alias for `group_activate` |
| *activate_role* | Older name and alias for `group_role_activate` |
| list_group_roles | Older name and alias for [`group_list_roles`](/doc/list_group_roles-i8kFKeI1rf) |
| **Group members and communications** |
| [`group_invite`](/doc/group_invite-w71Pe1iFmS) | Sends a group invitation to a specific resident. |
| [`group_eject`](/doc/group_eject-8KspZNMkvW) | Ejects residents from the group. |
| [`group_member_setrole`](/doc/setrole-MzTqnfg5FF) | Puts member of a group in a specific role.*(older name and alias:* `*setrole*`*)* |
| [`send_notice`](/doc/send_notice-Wsfk2HfRcn) | Sends a notice to the group. |
| [`send_group_im`](/doc/send_group_im-TNfCq0fm5g) | Sends a message to group chat. |
| **Money** |
| [`get_balance`](/doc/get_balance-L1oIGMHSde) | Returns avatar L$ balance. |
| [`give_money`](/doc/give_money-ZlWdv4JeIk) | Commands bot to send money (L$) to specific avatar. |
| [`give_money_object`](/doc/give_money_object-cXgSy0Jy42) | Commands bot to send money (L$) to a specific object. |
| **Avatar info** |
| [`avatar_info`](/doc/avatar_info-Wgtq8r0MEs) | Returns the specific avatar's info. |
| [`avatar_groups`](/doc/avatar_groups-5DuuH1iwyi) | Returns a list of a resident's groups. |
| [`avatar_picks`](/doc/avatar_picks-szGcZG5Kiy) | Returns a list of a resident's picks. |
| [`key2name`](/doc/key2name-ZbgZeIVULN) | Returns avatar Second Life name by UUID. |
| [`name2key`](/doc/name2key-Xx5elYSLu3) | Returns avatar UUID by Second Life name. |
| [`offer_teleport`](/doc/offer_teleport-KoaU5fgAKk) | Sends a teleport offer to the resident. |
| `get_managers` | HTTP API/Bot Commands/get managers |
| **Movement** |
| [`move`](/doc/move-lHwLvFqK0y) | Start or stop bot movement and rotations. |
| [`walkto`](/doc/walkto-CnxE2fQaXY) | Walk to a position within the current region. |
| [`fly`](/doc/fly-Zbh1pHyJjs) | Commands the bot to fly. |
| [`sit`](/doc/sit-EMdT9NKtQT) | Commands bot to sit on a specific prim. |
| [`teleport`](/doc/teleport-BePFTVITl8) | Teleports bot to specific location. |
| [`teleport_offer_accept`](/doc/teleport_offer_accept-2FjeJ2f9lC) | Accept (or reject) a teleport offer sent by other avatar. |
| **World interaction** |
| [`attachments`](/doc/attachments-Hh6IZ0GKBr) | Returns a list of the bot's attachments (including HUD objects). |
| [`bot_location`](/doc/bot_location-SUTQaXkYh6) | Returns the current location of the bot. |
| [`inworld_prim_take`](/doc/inworld_prim_take-9WvMY7meR1) | Takes or copies in-world prim into bot's inventory. |
| [`find_objects`](/doc/find_objects-m2B1q8Zp3P) | Returns the list of objects rezzed in the region. |
| [`nearbyavatars_scan`](/doc/nearbyavatars_scan-T3tO8BDY45) | Scans current region for other avatars. |
| [`touch_attachment`](/doc/touch_attachment-GLSp5wxYAS) | Touches an object attached to the bot (HUD or attachment). |
| [`touch_prim`](/doc/touch_prim-hOrSKLepQW) | Touches a prim in-world. |
| [`touch_prim_coord`](/doc/touch_prim_coord-Z8WYdvAPMW) | Touches a prim in-world by using its coordinates. |
| **Region (sim) control** |
| [`sim_access`](/doc/sim_access-LnphZiwEul) | Control access to the sim. |
| [`sim_managers`](/doc/sim_managers-cC3ik9IXpo) | Control managers of the sim. |
| [`sim_info_current`](/doc/sim_info_current-4VdGuJ4MsG) | Gets the settings and access info of the current sim (the region the bot is currently in). |
| [`sim_kick`](/doc/sim_kick-6chfUzqcUD) | Kicks resident (without banning from the sim) |
| [`sim_restart`](/doc/sim_restart-dYzXfCcCfS) | Begins the sim restart routine. Also used to cancel the restart routine previously started. |
| [`sim_return`](/doc/sim_return-dsYew1Ba0A) | Returns objects of the specific resident from the sim. |
| [`sim_send_message`](/doc/sim_send_message-OdZ9cUQRQ0) | Sends a message to all visitors of the sim. |
| [`region_info`](/doc/region_info-8fdatSETFG) | Gets the region info of a sim. |
| **Parcel control** |
| [`parcel_buy`](/doc/parcel_buy-nN5wfiatPP) | Purchases the parcel at specific point of the region |
| [`parcel_eject`](/doc/parcel_eject-DCbwS7b6fx) | Ejects avatar from bot's current parcel |
| [`parcel_info`](/doc/parcel_info-vYKCahLBLN) | Returns a lot of information about a parcel. |
| [`parcel_info_update`](/doc/parcel_info_update-fS8HQkILFF) | Update parcel details, including the name, description and selling options |
| [`parcel_list`](/doc/parcel_list-GZtOACigCx) | Retrieves all parcels of the current sim |


---

# Restrictions

API frequency restrictions may be applied for numerous subsequent queries (especially messaging ones: [`im`](/doc/im-cvxfifKLCr), [`send_group_im`](/doc/send_group_im-TNfCq0fm5g) etc). We suggest maintaining about 3 seconds delay between the subsequent queries since SL also caps delivery at this rate.


:::info
SmartBots API query returns the following error message when you hit the frequency restriction:  
**Frequent API requests throttled**

:::

---

**Documents**

- [Appearance](https://sb-docs-dev.getoutline.com/s/dev/doc/appearance-Iv12gojXoy)
- [Avatar](https://sb-docs-dev.getoutline.com/s/dev/doc/avatar-bYC7OyQvlF)
- [Avatar info](https://sb-docs-dev.getoutline.com/s/dev/doc/avatar-info-Lk2VjxDkR0)
- [Friendship](https://sb-docs-dev.getoutline.com/s/dev/doc/friendship-D0FVuQT8YF)
- [Group management](https://sb-docs-dev.getoutline.com/s/dev/doc/group-management-f3ocgpcB22)
- [Group membership](https://sb-docs-dev.getoutline.com/s/dev/doc/group-membership-byrNtsoXbF)
- [Inventory](https://sb-docs-dev.getoutline.com/s/dev/doc/inventory-mCNw09GImg)
- [Messaging](https://sb-docs-dev.getoutline.com/s/dev/doc/messaging-aW07ddCBXm)
- [Movement](https://sb-docs-dev.getoutline.com/s/dev/doc/movement-8hY8S4weW9)
- [Land management](https://sb-docs-dev.getoutline.com/s/dev/doc/land-management-oiCLd7hg1u)
- [Sim management](https://sb-docs-dev.getoutline.com/s/dev/doc/sim-management-yWuvuN9zhQ)
- [Scripting](https://sb-docs-dev.getoutline.com/s/dev/doc/scripting-S6BBzQ1nN1)
- [Status](https://sb-docs-dev.getoutline.com/s/dev/doc/status-fBBMfoSFeI)
- [World interaction](https://sb-docs-dev.getoutline.com/s/dev/doc/world-interaction-PzwIPqzefw)