InTouch Hub · Blue Isle Software

Moosend

Manage mailing lists and trigger email automation campaigns via the Moosend API.

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.

campaignsemaillogmailing-listsmarketing-emailstatus

Moosend

Manage mailing lists and trigger email automation campaigns via the Moosend Web API v3.

A single InTouch tool that branches on an operation input. Standard-library Python only (no external packages) — it talks to https://api.moosend.com/v3 directly.

What it does

Operation Method & endpoint Description
list-lists GET /v3/lists.json List all active mailing lists in the account
get-list GET /v3/lists/{listId}/details.json Get details for a single mailing list
subscribe POST /v3/subscribers/{listId}/subscribe.json Add or update a contact on a list
trigger-campaign POST /v3/campaigns/{campaignId}/send.json Trigger sending of a campaign

Every call returns: - result — the raw Moosend response body (a JSON string) - status — the HTTP status code as a string

The tool never raises on a 4xx/5xx from Moosend; it returns the status and the error body so a calling job can inspect it. Only a transport failure (DNS, connection refused, timeout) marks the step FAILED.

API key setup

Moosend authenticates with an API key passed as the apikey query-string parameter on every request — there is no header or Bearer token.

  1. Log in to your Moosend account.
  2. Go to Settings → API Key.
  3. Copy the existing key or generate a new one.
  4. Pass it as the apiKey input to this tool.

The tool URL-encodes the key and appends it as ?apikey=... automatically.

Examples

List all mailing lists:

{
  "apiKey": "YOUR_MOOSEND_API_KEY",
  "operation": "list-lists"
}

Get one list's details:

{
  "apiKey": "YOUR_MOOSEND_API_KEY",
  "operation": "get-list",
  "listId": "8b3c5d2e-1a2b-3c4d-5e6f-7a8b9c0d1e2f"
}

Add / update a contact (with optional custom fields):

{
  "apiKey": "YOUR_MOOSEND_API_KEY",
  "operation": "subscribe",
  "listId": "8b3c5d2e-1a2b-3c4d-5e6f-7a8b9c0d1e2f",
  "email": "[email protected]",
  "name": "Jane Doe",
  "hasExternalDoubleOptIn": "true",
  "customFields": "{\"Country\":\"US\"}"
}

Trigger a campaign send:

{
  "apiKey": "YOUR_MOOSEND_API_KEY",
  "operation": "trigger-campaign",
  "campaignId": "1c2d3e4f-5a6b-7c8d-9e0f-1a2b3c4d5e6f"
}

Notes

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-lists, get-list, subscribe, trigger-campaign
listId string no get-list / subscribe: the Moosend mailing list ID (GUID).
email string no subscribe: email address of the contact to add or update.
name string no subscribe: optional display name of the contact.
hasExternalDoubleOptIn string no subscribe: set to 'true' if double opt-in was handled externally (skips Moosend's confirmation email).
customFields string no subscribe: optional JSON object of custom field name/value pairs, e.g. {"Country":"US"}.
campaignId string no trigger-campaign: the Moosend campaign ID (GUID) to send.