A lightweight, low-cost REST API over the full Crossref corpus
Every work in Crossref's public data file, answering the same requests as api.crossref.org. Runs on one machine: 6 cores, 64 GB of memory, 1 TB of disk.
Capacity, one server
Throughput
Capacity by request type
Load-test rates per second, multiplied out to a 30-day month. CPU or 1 Gbit port, whichever limits first; zstd responses. Log scale.
| Request | Req/s | p50 | p99 | CPU each | Size | zstd |
|---|
Mixed traffic
Requests a second, by connections.
CachedCaches off, 16 connections
Mixed latency
Milliseconds, by connections.
p99p90
Cost
Server rent.How we tested scale
Load generated from random real requests, on the server and from the internet.From the internet, through Cloudflare
| Test | Connections | Req/s | Round trip p50 | p99 | In server p50 | Server CPU | Errors |
|---|
Accuracy
Against api.crossref.org, works created before 2026-03-01.Compatibility
Same paths, parameters, and responses.Routes
| /works/{doi} | Served |
| /works | Served |
| /members/{id}/works, /prefixes, /funders, /journals, /types | Served |
| filter, facet, sort, order, rows, offset, cursor, sample, select | Served |
| query, query.bibliographic, query.author… | Not yet |
| /members, /journals, /funders metadata | Not yet |
Facets and sorts
affiliationsort: citation