# Zacks Stock & Mutual Fund Rank Scraper (`crawlerbros/zacks-scraper`) Actor

Scrape Zacks.com stock quotes and mutual fund quotes: Zacks Rank (1-5), Style Scores (Value/Growth/Momentum/VGM), industry & sector rank, valuation ratios, earnings estimates, and mutual fund performance/fees. Lookup by ticker symbol, no login required.

- **URL**: https://apify.com/crawlerbros/zacks-scraper.md
- **Developed by:** [Crawler Bros](https://apify.com/crawlerbros) (community)
- **Categories:** Automation, Developer tools, Agents
- **Stats:** 4 total users, 3 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

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

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

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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.
Actors are written with capital "A".

## 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.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## Zacks Stock & Mutual Fund Rank Scraper

Scrape **Zacks.com** stock, mutual fund, and ETF quote pages for the Zacks Rank, Style Scores, industry/sector rank, valuation ratios, earnings estimates, and fund performance data. Look up any ticker symbol — no login, no cookies, no API key required. Empty fields are omitted.

### What this actor does

- **Three modes:** `stockQuote` (equities), `mutualFundQuote` (mutual funds), and `etfQuote` (ETFs)
- **Zacks Rank** — the 1 (Strong Buy) to 5 (Strong Sell) timeliness rating, for stocks, funds, and ETFs
- **Style Scores** — Value / Growth / Momentum / VGM letter grades (A–F) for stocks
- **Industry & sector rank** — where a stock's industry ranks among all Zacks industries
- **Valuation & earnings data** — market cap, P/E, PEG ratio, beta, EPS estimates, Earnings ESP
- **Analyst estimate revisions & EPS surprise history** — # of analysts and up/down revision counts driving the Zacks Rank, plus reported vs. estimated EPS and surprise % for the last 4 quarters
- **Value/Growth/Momentum scorecard breakdown** — the ~10 underlying metrics behind each Style Score (P/E, P/B, P/S, PEG, EV/EBITDA, EPS/sales/cash-flow growth, ROE, price momentum, etc.), with the stock's own value alongside its industry median for comparison
- **Mutual fund performance** — YTD/1/3/5/10-year returns, expense ratio, fees, fund family
- **ETF quote data** — Zacks ETF Rank, NAV, premium/discount to NAV, expense ratio, issuer, benchmark index, category
- **Filters** — minimum/maximum Zacks Rank, minimum VGM Style Score (stocks)
- Empty fields are omitted from every record

### Output: per-stock (mode = `stockQuote`)

- `ticker`, `companyName`, `exchange`
- `lastPrice`, `currency`, `priceChange`, `priceChangePercent`, `volume`, `lastUpdated`
- `afterMarketPrice`, `afterMarketChange`, `afterMarketChangePercent`
- `zacksRank` (1–5), `zacksRankText` (e.g. `Hold`)
- `valueScore`, `growthScore`, `momentumScore`, `vgmScore` (A–F letter grades)
- `industryRankPosition`, `industryRankTotal`, `industryRankPercentile`, `industryName`, `sectorName`
- `openPrice`, `dayLow`, `dayHigh`, `week52Low`, `week52High`, `avgVolume20Day`, `marketCap`
- `dividendPerShare`, `dividendYieldPercent`, `beta`
- `earningsEspPercent`, `mostAccurateEstimate`, `currentQtrEstimate`, `currentYrEstimate`, `expEarningsDate`
- `priorYearEps`, `nextYearEpsGrowthPercent`, `expEpsGrowth3to5yrPercent`
- `forwardPE`, `pegRatio`
- `numAnalystsCurrentQtr`, `numAnalystsCurrentYr` — number of analysts contributing to the current-quarter/current-year consensus estimate
- `epsRevisionsUpCurrentQtr`, `epsRevisionsDownCurrentQtr`, `epsRevisionsUpCurrentYr`, `epsRevisionsDownCurrentYr` — count of analyst EPS estimate revisions in the last 60 days, by direction
- `epsEstimateCurrentQtr`, `epsEstimateCurrentYr` — current consensus EPS estimate (Zacks Rank Factor #2: Magnitude)
- `epsEstimateRevisionTrendCurrentQtrPercent`, `epsEstimateRevisionTrendCurrentYrPercent` — % change in the consensus EPS estimate over the last 60 days
- `epsSurpriseHistory` — array (up to 4 entries) of the last reported quarters: `period`, `reportedEps`, `estimatedEps`, `surprisePercent`
- `detailedEstimates` *(only when `includeDetailedEstimates` is enabled)* — object with:
  - `salesEstimates` / `earningsEstimates` — each keyed by `currentQtr`, `nextQtr`, `currentYr`, `nextYr`, with `consensusEstimate` and `yoyGrowthPercent`
  - `epsRevisions60Day` — each period keyed by `currentQtr`/`nextQtr`/`currentYr`/`nextYr`, with `up`/`down` analyst revision counts over the last 60 days
- `companyDescription` *(only when `includeCompanyDescription` is enabled)* — plain-text business summary (products/services, headquarters, segments)
- `financials` *(only when `includeFinancials` is enabled)* — object with `incomeStatementAnnual`, `balanceSheetAnnual`, `cashFlowAnnual`, each an array of up to 5 annual records (most recent fiscal year first). Every record has a `periodEndDate` plus the statement's line items (e.g. `sales`, `costOfGoods`, `grossProfit`, `netIncomeLoss` for income; `cashAndEquivalents`, `totalCurrentAssets`, `totalLiabilities` for balance sheet; `netCashFromOperatingActivities`, `netCashFromInvestingActivities`, `netCashFromFinancingActivities` for cash flow), in $ millions as reported by Zacks
- `priceTargets` *(only when `includePriceTargets` is enabled)* — object with `avgPriceTarget`, `highPriceTarget`, `lowPriceTarget`, `upsideToAvgPriceTargetPercent`, `numAnalystsPriceTargets`, `avgBrokerRating` (ABR, 1-5 scale), `avgBrokerRatingOneMonthAgo`, `numBrokerRecommendations`, and `recommendationBreakdown` (current `strongBuy`/`buy`/`hold`/`sell`/`strongSell` analyst counts)
- `valueScorecard`, `growthScorecard`, `momentumScorecard` *(only when `includeStyleScorecards` is enabled)* — each an object with `stock` (the ticker's own metric values) and `industryMedian` (its industry's median), covering:
  - **Value**: `cashToPriceRatio`, `evToEbitda`, `pegRatio`, `priceToBook`, `priceToCashFlow`, `peF1`, `priceToSales`, `earningsYieldPercent`, `debtToEquity`, `cashFlowPerShare`
  - **Growth**: `histEpsGrowthPercent`, `projEpsGrowthPercent`, `currCashFlowGrowthPercent`, `histCashFlowGrowthPercent`, `currentRatio`, `debtToCapitalPercent`, `netMarginPercent`, `returnOnEquityPercent`, `salesToAssets`, `projSalesGrowthPercent`
  - **Momentum**: `dailyPriceChangePercent`, `oneWeekPriceChangePercent`, `fourWeekPriceChangePercent`, `twelveWeekPriceChangePercent`, `fiftyTwoWeekPriceChangePercent`, `avgVolume20Day`, `f1EpsEstWeeklyChangePercent`, `f1EpsEstMonthlyChangePercent`, `f1EpsEstQuarterlyChangePercent`, `q1EpsEstMonthlyChangePercent`
- `sourceUrl`, `recordType: "stock"`, `scrapedAt`

### Output: per-fund (mode = `mutualFundQuote`)

- `ticker`, `fundName`, `category`, `fundDescription`
- `lastPrice`, `currency`, `priceChange`, `priceChangePercent`, `asOf`
- `zacksMfRank` (1–5), `zacksMfRankText`
- `ytdReturnPercent`, `threeMonthReturnPercent`, `sixMonthReturnPercent`, `oneYearReturnPercent`, `threeYearReturnPercent`, `fiveYearReturnPercent`, `tenYearReturnPercent`
- `ytdPercentileRankObjective` (and per-period equivalents) — 1 (best) to 99 (worst) rank among peers
- `inceptionDate`, `manager`, `managerStartDate`, `managerRating`
- `minInitialInvestment`, `minSubsequentInvestment`, `iraMinimum`
- `expenseRatioPercent`, `managementFeePercent`, `max12b1FeePercent`, `redemptionFeePercent`, `maxSalesLoadPercent`, `maxDeferredLoadPercent`
- `turnoverPercent`, `yieldPercent`, `secYieldPercent`, `unrealizedGainPercent`
- `avgPE`, `avgPriceToBook`, `avgEpsGrowthPercent`, `avgMarketValueMillion`, `totalIssues`, `shareholders`
- `assetAllocation` — object with whichever of `stocksPercent`, `bondsPercent`, `cashPercent`, `convertiblePercent`, `preferredPercent`, `otherPercent`, `foreignStockPercent`, `foreignBondPercent`, `foreignHedgedPercent`, `emergingMarketPercent`, `highYieldBondPercent`, `intermediateBondPercent`, `preciousMetalPercent`, `largeGrowthPercent`, `largeValuePercent`, `smallGrowthPercent`, `smallValuePercent` the fund actually publishes (equity funds report style-box rows, bond funds report bond-type rows)
- `topHoldings` — array of the fund's largest positions: `name`, `percentOfPortfolio`, `valueMillion`
- `sectorWeightings` — object of sector/country → % of portfolio (equity funds only; omitted when the fund doesn't publish sector data)
- `riskStatistics` — object keyed by `threeYear`/`fiveYear`/`tenYear`, each with `beta`, `alpha`, `rSquared`, `stdDev`, `sharpe`
- `netAssetsMillion`, `fundFamily`, `address`, `phone`
- `sourceUrl`, `recordType: "mutualFund"`, `scrapedAt`

### Output: per-ETF (mode = `etfQuote`)

- `ticker`, `etfName`, `category`, `benchmarkIndex`, `fundSummary`, `issuer`
- `lastPrice`, `currency`, `priceChange`, `priceChangePercent`, `volume`, `asOf`
- `zacksEtfRank` (1–5), `zacksEtfRankText`
- `openPrice`, `previousClose`, `bid`, `ask`, `dayLow`, `dayHigh`, `week52Low`, `week52High`
- `navMonthEnd`, `premiumDiscountMonthEndDollar` (month-end closing market price minus month-end NAV, in dollars — Zacks does not publish this as a percentage)
- `expenseRatioPercent`, `dividendPerShare`, `dividendYieldPercent`
- `sourceUrl`, `recordType: "etf"`, `scrapedAt`

### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `mode` | string | `stockQuote` | `stockQuote`, `mutualFundQuote`, or `etfQuote` |
| `tickers` | array | `["AAPL"]` | Stock ticker symbols (mode=stockQuote) |
| `fundTickers` | array | – | Mutual fund ticker symbols (mode=mutualFundQuote) |
| `etfTickers` | array | – | ETF ticker symbols (mode=etfQuote) |
| `minZacksRank` | int (1–5) | – | Only emit records with Zacks Rank ≥ this value |
| `maxZacksRank` | int (1–5) | – | Only emit records with Zacks Rank ≤ this value |
| `minStyleScore` | string | – | Only emit stocks with VGM Style Score ≥ this letter grade (mode=stockQuote) |
| `includeDetailedEstimates` | boolean | `false` | Fetch next-quarter/next-year Sales & EPS consensus estimates, YoY growth %, and 60-day revision counts (mode=stockQuote). Adds one extra request per ticker |
| `includeStyleScorecards` | boolean | `false` | Add the Value/Growth/Momentum scorecard metric breakdown vs. industry median (mode=stockQuote). No extra request |
| `includePriceTargets` | boolean | `false` | Add analyst price targets (avg/high/low, upside %) and broker recommendation ratings (ABR, Strong Buy/Buy/Hold/Sell/Strong Sell breakdown) (mode=stockQuote). Adds one extra request per ticker |
| `includeCompanyDescription` | boolean | `false` | Add a plain-text company business description (mode=stockQuote). Adds one extra request per ticker |
| `includeFinancials` | boolean | `false` | Add up to 5 fiscal years of annual income-statement, balance-sheet and cash-flow line items (mode=stockQuote). Adds three extra requests per ticker |
| `maxItems` | int | `50` | Hard cap on emitted records (1–500) |
| `proxyConfiguration` | object | off | Optional. Only engaged automatically if Zacks.com starts blocking direct requests |

#### Example: look up a batch of stocks

```json
{
  "mode": "stockQuote",
  "tickers": ["AAPL", "MSFT", "NVDA", "AMD"],
  "maxItems": 50
}
```

#### Example: only strong-buy stocks with a top VGM grade

```json
{
  "mode": "stockQuote",
  "tickers": ["AAPL", "MSFT", "NVDA", "AMD", "TSLA", "GOOGL"],
  "minZacksRank": 1,
  "maxZacksRank": 2,
  "minStyleScore": "B",
  "maxItems": 50
}
```

#### Example: stocks with next-quarter/next-year estimates included

```json
{
  "mode": "stockQuote",
  "tickers": ["AAPL", "MSFT"],
  "includeDetailedEstimates": true,
  "maxItems": 50
}
```

#### Example: stocks with Value/Growth/Momentum scorecard breakdown vs. industry

```json
{
  "mode": "stockQuote",
  "tickers": ["AAPL", "MSFT"],
  "includeStyleScorecards": true,
  "maxItems": 50
}
```

#### Example: stocks with analyst price targets & broker ratings

```json
{
  "mode": "stockQuote",
  "tickers": ["AAPL", "MSFT"],
  "includePriceTargets": true,
  "maxItems": 50
}
```

#### Example: mutual fund lookup

```json
{
  "mode": "mutualFundQuote",
  "fundTickers": ["FCNTX", "VFIAX", "AGTHX"],
  "maxItems": 50
}
```

#### Example: stocks with company business description

```json
{
  "mode": "stockQuote",
  "tickers": ["AAPL", "MSFT"],
  "includeCompanyDescription": true,
  "maxItems": 50
}
```

#### Example: stocks with 5-year annual financial statements

```json
{
  "mode": "stockQuote",
  "tickers": ["AAPL", "MSFT"],
  "includeFinancials": true,
  "maxItems": 50
}
```

#### Example: ETF lookup

```json
{
  "mode": "etfQuote",
  "etfTickers": ["QQQ", "SPY", "VOO"],
  "maxItems": 50
}
```

### Use cases

- **Screening & signal generation** — pull the Zacks Rank and Style Scores for a watchlist to build a rules-based screener
- **Portfolio monitoring** — track industry/sector rank drift for holdings over time
- **Fund due diligence** — compare Zacks Mutual Fund Rank, expense ratios and multi-year returns across a fund shortlist
- **Fintech data pipelines** — feed Zacks Rank and valuation ratios into a research dashboard
- **Academic / quant research** — bulk-collect historical Zacks Rank snapshots for backtesting

### FAQ

**What is the data source?**
Zacks.com's public stock and mutual fund quote pages — no login required for the fields this actor extracts.

**What is the Zacks Rank?**
A proprietary 1 (Strong Buy) to 5 (Strong Sell) rating Zacks assigns to stocks and mutual funds as a short-term timeliness indicator, based on earnings estimate revision trends.

**What are Style Scores?**
Zacks' complementary A–F letter grades for Value, Growth, and Momentum investing styles, plus a combined VGM score. Used alongside the Zacks Rank.

**Why are some fields missing for a given ticker?**
Zacks doesn't publish every field for every security — for example, some funds have no assigned Zacks Mutual Fund Rank (shown as "NA" on the site) and are simply omitted rather than emitted as null.

**Is this affiliated with Zacks Investment Research?**
No — this is an independent third-party actor that reads Zacks.com's public quote pages.

**How fresh is the data?**
Prices and ranks reflect what's published on the live Zacks.com page at the time of the run (typically delayed quote data, as noted on the site).

**Can I look up an invalid or delisted ticker?**
Invalid tickers return no data for that symbol; the run continues with the remaining tickers and reports a status message if nothing was resolved.

**Does this actor need a proxy?**
No — it works over plain HTTPS by default. A proxy is only engaged automatically as a fallback if Zacks.com starts blocking direct requests.

# Actor input Schema

## `mode` (type: `string`):

What to fetch.

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

Stock ticker symbols to look up, e.g. `AAPL`, `MSFT`, `NVDA`. Case-insensitive.

## `fundTickers` (type: `array`):

Mutual fund ticker symbols to look up, e.g. `FCNTX`, `VFIAX`. Case-insensitive.

## `etfTickers` (type: `array`):

ETF ticker symbols to look up, e.g. `QQQ`, `SPY`, `VOO`. Case-insensitive.

## `minZacksRank` (type: `integer`):

Only emit stocks/funds with a Zacks Rank greater than or equal to this (1=Strong Buy ... 5=Strong Sell). Records with no published rank pass through.

## `maxZacksRank` (type: `integer`):

Only emit stocks/funds with a Zacks Rank less than or equal to this (1=Strong Buy ... 5=Strong Sell). Records with no published rank pass through.

## `minStyleScore` (type: `string`):

Only emit stocks whose VGM Style Score is at least this letter grade (A is best). Records with no published score pass through.

## `includeDetailedEstimates` (type: `boolean`):

Fetch the Zacks detailed-earning-estimates page for each stock to add next-quarter and next-year Sales/EPS consensus estimates, year-over-year growth %, and 60-day analyst revision counts (beyond the current-quarter/current-year figures already included by default). Adds one extra request per ticker.

## `includeStyleScorecards` (type: `boolean`):

Add the ~10 underlying metrics behind each Style Score (Value: P/E, P/B, P/S, PEG, EV/EBITDA, Debt/Equity, etc.; Growth: EPS/sales/cash-flow growth, ROE, margins; Momentum: price change over multiple windows, EPS estimate revision %) with the stock's own value alongside its industry median for comparison. No extra request — parsed from the same quote page already fetched.

## `includePriceTargets` (type: `boolean`):

Fetch the Zacks price-target-stock-forecast page for each stock to add the average/highest/lowest analyst price target, upside % to the average target, the Average Broker Rating (ABR, 1-5 scale) with its 1-month-ago comparison, and the current Strong Buy/Buy/Hold/Sell/Strong Sell recommendation breakdown. Adds one extra request per ticker.

## `includeCompanyDescription` (type: `boolean`):

Fetch the Zacks company-summary snippet for each stock to add a plain-text business description (industry, products/services, headquarters). Adds one extra request per ticker.

## `includeFinancials` (type: `boolean`):

Fetch the Zacks income-statement, balance-sheet and cash-flow-statements pages for each stock to add up to 5 fiscal years of annual financial-statement line items (revenue, expenses, assets, liabilities, equity, operating/investing/financing cash flows, in $ millions). Adds three extra requests per ticker.

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

Optional. Only used automatically if Zacks.com starts blocking direct requests (403/429). Leave default for normal use.

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

Hard cap on emitted records.

## Actor input object example

```json
{
  "mode": "stockQuote",
  "tickers": [
    "AAPL"
  ],
  "fundTickers": [],
  "etfTickers": [],
  "includeDetailedEstimates": false,
  "includeStyleScorecards": false,
  "includePriceTargets": false,
  "includeCompanyDescription": false,
  "includeFinancials": false,
  "proxyConfiguration": {
    "useApifyProxy": false
  },
  "maxItems": 50
}
```

# Actor output Schema

## `records` (type: `string`):

Dataset containing all scraped Zacks stock and mutual fund records.

# 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 = {
    "mode": "stockQuote",
    "tickers": [
        "AAPL"
    ],
    "fundTickers": [],
    "etfTickers": [],
    "includeDetailedEstimates": false,
    "includeStyleScorecards": false,
    "includePriceTargets": false,
    "includeCompanyDescription": false,
    "includeFinancials": false,
    "proxyConfiguration": {
        "useApifyProxy": false
    },
    "maxItems": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("crawlerbros/zacks-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 = {
    "mode": "stockQuote",
    "tickers": ["AAPL"],
    "fundTickers": [],
    "etfTickers": [],
    "includeDetailedEstimates": False,
    "includeStyleScorecards": False,
    "includePriceTargets": False,
    "includeCompanyDescription": False,
    "includeFinancials": False,
    "proxyConfiguration": { "useApifyProxy": False },
    "maxItems": 50,
}

# Run the Actor and wait for it to finish
run = client.actor("crawlerbros/zacks-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 '{
  "mode": "stockQuote",
  "tickers": [
    "AAPL"
  ],
  "fundTickers": [],
  "etfTickers": [],
  "includeDetailedEstimates": false,
  "includeStyleScorecards": false,
  "includePriceTargets": false,
  "includeCompanyDescription": false,
  "includeFinancials": false,
  "proxyConfiguration": {
    "useApifyProxy": false
  },
  "maxItems": 50
}' |
apify call crawlerbros/zacks-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,crawlerbros/zacks-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/x1EPa7nftLRyDVUcL/builds/ZZ7xeyo6TbrwIjrNZ/openapi.json
