title: Schedule Manager category: Scheduling tags: scheduling, quartz, cron, jobs, automation priority: Normal
Schedule Manager
The Schedule Manager at /admin/schedule provides centralized control over all automated tasks in IdentityCenter. Built on Quartz.NET for enterprise-grade reliability, it manages sync schedules, compliance evaluations, maintenance routines, report generation, and more.
Accessing the Schedule Manager
Navigate to Schedule Manager from the administration menu. The page displays four key metrics at the top:
| Metric | Description |
|---|---|
| Built-in Schedules | Number of pre-configured schedule templates |
| Categories | Distinct schedule template categories |
| Scheduled Syncs | Sync projects with an active cron schedule |
| Active Jobs | Enabled sync projects that are currently scheduled |
Job Types
IdentityCenter uses several job types, each handling a specific area of automation:
| Job Type | Class | Description |
|---|---|---|
| Sync | SyncProjectJob |
Executes directory synchronization projects to import objects from AD, Entra ID, or LDAP |
| Policy Evaluation | PolicyEvaluationJob |
Evaluates compliance policies and detects violations |
| System Maintenance | SystemMaintenanceJob |
Performs system health checks and housekeeping tasks |
| Report Generation | ReportGenerationJob |
Generates scheduled reports and emails results to distribution lists |
| Lifecycle Triggers | ScheduledTriggerJob |
Executes scheduled workflow triggers for identity lifecycle actions |
| Email Queue | EmailQueueProcessingJob |
Processes the outbound email queue and sends notifications |
| Escalation | EscalationJob |
Escalates overdue access reviews and pending approvals |
| Campaign Completion | CampaignCompletionJob |
Auto-completes access review campaigns that have reached their deadline |
| Framework Refresh | FrameworkComplianceRefreshJob |
Recalculates compliance framework scores |
| Log Cleanup | LogCleanupJob |
Purges old log entries to manage database size |
| Session Cleanup | SessionCleanupJob |
Removes expired user sessions |
| Orphaned Data Cleanup | OrphanedDataCleanupJob |
Cleans up orphaned records from deleted entities |
| Temp File Cleanup | TempFileCleanupJob |
Removes temporary files generated by exports and reports |
| Database Index Maintenance | DatabaseIndexMaintenanceJob |
Rebuilds and reorganizes database indexes |
| Database Statistics | DatabaseStatisticsJob |
Updates SQL Server statistics for query optimization |
| Review Reminder | ReviewReminderJob |
Sends reminder emails for pending access review assignments |
| Bulk Issue Monitor | BulkIssueMonitorJob |
Monitors for bulk operation issues and alerts administrators |
Built-In Schedule Templates
IdentityCenter includes pre-configured schedule templates organized by frequency:
Hourly Templates
| Template | Cron Expression | Description |
|---|---|---|
| Every Hour | 0 0 * * * ? |
Runs at the top of every hour |
| Every 2 Hours | 0 0 0/2 * * ? |
Runs every 2 hours starting at midnight |
| Every 4 Hours | 0 0 0/4 * * ? |
Runs 6 times per day |
| Every 6 Hours | 0 0 0/6 * * ? |
Runs 4 times per day |
| Every 8 Hours | 0 0 0/8 * * ? |
Runs 3 times per day |
| Every 12 Hours | 0 0 0,12 * * ? |
Runs at midnight and noon |
Daily Templates
| Template | Cron Expression | Description |
|---|---|---|
| Daily at Midnight | 0 0 0 * * ? |
Runs every day at 12:00 AM |
| Daily at 2 AM | 0 0 2 * * ? |
Recommended for low-traffic maintenance |
| Daily at 6 AM | 0 0 6 * * ? |
Before business hours |
| Daily at Noon | 0 0 12 * * ? |
Midday execution |
| Daily at 6 PM | 0 0 18 * * ? |
After business hours |
Weekly Templates
| Template | Cron Expression | Description |
|---|---|---|
| Weekly on Sunday at 2 AM | 0 0 2 ? * SUN |
Weekend maintenance window |
| Weekly on Monday at 6 AM | 0 0 6 ? * MON |
Start of work week |
| Weekly on Friday at 6 PM | 0 0 18 ? * FRI |
End of work week |
| Weekdays at 6 AM | 0 0 6 ? * MON-FRI |
Business days only |
Monthly and Quarterly Templates
| Template | Cron Expression | Description |
|---|---|---|
| Monthly on the 1st at 2 AM | 0 0 2 1 * ? |
First of each month |
| Monthly on the 15th at 2 AM | 0 0 2 15 * ? |
Mid-month |
| Monthly Last Day at 6 PM | 0 0 18 L * ? |
End of month |
| Monthly First Monday at 6 AM | 0 0 6 ? * 2#1 |
First Monday of each month |
| Quarterly Start | 0 0 2 1 1,4,7,10 ? |
Jan, Apr, Jul, Oct 1st |
| Quarterly End | 0 0 18 L 3,6,9,12 ? |
Last day of Mar, Jun, Sep, Dec |
Cron Expression Reference
IdentityCenter uses Quartz.NET cron expressions with seven fields:
Seconds Minutes Hours Day-of-Month Month Day-of-Week [Year]
| Field | Allowed Values | Special Characters |
|---|---|---|
| Seconds | 0-59 | , - * / |
| Minutes | 0-59 | , - * / |
| Hours | 0-23 | , - * / |
| Day-of-Month | 1-31 | , - * ? / L W |
| Month | 1-12 or JAN-DEC | , - * / |
| Day-of-Week | 1-7 or SUN-SAT | , - * ? / L # |
Common Patterns
| Pattern | Expression | Description |
|---|---|---|
| Every 15 minutes | 0 0/15 * * * ? |
Runs at :00, :15, :30, :45 |
| Every hour | 0 0 * * * ? |
Top of every hour |
| Daily at midnight | 0 0 0 * * ? |
Once per day |
| Every Monday at 7 AM | 0 0 7 ? * MON |
Weekly on Monday |
| First of month at 2 AM | 0 0 2 1 * ? |
Monthly on the 1st |
| Last day of month | 0 0 18 L * ? |
Monthly on the last day |
Creating Custom Schedules
- Click Add Custom Schedule from the Schedule Manager
- Enter a descriptive name
- Select or type a cron expression
- Assign the schedule to a job type or sync project
- Enable the schedule
Managing Schedules
Enable and Disable
Toggle individual schedules on or off without deleting the configuration. Disabled schedules retain their settings and can be reactivated at any time.
Manual Triggering
Click Run Now on any scheduled job to execute it immediately, regardless of the next scheduled time. This is useful for testing or responding to urgent needs.
Viewing Next Run Times
The Schedule Manager shows the calculated next run time for each active schedule, based on the cron expression and the current server time.
Recommended Schedule Patterns
| Scenario | Sync | Policy Evaluation | Maintenance |
|---|---|---|---|
| Small environment (<1,000 users) | Every 15 min | Daily at 2 AM | Weekly Sunday 2 AM |
| Medium environment (1K-10K) | Every 30 min | Daily at 2 AM | Weekly Sunday 2 AM |
| Large environment (10K+) | Hourly | Daily at 2 AM | Weekly Sunday 2 AM |
Tip: Avoid scheduling heavy sync jobs and policy evaluations at the same time. Stagger them by at least 30 minutes to reduce peak database load.
Next Steps
- Job Monitoring & History -- Track job execution results and diagnose failures
- Processing Center -- View running jobs and queue status in real time
- Synchronization Scheduling -- Configure sync-specific schedules
- System Center -- Overall system health monitoring