Lemlist

Learn how to use Lemlist with Composio

Overview

SLUG: LEMLIST

Description

lemlist is a prospecting tool that automates multichannel outreach, enabling users to find leads with valid contact information and reach them across email, LinkedIn, or calls with personalized messages.

Authentication Details

generic_api_key
stringRequired
generic_token
stringRequired

Connecting to Lemlist

Create an auth config

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

1

Select App

Navigate to Lemlist.

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

Tools

Executing tools

To prototype you can execute some tools to see the responses and working on the Lemlist 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=["LEMLIST"])
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: Delete Schedule

Description

Tool to delete a specific schedule by scheduleid. use when you need to remove a schedule permanently after confirming its id.

Action Parameters

scheduleId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Delete Unsubscribed Email

Description

Tool to delete an email from the unsubscribed list. use when restoring a subscriber who has opted back in and you need to remove them from the suppressed contacts.

Action Parameters

email
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Unsubscribe Lead From Campaign

Description

Tool to unsubscribe a lead from a campaign. use when you need to stop further outreach by removing a lead from the specified campaign.

Action Parameters

campaignId
stringRequired
leadId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired
successfull
booleanRequired

Tool Name: Get All Webhooks

Description

Tool to retrieve the list of all webhooks configured for the team. use when you need to sync or audit active webhooks.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Campaign By ID

Description

Tool to retrieve a specific campaign by campaignid. use when you need detailed campaign information by id.

Action Parameters

campaignId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Start Campaign Export

Description

Tool to start an asynchronous export of all campaign statistics (csv). use when you need to initiate a csv export for a given campaign and track its progress.

Action Parameters

campaignId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Campaign Export Status

Description

Tool to check the status of an asynchronous campaign export. use after starting an export to poll until done or error.

Action Parameters

campaignId
stringRequired
exportId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Campaign Sequences

Description

Tool to retrieve a list of all sequences for a campaign with steps and conditions. use after fetching campaign to inspect its nested sequences and branching rules.

Action Parameters

campaignId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Export Campaign Leads

Description

Tool to export campaign leads with state filtering and choose between json or csv output. use when you need to download leads and their statuses for reporting or analysis.

Action Parameters

campaignId
stringRequired
format
stringDefaults to json
state
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Export Unsubscribes

Description

Tool to download a csv file containing all unsubscribed email addresses. use when you need to export the full unsubscribes list for analysis or archival.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Unsubscribed Email

Description

Tool to retrieve a single unsubscribed email record. use when you need to verify if a specific email has opted out of campaigns before re-subscribing them.

Action Parameters

email
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve Activities

Description

Tool to fetch recent campaign activities. use after authentication to retrieve activities filtered by campaignid, type, or limit.

Action Parameters

campaignId
string
limit
integer
type
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve Lead By Email

Description

Tool to retrieve a lead by their email address. use when you have a lead's email to fetch complete lead details.

Action Parameters

email
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Retrieve Unsubscribes

Description

Tool to retrieve the list of all people who are unsubscribed. use when you need to sync or audit unsubscribed contacts across your campaigns.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Team Credits

Description

Tool to retrieve credits left in the team. use after authenticating your session.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get Team Info

Description

Tool to retrieve information about your team. use after authentication to inspect current team settings, members, webhooks, and enabled features.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Get User Info

Description

Tool to retrieve all information of the authenticated user. use after confirming a valid access token.

Action Parameters

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Mark Lead as Not Interested in Campaign

Description

Tool to mark a lead as not interested in a specific campaign. use after confirming campaign and lead ids to set status to not interested.

Action Parameters

campaignId
stringRequired
leadId
stringRequired
status
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Campaign

Description

Tool to update settings of a campaign. use after fetching or creating a campaign to adjust name, stop-on behaviors, and other campaign flags.

Action Parameters

autoLeadInterest
boolean
campaignId
stringRequired
disableTrackClick
boolean
disableTrackOpen
boolean
disableTrackReply
boolean
leadsPausedByInterest
boolean
name
string
opportunityClicked
boolean
opportunityReplied
boolean
sequenceSharing
boolean
stopOnEmailReplied
boolean
stopOnLinkClicked
boolean
stopOnLinkClickedFilter
string
stopOnMeetingBooked
boolean

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Update Schedule

Description

Tool to update an existing schedule with new parameters. use after retrieving schedule details to adjust days, time window, and limits.

Action Parameters

days
array
enabled
boolean
maxPerDay
integer
name
string
scheduleId
stringRequired
sendEnd
string
sendStart
string
timezone
string

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Add Unsubscribe Email/Domain

Description

Tool to add an email or domain to the unsubscribed list. use when you need to globally block sending to a specific recipient or domain.

Action Parameters

email
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Add Variables to Lead

Description

Tool to add one or more variables to a lead. use when you need to enrich a lead with custom data after its creation or retrieval.

Action Parameters

company
stringRequired
leadId
stringRequired
variables
objectRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Associate schedule with campaign

Description

Tool to associate a schedule with a campaign. use after confirming both campaignid and scheduleid to bind a schedule to its campaign.

Action Parameters

campaignId
stringRequired
scheduleId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Campaign

Description

Tool to create a new campaign. use after confirming the team id. returns campaign, sequence, and schedule ids.

Action Parameters

name
stringRequired
teamId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Create Schedule

Description

Tool to create a new schedule for the team. use when you need to define custom active times or delays for outreach operations.

Action Parameters

end
string
name
string
secondsToWait
integer
start
string
timezone
string
weekdays
array

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Mark Lead As Interested

Description

Tool to mark a lead as interested in all campaigns. use when a lead responds positively and you want to advance or personalize your outreach.

Action Parameters

email
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Mark Lead As Interested In Campaign

Description

Tool to mark a lead as interested in a specific campaign. use after confirming the lead's positive engagement in that campaign.

Action Parameters

campaignId
stringRequired
leadEmail
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Mark Lead As Not Interested

Description

Tool to mark a lead as not interested in all campaigns. use when a lead explicitly declines outreach and should be paused across campaigns.

Action Parameters

lead_id_or_email
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Pause a running campaign

Description

Tool to pause a running campaign. use after confirming you have the correct campaign id and that the campaign is currently running.

Action Parameters

campaignId
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired

Tool Name: Pause Lead

Description

Tool to pause a lead in all campaigns or a specific campaign. use when you want to temporarily halt outreach to a lead.

Action Parameters

campaignId
string
leadIdOrEmail
stringRequired

Action Response

data
objectRequired
error
string
successful
booleanRequired