InTouch Hub · Blue Isle Software

Smartlead

Run cold-email outreach sequences and manage campaigns via the Smartlead API. Lists and reads campaigns, creates new campaigns, adds leads to a campaign, and starts/pauses/stops a campaign.

Smartlead

Run cold-email outreach sequences and manage campaigns via the Smartlead API. This tool reads and creates campaigns, adds leads to a campaign, and controls campaign status (start / pause / stop).

Pure standard-library Python (urllib, json) — no third-party packages.

What it does

Each invocation makes a single Smartlead REST API call selected by the operation input and returns the raw response.

Operations

operation method + path required inputs optional inputs
list_campaigns GET /campaigns/
get_campaign GET /campaigns/{id} campaignId
create_campaign POST /campaigns/create name, clientId
add_leads_to_campaign POST /campaigns/{id}/leads campaignId, email firstName, lastName, companyName
update_campaign_status POST /campaigns/{id}/status campaignId, status

status values are Smartlead campaign states such as START, PAUSED, and STOPPED.

Outputs

The tool publishes:

On a transport-level failure or a missing required input, it prints {"error": "<message>"} and exits non-zero so the job step is marked FAILED. HTTP 4xx/5xx responses are NOT treated as failures — the status code and Smartlead's error body are returned in result so you can inspect them.

API key setup

  1. Log in to your Smartlead account.
  2. Go to Settings → API Keys (https://app.smartlead.ai/app/settings/profile).
  3. Create / copy your API key.
  4. Pass it as the apiKey input. It is sent as ?api_key=<apiKey> on each request — a single key authenticates every operation (no OAuth / token exchange required).

Examples

List all campaigns:

operation = list_campaigns
apiKey    = <YOUR_API_KEY>

Get one campaign:

operation  = get_campaign
apiKey     = <YOUR_API_KEY>
campaignId = 123456

Create a campaign:

operation = create_campaign
apiKey    = <YOUR_API_KEY>
name      = Q3 Outbound Founders
clientId  = 42

Add a lead to a campaign:

operation   = add_leads_to_campaign
apiKey      = <YOUR_API_KEY>
campaignId  = 123456
email       = [email protected]
firstName   = Jane
lastName    = Doe
companyName = Example Inc

Pause a running campaign:

operation  = update_campaign_status
apiKey     = <YOUR_API_KEY>
campaignId = 123456
status     = PAUSED