API
Everything on this site is also available as JSON. It is free and needs no key. Any website may call it from the browser.
| Address | What it returns |
|---|---|
/api/v1/latest/{category}.json | The newest 200 headlines. Use all for every category. category is all or a category slug |
/api/v1/search.json | Search headlines, newest first, 50 per page. q (required), c, lang (en, es, de, fr, pt, it, nl), from, to (YYYY-MM-DD), before (an id from the last page) |
/api/v1/keywords.json | Top keywords for the last 24 hours, overall and by category. |
/api/v1/keywords/{yyyy}/{mm}/{dd}.json | A UTC day's final keyword list. |
/api/v1/authors.json | Authors, ranked, 100 per page. sort (articles, name, latest, first), dir (asc, desc), page |
/api/v1/authors/{slug}.json | One author's summary and their newest 50 articles. before |
/api/v1/stories.json | Stories covered by the most publications, each with one article per publication. window (6, 24 or 72 hours; default 24) |
/api/v1/leaderboards/{topic}.json | The top authors and publications for a topic over a window. Each row has was, its rank in the window before (0 if new). window (7, 30 or 90 days; default 30). Topics are listed at /leaderboards/ |
/api/v1/leaderboards/category.json | The same, for one category. c (category slug), window |
/api/v1/leaderboards/search.json | The same, for any words you choose. q, window |
/api/v1/sources.json | Every publication with counts, categories, bylines and when it publishes. |
/api/v1/first.json | Which publications reported stories first. |
/api/v1/days.json | Every day with data, with counts by category. |
/api/v1/status.json | Whether headlines are arriving on time. |
Terms
- Headlines, links and names belong to their publishers. We list them and link to the original. Please do the same, and show the publisher with each headline.
- Responses are cached for one to two minutes. Asking more often gains nothing. Search is limited per visitor, and a request over the limit gets status 429 with a
Retry-Afterheader. - Need more? Ask for an API key on the contact page. Send it as the
x-api-keyheader, or as?key=, and the limit on search, authors and leaderboards goes from 60 to 600 requests a minute. A key we do not know is refused with status 401. - Every object has a version field
v. A change that breaks existing readers will use a new path,/api/v2/. - Times are UTC, written like
2026-10-05T10:03:12Z. In an item,tsis the sort time,pathe publisher's time andfawhen we first saw it.
Other ways in
RSS and JSON Feed for every category, search, author and publication; the embeddable widget; and the sitemap.