composio-skills/customerio-automation/SKILL.md
Automate customer engagement workflows including broadcast triggers, message analytics, segment management, and newsletter tracking through Customer.io via Composio
npx skillsauth add ComposioHQ/awesome-claude-skills Customer.io AutomationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
4 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Automate customer engagement operations -- trigger targeted broadcasts, retrieve delivery metrics, manage audience segments, list newsletters and transactional templates, and inspect trigger execution history -- all orchestrated through the Composio MCP integration.
Toolkit docs: composio.dev/toolkits/customerio
https://rube.app/mcpCUSTOMERIO_* tools become available for executionManually fire a pre-configured broadcast to a specific audience with personalization data.
Tool: CUSTOMERIO_TRIGGER_BROADCAST
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| broadcast_id | integer | Yes | Broadcast ID from Customer.io Triggering Details |
| ids | array | No | List of customer IDs to target |
| emails | array | No | List of email addresses to target |
| recipients | object | No | Complex filter with and/or/not/segment operators |
| per_user_data | array | No | Per-user personalization with id/email + data |
| data | object | No | Global key-value data for Liquid template personalization |
| data_file_url | string | No | URL to JSON file with per-line user data |
| email_add_duplicates | boolean | No | Allow duplicate recipients (default: false) |
| email_ignore_missing | boolean | No | Skip people without emails (default: false) |
| id_ignore_missing | boolean | No | Skip people without customer IDs (default: false) |
Important: Provide exactly ONE audience option: recipients, ids, emails, per_user_data, or data_file_url. Rate limit: 1 request per 10 seconds per broadcast.
Fetch paginated delivery metrics for messages with filtering by campaign, type, and time window.
Tool: CUSTOMERIO_GET_MESSAGES
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| type | string | No | Message type: email, webhook, twilio, slack, push, in_app |
| metric | string | No | Metric: attempted, sent, delivered, opened, clicked, converted |
| campaign_id | integer | No | Filter by campaign ID |
| newsletter_id | integer | No | Filter by newsletter ID |
| action_id | integer | No | Filter by action ID |
| start_ts | integer | No | Start of time window (Unix timestamp) |
| end_ts | integer | No | End of time window (Unix timestamp) |
| limit | integer | No | Results per page, 1-1000 (default: 50) |
| start | string | No | Pagination token from previous response next value |
| drafts | boolean | No | Return draft messages instead of active/sent |
Retrieve all segments defined in your workspace for audience analysis and broadcast targeting.
Tool: CUSTOMERIO_GET_SEGMENTS
No parameters required -- returns all segments with IDs and metadata.
Use segment IDs when targeting broadcasts via the recipients.segment.id filter.
Paginate through all newsletter metadata for tracking and analysis.
Tool: CUSTOMERIO_LIST_NEWSLETTERS
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| limit | integer | No | Max per page, 1-100 |
| sort | string | No | asc (chronological) or desc (reverse) |
| start | string | No | Pagination cursor from previous response next value |
List all transactional message templates to find IDs for sending via the API.
Tool: CUSTOMERIO_LIST_TRANSACTIONAL_MESSAGES
No parameters required -- returns template IDs and trigger names.
Review all trigger executions for a broadcast and inspect individual trigger details.
Tools: CUSTOMERIO_GET_TRIGGERS and CUSTOMERIO_GET_TRIGGER
List all triggers for a broadcast:
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| broadcast_id | integer | Yes | The broadcast/campaign ID |
Get a specific trigger:
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| broadcast_id | integer | Yes | The campaign/broadcast ID |
| trigger_id | string | Yes | Trigger identifier (e.g., 456 or 5-37) |
| Pitfall | Details |
|---------|---------|
| Mutually exclusive audience params | CUSTOMERIO_TRIGGER_BROADCAST requires exactly ONE of recipients, ids, emails, per_user_data, or data_file_url -- providing multiple causes errors |
| Rate limiting on broadcasts | Broadcasts are limited to 1 trigger request per 10 seconds per broadcast ID |
| Unix timestamp format | start_ts and end_ts in CUSTOMERIO_GET_MESSAGES must be Unix timestamps, not ISO strings |
| Pagination tokens | Messages and newsletters use cursor-based pagination via the start parameter -- use the next value from previous responses |
| Segment ID resolution | To target a segment in a broadcast, first fetch segment IDs via CUSTOMERIO_GET_SEGMENTS, then reference by ID in recipients.segment.id |
| Tool Slug | Purpose |
|-----------|---------|
| CUSTOMERIO_TRIGGER_BROADCAST | Trigger a broadcast to a defined audience |
| CUSTOMERIO_GET_MESSAGES | Retrieve message delivery metrics with filters |
| CUSTOMERIO_GET_SEGMENTS | List all audience segments |
| CUSTOMERIO_GET_SEGMENT_DETAILS | Get details for a specific segment |
| CUSTOMERIO_LIST_NEWSLETTERS | Paginate through newsletters |
| CUSTOMERIO_LIST_TRANSACTIONAL_MESSAGES | List transactional message templates |
| CUSTOMERIO_GET_TRIGGERS | List all trigger executions for a broadcast |
| CUSTOMERIO_GET_TRIGGER | Inspect a specific trigger execution |
Powered by Composio
tools
Automate Zoho Mail tasks via Rube MCP (Composio): email sending, folders, labels, and mailbox management. Always search tools first for current schemas.
tools
Automate Zoho Invoice tasks via Rube MCP (Composio): invoices, estimates, expenses, clients, and payment tracking. Always search tools first for current schemas.
tools
Automate Zoho Inventory tasks via Rube MCP (Composio): items, orders, warehouses, shipments, and stock management. Always search tools first for current schemas.
tools
Automate Zoho Desk tasks via Rube MCP (Composio): tickets, contacts, agents, departments, and help desk operations. Always search tools first for current schemas.