What does this explain that the raw JSON does not already show?
A webhook arrives with no documentation attached, and working out what its fields mean usually means guessing from their names. This explains the payload instead: what the event is, what each field carries, which values are in minor units or epoch seconds, and where a null means "absent" rather than "none". You choose what you want — a summary, a field-by-field guide, the gotchas, or how to consume it — and can keep asking questions about the same payload.
Does it work on any JSON, or only webhooks?
Any JSON payload — a webhook body, an API response, or a fragment of one
What happens if my JSON is malformed?
It is caught in your browser before anything is sent, and the position of the problem is reported
Can it tell me which fields are optional?
It says what is not present in the sample you gave it. A single payload cannot prove a field is optional, so it does not claim otherwise