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.

campaign-monitoremailmarketingcampaigns

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" }