← Back to Skills Marketplace
CC3PO Webhook
by
Carlos J Cabrales III
· GitHub ↗
· v1.0.0
· MIT-0
27
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install cc3po-webhook
Description
Implement secure webhook receivers and senders with proper verification and reliability.
README (SKILL.md)
Receiving: Signature Verification
- Always verify HMAC signature—payload can be forged; don't trust without signature
- Common pattern:
HMAC-SHA256(secret, raw_body)compared to header value - Use raw body bytes—parsed JSON may reorder keys, breaking signature
- Timing-safe comparison—prevent timing attacks on signature check
- Reject missing or invalid signature with 401—log for investigation
Receiving: Replay Prevention
- Check timestamp in payload or header—reject if too old (>5 minutes)
- Combine with signature—timestamp without signature can be forged
- Store processed event IDs—reject duplicates even within time window
- Clock skew tolerance: allow 1-2 minutes past—but not hours
Receiving: Idempotency (Critical)
- Webhooks can arrive multiple times—sender retries on timeout, network issues
- Use event ID for deduplication—store processed IDs in database/Redis
- Make handlers idempotent—same event twice should have same effect
- Idempotency window: keep IDs for 24-72h—balance storage vs protection
Receiving: Fast Response
- Return 200/202 immediately—process asynchronously in queue
- Senders timeout (5-30s typical)—slow processing = retry = duplicates
- Minimal validation before 200—signature check, then queue
- Background job for actual processing—failures don't affect acknowledgment
Receiving: Error Handling
- 2xx = success, sender won't retry
- 4xx = permanent failure, sender may stop retrying—use for bad signature, unknown event type
- 5xx = temporary failure, sender will retry—use for downstream issues
- Log full payload on error—helps debugging; redact sensitive fields
Sending: Retry Strategy
- Exponential backoff: 1min, 5min, 30min, 2h, 8h—then give up or alert
- Cap retries (5-10 attempts)—don't retry forever
- Record delivery attempts—show status to user
- Different retry for 4xx vs 5xx—4xx often means stop retrying
Sending: Signature Generation
- Include timestamp in signature—prevents replay of captured webhooks
- Sign raw JSON body—document exact signing algorithm
- Header format:
t=timestamp,v1=signature—allows versioned signatures - Provide verification code examples—reduce integration friction
Sending: Timeouts
- 5-10 second timeout—don't wait forever for slow receivers
- Treat timeout as failure—retry later
- Don't follow redirects—or limit to 1-2; prevents redirect loops
- Validate HTTPS certificate—don't skip verification
Event Design
- Include event type:
{"type": "order.created", ...}—receivers filter by type - Include timestamp: ISO 8601 with timezone—for ordering and freshness
- Include full resource or ID—prefer full data; saves receiver a lookup
- Version events:
api_versionfield—allows breaking changes
Delivery Tracking
- Log every attempt: URL, status code, response time, response body
- Dashboard for retry queue—let users see pending/failed deliveries
- Manual retry button—for stuck webhooks after receiver fix
- Webhook logs retention: 7-30 days—balance debugging vs storage
Security Checklist
- HTTPS only—never send webhooks to HTTP endpoints
- Rotate secrets periodically—support multiple active secrets during rotation
- IP allowlisting optional—document your IP ranges if offered
- Don't include secrets in payload—webhook URL should be secret enough
- Rate limit per endpoint—one slow receiver shouldn't affect others
Common Mistakes
- No signature verification—anyone can POST fake events to your endpoint
- Processing before responding—timeout causes retries, duplicate processing
- No idempotency handling—double charges, duplicate records
- Trusting event data blindly—always verify by fetching from source API for critical actions
Usage Guidance
This looks safe to install as an instruction-only webhook guidance skill. Before using its advice in production, confirm the listing provenance if the metadata mismatch concerns you, and make sure any webhook logging avoids storing secrets or unnecessary personal data.
Capability Analysis
Type: OpenClaw Skill
Name: cc3po-webhook
Version: 1.0.0
The skill bundle contains high-quality security documentation and best practices for implementing webhook receivers and senders. The instructions in SKILL.md correctly emphasize critical security controls such as HMAC-SHA256 signature verification, timing-safe comparisons, replay prevention via timestamps, and the use of HTTPS. There is no evidence of malicious intent, data exfiltration, or prompt injection; the content is entirely focused on guiding the agent to build secure and reliable integrations.
Capability Assessment
Purpose & Capability
The stated purpose is to help implement secure webhook receivers and senders, and the content is coherent guidance about signatures, replay prevention, idempotency, retries, timeouts, and delivery tracking.
Instruction Scope
The instructions are advisory and security-focused; they do not direct the agent to override user intent, execute commands, contact hidden services, or perform automatic high-impact actions.
Install Mechanism
There is no install spec or code to execute. The bundled _meta.json identity differs from the registry listing, which is a minor provenance inconsistency but not evidence of unsafe behavior.
Credentials
The artifacts declare no required binaries, environment variables, credentials, config paths, or local system access, which is proportionate for an instruction-only webhook guidance skill.
Persistence & Privilege
The guidance recommends queues, processed event ID storage, delivery logs, and log retention; this is purpose-aligned for reliable webhooks but should be implemented with redaction, access controls, and retention limits.
How to Use
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install cc3po-webhook - After installation, invoke the skill by name or use
/cc3po-webhook - Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Secure webhook receivers and senders: HMAC verification, replay prevention, retry strategies, and reliability patterns.
Metadata
Frequently Asked Questions
What is CC3PO Webhook?
Implement secure webhook receivers and senders with proper verification and reliability. It is an AI Agent Skill for Claude Code / OpenClaw, with 27 downloads so far.
How do I install CC3PO Webhook?
Run "/install cc3po-webhook" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is CC3PO Webhook free?
Yes, CC3PO Webhook is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does CC3PO Webhook support?
CC3PO Webhook is cross-platform and runs anywhere OpenClaw / Claude Code is available (linux, macos, win32).
Who created CC3PO Webhook?
It is built and maintained by Carlos J Cabrales III (@carloscbrls); the current version is v1.0.0.
More Skills