CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

twilio-sendgrid-webhooks

Track email delivery and engagement via SendGrid Event Webhooks. Covers all 11 event types (delivery + engagement), webhook handler implementation, ECDSA signature verification, batched event processing, and common debugging patterns. Use when building SendGrid delivery tracking, engagement analytics, or bounce handling. Requires a SendGrid API key (SG.-prefix) — not applicable to the Twilio Email API (comms.twilio.com).

66

Quality

83%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

68%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-organized, information-dense reference: compact event/auth tables, two executable handlers, exact header names, and honest limitations in the CANNOT section. The main gaps are the absence of ECDSA verification code for a security step labeled critical, no explicit sequenced workflow with validation checkpoints for batch event processing, and a time-sensitive date ('Since May 2023') that will age.

Suggestions

Add an explicit ordered workflow with validation checkpoints: 1) enable webhook in Console, 2) implement batched-array handler returning 2xx, 3) **Verify ECDSA signature before processing** (with a short verification snippet), 4) dedup on sg_event_id — a batch operation without verification steps currently caps workflow clarity.

Include a short ECDSA P-256 verification example (e.g., SendGrid's twilio sendgrid ECDSA webhook verifier) since signature verification is called 'Critical' and named in the description but never shown in code.

Remove the 'Since May 2023' date or move capability-change context into a 'deprecated/old patterns' note, and consider dropping one of the two duplicate-language handlers (or moving the second to a reference file) to tighten token usage.

DimensionReasoningScore

Conciseness

The body is dense with SendGrid-specific facts Claude cannot reliably recall (exact header names, 'retries webhook delivery for up to 24 hours', 'Use sg_event_id as a unique key'), organized as compact tables and short code blocks with almost no filler. It is not a 5: the 'Since May 2023' date is time-sensitive information outside any 'old patterns'/'deprecated' section, and providing both a Python and a Node handler for the same logic doubles the code surface. Not 3 because there is no over-explanation of concepts Claude already knows.

4 / 5

Actionability

Quotes: a complete executable Flask handler ('events = request.get_json() # Always an array ... return "", 200'), an Express handler, exact console paths ('Console > Settings > Mail Settings > Event Notification'), exact headers ('X-Twilio-Email-Event-Webhook-Signature'), and a concrete dedup key ('sg_event_id'). Mostly executable and copy-paste ready. Not 5: the ECDSA signature verification named in the description and flagged as critical has no verification code or command, and the Node snippet lacks its app/express setup.

4 / 5

Workflow Clarity

The sections imply a rough sequence — enable in console, implement a batched-array handler, enable and verify auth, dedup across retries — but it is never framed as explicit ordered steps, and there are no validation checkpoints (e.g., 'verify the signature before processing events', 'test the endpoint with a sample payload before going live'). Since webhook processing is a batch operation ('a single POST may contain dozens of events'), the missing validation/verification steps cap this at 3. Not 2: the content is accurate and per-step guidance is concrete, just not sequenced or checkpointed.

3 / 5

Progressive Disclosure

The single SKILL.md (~125 lines, no references/, scripts/, or assets/ bundle files exist to verify) is cleanly sectioned — Overview, Event Types, Webhook Handler, Multiple Webhook Endpoints, Authentication Options, Retry Behavior, CANNOT, Next Steps — with a working Next Steps section pointing to sibling skills. Good structure, appropriately inline for a reference skill, one level deep, easy to navigate. Not 5: it exceeds the 'under 50 lines, no need for external references' simple-skill case, and material like the second language sample or signature-verification detail could live in a reference file.

4 / 5

Total

15

/

20

Passed

Description

88%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

The description is strong: it names concrete capabilities (handler implementation, ECDSA verification, batched processing), gives an explicit 'Use when...' clause with natural trigger phrases, and even includes reverse-boundary guidance ('not applicable to the Twilio Email API'). The only weaknesses are a few missing natural synonyms and mild overlap with sibling SendGrid skills around bounce handling.

DimensionReasoningScore

Specificity

Quotes: 'Track email delivery and engagement', 'webhook handler implementation, ECDSA signature verification, batched event processing, and common debugging patterns', 'Covers all 11 event types'. Multiple specific concrete actions with comprehensive coverage, matching the anchor 'Lists multiple specific concrete actions; comprehensive coverage'. Not 4 because coverage is broad and each action is concrete (verification method, batching model, event taxonomy), not just 'several actions with minor gaps'.

5 / 5

Completeness

Quotes: what — 'Track email delivery and engagement via SendGrid Event Webhooks... webhook handler implementation, ECDSA signature verification, batched event processing'; when — 'Use when building SendGrid delivery tracking, engagement analytics, or bounce handling.' Both 'what' and 'when' are answered explicitly with concrete trigger phrases, matching the 5 anchor exactly; the 4 anchor would require the 'when' clause to be less explicit than it is.

5 / 5

Trigger Term Quality

Quotes: 'SendGrid delivery tracking, engagement analytics, or bounce handling', 'Track email delivery and engagement', 'SendGrid Event Webhooks'. Good natural-keyword coverage users would actually say ('delivery tracking', 'bounce handling', 'engagement'), but a few common variations are missing (e.g., 'open/click tracking', 'email webhooks', 'event notifications'). Not 5 because synonym/variation coverage is not comprehensive; not 3 because the included terms are natural phrasings rather than jargon and cover the main use cases.

4 / 5

Distinctiveness Conflict Risk

Quotes: 'via SendGrid Event Webhooks', 'not applicable to the Twilio Email API (comms.twilio.com)'. Clear niche with an explicit disambiguation clause; however 'bounce handling' overlaps with the sibling suppressions skill it links to, so minor overlap risk with a closely related skill remains. Not 5 due to that overlap; not 3 because the trigger phrases (event webhooks, engagement analytics) are far more specific than 'works with document files'-level generality.

4 / 5

Total

18

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

openai/plugins

Path

plugins/twilio-developer-kit/skills/twilio-sendgrid-webhooks/SKILL.md

Reviewed

Table of Contents

Is this your skill?

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.