Skip to content

Subscriptions API

Subscription endpoints manage workspace subscriptions, their state, testing, and delivery logs.

GET /api/v1/subscriptions

Returns subscriptions for the current workspace/account.

Arguments: none. The list is filtered by the backend using the current selected workspace.

Payload: none.

Response: SubscriptionView[].

POST /api/v1/subscriptions

Creates a subscription directly by rules or by template.

Arguments: none.

Payload for direct trigger subscription:

FieldRequiredDescription
templateNoUsually null or omitted in direct mode.
rulesYesArray of rules. At least one rule is required.
rules[].triggerYesTrigger fullname.
rules[].conditionsYesConditions object for rule filtering.
resourcesYesArray of resource fullnames.
actionsNoDelivery actions.
meta.titleNoSubscription title.
stateNoon or off.

Payload for template subscription:

FieldRequiredDescription
template.idYesTemplate id.
template.inputsYesValues for template input schema.
template.topicsYesSelected topic names.
resourcesYesArray of resource fullnames.
actionsNoDelivery actions.
meta.titleNoSubscription title.
stateNoon or off.

Response: SubscriptionView.

GET /api/v1/subscriptions/:id

Returns a subscription.

Arguments:

ArgumentLocationDescription
idPathSubscription id.

Payload: none.

Response: SubscriptionView.

POST /api/v1/subscriptions/:id

Updates a subscription.

Arguments:

ArgumentLocationDescription
idPathSubscription id.

Payload: same shape as POST /api/v1/subscriptions.

Response: SubscriptionView.

DELETE /api/v1/subscriptions/:id

Deletes a subscription.

Arguments:

ArgumentLocationDescription
idPathSubscription id.

Payload: none.

Response: OperationResult.

POST /api/v1/subscriptions/:id/state

Changes subscription state.

Arguments:

ArgumentLocationDescription
idPathSubscription id.

Payload:

FieldRequiredDescription
stateYeson, off, or blocked.
issueNoHuman-readable block/disable reason.

Response: SubscriptionView.

POST /api/v2/subscriptions/test

Tests an existing subscription or a draft subscription.

Arguments: none.

Payload:

FieldRequiredDescription
subscriptionOne ofExisting subscription id.
draftOne ofDraft payload with the same shape as subscription.save.params.
ruleIndexNoRule index to test.
modeNopreview or send.
inputNoRaw source item/test input.
test.sourceNoSource item object.
test.itemIndexNoSource item index.
test.match.hashNoExisting match hash.
test.match.indexNoExisting match index.

Response: SubscriptionTestResult.

GET /api/v2/subscriptions/alerts/history

Returns subscription logs for the current workspace.

Arguments:

ArgumentLocationDescription
limitQuery50, 100, 250, or 500.
statusQuerydelivered, failed, rate_limited, blocked.
directionQuerybefore or after.
datetimeQueryCursor date-time.

Payload: none.

Response: SubscriptionAlertLog[].

GET /api/v2/subscriptions/:id/alerts/history

Returns logs for a specific subscription.

Arguments:

ArgumentLocationDescription
idPathSubscription id.
limitQuery50, 100, 250, or 500.
statusQueryOptional status filter.
directionQuerybefore or after.
datetimeQueryCursor date-time.

Payload: none.

Response: SubscriptionAlertLog[].