---
title: "Create a Scheduled Report"
method: POST
path: "/reports/scheduled"
tags: ["Reports"]
---

# Create a Scheduled Report

`POST /reports/scheduled`

## Request

- Base URL: `https://console.jumpcloud.com/api/v2`
- URL: `https://console.jumpcloud.com/api/v2/reports/scheduled`
- Auth: API key in header `x-api-key`
- TypeScript: <https://skmtc.dev/jumpcloud/apis/jumpcloud-api-2/docs/reports/scheduled/post.ts> (a function with typed inputs; its response is checked against the schema)

Create a Scheduled Report.

#### Sample Request
```
curl -X POST https://console.jumpcloud.com/api/v2/reports/scheduled \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: {API_KEY}' \
 -d '{ {Scheduled_Report_Parameters} }' \
```

## Request body

- JumpcloudInsightsCreateScheduledReportRequest
  - `scheduledReport` JumpcloudInsightsScheduledReport, required
    - `createdAt` string, date-time
    - `cronExpression` string: Generated cron expression (read-only, computed from schedule_frequency, schedule_time, and time_zone)
    - `days` string[]: Weekly: e.g. ["MONDAY", "THURSDAY"]. Monthly/quarterly: ["FIRST_DAY"] or ["LAST_DAY"]. Daily: omit or [].
    - `description` string
    - `displayName` string, required
    - `endDate` string, date-time, nullable: Optional end date for the schedule
    - `exportType` string, required
    - `id` string
    - `isActive` boolean, required
    - `lastRunAt` string, date-time, nullable
    - `lastRunStatus` string
    - `nextRunAt` string, date-time
    - `recipients` JumpcloudInsightsRecipient[], required: List of notification recipients with channel type and recipient details
      - `channelType` string, required
      - `value` string[], required: List of values: email addresses (email), slack channel names/IDs (slack), or webhook URLs (webhook)
    - `reportId` string, byte, nullable: Report definition ID (report_views.object_id or report_templates.object_id); hex in API. Omitted when not set.
    - `reportType` string, nullable: report_view or report_template
    - `scheduleFrequency` string, required
    - `scheduleTime` string, required: Time of day for the schedule (e.g., "09:00 AM", "14:30")
    - `startDate` string, date-time, nullable: Optional start date for the schedule
    - `timeZone` string, required: Timezone for the schedule (e.g., "GMT-2", "America/New_York")
    - `updatedAt` string, date-time

## Response `200`

- JumpcloudInsightsScheduledReport
  - `createdAt` string, date-time
  - `cronExpression` string: Generated cron expression (read-only, computed from schedule_frequency, schedule_time, and time_zone)
  - `days` string[]: Weekly: e.g. ["MONDAY", "THURSDAY"]. Monthly/quarterly: ["FIRST_DAY"] or ["LAST_DAY"]. Daily: omit or [].
  - `description` string
  - `displayName` string, required
  - `endDate` string, date-time, nullable: Optional end date for the schedule
  - `exportType` string, required
  - `id` string
  - `isActive` boolean, required
  - `lastRunAt` string, date-time, nullable
  - `lastRunStatus` string
  - `nextRunAt` string, date-time
  - `recipients` JumpcloudInsightsRecipient[], required: List of notification recipients with channel type and recipient details
    - `channelType` string, required
    - `value` string[], required: List of values: email addresses (email), slack channel names/IDs (slack), or webhook URLs (webhook)
  - `reportId` string, byte, nullable: Report definition ID (report_views.object_id or report_templates.object_id); hex in API. Omitted when not set.
  - `reportType` string, nullable: report_view or report_template
  - `scheduleFrequency` string, required
  - `scheduleTime` string, required: Time of day for the schedule (e.g., "09:00 AM", "14:30")
  - `startDate` string, date-time, nullable: Optional start date for the schedule
  - `timeZone` string, required: Timezone for the schedule (e.g., "GMT-2", "America/New_York")
  - `updatedAt` string, date-time

## Other responses

- `201`: Success creating a Scheduled Report.
- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden
- `500`: Internal Server Error

---

[API](https://skmtc.dev/jumpcloud/apis/jumpcloud-api-2.md) - [All operations](https://skmtc.dev/jumpcloud/apis/jumpcloud-api-2/llms.txt) - [OpenAPI document](https://skmtc.dev/jumpcloud/apis/jumpcloud-api-2/revisions/3f09fe63caaa?raw)
