- Forked from coreyhaines31/marketingskills v1.1.0 (MIT license) - Removed 4 SaaS-only skills (churn-prevention, paywall-upgrade-cro, onboarding-cro, signup-flow-cro) - Reworked 2 skills (popup-cro → hvac-estimate-popups, revops → hvac-lead-ops) - Adapted all 28 retained skills with HVAC industry context and Compendium integration - Created 10 new HVAC-specific skills: - hvac-content-from-data (flagship DB integration) - hvac-seasonal-campaign (demand cycle marketing) - hvac-review-management (GBP review strategy) - hvac-video-repurpose (long-form → social) - hvac-technical-content (audience-calibrated writing) - hvac-brand-voice (trade authenticity guide) - hvac-contractor-website-audit (discovery & analysis) - hvac-contractor-website-package (marketing package assembly) - hvac-compliance-claims (EPA/rebate/safety claim checking) - hvac-content-qc (fact-check & citation gate) - Renamed product-marketing-context → hvac-marketing-context (global) - Created COMPENDIUM_INTEGRATION.md (shared integration contract) - Added Compendium wrapper tools (search, scrape, classify) - Added compendium capability tags to YAML frontmatter - Updated README, AGENTS.md, CLAUDE.md, VERSIONS.md, marketplace.json - All 38 skills pass validate-skills.sh - Zero dangling references to removed/renamed skills Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
186 lines
3.2 KiB
Markdown
186 lines
3.2 KiB
Markdown
# Customer.io
|
|
|
|
Behavior-based messaging platform for email, push, SMS, and in-app.
|
|
|
|
## Capabilities
|
|
|
|
| Integration | Available | Notes |
|
|
|-------------|-----------|-------|
|
|
| API | ✓ | Track API, App API, Journeys API |
|
|
| MCP | - | Not available |
|
|
| CLI | - | Not available |
|
|
| SDK | ✓ | JavaScript, 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
|
|
- analytics-tracking
|