Full-text press releases over a stock news API
Press releases from the major US wires include the full text. Publisher stories and legal notices do not.

MarketNewsAPI includes the full text of press releases and does not include the full text of publisher articles or legal notices. If you are building an earnings bot or a filings-adjacent alert, request type=press_release and read the body field. If you are building a headline site, the summary and the link are the fields you are licensed to show for everything else.
Which wires
Press releases are collected from GlobeNewswire, Business Wire, PR Newswire, ACCESS Newswire, Newsfile, Dow Jones, and other sources the product adds or removes. Filter one wire with sources, for example sources=businesswire.com. A comma-separated list is OR. The coverage page is the live list of publishers, not this paragraph.
What "full text" applies to
| Type | Full wire or article text | What you can show |
|---|---|---|
press_release | Yes, the release text | The release, with the source and a link |
news | No | Headline, snippet, summary, metadata, and a link |
legal | No | Headline, snippet, summary, metadata, and a link |
A story that mentions a company is not a press release just because the company is public. Trust the type field. pressRelease is accepted as an alias and implies category=stocks.
A call that returns releases only
curl "https://api.marketnewsapi.com/v1/news?tickers=NVDA&type=press_release&limit=5" \
-H "Authorization: Bearer $MARKETNEWSAPI_KEY"
On Pro, the matching stream channel is type:press_release. Pair it with a holdings check in the client if you subscribed broadly, because channels are OR. The alert-bot version of that loop is in the Python WebSocket tutorial.
Try it for 7 days. Signup starts Pro. A card is required. Real-time REST, WebSocket, and MCP, with no request cap. After that it's $15/month, or Free if you stop.
Plan limits that touch this
What to store from a release
Save the article id, published_at, the title, the wire body, the tickers, the source domain, and the original URL. Show the source name in the UI. A release about two companies is one article with both symbols, not two copies. If the same release is distributed through several wires, the pipeline keeps the first copy and merges the symbols, so your database should upsert on id rather than on headline text.
Do not run a second extractor over the HTML of the wire site. The text is already on the object, and fetching the publisher to rebuild it is how keys leak into browser code and how you collect a page you were not licensed to mirror. The acceptable use notes live with the terms.
An alert that is only the wire
Subscribe to type:press_release and, in the client, keep items whose tickers intersect the book. Add keyword:guidance only if you also want that phrase on titles and summaries. That keyword channel is OR with the type channel, so it will also deliver non-releases that mention guidance. Filter type again in the client if the channel list is doing too much.
Free can request press releases, delayed 15 minutes, inside 100 calls a day and the last year. Pro is real time, with the full archive. Pro is $15 a month, or $162 a year. The 7-day trial includes the live feed and the full archive, and a card is required. Free stays at 100 requests a day, delayed 15 minutes, with the last year of history. The type definitions are in the docs.