Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
162 changes: 150 additions & 12 deletions docs-mintlify/api-reference/api.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -9557,8 +9557,10 @@ components:
Notify only when: on each fire the measure is read once, before the agent runs, and the
agent runs only when the condition starts to hold, with the crossing facts at the top of
its thread; it runs again only after the condition has stopped holding. A `change` or
`anomaly` rule needs `timeDimension` and `granularity`. The creator gets an inbox row
only with `notificationEnabled: true`. Omit to run the agent on every fire.
`anomaly` rule needs `timeDimension` and `granularity`. A request that sends
`notification` must leave a task with a condition notifying someone (`400` otherwise);
one that does not, on the deprecated `notificationEnabled` shape, keeps its earlier
behaviour. Omit to run the agent on every fire.
Comment thread
vasilev-alex marked this conversation as resolved.
oneOf:
- $ref: '#/components/schemas/ScheduledTaskCondition'
- type: 'null'
Expand All @@ -9585,10 +9587,21 @@ components:
maxLength: 255
minLength: 1
type: string
notification:
description: >-
Who a finished run notifies, and how. Replaces the stored setting. Picked users and
groups are shared the task, view-only, so they can open the run. An id that is not an
active workspace member or a group answers `400`. Wins over `notificationEnabled` when
both are sent. Omit it, and `notificationEnabled`, to notify nobody.
oneOf:
- $ref: '#/components/schemas/ScheduledTaskNotificationInput'
- type: 'null'
notificationEnabled:
deprecated: true
description: >-
Notify the creator in Cube's notification inbox when a run finishes, whether it succeeds
or fails. Defaults to `false`.
Deprecated: send `notification` instead. `true` adds the creator to `notification` with
Inbox on; `false` takes the creator off it only when they get Inbox, so a creator who
gets only Email keeps it.
oneOf:
- type: boolean
- type: 'null'
Expand Down Expand Up @@ -16433,6 +16446,93 @@ components:
- items
- pageInfo
type: object
ScheduledTaskNotification:
properties:
channels:
$ref: '#/components/schemas/ScheduledTaskNotificationChannels'
groupIds:
description: >-
User groups whose members are notified by Inbox and Email, as they are when a run
finishes.
items:
type: integer
maxItems: 200
type: array
optedOutUserIds:
description: >-
Users who unsubscribed from this task's email. Returned only to the task's creator or an
admin.
oneOf:
- items:
type: integer
type: array
- type: 'null'
slackChannels:
items:
$ref: '#/components/schemas/ScheduledTaskSlackChannel'
maxItems: 50
type: array
userIds:
description: >-
The users notified by Inbox and Email. The creator is notified only when listed here. A
failed run notifies only the creator.
items:
type: integer
maxItems: 1000
type: array
required:
- channels
- userIds
- groupIds
- slackChannels
type: object
ScheduledTaskNotificationChannels:
properties:
email:
description: Email, for the picked people. Each email carries an unsubscribe link.
type: boolean
inbox:
description: Cube's notification inbox, for the picked people.
type: boolean
slack:
description: One Slack post to each of `slackChannels`.
type: boolean
required:
- inbox
- email
- slack
type: object
ScheduledTaskNotificationInput:
properties:
channels:
$ref: '#/components/schemas/ScheduledTaskNotificationChannels'
groupIds:
description: >-
User groups whose members are notified by Inbox and Email, as they are when a run
finishes.
items:
type: integer
maxItems: 200
type: array
slackChannels:
items:
$ref: '#/components/schemas/ScheduledTaskSlackChannel'
maxItems: 50
type: array
userIds:
description: >-
The users notified by Inbox and Email. The creator is notified only when listed here. A
failed run notifies only the creator.
items:
type: integer
maxItems: 1000
type: array
required:
- channels
- userIds
- groupIds
- slackChannels
type: object
ScheduledTaskResponse:
properties:
agentId:
Expand All @@ -16445,8 +16545,10 @@ components:
Notify only when: on each fire the measure is read once, before the agent runs, and the
agent runs only when the condition starts to hold, with the crossing facts at the top of
its thread; it runs again only after the condition has stopped holding. A `change` or
`anomaly` rule needs `timeDimension` and `granularity`. The creator gets an inbox row
only with `notificationEnabled: true`. Null runs the agent on every fire.
`anomaly` rule needs `timeDimension` and `granularity`. A request that sends
`notification` must leave a task with a condition notifying someone (`400` otherwise);
one that does not, on the deprecated `notificationEnabled` shape, keeps its earlier
behaviour. Null runs the agent on every fire.
oneOf:
- $ref: '#/components/schemas/ScheduledTaskCondition'
- type: 'null'
Expand Down Expand Up @@ -16481,8 +16583,14 @@ components:
oneOf:
- type: string
- type: 'null'
notification:
$ref: '#/components/schemas/ScheduledTaskNotification'
description: Who a finished run notifies, and how.
notificationEnabled:
description: Whether a finished run notifies the creator in Cube's notification inbox.
deprecated: true
description: >-
Deprecated: read `notification` instead. Whether a finished run notifies the creator in
Cube's notification inbox.
type: boolean
prompt:
description: >-
Expand All @@ -16505,6 +16613,7 @@ components:
- timezone
- isEnabled
- notificationEnabled
- notification
- userId
type: object
ScheduledTaskRunResponse:
Expand Down Expand Up @@ -16537,6 +16646,22 @@ components:
- items
- pageInfo
type: object
ScheduledTaskSlackChannel:
properties:
id:
description: The Slack channel id, e.g. `C0123ABC`.
maxLength: 64
minLength: 1
type: string
name:
description: The channel name, without `#`.
maxLength: 255
minLength: 1
type: string
required:
- id
- name
type: object
SetBranchStagingEnvironmentRequest:
properties:
branchId:
Expand Down Expand Up @@ -17667,9 +17792,11 @@ components:
Notify only when: on each fire the measure is read once, before the agent runs, and the
agent runs only when the condition starts to hold, with the crossing facts at the top of
its thread; it runs again only after the condition has stopped holding. A `change` or
`anomaly` rule needs `timeDimension` and `granularity`. The creator gets an inbox row
only with `notificationEnabled: true`. Omit to leave unchanged; null removes it. A
changed condition starts its breach state fresh.
`anomaly` rule needs `timeDimension` and `granularity`. A request that sends
`notification` must leave a task with a condition notifying someone (`400` otherwise);
one that does not, on the deprecated `notificationEnabled` shape, keeps its earlier
behaviour. Omit to leave unchanged; null removes it. A changed condition starts its
breach state fresh.
oneOf:
- $ref: '#/components/schemas/ScheduledTaskCondition'
- type: 'null'
Expand Down Expand Up @@ -17700,10 +17827,21 @@ components:
type: string
minLength: 1
- type: 'null'
notification:
description: >-
Who a finished run notifies, and how. Replaces the stored setting. Picked users and
groups are shared the task, view-only, so they can open the run. An id that is not an
active workspace member or a group answers `400`. Wins over `notificationEnabled` when
both are sent. Omit to leave unchanged. Explicit null answers `400`.
oneOf:
- $ref: '#/components/schemas/ScheduledTaskNotificationInput'
- type: 'null'
notificationEnabled:
deprecated: true
description: >-
Turn the inbox notification for finished runs on or off. Omit to leave unchanged.
Explicit null answers `400`.
Deprecated: send `notification` instead. `true` adds the creator to `notification` with
Inbox on; `false` takes the creator off it only when they get Inbox, so a creator who
gets only Email keeps it. Omit to leave unchanged. Explicit null answers `400`.
oneOf:
- type: boolean
- type: 'null'
Expand Down
11 changes: 11 additions & 0 deletions docs-mintlify/api-reference/changelog.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,17 @@ rss: true
{/* GENERATED FILE — do not edit by hand. */}
{/* Run scripts/extract-changelog.mjs against the platform client CHANGELOG.md. */}

<Update label="2026-10-24" description="v0.24.0" tags={["Added","Changed"]}>
### Added

- `notification` on the create and update scheduled task requests (`POST /api/v1/deployments/{deploymentId}/scheduled-tasks` and its update operation) chooses who a finished run notifies: users (`userIds`), user groups (`groupIds`) and Slack channels (`slackChannels`), over Inbox, Email and Slack (`channels`). Picked users and groups are shared the task view-only. An id that is not an active workspace member or a group answers `400`. The scheduled task response returns `notification`, and `optedOutUserIds` for the task's creator or an admin.

### Changed

- `notificationEnabled` on scheduled tasks is deprecated; send and read `notification` instead. When both are sent, `notification` wins.
- A scheduled task request that sends `notification` and sets a condition must notify someone, or it answers `400`.
</Update>

<Update label="2026-10-23" description="v0.23.1" tags={["Changed"]}>
### Changed

Expand Down
Loading