Chronicling America
loc.gov · 2 records in Data APIs, Storage · JSON
Records 2
- caveatChronicling America (Library of Congress)
Data APIsfree tieridentity anonymousno cardlimit request-rateevidence documentedstale on 2026-12-03
- fails: quotalibrary of congress / chronicling america / ndnp
Storageidentity email?card?evidence reportedstale on 2026-11-05
- Free allowance
- Free with no API key or authentication: the loc.gov JSON/YAML API at 20 requests per minute, and bulk OCR downloads of every digitized newspaper batch as one tar.bz2 file each.
- Verdict
- caveatusable, with a named limit or an unprobed read path
- Cost
- free tier
- Identity
- anonymousno card, no phone
- Binding limit
- request-rate20 requests per minute on the JSON/YAML API, 1 hour block if exceeded; 150 requests per minute on text services, 1 hour block if exceeded
- Evidence
- documented14 sources; a first-party page was read and the sentence quoted
- Freshness
- stale on 2026-12-03checked 2026-11-02 (live); stale on 2026-12-03
| Free tier | Free with no API key or authentication: the loc.gov JSON/YAML API at 20 requests per minute, and bulk OCR downloads of every digitized newspaper batch as one tar.bz2 file each. unit requests; metered on request-count; Going over the rate blocks the caller for 1 hour. Text services allow 150 requests per minute. Under heavy load the limits drop and a 429 or a CAPTCHA page can appear below the stated rate. The collection holds over 21 million newspaper pages. |
|---|---|
| Price | none stated |
| Limits |
|
| Binding | request-rate 20 requests a minute is the documented ceiling, and the Cloudflare challenge on the JSON endpoints can bind first for a plain script; the bulk OCR files carry no stated limit. |
| Identity | anonymous No account and no key for the API; the bulk OCR files and a ranged read of one answered with no credentials. |
| Egress | bulk OCR files download from chroniclingamerica.loc.gov/data/ocr with no stated transfer price or quota; ranged reads are honoured |
| Per-object cap | one tar.bz2 of OCR text per batch; the batch fu_eleven_ver02 is 56026786 bytes |
| Retention | not applicable: a permanent collection of newspaper pages published through 1963 |
| Interface | rest JSON or YAML over HTTPS from www.loc.gov by adding fo=json to collection, search, item and resource URLs; text, image (IIIF) and streaming microservices; bulk OCR as tar.bz2 files with a sha256 checksum each, listed in a CSV, a TXT and a JSON version of the datasets table |
| Tooling | any HTTP client; the Library publishes Jupyter notebooks for the Chronicling America collection |
| Composes with | Page-level OCR text and metadata of historic US newspapers: facet or date-slice a query to stay under 100,000 items, or take the bulk OCR tarballs and skip the API. |
| Reliability | A keyless GET of the collection JSON from a residential ISP address answered HTTP 403 with a Cloudflare 'Just a moment' challenge, while the documentation page answered 200 and the bulk OCR host answered 200 and 206; the same JSON was readable through a cached page-reader path. The limits fall under heavy load. |
| Notes | Storage: no storage limit is stated; the bulk OCR files are meant to be downloaded and kept. Bulk path: tar.bz2 OCR files, one per batch, at chroniclingamerica.loc.gov/data/ocr, each with a sha256 checksum, listed in the datasets table (CSV, TXT and JSON versions); the JSON API is the route for metadata and for slices of a query. This is the read API; the deposit question has its own record in storage. |
| Evidence note | documented Limits, paging caps and the no-key statement are read from first-party pages; the bulk file size and range support were measured, and the JSON endpoints were blocked by a challenge to a direct script, so the API throughput is not measured. |
| Parsed numbers |
|
Evidence 14
| date | source | what it proved |
|---|---|---|
| 2026-11-02 | www.loc.gov/apis/json-and-yaml/working-within-limits/ | the API needs no key or authentication |
| 2026-11-02 | www.loc.gov/apis/json-and-yaml/working-within-limits/ | the JSON/YAML API allows 20 requests per minute |
| 2026-11-02 | www.loc.gov/apis/json-and-yaml/working-within-limits/ | exceeding the rate blocks the caller for 1 hour |
| 2026-11-02 | www.loc.gov/apis/json-and-yaml/working-within-limits/ | under heavy load the limits drop and 429 or CAPTCHA answers appear below the stated rates |
| 2026-11-02 | www.loc.gov/apis/json-and-yaml/working-within-limits/ | a query is capped at 100,000 items |
| 2026-11-02 | www.loc.gov/apis/json-and-yaml/working-within-limits/ | 1,000 items per page is the recommended maximum |
| 2026-11-02 | www.loc.gov/collections/chronicling-america/datasets/ | bulk OCR data is offered for research and external services |
| 2026-11-02 | www.loc.gov/collections/chronicling-america/datasets/ | a batch row lists its tar.bz2, a sha256 checksum and its size |
| 2026-11-02 | www.loc.gov/ndnp/migration/ | computational users keep bulk OCR and are pointed to the loc.gov API |
| 2026-11-02 | www.loc.gov/ndnp/migration/ | the collection holds over 21 million newspaper pages |
| 2026-11-02 | www.loc.gov/collections/chronicling-america/about-this-colle | the newspapers are in the public domain or have no known restriction |
| 2026-11-02 | probe: https://chroniclingamerica.loc.gov/data/ocr/fu_eleven_ver02.tar.bz2 | a HEAD of one bulk OCR file answered HTTP 200 with its size and no credentials |
| 2026-11-02 | probe: https://chroniclingamerica.loc.gov/data/ocr/fu_eleven_ver02.tar.bz2 | a ranged read of the first 1,024 bytes answered HTTP 206 of 56026786 bytes |
| 2026-11-02 | probe: https://www.loc.gov/collections/chronicling-america/?fo=json&at=pagination&c=1 | a keyless GET of the collection JSON answered HTTP 403 with a Cloudflare challenge page |
- Free allowance
- Not a deposit surface for individuals.
- Verdict
- fails: quotathe free allowance is too small to matter
- Cost
- not stated
- Identity
- email?placeholder, not evidence; card unknown, phone unknown
- Binding limit
- noneno named constraint binds
- Evidence
- reported1 source; a third party said so
- Freshness
- stale on 2026-11-05checked 2026-10-21 (inherited); stale on 2026-11-05
| Free tier | Not a deposit surface for individuals. LoC acquires through NDNP state-partner awards and its own collections; there is no open upload endpoint, no account system, and no quota to consume.… unit none; metered on none |
|---|---|
| Price | none stated |
| Identity | email (placeholder) not published |
| Egress | not recorded |
| Interface | unknown |
| Tooling | not recorded |
Evidence 1
| date | source | what it proved |
|---|---|---|
| 2026-10-21 | www.loc.gov/programs/national-digital-newspaper-program/abou | the text of Free tier, above |
More fields 1
| dead end | {"failure_class": "quota","why": "Not a deposit surface for individuals. LoC acquires through NDNP state-partner awards and its own collections; there is no open upload endpoint, no account system, and no quota to consume.…","retry_when": null,"first_recorded": "2026-10-21"} |
|---|
Unknown values 7
- chaining: no value was recorded for this field
- egress terms: no value was recorded for this field
- interface: the access interface was not established
- per object cap notes: no value was recorded for this field
- per object cap stated: no value was recorded for this field
- retention stated: no value was recorded for this field
- tooling: no value was recorded for this field