Webhooks API reference

Webhooks endpoints of the Quackback REST API: paths, parameters, request fields and responses.

JM
James Morton
Written By James MortonLast updated 3 days ago

This is the reference for the Webhooks endpoints of the Quackback REST API: every endpoint, its parameters, request fields and response fields. It is generated from the API's OpenAPI description, so it matches what the API accepts.

All paths are relative to /api/v1 on your workspace's address (for example https://feedback.example.com/api/v1). Authenticate with an API key in the Authorization: Bearer qb_... header. For keys, errors, pagination and rate limits, see API overview. Every workspace also serves an interactive reference at /api/v1/docs.

Endpoints

  • GET /webhooks: List webhooks
  • POST /webhooks: Create a webhook
  • GET /webhooks/{webhookId}: Get a webhook
  • PATCH /webhooks/{webhookId}: Update a webhook
  • DELETE /webhooks/{webhookId}: Delete a webhook
  • POST /webhooks/{webhookId}/rotate: Rotate a webhook signing secret

List webhooks

GET /api/v1/webhooks

Returns every webhook. Signing secrets are never included. Requires the webhook.view permission.

Response 200: returns id, url, events, boardIds, status, failureCount, lastTriggeredAt, createdAt, updatedAt.

Create a webhook

POST /api/v1/webhooks

Creates a webhook. The signing secret is returned once, in this response only. Requires the webhook.manage permission.

Request body

Field

Type

Required

Description

url

string

Yes

Endpoint that receives event deliveries

events

array of string (post.created, post.status_changed, post.updated, post.deleted, post.restored, post.merged, post.unmerged, post.mentioned, post.owner_assigned, post.voted, comment.created, comment.updated)

Yes

Events to deliver

boardIds

array of string

No

Limit deliveries to events from these boards. Omit for all boards.

Response 201: returns id, url, secret, events, boardIds, status, createdAt.

Get a webhook

GET /api/v1/webhooks/{webhookId}

Requires the webhook.view permission.

Parameters

Name

In

Type

Required

Description

webhookId

path

string

Yes

Webhook ID

Response 200: returns id, url, events, boardIds, status, failureCount, lastTriggeredAt, createdAt, updatedAt, lastError.

Update a webhook

PATCH /api/v1/webhooks/{webhookId}

Requires the webhook.manage permission.

Parameters

Name

In

Type

Required

Description

webhookId

path

string

Yes

Webhook ID

Request body

Field

Type

Required

Description

url

string

No

events

array of string (post.created, post.status_changed, post.updated, post.deleted, post.restored, post.merged, post.unmerged, post.mentioned, post.owner_assigned, post.voted, comment.created, comment.updated)

No

boardIds

array of string, nullable

No

status

string (active, disabled)

No

Response 200: returns id, url, events, boardIds, status, failureCount, lastTriggeredAt, createdAt, updatedAt, lastError.

Delete a webhook

DELETE /api/v1/webhooks/{webhookId}

Requires the webhook.manage permission.

Parameters

Name

In

Type

Required

Description

webhookId

path

string

Yes

Webhook ID

Rotate a webhook signing secret

POST /api/v1/webhooks/{webhookId}/rotate

Generates a new signing secret and returns it once. Deliveries are signed with the new secret immediately. Requires the webhook.manage permission.

Parameters

Name

In

Type

Required

Description

webhookId

path

string

Yes

Webhook ID

Response 200: returns id, secret, rotatedAt.

Was this helpful?

Your feedback shapes what we write next.