# Press Release Scraper for PR Newswire: Search, Tickers, Monitor (`getascraper/prnewswire-press-release-scraper`) Actor

Scrape PR Newswire press releases by keyword, stock ticker, company, category, language or date. Get headline, time, company, tickers, dateline, tags, media contact emails and phones, About text, links and photos. Schedule a named monitor for new releases only. No login or API key.

- **URL**: https://apify.com/getascraper/prnewswire-press-release-scraper.md
- **Developed by:** [GetAScraper](https://apify.com/getascraper) (community)
- **Categories:** News, Lead generation, Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 press releases

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

## 📰 Press Release Scraper for PR Newswire: Search, Tickers, Monitor

<table width="100%" style="margin-bottom:0">
<tr>
<td style="padding:24px 28px;background:#EEF4FA;border:1px solid #C9DCEE;border-top:4px solid #0F4C81;border-radius:12px">
<span style="font-size:23px;font-weight:800;color:#1C1917;line-height:1.3">Get PR Newswire press releases with company, tickers and media contacts, ready for your spreadsheet in under 60 seconds.</span><br>
<span style="font-size:15px;color:#57534E;line-height:1.6">Filter by category, company, stock ticker, language, keywords and date. Schedule a named monitor and receive only the releases that are new since your last run.</span>
</td>
</tr>
</table>
<table width="100%" style="margin-top:0">
<tr>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #C9DCEE;border-radius:10px 0 0 10px;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#0B3A63">🎯 Filters that cut the noise</span><br>
<span style="font-size:12px;color:#57534E">235 categories, company newsrooms, tickers, languages, include and exclude words, date windows.</span>
</td>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #C9DCEE;border-left:none;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#0B3A63">📇 Contacts and tickers</span><br>
<span style="font-size:12px;color:#57534E">Media contact emails and phones, exchange and symbol, dateline city and the company About text.</span>
</td>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #C9DCEE;border-left:none;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#0B3A63">🔔 New releases only</span><br>
<span style="font-size:12px;color:#57534E">Name a monitor and every scheduled run returns only what appeared since the last one.</span>
</td>
<td style="padding:14px 12px;width:25%;background:#FFFFFF;border:1px solid #C9DCEE;border-left:none;border-radius:0 10px 10px 0;vertical-align:top">
<span style="font-size:15px;font-weight:800;color:#0B3A63">⚡ Fast when you want it</span><br>
<span style="font-size:12px;color:#57534E">Headlines and teasers in seconds. Open full release pages only when you need the extra fields.</span>
</td>
</tr>
</table>

Collect press releases from PR Newswire, the newswire where public companies, agencies and nonprofits publish earnings, deals, product launches and executive moves. Search by keyword or stock ticker, read one company's newsroom, browse a category such as Earnings or FDA Approval, or follow a language edition. Each row has the headline, publish time, teaser and image. Switch on full release pages to add the company, dateline city, tickers, tags, media contacts, About text, outbound links, photos and videos, and related releases.

This is an independent tool. It is not affiliated with, endorsed by or sponsored by PR Newswire or Cision, and it reads only pages anyone can open without signing in.

### 🚀 How to use it

<table width="100%">
<tr>
<td style="padding:16px 14px;width:33%;background:#EEF4FA;border:1px solid #C9DCEE;border-radius:10px 0 0 10px;vertical-align:top">
<span style="font-size:12px;font-weight:800;color:#0F4C81;letter-spacing:1px">STEP 1</span><br>
<span style="font-size:14px;font-weight:700;color:#1C1917">Pick what to watch</span><br>
<span style="font-size:12px;color:#57534E">Choose a category, add companies, tickers or keywords, and set a date window.</span>
</td>
<td style="padding:16px 14px;width:33%;background:#EEF4FA;border:1px solid #C9DCEE;border-left:none;vertical-align:top">
<span style="font-size:12px;font-weight:800;color:#0F4C81;letter-spacing:1px">STEP 2</span><br>
<span style="font-size:14px;font-weight:700;color:#1C1917">Run or schedule it</span><br>
<span style="font-size:12px;color:#57534E">20 headlines take a few seconds. Add a monitor name to get only new releases on each run.</span>
</td>
<td style="padding:16px 14px;width:33%;background:#EEF4FA;border:1px solid #C9DCEE;border-left:none;border-radius:0 10px 10px 0;vertical-align:top">
<span style="font-size:12px;font-weight:800;color:#0F4C81;letter-spacing:1px">STEP 3</span><br>
<span style="font-size:14px;font-weight:700;color:#1C1917">Download or connect</span><br>
<span style="font-size:12px;color:#57534E">Export to Excel, CSV or JSON, or send each run to your own tools with Apify integrations.</span>
</td>
</tr>
</table>

### 🙋 Why use it

- **I work in investor relations or at a PR agency** and track what peers and competitors announce. I watch a list of companies and read each new release the day it appears.
- **I am a financial analyst or trader** following earnings, dividends, offerings and mergers. I filter by category and ticker and skip class action advertising with exclude words.
- **I do sales or business development** and want companies that just raised money, launched a product or hired an executive. The media contact emails and phones come with the row.
- **I am a journalist or researcher** building a timeline on a topic. I search a phrase over a date range and export headline, time, company and link.
- **I feed an AI or alerting workflow** and need clean, current text. I schedule the monitor and pass only new releases, with the full text, downstream.

### 🧩 What you can get

- **Where to look:** the full newest-first feed, English-only or public-company feeds, 17 language editions, 235 category and industry lists, a company's newsroom, keyword or phrase search, or any prnewswire.com address you paste.
- **Filters:** keywords with exact phrases, headline-only matching, exclude words, companies, stock tickers, language codes, publish window by date or relative time ("2 days"), only releases with photos or video, only releases with a contact block, minimum word count and a cap per company.
- **List-only rows (fast):** headline, publish time, teaser, image and language.
- **Full release rows (optional):** company and newsroom link, sub-headline, last update time, dateline city and date, stock tickers with exchange, tags, word count, About text, contact block with emails and phones, outbound links, photos and videos, related releases from the same company, and the full text.
- **Monitor mode:** give the run a name and it returns only releases it has not shown before. The run summary lists the new release ids, so a scheduled run can feed an alert.
- **Run summary:** sources read, releases scanned and saved, why releases were skipped, and the companies that matched no newsroom.

### ⚙️ Input

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `feed` | enum | No | Which public stream to read, newest first: everything, English only, public companies, or one of 17 language editions. Used when no category, company, keyword or ticker is set. |
| `category` | enum | No | One of 235 category or industry lists such as Earnings, Acquisitions, Personnel Announcements or Artificial Intelligence. Leave on Any to skip. Ignored when companies, tickers or start URLs are set. |
| `keywords` | array of strings | No | Releases that mention any of these words or phrases. Use quotes for an exact phrase. Matches in the full text count. |
| `keywordScope` | enum | No | Anywhere in the release, or headline only. |
| `excludeKeywords` | array of strings | No | Drop releases whose headline, teaser or text contains any of these. Useful against repeat advertising such as law firm class action notices. |
| `companies` | array of strings | No | Company names or newsroom addresses. Each name is matched to its PR Newswire newsroom. Names with no newsroom are listed in the run summary. |
| `tickers` | array of strings | No | Stock symbols such as AAPL or BAC. Releases are kept when their text names the symbol. Each release page is opened to check. |
| `languages` | array of strings | No | Keep only these language codes, for example en, de, es. |
| `startUrls` | array of URLs | No | Optional prnewswire.com addresses to read instead: a list, a category page, a company newsroom, a search page or single releases. |
| `dateFrom` | string | No | Earliest publish date, such as 2026-10-01 (New York time), or a relative window such as 2 days or 12 hours. |
| `dateTo` | string | No | Latest publish date, inclusive. Same formats as the start date. |
| `onlyWithMultimedia` | boolean | No | Keep releases that list at least one photo, logo or video. Opens each release page. Off by default. |
| `onlyWithContact` | boolean | No | Keep releases that print a media or investor contact section. Opens each release page. Off by default. |
| `minWordCount` | integer | No | Keep releases with at least this many words. Opens each release page. |
| `maxItemsPerCompany` | integer | No | Keep at most this many releases from any one company, so one issuer cannot fill the dataset. |
| `includeDetails` | boolean | No | Open each release to add company, dateline city, tickers, tags, contacts, About text, links, media and related releases. Off by default. |
| `includeFullText` | boolean | No | Add the full release text. Also opens release pages. Off by default. |
| `monitorName` | string | No | A short name for this watch. With a name set, each run returns only releases the same name has not shown before. Use a different name for each watch. |
| `monitorBaselineOnly` | boolean | No | On the first run under a monitor name, remember the current releases without returning them. |
| `maxItems` | integer | No | Stop after this many releases are saved. Defaults to 20. |
| `maxScan` | integer | No | Stop after looking at this many releases, even if fewer matched. Defaults to 100. Keeps strict filters from walking the whole archive. |
| `proxyConfiguration` | object | No | Connection settings. The Actor handles the connection on its own, so leave this as it is unless you want a specific Apify proxy. |

### 📊 Data table

| Field | Type | Description |
| --- | --- | --- |
| `id` | string | Release number from the web address. |
| `url` | string | Link to the release. |
| `title` | string | Headline. |
| `subtitle` | string | Sub-headline printed above the dateline (full release rows). |
| `publishedAt` | string | Publish time, ISO 8601 UTC. |
| `publishedAtLabel` | string | The time exactly as the list shows it, only when it could not be converted. |
| `modifiedAt` | string | Last update time (full release rows). |
| `company` | string | Company that issued the release. |
| `newsroomUrl` | string | Link to the company's PR Newswire newsroom. |
| `language` | string | Language code of the release. |
| `summary` | string | Teaser text from the list. |
| `datelineLocation` | string | Place named in the dateline, for example CHARLOTTE, N.C. |
| `datelineDate` | string | Date as printed in the dateline. |
| `tickers` | array | Exchange and symbol pairs written in the text, such as NYSE and BAC. |
| `tickerSymbols` | array | Symbols only, ready to filter on. |
| `tags` | array | Topic and industry tags shown on the release page. |
| `wordCount` | number | Words in the release body. |
| `aboutCompany` | string | The company's About paragraph. |
| `contactBlock` | string | The printed contact section. |
| `contactEmails` | array | Email addresses in the contact section. |
| `contactPhones` | array | Phone numbers in the contact section. |
| `links` | array | Outbound web links inside the release, with link text when shown. |
| `multimedia` | array | Photos, logos and videos listed on the release, with type, label and download link. |
| `imageUrl` | string | Lead image. |
| `hasMultimedia` | boolean | True when the release lists photos or video. |
| `hasContact` | boolean | True when the release prints contact details. |
| `relatedFromSource` | array | Other recent releases from the same company. |
| `matchedKeywords` | array | Your keywords that appear in the headline, teaser or text. |
| `matchedTickers` | array | Your tickers that the release names. |
| `foundVia` | string | The feed, category, search or newsroom that produced the row. |
| `isNew` | boolean | True on every row of a monitor run. |
| `bodyText` | string | Full release text (only with full text on). |
| `scrapedAt` | string | When the Actor collected the row, ISO 8601 UTC. |

#### Example record

```json
{
  "id": "302908417",
  "url": "https://www.prnewswire.com/news-releases/bank-of-america-reports-third-quarter-2026-financial-results-302908417.html",
  "title": "Bank of America Reports Third Quarter 2026 Financial Results",
  "publishedAt": "2026-10-14T10:45:00.000Z",
  "modifiedAt": "2026-10-14T10:45:00.000Z",
  "company": "Bank of America Corporation",
  "newsroomUrl": "https://www.prnewswire.com/news/bank-of-america-corporation/",
  "language": "en",
  "datelineLocation": "CHARLOTTE, N.C.",
  "datelineDate": "Oct. 14, 2026",
  "tickers": [{ "exchange": "NYSE", "symbol": "BAC" }],
  "tickerSymbols": ["BAC"],
  "wordCount": 406,
  "contactBlock": "Reporters may contact\nJocelyn Seidenfeld, Bank of America\nPhone: 1.646.743.3356\njocelyn.seidenfeld@bofa.com",
  "contactEmails": ["jocelyn.seidenfeld@bofa.com"],
  "contactPhones": ["1.646.743.3356"],
  "links": [{ "url": "https://investor.bankofamerica.com/quarterly-earnings" }],
  "multimedia": [
    {
      "url": "https://mmx.prnewswire.com/media/MS970893/Bank-of-America-Corporation-Logo.jpg?id=OA3018423&p=original",
      "type": "photo",
      "label": "Logo"
    }
  ],
  "hasMultimedia": true,
  "hasContact": true,
  "matchedTickers": ["BAC"],
  "foundVia": "Financial Services & Investing: Earnings",
  "scrapedAt": "2026-10-14T18:52:57.661Z"
}
```

Fields a release does not show are left out of that row, never filled with placeholders.

### 💰 Pricing

Pricing is pay per result and is billed for each release saved to your dataset. Runs that save nothing cost nothing. There are no subscriptions and no setup fees. Free plan runs are limited to 25 results and 150 releases scanned per run, 3 runs per day, with a short wait between runs.

### ⭐ Enjoying Press Release Scraper for PR Newswire?

<table width="100%" style="display:table;width:100%">
<tr>
<td style="padding:20px 24px 14px;background:#EEF4FA;border:1px solid #C9DCEE;border-left:5px solid #0F4C81;border-radius:10px 10px 0 0">
<span style="font-size:20px;letter-spacing:4px">⭐ ⭐ ⭐ ⭐ ⭐</span><br>
<span style="font-size:17px;font-weight:800;color:#1C1917">Hours of refreshing newswire pages, replaced by one scheduled run.</span><br>
<span style="font-size:14px;color:#57534E">A 5-star rating takes 10 seconds and helps other analysts, PR teams and sales researchers find it. Your feedback also tells us what to build next.</span>
</td>
</tr>
<tr>
<td style="padding:0;background:#0F4C81;border:1px solid #C9DCEE;border-top:none;border-radius:0 0 10px 10px;text-align:center">
<a href="https://apify.com/getascraper/prnewswire-press-release-scraper/reviews" style="display:block;padding:13px 16px;color:#FFFFFF;text-decoration:none;font-weight:800;font-size:15px;letter-spacing:0.3px">★&nbsp;&nbsp;Rate this Actor on Apify</a>
</td>
</tr>
</table>

### ❓ FAQ

##### Does it need a login, account or API key?

No. The Actor reads only pages that anyone can open on prnewswire.com without signing in. It never uses cookies, tokens or accounts.

##### How do I get only new press releases on a schedule?

Type a name into the monitor name field and schedule the Actor. The first run returns the current matches, or only saves a baseline if you turn that option on. Every later run with the same name returns only releases it has not shown before, and the run summary lists their ids.

##### Are media contact emails and phone numbers included?

Yes, when the release prints a contact section and you turn on full release pages. The contact block, the email addresses and the phone numbers are copied exactly as printed. Releases without a contact section have no contact fields.

##### Which filters make a run slower?

Tickers, photo or video, contact block, minimum word count and the per-company cap need the full release page, so the Actor opens each candidate. A plain feed, category or keyword run only reads list pages and finishes in seconds.

##### Why did I get fewer results than my maximum?

Strict filters remove releases, and the run stops at the scan limit so it never walks the whole archive. The run summary shows how many releases were scanned and why they were skipped. Raise the scan limit or loosen a filter.

##### How fresh is the data?

Every run reads the live site, so a release shows up as soon as PR Newswire lists it. Times are converted to UTC.

##### Can I get releases in German, French or Spanish?

Yes. Choose a language edition as the release feed, or filter by language code. Search results include every language the site returns for your keyword.

### 🔗 Other actors

- [CryptoPanic News Scraper: No Login, No API Key, Monitor Ready](https://apify.com/getascraper/cryptopanic-news-scraper) ↗ - follow crypto news with a ready-made monitor.
- [SEC Form 4 Insider Monitor: Filing Changes](https://apify.com/getascraper/sec-form4-insider-monitor) ↗ - watch insider trades filed with the SEC.
- [SEC EDGAR Scraper for RAG: 10-K/10-Q/8-K as JSON](https://apify.com/getascraper/sec-edgar-rag-extractor) ↗ - turn SEC filings into clean text for analysis.
- [ZeroHedge News Scraper: Full Text, Author, Category, Pub Date](https://apify.com/getascraper/zerohedge-news-scraper) ↗ - collect financial news with full text.
- [Capitol Trades Scraper: Congress Stock Trades and Monitor Mode](https://apify.com/getascraper/capitol-trades-scraper) ↗ - track stock trades reported by members of Congress.

# Changelog

This Actor's version history is a separate document: https://apify.com/getascraper/prnewswire-press-release-scraper/changelog.md

# Actor input Schema

## `feed` (type: `string`):

Which public PR Newswire stream to read, newest first. Used when no category, company, keyword or ticker is set. Pick an in-language stream to read releases written in that language.

## `category` (type: `string`):

Read one PR Newswire category list instead of the full feed, for example Earnings, Acquisitions, Personnel Announcements, FDA Approval or Artificial Intelligence. Choose Any to skip. Ignored when companies, tickers or start URLs are set. Combined with keywords, the keywords match the headline and teaser (or the full text when release pages are read).

## `keywords` (type: `array`):

Releases that mention any of these words or phrases. Put quotes around a phrase for an exact match. Each keyword uses the site search, so matches in the full text count.

## `keywordScope` (type: `string`):

Where the keywords must appear. Anywhere in the release follows the site search. Headline only keeps releases whose headline contains a keyword.

## `excludeKeywords` (type: `array`):

Drop releases whose headline, teaser or text contains any of these words or phrases, for example securities fraud class action ads.

## `companies` (type: `array`):

Company names (or prnewswire.com newsroom addresses). Each name is looked up in the PR Newswire newsroom directory and that newsroom is read. Names that match no newsroom are reported in the run summary.

## `tickers` (type: `array`):

Ticker symbols such as AAPL or BAC. Releases are kept when their text names the symbol, for example NYSE: BAC or (BAC). Opens each release page to check, so keep Maximum releases to scan modest.

## `languages` (type: `array`):

Keep only releases in these language codes, for example en, de, es, fr, pt.

## `startUrls` (type: `array`):

Optional prnewswire.com addresses to read instead: a news list, a category page, a company newsroom (/news/company-name/), a search page (/search/news/?keyword=...) or single release pages.

## `dateFrom` (type: `string`):

Earliest publication date. Use a date such as 2026-10-01 (New York time) or a relative window such as 2 days or 12 hours.

## `dateTo` (type: `string`):

Latest publication date, inclusive. Use a date such as 2026-10-14 (New York time) or a relative value such as 1 day.

## `onlyWithMultimedia` (type: `boolean`):

Keep releases that list at least one photo, logo or video. Opens each release page.

## `onlyWithContact` (type: `boolean`):

Keep releases that print a media or investor contact section. Opens each release page.

## `minWordCount` (type: `integer`):

Keep releases with at least this many words. Opens each release page.

## `maxItemsPerCompany` (type: `integer`):

Keep at most this many releases from any one company, handy for a broad sweep that should not be dominated by one issuer.

## `includeDetails` (type: `boolean`):

Open each release to add company, dateline city, stock tickers, tags, contacts, About text, outbound links, photos and videos, and related releases. Slower than list-only runs.

## `includeFullText` (type: `boolean`):

Add the complete release text. Also reads full release pages.

## `monitorName` (type: `string`):

Give this watch a name to switch on monitor mode. The Actor remembers which releases it has already shown under that name and returns only new ones on each run. Leave empty for a normal run. Use a different name for each watch.

## `monitorBaselineOnly` (type: `boolean`):

On the first run under a monitor name, remember the current releases without returning them, so later runs return only truly new releases.

## `maxItems` (type: `integer`):

Stop after this many releases are saved.

## `maxScan` (type: `integer`):

Stop after looking at this many releases, even if fewer than the maximum results matched. Protects strict filters from walking the whole archive.

## `proxyConfiguration` (type: `object`):

Optional. The Actor starts on a direct connection and switches to a datacenter proxy by itself if the direct route is refused. Turn this on to start on the proxy instead.

## Actor input object example

```json
{
  "feed": "all",
  "category": "any",
  "keywords": [],
  "keywordScope": "anywhere",
  "excludeKeywords": [],
  "companies": [],
  "tickers": [],
  "languages": [],
  "startUrls": [],
  "onlyWithMultimedia": false,
  "onlyWithContact": false,
  "includeDetails": false,
  "includeFullText": false,
  "monitorName": "",
  "monitorBaselineOnly": false,
  "maxItems": 20,
  "maxScan": 100,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `releases` (type: `string`):

No description

## `summary` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "feed": "all",
    "category": "any",
    "keywords": [],
    "keywordScope": "anywhere",
    "excludeKeywords": [],
    "companies": [],
    "tickers": [],
    "languages": [],
    "startUrls": [],
    "onlyWithMultimedia": false,
    "onlyWithContact": false,
    "includeDetails": false,
    "includeFullText": false,
    "monitorName": "",
    "monitorBaselineOnly": false,
    "maxItems": 20,
    "maxScan": 100,
    "proxyConfiguration": {
        "useApifyProxy": false
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("getascraper/prnewswire-press-release-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "feed": "all",
    "category": "any",
    "keywords": [],
    "keywordScope": "anywhere",
    "excludeKeywords": [],
    "companies": [],
    "tickers": [],
    "languages": [],
    "startUrls": [],
    "onlyWithMultimedia": False,
    "onlyWithContact": False,
    "includeDetails": False,
    "includeFullText": False,
    "monitorName": "",
    "monitorBaselineOnly": False,
    "maxItems": 20,
    "maxScan": 100,
    "proxyConfiguration": { "useApifyProxy": False },
}

# Run the Actor and wait for it to finish
run = client.actor("getascraper/prnewswire-press-release-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "feed": "all",
  "category": "any",
  "keywords": [],
  "keywordScope": "anywhere",
  "excludeKeywords": [],
  "companies": [],
  "tickers": [],
  "languages": [],
  "startUrls": [],
  "onlyWithMultimedia": false,
  "onlyWithContact": false,
  "includeDetails": false,
  "includeFullText": false,
  "monitorName": "",
  "monitorBaselineOnly": false,
  "maxItems": 20,
  "maxScan": 100,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}' |
apify call getascraper/prnewswire-press-release-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,getascraper/prnewswire-press-release-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/uppxFNVD9NaVbBF98/builds/0oTj8heqOMt3n0Ck7/openapi.json
