Customer.io Automation

Automate customer engagement workflows including broadcast triggers, message analytics, segment management, and newsletter tracking through Customer.io via Composio

Install

Hot:0

Download and extract to your skills directory

Copy command and send to OpenClaw for auto-install:

Download and install this skill https://openskills.cc/api/download?slug=composiohq-composio-skills-customerio-automation&locale=en&source=copy
name:Customer.io Automationdescription:"Automate customer engagement workflows including broadcast triggers, message analytics, segment management, and newsletter tracking through Customer.io via Composio"requires:mcp:

Customer.io Automation

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


Setup

  • Connect your Customer.io account through the Composio MCP server at https://rube.app/mcp

  • The agent will prompt you with an authentication link if no active connection exists

  • Once connected, all CUSTOMERIO_* tools become available for execution

  • Core Workflows

    1. Trigger a Broadcast


    Manually fire a pre-configured broadcast to a specific audience with personalization data.

    Tool: CUSTOMERIO_TRIGGER_BROADCAST

    ParameterTypeRequiredDescription
    broadcast_idintegerYesBroadcast ID from Customer.io Triggering Details
    idsarrayNoList of customer IDs to target
    emailsarrayNoList of email addresses to target
    recipientsobjectNoComplex filter with and/or/not/segment operators
    per_user_dataarrayNoPer-user personalization with id/email + data
    dataobjectNoGlobal key-value data for Liquid template personalization
    data_file_urlstringNoURL to JSON file with per-line user data
    email_add_duplicatesbooleanNoAllow duplicate recipients (default: false)
    email_ignore_missingbooleanNoSkip people without emails (default: false)
    id_ignore_missingbooleanNoSkip 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.


    2. Retrieve Message Delivery Metrics


    Fetch paginated delivery metrics for messages with filtering by campaign, type, and time window.

    Tool: CUSTOMERIO_GET_MESSAGES

    ParameterTypeRequiredDescription
    typestringNoMessage type: email, webhook, twilio, slack, push, in_app
    metricstringNoMetric: attempted, sent, delivered, opened, clicked, converted
    campaign_idintegerNoFilter by campaign ID
    newsletter_idintegerNoFilter by newsletter ID
    action_idintegerNoFilter by action ID
    start_tsintegerNoStart of time window (Unix timestamp)
    end_tsintegerNoEnd of time window (Unix timestamp)
    limitintegerNoResults per page, 1-1000 (default: 50)
    startstringNoPagination token from previous response next value
    draftsbooleanNoReturn draft messages instead of active/sent


    3. List Audience Segments


    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.


    4. List Newsletters


    Paginate through all newsletter metadata for tracking and analysis.

    Tool: CUSTOMERIO_LIST_NEWSLETTERS

    ParameterTypeRequiredDescription
    limitintegerNoMax per page, 1-100
    sortstringNoasc (chronological) or desc (reverse)
    startstringNoPagination cursor from previous response next value


    5. Discover Transactional Message Templates


    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.


    6. Inspect Broadcast Trigger History


    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:

    ParameterTypeRequiredDescription
    broadcast_idintegerYesThe broadcast/campaign ID

    Get a specific trigger:

    ParameterTypeRequiredDescription
    broadcast_idintegerYesThe campaign/broadcast ID
    trigger_idstringYesTrigger identifier (e.g., 456 or 5-37)


    Known Pitfalls

    PitfallDetails
    Mutually exclusive audience paramsCUSTOMERIO_TRIGGER_BROADCAST requires exactly ONE of recipients, ids, emails, per_user_data, or data_file_url -- providing multiple causes errors
    Rate limiting on broadcastsBroadcasts are limited to 1 trigger request per 10 seconds per broadcast ID
    Unix timestamp formatstart_ts and end_ts in CUSTOMERIO_GET_MESSAGES must be Unix timestamps, not ISO strings
    Pagination tokensMessages and newsletters use cursor-based pagination via the start parameter -- use the next value from previous responses
    Segment ID resolutionTo target a segment in a broadcast, first fetch segment IDs via CUSTOMERIO_GET_SEGMENTS, then reference by ID in recipients.segment.id


    Quick Reference

    Tool SlugPurpose
    CUSTOMERIO_TRIGGER_BROADCASTTrigger a broadcast to a defined audience
    CUSTOMERIO_GET_MESSAGESRetrieve message delivery metrics with filters
    CUSTOMERIO_GET_SEGMENTSList all audience segments
    CUSTOMERIO_GET_SEGMENT_DETAILSGet details for a specific segment
    CUSTOMERIO_LIST_NEWSLETTERSPaginate through newsletters
    CUSTOMERIO_LIST_TRANSACTIONAL_MESSAGESList transactional message templates
    CUSTOMERIO_GET_TRIGGERSList all trigger executions for a broadcast
    CUSTOMERIO_GET_TRIGGERInspect a specific trigger execution


    Powered by Composio