Endpoint referenceWebhooks
Create a webhook
POST
Creates a notification channel of type webhook (format json), slack or teams. When secret is omitted one is generated; it is returned once in this response. Deliveries are signed with X-Proteside-Signature: t=<unix>,v1=<hex hmac_sha256(secret, t + "." + rawBody)> and retried 3 times (1 min, 10 min, 60 min).
bearerAuthheader
AuthorizationBearer <token>API token created in Settings → API. Scopes are attached to the token; each operation lists its required scope in x-scope.
org_id?stringPartners only (orgs:manage): act on this child organization. May also be sent as org_id in JSON bodies.
Format
uuidIdempotency-Key?stringReplays the original response for 24 h
Length
1 <= length <= 255application/json- body
url*stringhttps only
Format
urisecret?stringOmit to have one generated
Length
16 <= length <= 256format?stringDefault
"json"Value in
"json""slack""teams"name?stringLength
length <= 120store_id?stringFormat
uuidevents?array<>|nullmin_severity?stringDefault
"high"Value in
"critical""high""medium""low""info"active?booleanDefault
trueWebhook with one-time secret
application/json- response
id?stringFormat
uuidorg_id?stringFormat
uuidstore_id?|null = organization-wide
Format
uuidtype?stringValue in
"webhook""slack""teams"name?stringurl?|Format
uriformat?stringValue in
"json""slack""teams"has_secret?booleanevents?array<>|null = all events
min_severity?stringValue in
"critical""high""medium""low""info"active?booleanlast_used_at?|Format
date-timecreated_at?stringFormat
date-timeupdated_at?stringFormat
date-timesecret?stringShown once
secret_generated?booleancurl -X POST "https://example.com/webhooks" \ -H "Content-Type: application/json" \ -d '{ "url": "https://ops.partner.example/hooks/proteside", "format": "json", "events": [ "alert.created", "alert.resolved", "report.ready" ], "min_severity": "high" }'{ "id": "a9b8c7d6-0000-4111-8222-333344445555", "org_id": "7f3c1e2a-0b4d-4c8e-9f10-2a3b4c5d6e7f", "store_id": null, "type": "webhook", "name": "Webhook · ops.partner.example", "url": "https://ops.partner.example/hooks/proteside", "format": "json", "has_secret": true, "events": [ "alert.created", "alert.resolved", "report.ready" ], "min_severity": "high", "active": true, "last_used_at": null, "created_at": "2026-09-27T10:20:00.000Z", "updated_at": "2026-09-27T10:20:00.000Z", "secret": "whsec_0f1e2d3c4b5a69788796a5b4c3d2e1f00f1e2d3c4b5a6978", "secret_generated": true}