Skip to main content
PUT
Update webhook

Authorizations

Authorization
string
header
required

Authenticate with an API access token in the Authorization header: Authorization: Bearer <token>. Create a token from the API Access Tokens page in Contractors Cloud, under Integrations.

Path Parameters

webhookId
string<uuid>
required

The id of the webhook.

Body

application/json
endpoint
string<uri>

The URL deliveries are POSTed to. Required when creating a webhook; cannot be set to an empty value when updating.

Example:

"https://example.com/webhooks/contractors-cloud"

company_id
integer | null

The id of a company in your organization to scope this webhook to. Optional; omit or send null to fire for matching events across your whole organization.

Example:

6

is_enabled
boolean
default:true

Whether the webhook receives event deliveries. Optional; defaults to true if omitted.

Example:

true

Response

The updated webhook.

id
string<uuid>

The webhook's unique identifier.

Example:

"a3d8f2e6-1c4b-4a9d-8e3f-2b5a7c9d4f60"

tenant_id
integer | null

The id of your organization's account. Null if not recorded.

Example:

12

company_id
integer | null

The id of the company this webhook is scoped to. Null means the webhook fires for matching events across every company in your organization; set it to scope deliveries to one company.

Example:

6

user_id
integer | null

The id of the user who created this webhook. Null if not recorded.

Example:

1159

endpoint
string<uri>

The URL that event deliveries are sent to as an HTTP POST request. An https:// URL is strongly recommended, since deliveries include your signing_secret-derived signature and potentially sensitive resource data, though the API doesn't enforce a particular scheme.

Example:

"https://example.com/webhooks/contractors-cloud"

error_rate
integer

The percentage of this webhook's delivery attempts that failed over roughly the last 90 days. This is an informational health signal only — it doesn't affect delivery, and a high value doesn't disable the webhook.

Required range: 0 <= x <= 100
Example:

0

is_enabled
boolean
default:true

Whether this webhook receives deliveries for its subscribed events. Disabled webhooks receive no event deliveries, but can still receive test sends.

Example:

true

signing_secret
string

The per-webhook secret key used to sign every delivery. Returned on every response for this webhook, including list results — treat it as a credential. There's no separate endpoint to retrieve or rotate it; to change it, delete this webhook and create a new one. See Verifying signatures for how to use it.

Example:

"5f2a9c3e8d1b6f4a7c2e9d5b3f8a1c6e4d7b2f9a"

created_at
string | null

Timestamp when the webhook was created, formatted as YYYY-MM-DD HH:MM:SS. Null if not recorded.

Example:

"2025-01-05 08:15:00"

updated_at
string | null

Timestamp when the webhook was last updated, formatted as YYYY-MM-DD HH:MM:SS. Null if not recorded.

Example:

"2025-01-05 08:15:00"