Skip to content

Subscribe a workflow to a trigger (REST hook); the signing secret is shown once

POST
/api/v1/workspaces/{workspace}/integration/hooks
curl --request POST \
--url https://reputecast.example.com/api/v1/workspaces/acme-newsletter/integration/hooks \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "event": "contact.unsubscribed", "url": "example" }'

Permission: webhooks:manage

Keys: only an integration’s key can call this operation.

Creates a managed webhook. It can’t be edited by hand, answers to the integration only, and is removed when the endpoint answers 410 Gone.

workspace
required

Workspace slug

string
/^[a-z0-9][a-z0-9-]{1,62}$/

Workspace slug

X-ReputeCast-Workflow

The calling workflow: “; id=”, the name percent-encoded when it isn’t ASCII

string

The calling workflow: “; id=”, the name percent-encoded when it isn’t ASCII

Media typeapplication/json
object
event
required

The trigger’s event

string
url
required

Where ReputeCast posts the events: the workflow’s webhook address

string
<= 500 characters

Created

Media typeapplication/json
object
createdAt
required
string format: date-time
event
required
string
id
required
string
secret

The signing secret. Only in the answer to the subscribe call.

string
signatureHeader
required
string
timestampHeader
required
string
url
required
string

Example generated

{
"createdAt": "2026-04-15T12:00:00Z",
"event": "example",
"id": "example",
"secret": "example",
"signatureHeader": "example",
"timestampHeader": "example",
"url": "example"
}

Error

Media typeapplication/problem+json
object
code

Stable error code, e.g. permission_denied

string
detail

A human-readable explanation specific to this occurrence of the problem.

string
errors

Optional list of individual error details

Array<object>
object
location

Where the error occurred, e.g. ‘body.items[3].tags’ or ‘path.thing-id’

string
message

Error message text

string
value

The value at the given location

helpers

Members who hold the missing permission

Array<string>
instance

A URI reference that identifies the specific occurrence of the problem.

string format: uri
meta
object
key
additional properties
permission

The missing permission key

string
status

HTTP status code

integer format: int64
title

A short, human-readable summary of the problem type. This value should not change between occurrences of the error.

string
type

A URI reference to human-readable documentation for the error.

string format: uri
default: about:blank

Example

{
"detail": "Property foo is required but is missing.",
"instance": "https://example.com/error-log/abc123",
"status": 400,
"title": "Bad Request",
"type": "about:blank"
}