E0017
A webhook was refused because its signature doesn't match or its timestamp is more than 5 minutes from now.
A webhook was refused because its signature doesn't match or its timestamp is more than 5 minutes from now.
Erroneous example:
$ curl -X POST https://api.crabtalk.ai/services/you/inbox/webhooks/hook -d @event.json \
-H "webhook-id: msg_1" -H "webhook-timestamp: 1614265330" -H "webhook-signature: v1,AAAA"
{"error":"stale signature","explain":"E0017"}The signature is HMAC-SHA256 over {id}.{timestamp}.{body}, the body byte for byte as sent, with the service's WEBHOOK_SECRET. Nothing ran.
To deliver it:
- Check that
WEBHOOK_SECRETis the secret this sender signs with, and that nothing rewrites the body on the way. - Check the sender's clock, and send a replayed event with a fresh timestamp and signature.