Skip to content
Elkwai Solutions
Delivery is not completion.

Webhook delivery and replay analyzer

Did a retry recover a delivery, or repeat a business action? Compare expected events with recorded attempts, separate acknowledgements from committed effects and export the evidence. Nothing is sent to a provider.

Audit your recorded deliveries

Session-only inputs. No upload, autosave, provider connection or replay requests.

Up to 500 expected events and 1,000 attempts; 512 KiB and 20,000 parsed JSON nodes per input. Use one provider, tenant, environment, endpoint and observation window per report. Never paste payloads, authorization headers, API keys or personal details. IDs can still be sensitive.

Give each observation a precise meaning

Normalized input contract; export only this metadata from your own logs
FieldMeaning
event_idStable identity within one provider, tenant, environment and endpoint. Use the same event ID in both arrays.
expected_effectsRequired integer, 0-100: the intended count of durable business effects for that event.
attempt_idUnique delivery attempt identity. Duplicate log rows are rejected, not miscounted as retries.
offset_msInteger milliseconds from event creation to attempt start, between 0 and 30 days.
http_status100-599, or 0 when no HTTP response was recorded. A 2xx is an acknowledgement only.
effects_createdNew durable business effects attributable to this attempt, 0-100. Not a cumulative count or processing-start count. Omit when unknown; explicit zero means known none.

IDs accept 1-128 letters, digits, dots, colons, underscores or hyphens. Optional expected-event group labels are up to 80 characters. Unknown fields, duplicate IDs and duplicate JSON keys are rejected.

Missing expected events stay in the report. Unexpected event attempts never inflate expected-event summaries. If known effects already exceed the expected count, excess effects are flagged even when other attempts lack telemetry. Missing effect telemetry is never silently treated as zero.

Use the same engine offline

Download the self-contained Node.js 22+ module. No package install, credentials or provider connection is required. The CLI reads two bounded JSON files and writes its report to standard output; it never edits source files. Its analyzeDelivery(expectedText, attemptsText) export is also available to your own JavaScript scripts. It is not an MCP server.

node webhook-delivery-audit.mjs --expected webhook-expected.json --attempts webhook-attempts.json > report.json

For repeatable use, retain the module version, both input files and your observation-window notes. A valid report can contain problems; the CLI exits nonzero for invalid inputs or I/O errors, not for operational findings.

Version 1.0.0. Module SHA-256: 27e6ee8ec70483e069ada6098f45a044899be8ae4e77a547576e6be9d7bd5f40. The hash identifies these file bytes, not a security certification.

Keep it self-service, or commission the integration

Free diagnostic, no account

Use this analyzer in the browser or download the offline CLI. No provider fees, hosted AI or subscription are required for the check. It is separate from the paid Developer Assurance Kit.

Get the offline tool

A working system, not another report

Elkwai Solutions can implement a receiver, durable queue, scoped idempotency, reconciliation and an operating dashboard around an agreed workflow. A written project quote defines connectors, milestones, acceptance checks, handoff and any ongoing costs.

Discuss API and workflow integration

For reusable API/schema, MCP catalog and AI regression checks, the Developer Assurance Kit remains a separate $79 one-time purchase with five local MCP tools. This webhook analyzer is free and is not an additional MCP tool in Kit 1.1.0.