v2 is the current scheme and covers more of the request. Webhooks created
from now on use it. Anything created earlier stays on v1 until you move it,
and there is no deadline.
Check where you are
The three steps
Moving is deliberately not one switch. The middle step is where both signatures arrive at once, so you can deploy and confirm your new code before anything depends on it.1. Turn on both
v1 and is unaffected. Nothing about your
deliveries changes.
2. Verify v2, and confirm it in your own logs
Preferv2 when it is present, fall back to v1. The same code then works
before, during, and after the move:
200 before it verifies looks identical
to a working one from our side.
3. Turn v1 off
v2 only.
Going from
v1 straight to v2 returns 400. Set v1+v2 first. The overlap
costs nothing and can last as long as you want.Rolling back
Setv1+v2 again. Both signatures return immediately, so a receiver that reads
either one keeps working while you sort things out.
Several senders, one endpoint
If one endpoint serves more than one sender, move them one at a time and keep the tolerant verifier from step 2. It accepts both schemes, so senders on different settings can share a receiver for as long as you need. When you create a new sender that points at an endpoint still verifyingv1,
create it on v1+v2 explicitly:
v2 and that endpoint will reject its deliveries.
