packages/docs/docs/lambda/approuterwebhook.mdx
Simplifies the process of setting up a Lambda Webhook in your Next.js app which is using App Router. Refer to pagesRouterWebhook() for doing the same in apps using Pages Router.
The function accepts an object with six key-value pairs:
secretYour webhook secret, must be a string
testingWhether or not to allow requests intending to test the endpoint, useful while using Webhook endpoint tester on Webhooks Page. Should be a boolean.
extraHeadersAdd 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.
Setting up a webhook endpoint in a Next.js app which uses App Router. This will listen on the endpoint: mydomain.com/api
import {appRouterWebhook} from '@remotion/lambda/client';
export const POST = appRouterWebhook({
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'),
});
export const OPTIONS = POST;
See Webhooks for an Express example.