nlp.content_type, and the content_type parameter
filters on it.
Use it to keep straight reporting and leave out press releases, shopping pages,
or automatically generated content that news sites also publish.
Content type values
The first three,
news_report, analysis, and interview, are news. The
rest are other kinds of pages that news sites also publish.
Some pages sit between two labels, such as an analysis piece and an opinion
column, or a story about a press release and the press release itself. In
these cases the label can differ from what a person would pick. Telling news
from the other kinds of pages is more reliable than the exact label.
content_type parameter also accepts two shortcuts:
news:news_report,analysis, andinterview.all: no content type filter. This is the same as not settingcontent_type.
Filter by content type
Thecontent_type parameter works on these endpoints, with GET and POST:
/api/search/api/latest_headlines/api/breaking_news/api/authors/api/aggregation_count/api/sources, which works differently. See Rank sources by content type.
POST requests, you
can also pass an array of strings. Values are case-insensitive, and an article
is returned if it matches any of them:
422 error that names the value and lists the
accepted values.
Rank sources by content type
On/api/sources,
content_type does not filter the sources themselves. It narrows the articles
that each source is counted from. The order of the results,
nb_articles_for_7d, and the minimum of 5 articles per source apply to
matching articles only, so you get the top sources for news rather than the
top sources overall. A source with fewer than 5 matching articles is left out.
content_type is not enough on its own. Send at least one of lang,
countries, source_url, source_name, or predefined_sources. Unlike most
parameters, you can combine content_type with source_url and
predefined_sources.
Availability
Content type labels are available on all subscription plans for articles from October 17, 2026. Later in Q4 2026, articles back to January 1, 2026, will be labelled too.Articles without a label are left out whenever
content_type is set, so a
filtered request over an older date range can return fewer articles. Without
content_type, all articles are returned as before.Content type in the response
Each article includes its label in thenlp object:
nlp.content_type follows include_nlp_data
like the rest of the nlp object. Articles that have no label yet have no
nlp.content_type. See Availability.

