Webhook payloads
What we send, how to verify it came from us, and what happens when your endpoint is down.
Events
Payload
Signing
Every delivery carries X-TubeExtract-Signature, an HMAC-SHA256 of the raw body using the endpoint’s signing secret, and X-TubeExtract-Timestamp. The signed string is {timestamp}.{body}, so a captured body cannot be replayed later under a new timestamp. Compare with a constant-time function and reject anything older than five minutes.
Rotating a secret on the webhooks screen keeps the previous one valid for 24 hours, so a deploy has time to catch up.
Retries
Anything other than a 2xx is retried five times over roughly an hour with growing gaps. Deliveries and their response codes are listed on the job’s detail screen, where a failed one can be replayed by hand without re-running the extraction.