Botstar

Learn how to use Botstar with Composio

Overview

SLUG: BOTSTAR

Description

BotStar is a comprehensive chatbot platform that enables businesses to design, develop, and train chatbots visually for Messenger and websites.

Authentication Details

bearer_token
stringRequired

Connecting to Botstar

Create an auth config

Use the dashboard to create an auth config for the Botstar toolkit. This allows you to connect multiple Botstar accounts to Composio for agents to use.

1

Select App

Navigate to the Botstar toolkit page and click “Setup Integration”.

2

Configure Auth Config Settings

Select among the supported auth schemes of and configure them here.

3

Create and Get auth config ID

Click “Create Integration”. After creation, copy the displayed ID starting with ac_. This is your auth config ID. This is not a sensitive ID — you can save it in environment variables or a database. This ID will be used to create connections to the toolkit for a given user.

Connect Your Account

Using API Key

1from composio import Composio
2from composio.types import auth_scheme
3
4# Replace these with your actual values
5botstar_auth_config_id = "ac_YOUR_BOTSTAR_CONFIG_ID" # Auth config ID created above
6user_id = "0000-0000-0000" # UUID from database/app
7
8composio = Composio()
9
10def authenticate_toolkit(user_id: str, auth_config_id: str):
11 # Replace this with a method to retrieve an API key from the user.
12 # Or supply your own.
13 user_api_key = input("[!] Enter API key")
14
15 connection_request = composio.connected_accounts.initiate(
16 user_id=user_id,
17 auth_config_id=auth_config_id,
18 config={"auth_scheme": "API_KEY", "val": user_api_key}
19 )
20
21 # API Key authentication is immediate - no redirect needed
22 print(f"Successfully connected Botstar for user {user_id}")
23 print(f"Connection status: {connection_request.status}")
24
25 return connection_request.id
26
27
28connection_id = authenticate_toolkit(user_id, botstar_auth_config_id)
29
30# You can verify the connection using:
31connected_account = composio.connected_accounts.get(connection_id)
32print(f"Connected account: {connected_account}")

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Botstar toolkit’s playground

Python
1from composio import Composio
2from openai import OpenAI
3import json
4
5openai = OpenAI()
6composio = Composio()
7
8# User ID must be a valid UUID format
9user_id = "0000-0000-0000" # Replace with actual user UUID from your database
10
11tools = composio.tools.get(user_id=user_id, toolkits=["BOTSTAR"])
12
13print("[!] Tools:")
14print(json.dumps(tools))
15
16def invoke_llm(task = "What can you do?"):
17 completion = openai.chat.completions.create(
18 model="gpt-4o",
19 messages=[
20 {
21 "role": "user",
22 "content": task, # Your task here!
23 },
24 ],
25 tools=tools,
26 )
27
28 # Handle Result from tool call
29 result = composio.provider.handle_tool_calls(user_id=user_id, response=completion)
30 print(f"[!] Completion: {completion}")
31 print(f"[!] Tool call result: {result}")
32
33invoke_llm()

Tool List

Tool Name: BotStar LiveChat onClose Callback

Description

Tool to register a callback when the chat window is closed. use after the widget is initialized. example prompt: "register an onclose handler that logs 'goodbye!' to the console."

Action Parameters

callback_code
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get BotStar Application IDs

Description

Tool to retrieve the botstar application id (`appid`). use when initializing or reinitializing the live chat widget.

Action Parameters

bot_id
integer
bot_name
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Livechat boot

Description

Tool to reinitialize the live chat widget with provided data. use after initial load to reset or update widget configuration.

Action Parameters

appId
stringRequired
block
string
mode
string
user
object
variables
object

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Close BotStar Livechat Widget

Description

Tool to hide the live chat window. use when the chat widget is configured in livechat or popup mode.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Livechat on open

Description

Tool to register a callback when the chat window is opened. use after widget initialization.

Action Parameters

callback
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Livechat open

Description

Tool to show the live chat window. use after the widget has been bootstrapped with botstarapi('boot') to programmatically open the chat window (mode must be 'livechat' or 'popup').

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Livechat update

Description

Tool to update user details on the current live chat session. use when you need to modify user profile attributes during an active conversation.

Action Parameters

avatar
string
birthday
string
email
string
first_name
string
gender
string
last_name
string
tags
array
user_id
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get BotStar Webview Parameter

Description

Tool to retrieve a parameter value passed from the botstar chatbot to the webview. use inside onchatbotready after your page loads in modal mode with bs:input meta tags.

Action Parameters

parameter_name
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Webview send response

Description

Tool to send data from the webview back to the botstar chatbot. use when you need to transmit responses or custom outputs from an open webview.

Action Parameters

outlet_name
stringRequired
outputs
objectRequired
response
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired