ProPublica API endpoint
Returns the latest ProPublica stories for one topic. `section` is required and takes one of 33 topic slugs, such as `politics`, `health-care`, `immigration`, `courts`, `environment` or `trump-administration`. Each item has its title, URL, publication time and author.
/propublica/headlinesQuery parameter: section is required and must be one of abortion, biden-administration, civil-rights, courts, criminal-justice, debt, democracy, department-of-governmental-efficiency, education, environment, health-care, health-insurance, immigration, jan-6, labor, mental-health, military, nonprofits, police, politics, pollution, pregnancy, prison, racial-justice, real-estate, regulation, sex-and-gender, sports, stock, taxes, technology, trump-administration, usaid.
| Field | Filled in, of 6 checked | Values in the sample |
|---|---|---|
| title | 6 | median 89 characters |
| url | 6 | propublica.org |
| published_at | 6 | 2026-07-31 to 2026-09-22 |
| author | 6 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| section | string | Yes | ProPublica topic slug Allowed values: abortion, biden-administration, civil-rights, courts, criminal-justice, debt, democracy, department-of-governmental-efficiency, education, environment, health-care, health-insurance, immigration, jan-6, labor, mental-health, military, nonprofits, police, politics, pollution, pregnancy, prison, racial-justice, real-estate, regulation, sex-and-gender, sports, stock, taxes, technology, trump-administration, usaid. | abortion | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/propublica/headlines?section=abortion" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"data": {
"section": "politics",
"items": [
{
"title": "Example headline",
"url": "https://www.propublica.org/article/example-investigation",
"author": "Jane Reporter",
"published_at": "2026-09-22T09:00:00Z"
}
]
}
}Request schema
No body schema
Response schema
#/definitions/publicnews.headlinesResponseDoc
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| data | newsplatform.HeadlinesResponse | No | ||||
| data.items | array | No | HeadlineItem record, 7 fields: author, image_url, published_at, summary, title, type, url. Described under ProPublica top stories API. | |||
| data.section | string | No |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/propublica/headlines?section=abortion" \
-H "x-api-key: $CRAWLORA_API_KEY"