Skip to main content
POST
/
v1
/
deployments
/
{deploymentId}
/
notifications
Create a scheduled notification
curl --request POST \
  --url https://{tenant}.cubecloud.dev/api/v1/deployments/{deploymentId}/notifications \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "dashboardId": 123,
  "customCron": "<string>",
  "dayOfMonth": 123,
  "dayOfWeek": 123,
  "hour": 123,
  "minute": 123,
  "notificationEnabled": true,
  "timezone": "<string>"
}
'
{
  "cronExpression": "<string>",
  "dashboardId": 123,
  "deploymentId": 123,
  "humanReadableSchedule": "<string>",
  "id": 123,
  "isEnabled": true,
  "notificationEnabled": true,
  "notificationFormat": "<string>",
  "timezone": "<string>"
}
🔒 Admin only. Requires administrator privileges — the authenticated principal (API key, embed JWT, or any bearer token) must belong to a user with the admin role. Creates a scheduled notification — a recurring run of a dashboard whose rendered result is delivered to its recipients. The cadence is set by scheduleType plus the relevant time fields (minute, hour, dayOfWeek, dayOfMonth) or a raw customCron expression when scheduleType is CUSTOM; timezone defaults to UTC. The target dashboardId must belong to this deployment, otherwise 404 is returned. The created notification has no recipients — add them via POST /notifications/{id}/recipients.

Authorizations

Authorization
string
header
required

Token authentication. Send Authorization: Bearer <YOUR_TOKEN>.

Path Parameters

deploymentId
integer
required

Numeric id of the deployment that owns the notification.

Body

application/json

CreateNotificationInput

dashboardId
integer
required

Dashboard to run on the schedule

scheduleType
enum<string>
required
Available options:
HOURLY,
DAILY,
WEEKLY,
MONTHLY,
CUSTOM
customCron
string | null

Custom cron expression (required if scheduleType is CUSTOM)

dayOfMonth
integer | null

Day of month (1-31)

dayOfWeek
integer | null

Day of week (0-6, Sunday=0)

hour
integer | null

Hour of the day (0-23)

minute
integer | null

Minute of the hour (0-59)

notificationEnabled
boolean | null
notificationFormat
enum<string> | null
Available options:
png,
pdf
timezone
string | null

Timezone for the schedule (e.g. "America/New_York")

Response

200 - application/json
cronExpression
string
required
dashboardId
integer
required
deploymentId
integer
required
humanReadableSchedule
string
required

Human-readable description of the cron schedule

id
integer
required
isEnabled
boolean
required
notificationEnabled
boolean
required
notificationFormat
string
required
timezone
string
required