Function: parseWebhookRequest()
parseWebhookRequest<
Trigger
>(request
,secret
):Promise
<{event
:undefined
;payload
:undefined
;verified
:false
; } | {event
:Trigger
;payload
:WebhookPayload
<Trigger
>;verified
:true
; }>
Defined in: rest/v2/webhooks/verify.ts:41
Verify and parse the incoming Patreon webhook event
Type Parameters
Trigger
Trigger
extends PatreonWebhookTrigger
= PatreonWebhookTrigger
Parameters
request
The incoming request. Can be either:
- Node.js default request (v18+) / Undici request / request with
clone()
method implemented - or a request without a
clone()
method. This function reads the request body and thus assumes that the body is not already read and afterwards the body cannot be read again. - HTTP Incoming message (like express) with a JSON parsed body.
Pick
<Request
, "body"
| "headers"
| "clone"
> | Pick
<Request
, "text"
| "headers"
> | IncomingMessage
& object
secret
string
The secret of the webhook to use for verifying the request
Returns
Promise
<{ event
: undefined
; payload
: undefined
; verified
: false
; } | { event
: Trigger
; payload
: WebhookPayload
<Trigger
>; verified
: true
; }>
the parsed request body and event, or indicates if the verification has failed
Throws
if no secret is given
Throws
if no event header is not found
Example
The following examples on GitHub implement this method:
- express-webhook: for usage with express.js
- cloudflare-webhook: for usage with the Node.js Web API on cloudflare workers