triggerWebhook()
Dispatches a manual event payload for one webhook app.
Usage
The following example shows a basic usage of the backend client from @wacht/nextjs/server.
import { wachtClient } from '@wacht/nextjs/server';export async function example() { const client = await wachtClient(); const appSlug: string = 'appslug'; const request: TriggerWebhookRequest = { event_name: 'user.created', payload: { id: 'user_123' }, filter_context: { environment: 'staging' }, }; return client.webhooks.triggerWebhook(appSlug, request);}Signature
function triggerWebhook( appSlug: string, request: TriggerWebhookRequest,): Promise<TriggerWebhookResponse>TriggerWebhookRequest
›appSlug?: string | undefined;
appSlug?: string | undefined;Webhook app slug.
›event_name?: string | undefined;
event_name?: string | undefined;Event name to dispatch.
›payload?: Record<string, unknown> | undefined;
payload?: Record<string, unknown> | undefined;Event payload object.
›id?: string | undefined;
id?: string | undefined;Event entity identifier.
›amount?: number | undefined;
amount?: number | undefined;Example numeric payload field.
›filter_context?: Record<string, unknown> | undefined;
filter_context?: Record<string, unknown> | undefined;Optional routing/filter context.
›environment?: string | undefined;
environment?: string | undefined;Environment label used by routing filters.
Return value
›delivery_ids?: number[] | undefined;
delivery_ids?: number[] | undefined;Created delivery ids.
›filtered_count?: number | undefined;
filtered_count?: number | undefined;Count filtered out before delivery.
›delivered_count?: number | undefined;
delivered_count?: number | undefined;Count accepted for delivery.
Examples
Trigger a synthetic event for endpoint validation
import { wachtClient } from '@wacht/nextjs/server';export async function triggerSyntheticEvent(appSlug: string) { const client = await wachtClient(); return client.webhooks.triggerWebhook(appSlug, { event_name: 'invoice.created', payload: { id: 'inv_123', amount: 1499 }, filter_context: { environment: 'staging' }, });}