Skip to content

Customer.io

Behavior-based messaging platform for email, push, SMS, and in-app.

Capabilities

IntegrationAvailableNotes
APITrack API, App API, Journeys API
MCP-Not available
CLI-Not available
SDKJavaScript, iOS, Android, Ruby, Python

Authentication

  • Track API: Site ID + API Key (Basic auth)
  • App API: Bearer token
  • Header: Authorization: Basic {base64(site_id:api_key)}

Common Agent Operations

Identify customer

bash
PUT https://track.customer.io/api/v1/customers/{customer_id}

Authorization: Basic {base64(site_id:api_key)}

{
  "email": "user@example.com",
  "created_at": 1705312800,
  "first_name": "John",
  "plan": "pro"
}

Track event

bash
POST https://track.customer.io/api/v1/customers/{customer_id}/events

Authorization: Basic {base64(site_id:api_key)}

{
  "name": "purchase",
  "data": {
    "product": "Pro Plan",
    "amount": 99
  }
}

Track anonymous event

bash
POST https://track.customer.io/api/v1/events

Authorization: Basic {base64(site_id:api_key)}

{
  "name": "page_viewed",
  "data": {
    "page": "/pricing"
  },
  "anonymous_id": "anon_123"
}

Delete customer

bash
DELETE https://track.customer.io/api/v1/customers/{customer_id}

Authorization: Basic {base64(site_id:api_key)}

Get customer (App API)

bash
GET https://api.customer.io/v1/customers/{customer_id}/attributes

Authorization: Bearer {app_api_key}

List campaigns

bash
GET https://api.customer.io/v1/campaigns

Authorization: Bearer {app_api_key}

Get campaign metrics

bash
GET https://api.customer.io/v1/campaigns/{campaign_id}/metrics

Authorization: Bearer {app_api_key}

Trigger broadcast

bash
POST https://api.customer.io/v1/campaigns/{campaign_id}/triggers

Authorization: Bearer {app_api_key}

{
  "emails": ["user@example.com"],
  "data": {
    "coupon_code": "SAVE20"
  }
}

Send transactional email

bash
POST https://api.customer.io/v1/send/email

Authorization: Bearer {app_api_key}

{
  "transactional_message_id": "1",
  "to": "user@example.com",
  "identifiers": {
    "id": "user_123"
  },
  "message_data": {
    "order_id": "ORD-456"
  }
}

JavaScript SDK

javascript
// Initialize
_cio.identify({
  id: 'user_123',
  email: 'user@example.com',
  created_at: 1705312800,
  plan: 'pro'
});

// Track event
_cio.track('purchase', {
  product: 'Pro Plan',
  amount: 99
});

// Track page view
_cio.page();

Key Concepts

  • People - Customers and leads
  • Segments - Dynamic groups based on attributes/behavior
  • Campaigns - Automated message sequences
  • Broadcasts - One-time sends
  • Transactional - Triggered messages

Attribute Types

  • Standard: email, created_at, unsubscribed
  • Custom: Any key you define
  • Computed: Aggregations from events

When to Use

  • Behavior-based email automation
  • Multi-channel messaging (email, push, SMS)
  • Onboarding sequences
  • Re-engagement campaigns
  • Transactional messages

Rate Limits

  • Track API: 100 requests/second
  • App API: 10 requests/second

Relevant Skills

  • email-sequence
  • onboarding-cro
  • analytics-tracking

Released under the MIT License.