← SkedCastCONTENT HISTORY

Update to SkedCast

Snapshot Nov 11, 2026 · 13:28 UTC · version 1.0.1

Collection source: downloaded plugin package.

WHAT CHANGED

First saved snapshot

No earlier snapshot is available to establish a change.

Save SkedCast and check future changes in Following.

Up to 3 plugins free · no card required.

Compare saved observations

Download comparison JSON
Full technical diff · 0 changed fields
Full snapshot data
{
  "description": "Set up SkedCast outbound webhooks. Use when the user wants event notifications (publishing, approvals, failures) delivered to their own endpoint, or asks about webhook deliveries and failures.",
  "included_files": [],
  "name": "webhooks-setup",
  "skill_md_contents": "---\nname: webhooks-setup\ndescription: Set up SkedCast outbound webhooks. Use when the user wants event notifications (publishing, approvals, failures) delivered to their own endpoint, or asks about webhook deliveries and failures.\n---\n\n# Webhooks Setup\n\nOutbound webhooks deliver HMAC-signed event notifications to the user's own endpoint.\nAll management calls are write actions — confirm with the user first.\n\n## The workflow\n\n1. **List** existing endpoints with `list_webhooks` (URL, subscribed events, active\n   flag; the secret is masked).\n2. **Create** with `create_webhook`: give the endpoint URL and the subset of events to\n   subscribe to (full 40-event catalog — see https://skedcast.com/developers/webhooks\n   for the complete list with payload fields). The signing secret is returned ONCE —\n   tell the user to store it immediately; it is never readable again.\n3. **Test** with `test_webhook`: sends a `webhook.test` delivery and reports the\n   outcome, proving the endpoint is reachable and verifying signatures without\n   waiting for a real event. This performs a real outbound request.\n4. **Inspect** with `get_webhook` (URL, events, active state, consecutive failures,\n   when/why auto-disabled) and `list_webhook_deliveries` (per-attempt log with event\n   type, response status, error, and timing) — this is how you find out WHY an\n   endpoint stopped receiving.\n5. **Update** with `update_webhook` to change URL, event list, or active state —\n   including re-enabling an endpoint auto-disabled after repeated failures. Note: the\n   event list REPLACES the previous one, so pass the full desired set.\n6. **Rotate** the signing secret with `rotate_webhook_secret` when it may be\n   compromised. The new secret is returned once; the previous secret keeps verifying\n   for a short overlap so the user can redeploy without dropping deliveries.\n7. **Delete** with `delete_webhook` by id. Deliveries to it stop (cascade).\n\n## Notes\n\n- Webhooks are a developer feature. Keep explanations concrete: what events fire,\n  where they go, and how to verify the HMAC signature.\n- Never invent event names — refer to the catalog at\n  https://skedcast.com/developers/webhooks or the `webhooks` block in openapi.json.\n- Event naming is `object.verb`: past tense for outcomes (`post.published`),\n  present participle for in-flight states (`target.preparing`), predictive for\n  warnings (`account.token_expiring`). `post.published` / `post.failed` fire per\n  destination — prefer their `target.published` / `target.failed` twins.\n- Deliveries POST a JSON envelope `{ id, type, created, data }`, signed with Standard\n  Webhooks headers plus `X-SkedCast-Signature`. Delivery is at-least-once with\n  exponential backoff — dedupe on the payload id.\n- Key events to know: `target.published` / `target.failed` (per-destination outcomes),\n  `media.ready` / `media.failed` (asset pipeline), `account.reauth_required` (channel\n  needs reconnecting — publishing to it is paused), `approval.requested` /\n  `approval.decided`, `report.completed`, and `post.recycled` (evergreen copy created).\n"
}

SHA-256 of public snapshot: d5851ffbcc9001ae8b07bd55eb991ffef5d441bc8f26e4768b11e5a76e7ca215