Skip to content
Browse documentation

OpenAPI operations

Update an endpoint

PATCH
/v1/endpoints/{id}
curl --request PATCH \
--url https://api.hooks.events/v1/endpoints/example \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "name": "example", "environmentId": "example", "status": "active", "provider": "generic", "verificationMode": "none", "secret": "example", "sourceConfig": { "eventType": "example", "deliveryId": "example", "actor": "example", "subjectTitle": "example", "secretHeader": "example", "secretLocation": "header", "secretParam": "example", "basicUsername": "example", "dedupe": { "key": "example", "windowSeconds": 1 } }, "rateLimitPerMinute": 1, "rateLimitAction": "store", "hooks": { "stages": { "received": [ { "type": "drop", "condition": { "field": "example", "op": "equals", "value": [ "example" ] } } ], "before_transform": [ { "type": "drop", "condition": { "field": "example", "op": "equals", "value": [ "example" ] } } ], "before_deliver": [ { "type": "drop", "condition": { "field": "example", "op": "equals", "value": [ "example" ] } } ], "after_deliver": [ { "type": "drop", "condition": { "field": "example", "op": "equals", "value": [ "example" ] } } ], "on_failure": [ { "type": "drop", "condition": { "field": "example", "op": "equals", "value": [ "example" ] } } ], "on_dead": [ { "type": "drop", "condition": { "field": "example", "op": "equals", "value": [ "example" ] } } ] } } }'

Requires the endpoints:write scope.

id
required
string
Media typeapplication/json
object
name
string
>= 1 characters <= 100 characters
environmentId
Any of:
string
>= 1 characters
status
string
Allowed values: active paused
provider
string
Allowed values: generic github gitlab hubspot shopify intercom zendesk stripe slack linear notion sentry jira pagerduty standard-webhooks svix vercel twilio discord bitbucket typeform calendly resend clerk cloudflare polar lemon-squeezy paddle supabase posthog azure-devops zoom fireflies recall-ai auth0 stytch asana clickup monday square paypal grafana airtable cal-com wechat line aws-sns aws-eventbridge heroku mongodb-atlas sendgrid mailgun figma postmark mailchimp customer-io brevo pubsub railway neon planetscale adyen checkout chargebee razorpay mollie gocardless coinbase-commerce recurly revenuecat woocommerce recharge shipstation aftership bigcommerce pipedrive freshdesk helpscout front gorgias trello todoist attio box dropbox shortcut circleci buildkite confluence dockerhub okta telegram segment mux rudderstack sanity workos openai webflow beehiiv meta x-twitter sendbird telnyx linkedin replicate tiktok elevenlabs vapi retell-ai ghost docusign assemblyai contentful firecrawl browserbase exa fal huggingface
verificationMode
string
Allowed values: none hmac shared-secret basic
secret
string
>= 16 characters <= 256 characters
sourceConfig
object
eventType
string
>= 1 characters <= 200 characters
deliveryId
string
>= 1 characters <= 200 characters
actor
string
>= 1 characters <= 200 characters
subjectTitle
string
>= 1 characters <= 200 characters
secretHeader
string
>= 1 characters <= 64 characters
secretLocation
string
Allowed values: header query
secretParam
string
>= 1 characters <= 64 characters
basicUsername
string
>= 1 characters <= 256 characters
dedupe
object
key
required
string
>= 1 characters <= 500 characters
windowSeconds
integer
>= 1 <= 86400
rateLimitPerMinute
Any of:
integer
>= 1 <= 100000
rateLimitAction
string
Allowed values: store drop
hooks
Any of:
object
stages
required
object
received
Array
<= 10 items
One of:
object
type
required
string
Allowed value: drop
condition
Any of:
object
field
required
string
>= 1 characters <= 200 characters
op
required
string
Allowed values: equals not_equals in contains matches exists
value
Any of:
string
<= 1000 characters
before_transform
Array
<= 10 items
One of:
object
type
required
string
Allowed value: drop
condition
Any of:
object
field
required
string
>= 1 characters <= 200 characters
op
required
string
Allowed values: equals not_equals in contains matches exists
value
Any of:
string
<= 1000 characters
before_deliver
Array
<= 10 items
One of:
object
type
required
string
Allowed value: drop
condition
Any of:
object
field
required
string
>= 1 characters <= 200 characters
op
required
string
Allowed values: equals not_equals in contains matches exists
value
Any of:
string
<= 1000 characters
after_deliver
Array
<= 10 items
One of:
object
type
required
string
Allowed value: drop
condition
Any of:
object
field
required
string
>= 1 characters <= 200 characters
op
required
string
Allowed values: equals not_equals in contains matches exists
value
Any of:
string
<= 1000 characters
on_failure
Array
<= 10 items
One of:
object
type
required
string
Allowed value: drop
condition
Any of:
object
field
required
string
>= 1 characters <= 200 characters
op
required
string
Allowed values: equals not_equals in contains matches exists
value
Any of:
string
<= 1000 characters
on_dead
Array
<= 10 items
One of:
object
type
required
string
Allowed value: drop
condition
Any of:
object
field
required
string
>= 1 characters <= 200 characters
op
required
string
Allowed values: equals not_equals in contains matches exists
value
Any of:
string
<= 1000 characters

Success

Media typeapplication/json
object
ok
required
boolean
key
additional properties

Example generated

{
"ok": true
}

Validation error

Media typeapplication/json
object
error
required
object
code
required

Machine-readable error code

string
message
required
string
requestId
required

Request id, also echoed in x-request-id

string
issues

Per-field validation details for VALIDATION_ERROR

Array<object>
object
path
required

Body or query field that failed validation

string
message
required
string
key
additional properties
key
additional properties

Example generated

{
"error": {
"code": "example",
"message": "example",
"requestId": "example",
"issues": [
{
"path": "example",
"message": "example"
}
]
}
}

Missing or invalid credentials

Media typeapplication/json
object
error
required
object
code
required

Machine-readable error code

string
message
required
string
requestId
required

Request id, also echoed in x-request-id

string
issues

Per-field validation details for VALIDATION_ERROR

Array<object>
object
path
required

Body or query field that failed validation

string
message
required
string
key
additional properties
key
additional properties

Example generated

{
"error": {
"code": "example",
"message": "example",
"requestId": "example",
"issues": [
{
"path": "example",
"message": "example"
}
]
}
}

The credential lacks the required scope, or the workspace is not writable

Media typeapplication/json
object
error
required
object
code
required

Machine-readable error code

string
message
required
string
requestId
required

Request id, also echoed in x-request-id

string
issues

Per-field validation details for VALIDATION_ERROR

Array<object>
object
path
required

Body or query field that failed validation

string
message
required
string
key
additional properties
key
additional properties

Example generated

{
"error": {
"code": "example",
"message": "example",
"requestId": "example",
"issues": [
{
"path": "example",
"message": "example"
}
]
}
}

Resource not found

Media typeapplication/json
object
error
required
object
code
required

Machine-readable error code

string
message
required
string
requestId
required

Request id, also echoed in x-request-id

string
issues

Per-field validation details for VALIDATION_ERROR

Array<object>
object
path
required

Body or query field that failed validation

string
message
required
string
key
additional properties
key
additional properties

Example generated

{
"error": {
"code": "example",
"message": "example",
"requestId": "example",
"issues": [
{
"path": "example",
"message": "example"
}
]
}
}

Rate limited

Media typeapplication/json
object
error
required
object
code
required

Machine-readable error code

string
message
required
string
requestId
required

Request id, also echoed in x-request-id

string
issues

Per-field validation details for VALIDATION_ERROR

Array<object>
object
path
required

Body or query field that failed validation

string
message
required
string
key
additional properties
key
additional properties

Example generated

{
"error": {
"code": "example",
"message": "example",
"requestId": "example",
"issues": [
{
"path": "example",
"message": "example"
}
]
}
}
X-RateLimit-Limit
integer

Requests allowed per window

X-RateLimit-Remaining
integer
X-RateLimit-Reset
integer

Seconds until the window resets

Retry-After
integer

Seconds to wait before retrying. Absent when the rejection has no retry time (for example the Free lifetime quota).

X-Quota-Limit
integer

Request allowance for the workspace’s plan

X-Quota-Remaining
integer

Requests left in the allowance after this request