right out of the gate: why not use the terms "sender" and "receiver" instead of "client" and "origin"?
the author uses "client" to refer to the application sending the webhook, and "origin" to refer to the application receiving the webhook. this is all backwards to me.
I often say that naming things is hard, but it isn't so hard that this needs be the result.