Skip to content
Dashboard

Webhooks

Webhooks allow you to receive real-time HTTP callbacks when events occur in your Featurebase organization. Configure webhook endpoints to subscribe to specific event types.

List webhooks
client.webhooks.list(WebhookListParams { cursor, limit, status, featurebaseVersion } params?, RequestOptionsoptions?): CursorPage<Webhook { id, createdAt, description, 11 more } >
GET/v2/webhooks
Create a webhook
client.webhooks.create(WebhookCreateParams { name, topics, url, 3 more } params, RequestOptionsoptions?): Webhook { id, createdAt, description, 11 more }
POST/v2/webhooks
Get webhook by ID
client.webhooks.retrieve(stringid, WebhookRetrieveParams { featurebaseVersion } params?, RequestOptionsoptions?): Webhook { id, createdAt, description, 11 more }
GET/v2/webhooks/{id}
Update a webhook
client.webhooks.update(stringid, WebhookUpdateParams { description, name, requestConfig, 4 more } params, RequestOptionsoptions?): Webhook { id, createdAt, description, 11 more }
PATCH/v2/webhooks/{id}
Delete a webhook
client.webhooks.delete(stringid, WebhookDeleteParams { featurebaseVersion } params?, RequestOptionsoptions?): WebhookDeleteResponse { id, deleted, object }
DELETE/v2/webhooks/{id}
Refresh webhook signing secret
client.webhooks.refreshSecret(stringid, WebhookRefreshSecretParams { featurebaseVersion } params?, RequestOptionsoptions?): Webhook { id, createdAt, description, 11 more }
POST/v2/webhooks/{id}/secret
ModelsExpand Collapse
Webhook { id, createdAt, description, 11 more }
id: string

Unique identifier

createdAt: string

ISO timestamp when the webhook was created

description: string | null

Optional description of the webhook purpose

health: Health { avgResponseTime, consecutiveFailures, errorsSinceLastSuccess, 2 more }
avgResponseTime: number

Average response time in milliseconds

consecutiveFailures: number

Number of consecutive delivery failures

errorsSinceLastSuccess: number

Number of errors since last successful delivery

lastResponseTime: number

Last response time in milliseconds

lastSuccessAt: string | null

ISO timestamp of last successful delivery

lastStatus: LastStatus | null

Last delivery attempt status

code: number

HTTP status code from last delivery attempt

message: string

Status message from last delivery attempt

timestamp: string

ISO timestamp of last status update

name: string

Human-readable webhook name

object: "webhook"

Object type identifier

requestConfig: RequestConfig { timeoutMs, headers }
timeoutMs: number

Request timeout in milliseconds (1000-30000)

minimum1000
maximum30000
headers?: Record<string, string>

Custom headers to send with webhook requests

secret: string

Webhook signing secret for verifying payloads

status: "active" | "paused" | "suspended"

Current status of the webhook

One of the following:
"active"
"paused"
"suspended"
topics: Array<"post.created" | "post.updated" | "post.deleted" | 24 more>

Array of event topics the webhook subscribes to

One of the following:
"post.created"
"post.updated"
"post.deleted"
"post.voted"
"ticket.created"
"ticket.updated"
"ticket.deleted"
"changelog.published"
"comment.created"
"comment.updated"
"comment.deleted"
"conversation.user.created"
"conversation.user.replied"
"conversation.admin.replied"
"conversation.admin.closed"
"conversation.handover_requested"
"conversation.admin.assigned"
"conversation.admin.noted"
"conversation.admin.snoozed"
"conversation.admin.unsnoozed"
"conversation.admin.opened"
"conversation.priority.updated"
"conversation.deleted"
"conversation.contact.attached"
"conversation.contact.detached"
"conversation.read"
"conversation_part.redacted"
updatedAt: string

ISO timestamp when the webhook was last updated

url: string

Webhook endpoint URL

version: string

API version for webhook payloads

WebhookRequestConfigInput { headers }

Request configuration for webhook delivery

headers?: Record<string, string>

Custom headers to send with webhook requests (max 10)

WebhookDeleteResponse { id, deleted, object }
id: string

Unique identifier of the deleted webhook

deleted: true

Indicates the resource was deleted

object: "webhook"

Object type identifier