---
title: "Post Weekly Notifications"
method: POST
path: "/v1/weekly-notifications"
tags: ["Weekly notifications"]
---

# Post Weekly Notifications

`POST /v1/weekly-notifications`

Upsert weekly digest notification targets (and optionally UTC weekly schedule) for the current org.

## Headers

- `X-API-Key` string, required

## Request body

- WeeklyNotificationsBody
  - `targets` WeeklyNotificationTarget[], required — List of notification targets (alarm-style). Required to avoid accidentally overwriting with an empty list.
    - `type` 'email' | 'slack', required — Channel type
    - `target` string, required — Email address or Slack channel ID
  - `preferred_send_time_utc` string, nullable — UTC clock time when the weekly job runs, HH:MM:SS (e.g. 17:00:00). Must be sent together with day_of_week unless using clear_schedule.
  - `day_of_week` integer, nullable — UTC weekday for the weekly instant: 0=Monday .. 6=Sunday (cron-style in UTC).
  - `clear_schedule` boolean — If true, reset weekly send to the default (Monday 9:00 AM PST → UTC); still updates targets. Do not send with preferred_send_time_utc or day_of_week.

## Response `200`

Successful Response

- WeeklyNotificationsPostResponse
  - `success` boolean
  - `first_generate_at_utc` string, nullable — From summaries-cron: first generate job fire (ISO UTC), if registered.
  - `first_notify_at_utc` string, nullable — From summaries-cron: first notify job fire (ISO UTC), if registered.
  - `deferred` boolean, nullable — True if first fire was deferred by at least one week for lead-time safety.

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/getbluejay/apis/bluejay-api.md) · [All operations](https://skmtc.net/getbluejay/apis/bluejay-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/getbluejay/bluejay-api/revisions/f48cef80963f/schema)
