Skip to content

Topic

Webhooks

HTTP callbacks one service sends to an endpoint another service operates, so events can be pushed as they happen instead of polled for.

Current stories

buildOne report1 publisher

Hand-built Shopify webhooks lose their subscription without notice when the receiver fails

Shopify removes the subscription from a webhook whose destination is failing, and it emails the owner only when an App Store or custom app created the webhook. A merchant who builds one by hand in the admin has to watch the receiver themselves.

Publishers:dev.to

Reality

Evidence55
Adoption
Not scored
Hype gap0
Incentives
Not scored
Confidence55
buildOne report1 publisher

Parsing Meta's epoch-seconds webhook timestamp with new Date() bills every WhatsApp reply as a template

Developers who parse Meta's epoch-seconds webhook timestamp with new Date() get NaN and pay template rates on every WhatsApp reply, according to a dev.to post. The opposite slip, mixing milliseconds with seconds, holds the window open so free-form replies bounce silently.

Publishers:dev.to

Reality

Evidence60
Adoption
Not scored
Hype gap0
Incentives
Not scored
Confidence55
buildOne report1 publisher

The cancellation went into cancel_at while the dashboard read cancel_at_period_end

A developer canceled his own subscription in production, collected two 200 webhook responses and no errors, and still saw his app promise a renewal. Stripe's stored event diff named the three fields that actually moved.

Publishers:dev.to

Reality

Evidence58
Adoption22
Hype gap+5
Incentives22
Confidence60
buildOne report1 publisher

A paid M-Pesa ticket went undelivered because fulfilment threw after the SUCCESS write

A reconciliation job verified the charge with Paystack and marked the payment row SUCCESS, then fulfilment failed on an unrelated tenant-context bug, and the sweeper only ever reads PENDING rows.

Publishers:dev.to

Reality

Evidence48
Adoption
Not scored
Hype gap+10
Incentives30
Confidence55
buildOne report1 publisher

A ten-second sender timeout turns an eleven-second handler into duplicate receipts

A webhook walkthrough shows every line of a handler working correctly while the customer gets two receipts, because the sender gives up one second before the warehouse call returns and sends the event again.

Publishers:dev.to

Reality

Evidence70
Adoption
Not scored
Hype gap0
Incentives45
Confidence62
buildOne report1 publisher

Two records of one capture make an order look overpaid by its own value

A dev.to post sorts order-versus-payment disagreements into four classes. All four surface as a total that does not match, the money is already right in three of them, and only the fourth is a broken integration.

Publishers:dev.to

Reality

Evidence32
Adoption
Not scored
Hype gap+18
Incentives78
Confidence52
buildOne report1 publisher

A crash between the claim and the work makes the copied webhook dedupe swallow events

The snippet everyone pastes commits the idempotency key in one transaction and the work in another. Kill the process in between, and every later delivery hits the conflict branch and returns 200, per a dev.to walkthrough.

Publishers:dev.to

Reality

Evidence58
Adoption
Not scored
Hype gap+12
Incentives30
Confidence60
buildOne report1 publisher

This revocation intake writes the audit row before it touches the gateway's key cache

A dev.to design walkthrough pairs signed webhook intake with an hourly polling sweep over per-tenant API keys. It argues the architecture should be settled by what an access review can reconstruct afterwards.

Publishers:dev.to

Reality

Evidence42
Adoption
Not scored
Hype gap+12
Incentives22
Confidence46
buildOne report1 publisher

Suspending a Kinde user leaves their agent's signed token verifying mid-task

A developer suspended a signed-in test user while that user's Claude agent was still running, and the app kept reading the token as valid, so enforcement has to move into a status check the application itself owns.

Publishers:dev.to

Reality

Evidence52
Adoption10
Hype gap+15
Incentives55
Confidence45
buildOne report1 publisher

A delivery row per consumer records which credential read each webhook event

One registration, one signed POST into Postgres, and a pending row for each internal reader. The design costs four row writes per event and makes acknowledgement a fact an auditor can still query a year later.

Publishers:dev.to

Reality

Evidence62
Adoption
Not scored
Hype gap+10
Incentives15
Confidence58
buildOne report1 publisher

Cloudflare's CASB remediation runs on a queue that can deliver the same finding twice

The September 11 release lets a matching finding fire a remediation action, an outbound webhook, or both. The delivery guarantees underneath it leave the receiving system to decide whether a second attempt does anything.

Publishers:dev.to

Reality

Evidence45
Adoption15
Hype gap+10
Incentives55
Confidence45
buildOne report1 publisher

A green delivery chart hides the renewal reminder still waiting behind a 429

A dev.to design note makes a renewal reminder's business deadline the primary SLO and moves the acknowledgement behind the durable write. A 429 becomes a budget that first attempts and retries have to share.

Publishers:dev.to

Reality

Evidence30
Adoption
Not scored
Hype gap+20
Incentives25
Confidence55