Scheduled Reports
Automate report generation and delivery on a recurring schedule. Keep stakeholders informed with daily briefings, weekly summaries, and monthly analyses—all generated automatically.
Overview#
Scheduled reports let you automate the generation and delivery of intelligence reports. Instead of manually running reports, you configure a schedule and PromptReports handles the rest—generating fresh reports with the latest data and delivering them to stakeholders via email, webhooks, or cloud storage.
Flexible Scheduling
Daily, weekly, monthly, or custom cron expressions to match any cadence.
Multi-Channel Delivery
Email, Slack, webhooks, S3, Google Drive—deliver reports where they're needed.
Dynamic Content
Reports use the latest data at generation time, always up-to-date.
Smart Alerting
Get notified about schedule failures or anomalies in report data.
Creating a Schedule#
Set up a scheduled report in a few steps:
Navigate to Schedules
Click "Create Schedule"
Select the report template
Configure the schedule
- Name: A descriptive name (e.g., "Daily Market Briefing")
- Frequency: How often to run (daily, weekly, etc.)
- Time: When to generate the report
- Timezone: Which timezone to use for scheduling
Set up delivery
Configure parameters
Save and activate
Test Before Activating
Schedule Frequency#
PromptReports supports a variety of scheduling options:
| Frequency | Options | Example Use Case |
|---|---|---|
| Hourly | Every N hours | Real-time monitoring dashboards |
| Daily | Specific time, with day exclusions | Morning briefings (skip weekends) |
| Weekly | Day of week + time | Weekly team summaries |
| Monthly | Day of month + time | Monthly executive reports |
| Custom | Cron expression | Complex schedules (first Monday, quarterly) |
# Every weekday at 8:00 AM
0 8 * * 1-5
# Every Monday and Thursday at 9:30 AM
30 9 * * 1,4
# First day of every month at 6:00 AM
0 6 1 * *
# Every quarter (Jan, Apr, Jul, Oct) on the 15th at noon
0 12 15 1,4,7,10 *
# Every 4 hours during business hours on weekdays
0 9,13,17 * * 1-5Timezone Support
Schedules run in your specified timezone. Perfect for global teams.
Holiday Handling
Configure schedules to skip holidays or run on alternate days.
Delivery Options#
Deliver generated reports to stakeholders through multiple channels:
| Channel | Format Options | Configuration |
|---|---|---|
| PDF attachment, HTML inline, or link | Recipient list, subject template, custom message | |
| Slack | Message with link or inline preview | Webhook URL or Slack app connection |
| Microsoft Teams | Adaptive card with summary | Incoming webhook URL |
| Webhook | JSON payload with report data | Endpoint URL, headers, authentication |
| Amazon S3 | PDF, JSON, or HTML files | Bucket, path pattern, credentials |
| Google Drive | PDF or Google Docs | Folder ID, sharing settings |
Choose delivery channels
Configure each channel
Customize the message
{{report_name}}- Name of the report{{generated_at}}- Timestamp of generation{{period}}- Report period (e.g., "Week of Jan 15")
Set fallback options
{
"channel": "email",
"config": {
"recipients": [
"team@company.com",
"{{stakeholder_email}}"
],
"cc": ["manager@company.com"],
"subject": "{{report_name}} - {{period}}",
"message": "Hello,\n\nPlease find attached the latest {{report_name}} for {{period}}.\n\nKey highlights:\n{{summary}}\n\nBest regards,\nPromptReports",
"format": "pdf",
"attachReport": true
}
}Recipient Groups
Dynamic Parameters#
Scheduled reports can use dynamic parameters that change based on when the report runs:
| Parameter Type | Example | Description |
|---|---|---|
| Date Variables | {{today}}, {{yesterday}}, {{week_start}} | Automatically calculated dates |
| Period Variables | {{period_start}}, {{period_end}} | Based on schedule frequency |
| Environment | {{environment}} | Production, staging, etc. |
| Custom Variables | {{region}}, {{product_line}} | Your defined parameters |
{
"parameters": {
// Automatically calculated based on run time
"report_date": "{{today}}", // 2024-01-15
"data_start": "{{week_start}}", // 2024-01-08
"data_end": "{{week_end}}", // 2024-01-14
"previous_period": "{{last_week}}", // 2024-01-01 to 2024-01-07
// Custom date math
"lookback": "{{today - 30 days}}", // 2023-12-16
"quarter_start": "{{quarter_start}}", // 2024-01-01
// Formatted dates
"display_date": "{{today | format:'MMMM D, YYYY'}}" // January 15, 2024
}
}Parameter Sets
Create multiple parameter sets to generate variations of the same report.
Per-Recipient Parameters
Customize parameters per recipient for personalized reports.
Managing Schedules#
Control your schedules from the Schedules dashboard:
Run Now
Trigger an immediate run outside the regular schedule.
Pause/Resume
Temporarily pause a schedule without deleting it.
Edit Configuration
Modify schedule settings, delivery, or parameters.
View History
See all past runs with status, duration, and delivery results.
| Status | Meaning | Action |
|---|---|---|
| Active | Schedule is running normally | No action needed |
| Paused | Schedule is temporarily disabled | Resume when ready |
| Failed | Last run encountered an error | Check logs and fix issues |
| Pending | Scheduled run is queued | Will run at scheduled time |
| Running | Report is currently being generated | Wait for completion |
Monitoring & Alerts#
Stay informed about your scheduled reports:
Configure failure alerts
Set up delivery confirmations
Monitor quality metrics
Review run history
| Alert Type | Trigger | Default Action |
|---|---|---|
| Generation Failed | Report generation encounters an error | Email to schedule owner |
| Delivery Failed | One or more delivery channels fail | Email + retry delivery |
| Data Stale | Source data is older than threshold | Warning in report + email |
| Anomaly Detected | Unusual values in report metrics | Flag in report + alert |
| Schedule Overdue | Run hasn't completed by expected time | Email to schedule owner |
Retry Behavior
Use Cases#
Daily Intelligence Briefing
Generate a morning summary of overnight developments, market changes, or competitor activity.
Weekly Team Summary
Automated weekly report of team metrics, prompt changes, and evaluation results.
Monthly Executive Report
High-level summary for leadership with KPIs, trends, and strategic insights.
Compliance Reports
Regular compliance documentation with audit trails and approval records.
{
"name": "Daily Market Briefing",
"template": "market-intelligence-brief",
"schedule": {
"frequency": "daily",
"time": "07:00",
"timezone": "America/New_York",
"skipDays": ["Saturday", "Sunday"]
},
"parameters": {
"markets": ["US", "EU", "APAC"],
"lookback_hours": 24,
"include_sentiment": true
},
"delivery": [
{
"channel": "email",
"recipients": ["executives@company.com"],
"format": "pdf"
},
{
"channel": "slack",
"webhook": "https://hooks.slack.com/...",
"format": "summary"
}
],
"alerts": {
"onFailure": ["admin@company.com"],
"onAnomalyDetected": true
}
}Best Practices#
Stagger Schedules
Don't schedule all reports at the same time—spread them out to balance load.
Test Thoroughly
Always test with 'Run Now' before activating automated schedules.
Set Up Alerts
Configure failure alerts so issues are caught and addressed quickly.
Use Recipient Groups
Manage distribution lists centrally for easier maintenance.
Scheduling Tips:
- Schedule reports to arrive before meetings where they'll be discussed
- Consider timezone differences when scheduling for global teams
- Use descriptive names that make it clear what the schedule does
- Document the purpose and audience in the schedule description
- Review and clean up unused schedules periodically
Performance Considerations:
- Large reports with many sections take longer to generate—schedule accordingly
- Peak hours (9 AM in major timezones) have higher load—consider off-peak times
- Set reasonable timeouts for generation and delivery
- Monitor generation times and optimize slow reports