Skip to main content
PUT
/
webhooks
/
{id}
curl --request PUT \
  --url https://www.trysignalbase.com/api/v2/webhooks/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "event_types": [
    "funding.created"
  ],
  "active": false
}
'
{
  "success": true,
  "data": {
    "id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d",
    "endpoint_url": "https://example.com/hooks/signalbase",
    "event_types": [
      "funding.created"
    ],
    "filters": {
      "countries": "US,GB"
    },
    "active": false,
    "created_at": "2026-05-29T10:30:00.000Z",
    "updated_at": "2026-05-29T13:00:00.000Z",
    "last_modified_by": "user_2a9f8c7b6d5e4f3a",
    "last_modified_via": "api",
    "secret_preview": "…5a6b",
    "stats": {
      "total_deliveries": 42,
      "successful_deliveries": 40,
      "failed_deliveries": 2,
      "last_success_at": "2026-05-29T12:00:00.000Z",
      "last_failure_at": "2026-05-28T09:00:00.000Z",
      "consecutive_failures": 0
    }
  },
  "meta": {
    "endpoint": "webhooks.update",
    "creditsUsed": 0
  }
}

Authorizations

Authorization
string
header
required

Signalbase API key. Include as a Bearer token in the Authorization header.

Path Parameters

id
string
required

The webhook subscription ID.

Body

application/json

Send any subset of fields. Field names accept snake_case or camelCase (endpointUrl, eventTypes, rotateSecret).

endpoint_url
string<uri>

New destination URL. Same validation as create.

Maximum string length: 500
event_types
enum<string>[]

Replacement list of subscribed event types.

Event type a subscription can register for. system.test is accepted but only ever delivered by the Send Test Event endpoint; it never fires automatically.

Available options:
funding.created,
acquisition.created,
job_change.created,
hiring.created,
new_company.created,
system.test
filters
object

Replacement filter map. Same recognized keys as on create (countries, categories, search, teamSize, dateFrom, dateTo, funding, roundFlavor, fundingAmount, acquisitionAmount, healthScore); unrecognized keys are ignored.

active
boolean

Set false to pause, or true to re-enable a soft-deleted webhook.

rotate_secret
boolean

If true, generate a new signing secret. The response includes the full new secret once; the old secret stops verifying immediately.

Response

The updated webhook. Includes the full secret only when rotate_secret was true; otherwise secret_preview.

success
boolean
required
data
object
required

A webhook subscription. List/retrieve/update(no rotation)/delete include secret_preview; create and rotate_secret include the full secret instead.

meta
object
required