Quartz.AspNetCore 4.1.1
Quartz.AspNetCore
Quartz.AspNetCore adds what a Quartz.NET scheduler wants from an ASP.NET Core application: an HTTP API that exposes scheduler management endpoints.
Hosting and the scheduler's health check are both in the core
Quartz package — AddQuartz, AddQuartzHostedService and
the health check need no extra reference. This package brings ASP.NET Core along with it, so take
it for the HTTP API rather than for the check. Quartz 3's AddQuartzServer, which registered the hosted
service and a health check together, is gone.
Installation
dotnet add package Quartz.AspNetCore
Usage
WebApplicationBuilder builder = WebApplication.CreateBuilder(args);
builder.AddQuartz();
builder.Services.AddQuartzHttpApi();
builder.AddQuartzHostedService(options => options.WaitForJobsToComplete = true);
builder.Services.AddHealthChecks().AddQuartz();
WebApplication app = builder.Build();
app.MapQuartzHttpApi().RequireAuthorization();
app.MapHealthChecks("/healthz");
The API manages jobs and triggers, so authorize it: MapQuartzHttpApi returns the endpoint convention
builder to say so on, and a mapping that says nothing refuses to start. It adds no authentication of its
own, every route mutates, and a job scheduled through it names its type as a string the request supplies
— which, with Quartz.Jobs on the host's probing path, reaches NativeJob and its process. Say
AllowAnonymous() where you mean it, or AddQuartzHttpApi(options => options.ReadOnly = true) where
nothing should write through the API at all. AddQuartz and the health check beside it come from the
core package; serving the health report at /healthz is what needs ASP.NET Core.
Mapping the API also records what its schedulers run and miss, and serves it under
…/schedulers/{name}/history — which is what lets a dashboard in another process show a History page.
It is kept in memory and bounded; AddQuartzExecutionHistory(options => options.MaxEntriesPerScheduler = 0)
opts out.
Documentation
No packages depend on Quartz.AspNetCore.
.NET 10.0
- Quartz (>= 4.1.1)
| Version | Downloads | Last updated |
|---|---|---|
| 4.2.0 | 0 | 09/25/2026 |
| 4.1.1 | 8 | 09/19/2026 |
| 4.1.0 | 8 | 09/13/2026 |
| 4.0.1 | 13 | 09/10/2026 |
| 4.0.0 | 16 | 09/04/2026 |
| 4.0.0-rc.2 | 15 | 09/04/2026 |
| 4.0.0-rc.1 | 12 | 09/04/2026 |
| 4.0.0-beta.1 | 11 | 09/04/2026 |
| 4.0.0-alpha.5 | 10 | 09/01/2026 |
| 4.0.0-alpha.4 | 14 | 09/03/2026 |
| 4.0.0-alpha.3 | 13 | 08/27/2026 |
| 4.0.0-alpha.2 | 11 | 08/25/2026 |
| 4.0.0-alpha.1 | 14 | 08/23/2026 |
| 3.22.0 | 12 | 09/13/2026 |
| 3.21.0 | 9 | 09/11/2026 |
| 3.20.1 | 10 | 09/04/2026 |
| 3.20.0 | 11 | 08/28/2026 |
| 3.19.1 | 26 | 07/28/2026 |
| 3.19.0 | 18 | 07/24/2026 |
| 3.18.2 | 29 | 06/28/2026 |
| 3.18.1 | 48 | 04/27/2026 |
| 3.18.0 | 49 | 04/17/2026 |
| 3.17.1 | 41 | 04/17/2026 |
| 3.17.0 | 42 | 04/17/2026 |
| 3.16.1 | 40 | 04/17/2026 |
| 3.16.0 | 39 | 04/17/2026 |
| 3.15.1 | 42 | 04/17/2026 |
| 3.15.0 | 38 | 04/17/2026 |
| 3.14.0 | 40 | 04/17/2026 |
| 3.13.1 | 33 | 04/17/2026 |
| 3.13.0 | 41 | 04/17/2026 |
| 3.12.0 | 40 | 04/17/2026 |
| 3.11.0 | 41 | 04/17/2026 |
| 3.10.0 | 37 | 04/17/2026 |
| 3.9.0 | 42 | 04/17/2026 |
| 3.8.1 | 41 | 04/17/2026 |
| 3.8.0 | 32 | 04/17/2026 |
| 3.7.0 | 42 | 04/17/2026 |
| 3.6.3 | 44 | 04/17/2026 |
| 3.6.2 | 41 | 04/17/2026 |
| 3.6.1 | 29 | 04/17/2026 |
| 3.6.0 | 40 | 04/17/2026 |
| 3.5.0 | 38 | 04/17/2026 |
| 3.4.0 | 30 | 04/17/2026 |
| 3.3.3 | 39 | 04/17/2026 |
| 3.3.2 | 39 | 04/17/2026 |
| 3.3.1 | 39 | 04/17/2026 |
| 3.3.0 | 32 | 04/17/2026 |
| 3.2.4 | 42 | 04/17/2026 |
| 3.2.3 | 42 | 04/17/2026 |
| 3.2.2 | 37 | 04/17/2026 |
| 3.2.1 | 42 | 04/17/2026 |
| 3.2.0 | 42 | 04/17/2026 |
| 3.1.0 | 44 | 04/17/2026 |
| 1.0.4 | 47 | 04/17/2026 |
| 1.0.1 | 41 | 04/17/2026 |
| 1.0.0 | 43 | 04/17/2026 |