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.