Press release feed integration

Show fresh press releases on your own website, filtered by topic or brand.

Sources
Cleaned
RSS or JSON
Your site
Diagram: company newsrooms and newswires run into the Cleaned node, then out as RSS or JSON into your site.

Two ways in

RSS, for any CMS

Most site builders and CMSs have an RSS block or plugin. Paste a feed link, choose how many items to show, and new releases appear as they arrive.

Build a feed link

The JSON API, for developers

Every list is also JSON. Fetch it from your server or straight from the browser, then lay it out your way. Lists need no key.

See the endpoints

Filters

They work the same in RSS and JSON, and you can combine them. Values in one parameter are alternatives (publisher=apple,microsoft); different parameters must all match.

The company filters company, region, country, niche and company_language describe one company: a release matches when a single company linked to it meets every one you set. So region=asia&niche=automotive finds releases about an Asian automotive company. A value the API does not know, such as an unknown company or region, is an error (400).

ParameterExampleWhat it does
topictopic=aiOne of the 12 topics: finance, crypto, ai, saas, healthcare, real-estate, energy, retail, automotive, gaming, media or education.
publisherpublisher=apple,microsoftUp to 10 newsrooms or newswires, by slug.
languagelanguage=jaThe language of the release itself: en, ja, ko, zh-hans or zh-hant.
companycompany=toyota,samsung-electronicsUp to 10 companies, by slug, from /api/v1/companies. Releases linked to any of them. With region, country, niche and company_language it names one company: a single company linked to the release must meet all you set.
regionregion=asiaOne of north-america, latin-america, europe, middle-east, africa, asia or oceania. A company in that region must be linked to the release.
countrycountry=JPOne two-letter country code (ISO 3166-1) for where a company is run from. Case does not matter.
nicheniche=automotiveOne of the 30 niches in /api/v1/niches, such as automotive or banking.
company_languagecompany_language=jaThe home language of the company, a two-letter code such as ja or fr. Not the language of the release: that is language.
qq=earningsA keyword of 2 to 160 characters, matched in titles and summaries.
companiescompanies=largestOnly releases that link to a company in the company directory, or come from a newsroom we follow.
page, per_pagepage=2&per_page=25Paging for JSON lists: pages 1 to 500, 25 per page by default and up to 100.
limitlimit=20For /feed.xml: how many items, 1 to 100 (50 by default).

Code

The ten newest AI releases, from the command line:

curl "https://pressreleasefeed.org/api/v1/releases?topic=ai&per_page=10"

And as a list on your page, in plain JavaScript inside a <script type="module"> (put <ul id="press-releases"></ul> where the list should go):

const url = "https://pressreleasefeed.org/api/v1/releases?topic=ai&per_page=5";
const { data } = await fetch(url).then((response) => response.json());
const list = document.querySelector("#press-releases");
for (const release of data) {
  if (!release.url) continue;
  const item = document.createElement("li");
  const link = document.createElement("a");
  link.href = release.url;
  link.textContent = release.title;
  item.append(link);
  list.append(item);
}

API reference

Base URL https://pressreleasefeed.org. JSON answers look like { "data": …, "meta": … } and errors like { "error": "…" }. Any website may call it from the browser.

EndpointWhat it returns
GET /api/v1An index of everything below.
GET /api/v1/releasesReleases, newest first. Takes publisher, topic, language, kind, q, since, until, companies, company, region, country, niche, company_language, page and per_page. Each release lists its companies.
GET /api/v1/releases/{id}One release.
GET /api/v1/largest-companiesThe same list with companies=largest, with the same filters and paging.
GET /api/v1/publishersEvery newsroom and newswire, with release counts.
GET /api/v1/topicsThe 12 topics, with release counts.
GET /api/v1/companiesEvery company in the directory: slug, name, country, region, niches and home language. Takes region, country, niche and language, which here describe the company. Not paged.
GET /api/v1/nichesThe 30 niches, with company counts.
GET /api/v1/regionsThe 7 regions, with their countries and company counts.
GET /feed.xmlRSS 2.0 with the same filters as the releases list, plus limit. Each linked company is a category.

Lists are open to everyone, with no key and no sign-up. Full text (body_html and body_text) needs an API key.

Start with the full feed

Build a custom feed