WebhookModel
Defined in: packages/core/src/models/webhook.ts:17
Data operations for webhook subscriptions.
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new WebhookModel(
db,tables?,secret?):WebhookModel
Defined in: packages/core/src/models/webhook.ts:27
Parameters
Section titled “Parameters”Database adapter.
tables?
Section titled “tables?”WebhookTables
Table handles.
secret?
Section titled “secret?”Server secret for webhook-secret encryption (throws on write/decrypt when unset).
Returns
Section titled “Returns”WebhookModel
Methods
Section titled “Methods”create()
Section titled “create()”create(
projectId,input):Promise<Webhook>
Defined in: packages/core/src/models/webhook.ts:75
Create a webhook subscription for a project.
Parameters
Section titled “Parameters”projectId
Section titled “projectId”string
Project ID.
Webhook creation input.
Returns
Section titled “Returns”Promise<Webhook>
The created webhook.
decryptSecret()
Section titled “decryptSecret()”decryptSecret(
row):string
Defined in: packages/core/src/models/webhook.ts:89
Decrypt the secret for a stored row (in memory only, at send time).
Parameters
Section titled “Parameters”Returns
Section titled “Returns”string
get(
projectId,id):Promise<Webhook|null>
Defined in: packages/core/src/models/webhook.ts:94
Fetch a webhook by id scoped to a project, or null if not found.
Parameters
Section titled “Parameters”projectId
Section titled “projectId”string
string
Returns
Section titled “Returns”Promise<Webhook | null>
issue()
Section titled “issue()”issue(
projectId,input):Promise<{secret:string;webhook:Webhook; }>
Defined in: packages/core/src/models/webhook.ts:59
Create a webhook with a freshly generated whsec_ signing secret.
Parameters
Section titled “Parameters”projectId
Section titled “projectId”string
events?
Section titled “events?”string[]
string
Returns
Section titled “Returns”Promise<{ secret: string; webhook: Webhook; }>
The stored webhook and the plaintext secret (shown to the user once).
list()
Section titled “list()”list(
projectId):Promise<Webhook[]>
Defined in: packages/core/src/models/webhook.ts:34
List all webhooks for a project.
Parameters
Section titled “Parameters”projectId
Section titled “projectId”string
Returns
Section titled “Returns”Promise<Webhook[]>
remove()
Section titled “remove()”remove(
projectId,id):Promise<void>
Defined in: packages/core/src/models/webhook.ts:104
Remove a webhook if it belongs to the given project.
Parameters
Section titled “Parameters”projectId
Section titled “projectId”string
string
Returns
Section titled “Returns”Promise<void>
eventsOf()
Section titled “eventsOf()”
staticeventsOf(webhook):string[]
Defined in: packages/core/src/models/webhook.ts:112
Decode the JSON-serialized event list of a webhook.
Parameters
Section titled “Parameters”webhook
Section titled “webhook”Returns
Section titled “Returns”string[]
urlError()
Section titled “urlError()”
staticurlError(url):string|null
Defined in: packages/core/src/models/webhook.ts:41
Validate a webhook target URL; returns an error message, or null when acceptable.
Parameters
Section titled “Parameters”string | undefined
Returns
Section titled “Returns”string | null