Omnisend Automation Workflows
Is the welcome series actually on, and where do its clicks get tagged? Review Omnisend automation workflows block by block, switch them on or off, copy a proven flow as a new draft, set UTM tags per email block and send a test email before going live.
Connect this API to an AI agent Browse all specs
What you can do with Omnisend Automation Workflows via MCP
Every endpoint below becomes a governed tool your AI agent (Claude, ChatGPT, or a customer-facing VX agent) can call — with scoped permissions, sandbox testing, and audit logs.
| Method | Path | Operation | Description |
|---|---|---|---|
| GET | /automations |
listAutomations | List automation workflows with their status |
| POST | /automations |
createAutomation | Create a new automation workflow |
| GET | /automations/{id} |
getAutomation | Get one automation workflow with its trigger and blocks |
| PATCH | /automations/{id} |
updateAutomation | Rename or change settings of an automation workflow |
| PUT | /automations/{id}/blocks |
replaceAutomationBlocks | Replace the blocks (steps) of an automation workflow |
| POST | /automations/{id}/copy |
copyAutomation | Copy an automation workflow as a new one |
| POST | /automations/{id}/enable |
enableAutomation | Turn an automation workflow on |
| POST | /automations/{id}/disable |
disableAutomation | Turn an automation workflow off |
| GET | /automations/{id}/utm |
getAutomationUtm | Get the UTM tags used across a workflow's blocks |
| GET | /automations/{id}/blocks/{blockID}/utm |
getAutomationBlockUtm | Get the UTM tags of one workflow block |
| PUT | /automations/{id}/blocks/{blockID}/utm |
updateAutomationBlockUtm | Set the UTM tags of one workflow block |
| POST | /automations/{id}/blocks/{blockID}/test-email |
sendAutomationTestEmail | Send a test of a workflow's email block to chosen inboxes |
Authentication
omnisendApiKey
API key — sent as the Authorization header
Omnisend API key sent in the Authorization header as Omnisend-API-Key <your key>. Save the whole value, including the Omnisend-API-Key prefix, as the credential.
How to get a credential
- In Omnisend, open Store settings > API keys (app.omnisend.com/integrations/api-keys).
- Click Create API key, name it (e.g.
VX Agents automations). - Under permissions, give Automations read and write access.
- Copy the key and save it as
Omnisend-API-Key <key>.
Permissions used
| Permission | Operations |
|---|---|
Automations: read (automations.read) |
listAutomations, getAutomation, getAutomationUtm, getAutomationBlockUtm |
Automations: write (automations.write) |
createAutomation, updateAutomation, replaceAutomationBlocks, copyAutomation, enableAutomation, disableAutomation, updateAutomationBlockUtm, sendAutomationTestEmail |
Common errors
- 401 Unauthorized: the header is missing the
Omnisend-API-Keyprefix, or the key was deleted. Re-create the key and save it with the prefix. - 403 Forbidden: the key has no Automations permission. Edit the key's permissions.
- 400 Bad Request: invalid field or block layout, or a missing
Omnisend-Versionheader. - 404 Not Found: unknown workflow or block id; list workflows and read the workflow again for current block ids.
- 429 Too Many Requests: limit is 400 requests per minute per endpoint; wait and retry.
Store the key as a VX Agents credential so it is never pasted into chat.
Usage guide
Setup
- Credential: an Omnisend API key with Automations read/write, saved with its prefix as
Omnisend-API-Key <key>(it goes in theAuthorizationheader). Omnisend-Version: 2026-03-15is pinned on every call.- Worth pinning: the ids of the workflows you look after (welcome series, abandoned cart) once
listAutomationshas shown them.
Audit and adjust a workflow
listAutomationswithview=summary(addisEnabled=true,nameContains) to see which flows are on.getAutomationfor the full trigger, settings andblockstree; note the block ids of email actions.- Tracking:
getAutomationUtmshows the tags across the flow;getAutomationBlockUtm/updateAutomationBlockUtmread or set one block'stags(source,medium,campaignare all required; send""to reset one). sendAutomationTestEmailwithrecipients(1-5 addresses) to check an email block's saved content.disableAutomationneedscontactsInWorkflow:keeplets contacts already inside finish,exitremoves them.enableAutomationstarts it;enrollExisting: truealso enrols contacts who already qualify.
Build a new flow
- Safest path:
copyAutomation(optionalname, default "Copy of: ...") thenupdateAutomationto rename or changesettingsandexitConditions. createAutomationneedsname,triggerandblocks; each block has atemporaryIDand atype(delay,action,split,abTesting) plus exactly one matching field.replaceAutomationBlocksswaps the whole block list of an existing flow.- Read the source flow with
getAutomationfirst and reuse its structure rather than inventing triggers.
Good to know
- Always confirm before
enableAutomation,disableAutomation,sendAutomationTestEmailandreplaceAutomationBlocks: they email real customers or change who receives automated messages. - Workflow ids are 24-character hex strings. Timestamps are ISO 8601 (
2026-10-24T00:00:00Z). listAutomationspages withlimit(1-250, default 100) and theafter/beforecursors; sort bycreatedAtorupdatedAt.- Deletes are left out by design. Rate limit: 400 requests per minute per endpoint.
Source: Omnisend API reference (https://api-docs.omnisend.com/reference/get_automations), checked 2026-10-24.
How to use this spec
- Create a free VX Agents account (sandbox tools included).
- Open the marketplace and connect “Omnisend Automation Workflows” to an agent.
- Expose it as an MCP server for Claude/ChatGPT, or chat with it directly.