Implement Customer.io webhook handling. Use when processing delivery events, handling callbacks, or integrating Customer.io event streams. Trigger with phrases like "customer.io webhook", "customer.io events", "customer.io callback", "customer.io delivery status".
Install with Tessl CLI
npx tessl i github:jeremylongshore/claude-code-plugins-plus-skills --skill customerio-webhooks-events74
Quality
66%
Does it follow best practices?
Impact
89%
1.41xAverage score across 3 eval scenarios
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/saas-packs/customerio-pack/skills/customerio-webhooks-events/SKILL.mdWebhook signature verification and Express setup
WebhookEventType union
100%
100%
WebhookEvent interface
50%
100%
WebhookPayload interface
0%
100%
HMAC-SHA256 algorithm
100%
100%
Timing-safe comparison
100%
100%
Correct signature header
100%
100%
Raw body parsing
50%
100%
Body parsed after raw
100%
100%
401 on bad signature
100%
100%
200 on success
57%
100%
Metric-based routing
37%
100%
Webhook secret env var
100%
100%
Without context: $0.7538 · 3m 29s · 30 turns · 77 in / 13,023 out tokens
With context: $0.9318 · 3m 54s · 37 turns · 40 in / 13,852 out tokens
BullMQ event queue with retry configuration
BullMQ package
100%
100%
ioredis connection
0%
44%
Attempts set to 3
0%
100%
Exponential backoff type
100%
100%
Backoff delay 1000ms
0%
100%
removeOnComplete limit
0%
100%
removeOnFail limit
0%
100%
event_id for deduplication
100%
100%
DESIGN.md retry strategy
0%
100%
DESIGN.md deduplication explanation
100%
100%
Worker defined
100%
100%
Without context: $0.4520 · 2m 36s · 21 turns · 28 in / 8,063 out tokens
With context: $0.5074 · 1m 51s · 26 turns · 112 in / 5,895 out tokens
Reporting API and BigQuery data warehouse streaming
@customerio/track package
0%
0%
APIClient used
0%
0%
RegionUS used
0%
0%
App API key env var
100%
100%
@google-cloud/bigquery package
100%
100%
BigQuery dataset and table
100%
100%
event_id in row
100%
100%
event_type from metric
0%
100%
Timestamp ISO conversion
100%
100%
inserted_at field
100%
100%
table.insert for streaming
100%
100%
README env vars documented
100%
100%
Without context: $0.5132 · 2m 27s · 24 turns · 30 in / 8,432 out tokens
With context: $0.5231 · 1m 44s · 25 turns · 3,526 in / 5,737 out tokens
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.