Webhook Payload Formatter
Paste the body of a webhook. The tool validates and formats the JSON, lists every field with the path you would use in a template, and builds a curl command to replay it.
Runs entirely in your browser — nothing you enter here is sent to a server.
Why inspect a webhook payload
A webhook is an HTTP POST that one system sends to another when something happens — an alert fires, a deploy finishes, a payment clears. The body is almost always JSON, and almost always arrives minified on one line. Before you can route it, template it or debug why the receiver rejected it, you need to see its structure.
This tool does the three things you normally do by hand. It validates the JSON and points to the position of a syntax error. It formats the payload for reading. And it flattens it into a list of paths, so you can copy the exact expression for a field — in dot notation, jq, JSONPath or Go template syntax — into your alert template or parsing code.
Templating alerts
Alertmanager, Grafana and most chat integrations use Go templates. The path list shows what to put between the braces.
Debugging a receiver
A 400 from the receiving service usually means a missing or misnamed field. Compare the paths with what the receiver expects.
Replaying an event
Copy the curl command to send the same payload again while you fix the handler — no need to trigger a real alert.
Checking size limits
Many receivers cap the body: Slack messages, for instance, are limited in blocks and text length. The size is shown in bytes.
Good habits for webhook integrations
Treat incoming payloads as untrusted input: verify the signature header if the sender provides one, and never build shell commands or SQL from the field values. Respond quickly with a 2xx and do slow work in the background, because senders retry on timeouts and you will receive duplicates. And monitor the endpoint itself — a webhook receiver that is down fails silently, since nobody is looking at the sender's retry log.
Frequently asked questions
What is a webhook payload?
The body of the HTTP request a service sends to your URL when an event occurs. It is usually a JSON document describing the event.
How do I find the path to a field in a JSON payload?
Paste the payload and look it up in the table. Each leaf value is listed with its full path; switch the path style to match the tool you are writing the expression for.
Is my payload sent anywhere?
No. Parsing and formatting happen in your browser. Payloads often contain tokens and customer data, so nothing is uploaded or stored.
Why does my JSON fail to parse?
The usual causes are a trailing comma, single quotes instead of double quotes, an unescaped quote or line break inside a string, or text copied together with log prefixes. The error message shows the line and column.