user.created
v1A user signed up.
Sample payload
{
"id": "string",
"email": "string",
"plan": "string"
}Capture
Forward
Operate
Try it live
Open a live webhook inbox.
Create a free bucket and inspect your first webhook in seconds.
Define
Send
Deliver
Customer experience
Get started
Ship your first event in minutes.
50K events/month free. No credit card required.
A user signed up.
Sample payload
{
"id": "string",
"email": "string",
"plan": "string"
}"use client";
import { EventCatalogBrowser } from "@/components/event-catalog-browser";pnpm dlx shadcn@latest add @repost/event-catalog-browserInstalls this item, every component it depends on, and the npm packages listed below.
This component is presentational: it renders what you pass it and calls back on
interaction. In a live dashboard the data comes from useEventTypes() + useSendSampleEvent()
(@repost/portal-react), but any data of
the same shape works.
"use client";
import { EventCatalogBrowser } from "@/components/event-catalog-browser";
export function EventCatalogBrowserDemo() {
return (
<EventCatalogBrowser
eventTypes={[
{
id: "evt_1",
name: "user.created",
version: 1,
description: "A user signed up.",
jsonSchema: {
type: "object",
properties: { id: { type: "string" }, email: { type: "string" }, plan: { type: "string" } },
},
},
{
id: "evt_2",
name: "user.deleted",
version: 1,
description: "A user closed their account.",
jsonSchema: { type: "object", properties: { id: { type: "string" } } },
},
{
id: "evt_3",
name: "invoice.paid",
version: 2,
description: "An invoice settled.",
jsonSchema: {
type: "object",
properties: { amountCents: { type: "number" }, currency: { type: "string" } },
},
},
]}
onSendSample={() => undefined}
/>
);
}
| Prop | Type | Description |
|---|---|---|
eventTypes | CatalogEventType[] | Event types with JSON Schemas. |
onSendSample | (eventType, sample) => void | Renders a send-test button. |
sendingEventTypeId | `string | null` |