InTouch Hub · Blue Isle Software

Campaign Monitor

Campaign Monitor API v3.3 — list account clients, read contact lists, create email campaigns, and pull campaign summary reports.

Provided free and as is, without warranty of any kind — including merchantability, fitness for a particular purpose, and the accuracy or completeness of any result. See the licence. You are responsible for checking what this produces before relying on it.

campaigncampaignsemailmarketingmarketing-emailmonitorreportsummary

Campaign Monitor

InTouch tool for the Campaign Monitor API v3.3. List your account clients, read a client's contact lists, create email campaign drafts, and pull campaign summary reports — all over the real https://api.createsend.com/api/v3.3 endpoints using standard-library Python only (no external dependencies).

Operations

Operation Method Endpoint Required params
list-clients GET /clients.json —
list-lists GET /clients/{clientId}/lists.json clientId
create-campaign POST /clients/{clientId}/campaigns.json clientId, name, subject, fromName, fromEmail, htmlUrl, listIds
campaign-summary GET /campaigns/{campaignId}/summary.json campaignId

create-campaign creates a draft campaign. Sending/scheduling it is a separate Campaign Monitor step and is intentionally out of scope for this tool.

apiKey setup

  1. Sign in to Campaign Monitor.
  2. Go to Account Settings (top-right menu) > API keys.
  3. Copy your API key.

Authentication uses HTTP Basic Auth where the username is your API key and the password is a dummy value (x), exactly as shown in the official docs:

curl -u "<apiKey>:x" https://api.createsend.com/api/v3.3/clients.json

The tool encodes this for you — just pass your key as apiKey. The single API key authenticates every operation; no OAuth flow or live browser auth is required.

Inputs

Name Required Default Description
apiKey yes — Campaign Monitor API key (Basic Auth username).
operation yes — One of the operations above.
clientId — "" Client ID (list-lists, create-campaign).
campaignId — "" Campaign ID (campaign-summary).
name — "" Campaign name (create-campaign).
subject — "" Email subject line (create-campaign).
fromName — "" From name shown to recipients (create-campaign).
fromEmail — "" Confirmed sending From address (create-campaign).
replyTo — "" Reply-To address; defaults to fromEmail when blank.
htmlUrl — "" Public URL of the campaign HTML (create-campaign).
listIds — "" Comma-separated contact list IDs (create-campaign).

Outputs

Examples

List the clients on your account:

{ "apiKey": "YOUR_KEY", "operation": "list-clients" }

List a client's contact lists:

{ "apiKey": "YOUR_KEY", "operation": "list-lists", "clientId": "abc123" }

Create a campaign draft:

{
  "apiKey": "YOUR_KEY",
  "operation": "create-campaign",
  "clientId": "abc123",
  "name": "June Newsletter",
  "subject": "Our June Update",
  "fromName": "Blue Isle",
  "fromEmail": "[email protected]",
  "htmlUrl": "https://example.com/campaigns/june.html",
  "listIds": "list1,list2"
}

Pull a campaign's summary report:

{ "apiKey": "YOUR_KEY", "operation": "campaign-summary", "campaignId": "camp789" }

Publishes

The keys a later task may reference as {{taskName.key}}. Referencing anything not listed here resolves to nothing at run time.

Input Properties

Every property this tool accepts, from its own tool.iml.

Property Type Required Default Description
apiKey string yes — DEPRECATED — bind an API Key credential to the task with credentialName instead. A key pasted here is stored in the workflow definition in clear and appears in every export of it. Still honoured for workflows built before the change.
operation string yes — One of: list-clients, list-lists, create-campaign, campaign-summary
clientId string no — Client ID. Required for list-lists and create-campaign.
campaignId string no — Campaign ID. Required for campaign-summary.
name string no — Campaign name (internal). Required for create-campaign.
subject string no — Email subject line. Required for create-campaign.
fromName string no — From name shown to recipients. Required for create-campaign.
fromEmail string no — Confirmed sending From email address. Required for create-campaign.
replyTo string no — Reply-To email address for create-campaign. Defaults to fromEmail when blank.
htmlUrl string no — Public URL of the campaign HTML content. Required for create-campaign.
listIds string no — Comma-separated contact list IDs to send to. Required for create-campaign.