Skip to main content

expressWebhook()

Simplifies the process of setting up a Lambda Webhook in your Express.js server. See pagesRouterWebhook() and appRouterWebhook() for doing the same with Next.js apps.

API

The function accepts an object with six key-value pairs:

secret

Your webhook secret, must be a string

testing

Whether or not to allow requests intending to test the endpoint, useful while using Webhook endpoint tester on Webhooks Page. Should be a boolean.

extraHeaders

Add your own custom headers to the outgoing response. Provide key-value pairs where both the key and value are strings.

onSuccess()

A function that is called with a WebhookSuccessPayload object as an argument when the incoming request indicates a successful event.

onError()

A function that is called with a WebhookErrorPayload object as an argument when the incoming request indicates an error.

onTimeout()

A function that is called with a WebhookTimeoutPayload object as an argument when the incoming request indicates a timeout.

Example

Setting up a webhook endpoint in an Express.js server.

server.js
jsx
import {expressWebhook} from '@remotion/lambda/client';
 
const handler = expressWebhook({
secret: 'mysecret',
testing: true,
extraHeaders: {
region: "south-asia"
},
onSuccess: () => console.log('Rendering Completed Successfully'),
onError: () => console.log('Something went wrong while rendering'),
onTimeout: () => console.log('Timeout occured while rendering'),
})
 
router.post("/webhook", jsonParser, handler);
 
router.options("/webhook", jsonParser, handler);
server.js
jsx
import {expressWebhook} from '@remotion/lambda/client';
 
const handler = expressWebhook({
secret: 'mysecret',
testing: true,
extraHeaders: {
region: "south-asia"
},
onSuccess: () => console.log('Rendering Completed Successfully'),
onError: () => console.log('Something went wrong while rendering'),
onTimeout: () => console.log('Timeout occured while rendering'),
})
 
router.post("/webhook", jsonParser, handler);
 
router.options("/webhook", jsonParser, handler);

See Webhooks for a detailed example.

See also