Retellai

Learn how to use Retellai with Composio

Overview

SLUG: RETELLAI

Description

RetellAI captures calls and transcripts, enabling businesses to analyze conversations, extract insights, and enhance customer interactions in one centralized platform

Authentication Details

generic_api_key
stringRequired

Connecting to Retellai

Create an auth config

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

1

Select App

Navigate to the Retellai 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
5retellai_auth_config_id = "ac_YOUR_RETELLAI_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 Retellai 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, retellai_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 Retellai 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=["RETELLAI"])
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: Buy a new phone number bind agents

Description

This endpoint allows purchasing a new phone number with a specified area code and binding it to designated agents for inbound and outbound calls. it requires json with agent ids and area code. responses indicate the creation status or errors.

Action Parameters

area_code
integer
inbound_agent_id
string
nickname
string
outbound_agent_id
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create a new outbound phone call

Description

Initiate an outbound call by post to '/v2/create-phone-call'. requires 'from number' and 'to number' in e.164 format. optional overrides and metadata supported. on success, returns call details including type, status, and ids.

Action Parameters

from_number
stringRequired
override_agent_id
string
to_number
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create a new web call

Description

The /v2/create-web-call endpoint creates a web call with a unique agent id, returning call details like type, token, call id, and status in json format, with a 201 response. optional metadata and variables can be included.

Action Parameters

agent_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete phone number

Description

Deletes an existing phone number identified by its e.164 format.

Action Parameters

phone_number
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: List all phone numbers

Description

Retrieves a list of all phone numbers associated with the account.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve call details

Description

The /v2/list-calls endpoint retrieves call records with filters (agent id, timestamps), offers sorting, pagination, and handles different responses (success, bad request, unauthorized, server error) in json format.

Action Parameters

filter__criteria__after__end__timestamp
integer
filter__criteria__after__start__timestamp
integer
filter__criteria__agent__id
array
filter__criteria__before__end__timestamp
integer
filter__criteria__before__start__timestamp
integer
limit
integerDefaults to 100
pagination_key
string
sort_order
stringDefaults to descending

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve call details by id

Description

Retrieve call details by id for web/phone calls, including type, agent id, status, timestamps, and web access token; covering responses from success to server errors.

Action Parameters

call_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve details of a specific phone number

Description

Fetches the details of a given phone number in e.164 format.

Action Parameters

phone_number
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve details of a specific voice

Description

"access specific voice details including its name, provider, accent, gender, and a preview audio url using the unique voice id. parameters required."

Action Parameters

voice_id
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update phone number

Description

Updates the agent bound to a purchased phone number.

Action Parameters

inbound_agent_id
string
nickname
string
outbound_agent_id
string
phone_number
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired