Keep the useful bits, human.
Beginner field notes
- A webhook sends an event notification to an HTTP address you configure, so your app can react without constantly asking whether something changed.
- Receiving the notification and finishing your own work are separate steps. A webhook arriving does not mean every downstream action is complete.
- Stripe sends webhook event requests to your endpoint. Check each provider’s method, payload and acknowledgement rules before writing a handler.
See a worked example
Follow one event notification to a receiver
One reviewed sample, shared across levels. Nothing here runs on your computer.
Example review recorded 2026-10-20 · version 1.
Illustrative GitHub-style delivery; only selected fields are shown.
Subscribed event: issues
Header: X-GitHub-Event: issues
Body excerpt: {"action":"opened","issue":{"number":7,"title":"Fix a typo"}}
Assume signature validation of the original request bytes has already succeeded.
Receiver rule: for issues + opened, queue a notification naming that issue.Chosen branch: issues + opened.
Queued notification: Issue #7 — Fix a typo.
Illustrative receipt acknowledgement: HTTP 202 Accepted.
The acknowledgement does not say the queued work has finished.The event causes the sender to push an HTTP request to the configured receiver URL. The receiver uses the event header and payload action to select the rule, then acknowledges receipt. This case starts after signature validation; a real receiver must validate a delivery before processing it further. The partial payload and predicted queue entry are synthetic, not a full signed request or an executed server. One delivery is considered here; this does not establish duplicate handling or exactly-once processing.
Sources for this sampleVisual
The reviewed description and complete diagram source are available here.
More of this diagram is available inside its frame. Focus the frame and use the arrow keys to pan.
Read the complete diagram source
This is the source for the reviewed diagram, not a command to run.
sequenceDiagram
participant S as Event source
participant R as Your endpoint
participant W as Application work
Note over S,R: Endpoint is configured in advance
S->>R: Deliver event notification
Note over R: Verify and accept using provider contract
R-->>S: Prompt acknowledgement
R->>W: Continue accepted work
S->>R: Possible repeated delivery
Note over R: Avoid repeating the same effect Primary sources
Source collection
- Stripe: Webhook delivery and signature contract
Used in: Quick notes · Lesson text
Provider-specific notification, duplicate/order behavior, raw-body signatures, endpoint secrets, replay timestamps and prompt acknowledgement; not universal guarantees for other providers.
- GitHub Docs: Handling webhook deliveries
Used in: Worked example
Subscribed events cause HTTP deliveries to the configured URL; handlers inspect event/action data, and a 2xx response acknowledges receipt. The official example uses 202.
- GitHub Docs: Validating webhook deliveries
Used in: Worked example
Webhook signatures should be validated before further processing, using the secret and original payload bytes; an event header alone does not authenticate the sender.
Notes AI source review · 2026-10-17
The summary, key points and diagram were independently compared with primary documentation using AI on 2026-10-07. The approval is bound to this written content. It does not approve a video or timestamp window. Human learner validation is pending.
Quick quiz · one question
Who sends the notification?
Sample scenario. Fictional contract: this event triggers Archive to POST its event notification to Board's configured endpoint. No request runs here. Authenticity is given; later business work is not supplied.
- Event in the source app
Archive: evt-label-changed, type label.changed. Authenticity is supplied, not verified.- Declared subscription
Board subscribes at POST https://board.example/hooks/label-events. This is this provider's fictional contract.- Downstream work
No downstream completion is supplied. No request or signature check runs.
Archive records label.changed. How does the configured webhook tell Board about that event?
Why this answer?
Answers stay on this device.
Sources and exercise scope
- Stripe Docs: Receive Stripe events in your webhook endpoint
Existing approved lesson describes an event source notifying a configured HTTP endpoint, possible repeated/delayed delivery and notification distinct from completed business work. POST, app names and route here are explicitly supplied fictional contract facts.
Original synthetic exercise. AI comparison against the reviewed lesson recorded on 2026-10-20; the references above state their scope. Human learner validation has not been run. A result here records this attempt; it does not establish mastery.
Follow this learning pathLesson 6 of 8
From a web request to safe event handling
Save or adjust this lesson
Make this lesson yours
Save it for later, or tell your robot what would help.
This correction stays on this browser. Browse all concepts if the topic is missing.
Familiarity is your own assessment. To use it in your coding tool, download your updated learning profile.
Familiarity and lesson feedback are saved on this browser. They do not sync to your account or coding tool.