# StockAnalysis Scraper | Stock Financials and Quotes (`parseforge/stockanalysis-scraper`) Actor

Extract real-time stock quotes, fundamentals, ratios, ETF data, and IPO calendars from StockAnalysis.com. Pull historical prices, balance sheets, income statements, cash flows, and analyst estimates for thousands of US tickers. Built for traders, analysts, and finance dashboards.

- **URL**: https://apify.com/parseforge/stockanalysis-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** Business, News, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $19.00 / 1,000 results

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/platform/actors/running/actors-in-store#pay-per-event

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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

![ParseForge Banner](https://github.com/ParseForge/apify-assets/blob/ad35ccc13ddd068b9d6cba33f323962e39aed5b2/banner.jpg?raw=true)

## 📈 Stock Analysis Scraper

> 🚀 **Export stock data from StockAnalysis.com in seconds.** Get real-time price, market cap, P/E ratio, revenue, EPS, and dividend yield for any stock - or screen all 5,500+ publicly traded stocks with filters.

> 🕒 **Last updated:** 2026-05-22 · **📊 19 fields** per record · **5,500+ stocks** · **Global coverage**

The Stock Analysis Scraper extracts comprehensive financial data from [StockAnalysis.com](https://stockanalysis.com), one of the most accurate free financial data sources on the web. Use it to look up specific tickers or run the full screener with market cap and sector filters. No account or API key needed.

This scraper works in two modes:
- **Ticker mode**: Provide a list of symbols (AAPL, MSFT, TSLA) and get rich financial data for each - price, P/E ratio, revenue, net income, EPS, dividend yield, sector, industry, country, and exchange.
- **Screener mode**: Browse all 5,500+ publicly traded US stocks sorted by market cap, with optional filters for sector and market cap range.

Coverage spans 5,500+ US-listed stocks across NASDAQ, NYSE, and AMEX, with 19 data fields per record including logos, financials, and sector classification. Price and market data is real-time (updated every minute on StockAnalysis.com), and the source covers stocks from 60+ countries listed on US exchanges.

| 🎯 Target Audience | 💡 Primary Use Cases |
|---|---|
| Individual investors, quant and algo traders, financial analysts, data engineers, fintech developers, educators and researchers | Research stocks and compare P/E ratios and dividend yields, build watchlists and screen for value or growth stocks, extract sector-level data for market reports, populate financial databases and BI dashboards, power stock lookup features in apps, build datasets for courses and academic studies |

---

### 📋 What the Stock Analysis Scraper does

- Looks up real-time price, change, and market cap for any ticker
- Extracts TTM revenue, net income, EPS, and P/E ratio
- Returns dividend yield, sector, industry, country, and exchange
- Includes company logo URLs for UI embedding
- Screens all 5,500+ stocks with sector and market cap filters
- Exports to CSV, Excel, JSON, and XML for analysis

> 💡 **Why it matters:** StockAnalysis.com aggregates data from multiple financial data providers and updates every minute - giving you fresher data than many paid APIs, for free.

### 🎬 Full Demo

🚧 Coming soon

### ⚙️ Input

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `tickers` | String list | No | Stock symbols to look up (e.g. AAPL, MSFT, TSLA). Leave empty for screener mode. |
| `maxItems` | Number | No | Max records to return. Free users limited to 10. Default: 10. |
| `screener` | Boolean | No | Enable screener mode to browse all stocks. |
| `sector` | Select | No | Filter by sector (Technology, Healthcare, etc.). Screener mode only. |
| `marketCapMin` | Number | No | Min market cap in USD (e.g. 1000000000 for $1B). |
| `marketCapMax` | Number | No | Max market cap in USD. |

**Example 1 - Specific Tickers:**
```json
{
  "tickers": ["AAPL", "MSFT", "GOOGL", "AMZN", "TSLA"],
  "maxItems": 5
}
````

**Example 2 - Screener with Filters:**

```json
{
  "screener": true,
  "sector": "technology",
  "marketCapMin": 1000000000,
  "maxItems": 50
}
```

> ⚠️ **Good to Know:** Free users are automatically limited to 10 items. [Upgrade to paid](https://console.apify.com/sign-up?fpr=vmoqkp) to extract up to 1,000,000 stocks. Screener mode with sector filtering may iterate more candidates than the final count to match your sector filter.

### 📊 Output

Each record contains the following fields:

| Field | Type | Example |
|-------|------|---------|
| 🖼️ `imageUrl` | String | `https://img.stockanalysis.com/logos1/US/aapl.png` |
| 🏷️ `symbol` | String | `AAPL` |
| 🏢 `name` | String | `Apple Inc.` |
| 💲 `price` | Number | `304.99` |
| 📉 `change` | Number | `2.74` |
| 📊 `changePercent` | Number | `0.91` |
| 💰 `marketCap` | String | `4.48T` |
| 📈 `revenue` | String | `451.44B` |
| 💵 `netIncome` | String | `122.58B` |
| 🔢 `peRatio` | Number | `36.97` |
| 💹 `eps` | String | `8.25` |
| 🏦 `dividendYield` | String | `0.34%` |
| 🏭 `sector` | String | `Technology` |
| 🔧 `industry` | String | `Consumer Electronics` |
| 🌍 `country` | String | `United States` |
| 🏛️ `exchange` | String | `NASDAQ` |
| 🔗 `url` | String | `https://stockanalysis.com/stocks/aapl/` |
| 🕒 `scrapedAt` | String | `2026-05-22T00:32:34.901Z` |
| ❌ `error` | String | `null` |

**Sample records:**

```json
[
  {
    "imageUrl": "https://img.stockanalysis.com/logos1/US/aapl.png",
    "symbol": "AAPL",
    "name": "Apple Inc.",
    "price": 304.99,
    "change": 2.74,
    "changePercent": 0.91,
    "marketCap": "4.48T",
    "revenue": "451.44B",
    "netIncome": "122.58B",
    "peRatio": 36.97,
    "eps": "8.25",
    "dividendYield": "0.34%",
    "sector": "Technology",
    "industry": "Consumer Electronics",
    "country": "United States",
    "exchange": "NASDAQ",
    "url": "https://stockanalysis.com/stocks/aapl/",
    "scrapedAt": "2026-05-22T00:32:34.901Z"
  },
  {
    "imageUrl": "https://img.stockanalysis.com/logos1/US/MSFT.png",
    "symbol": "MSFT",
    "name": "Microsoft Corporation",
    "price": 419.09,
    "change": -1.06,
    "changePercent": -0.25,
    "marketCap": "3.11T",
    "revenue": "318.27B",
    "netIncome": "125.22B",
    "peRatio": 25.08,
    "eps": "16.79",
    "dividendYield": "0.87%",
    "sector": "Technology",
    "industry": "Software - Infrastructure",
    "country": "United States",
    "exchange": "NASDAQ",
    "url": "https://stockanalysis.com/stocks/msft/",
    "scrapedAt": "2026-05-22T00:32:35.170Z"
  },
  {
    "imageUrl": "https://img.stockanalysis.com/logos1/US/googl.png",
    "symbol": "GOOGL",
    "name": "Alphabet Inc.",
    "price": 387.66,
    "change": -1.25,
    "changePercent": -0.32,
    "marketCap": "4.70T",
    "revenue": "422.50B",
    "netIncome": "160.21B",
    "peRatio": 29.58,
    "eps": "13.11",
    "dividendYield": "0.23%",
    "sector": "Communication Services",
    "industry": "Internet Content & Information",
    "country": "United States",
    "exchange": "NASDAQ",
    "url": "https://stockanalysis.com/stocks/googl/",
    "scrapedAt": "2026-05-22T00:32:35.367Z"
  }
]
```

### ✨ Why choose this Actor

| Feature | Benefit |
|---------|---------|
| ✅ No login required | Works out of the box, no account needed |
| 📡 Real-time data | StockAnalysis.com updates every minute |
| 🌐 5,500+ stocks | Full US market coverage including small caps |
| 🏷️ Logo URLs included | Ready for UI embedding without extra lookups |
| 🎯 Dual mode | Ticker lookup or screener - one actor for all needs |
| 💸 Free tier included | 10 records free to test before committing |
| 📦 CSV/Excel/JSON/XML | All Apify export formats supported |

### 📈 How it compares to alternatives

| Feature | This Actor | Yahoo Finance Scraper | Finviz Scraper |
|---------|-----------|----------------------|----------------|
| Real-time price | ✅ | ✅ | ✅ |
| Revenue / Net Income | ✅ | Partial | ❌ |
| Dividend Yield | ✅ | ✅ | ✅ |
| Company logo | ✅ | ❌ | ❌ |
| Sector + Industry | ✅ | ✅ | ✅ |
| Country of origin | ✅ | Partial | ❌ |
| Screener mode | ✅ (5,500+ stocks) | ❌ | ✅ |
| Free tier | ✅ 10 items | Varies | Varies |

### 🚀 How to use

1. Go to the [Stock Analysis Scraper](https://apify.com/parseforge/stockanalysis-scraper) page
2. [Create a free account](https://console.apify.com/sign-up?fpr=vmoqkp) with $5 credit
3. Click **Try for free**
4. Enter your tickers (e.g. `AAPL, MSFT, TSLA`) or enable screener mode
5. Click **Start** and download your dataset as CSV, Excel, or JSON

### 💼 Business use cases

#### Portfolio Monitoring

Build automated alerts when any stock in your watchlist crosses a P/E threshold or drops more than 5% in a day. Run this actor on a schedule and push results to a spreadsheet or Slack.

#### Sector Analysis

Use screener mode filtered by sector to get all Technology or Healthcare stocks with their financials. Compare median P/E ratios, revenue growth, and net income margins across the entire sector.

#### Dividend Income Screening

Filter stocks with dividendYield not null and marketCapMin of $1B to find established dividend payers. Export to Excel and sort by yield for income investing research.

#### Competitive Intelligence

Pull financial data for a company and its top 10 competitors every quarter. Track revenue growth, margin trends, and P/E multiple expansion or contraction relative to peers.

### 🔌 Automating Stock Analysis Scraper

Connect to 2,000+ apps without code:

- **Make (Integromat)**: Schedule weekly runs, push stock data to Google Sheets
- **Zapier**: Trigger alerts when a stock hits your target price
- **Slack**: Post daily market summaries for your watchlist
- **Google Sheets**: Build a live-updating portfolio tracker
- **Power BI / Tableau**: Connect via Apify dataset API for BI dashboards
- **n8n**: Build complex financial workflows with branching logic

### 🌟 Beyond business use cases

#### Research

Academic researchers studying market efficiency, sector rotations, or P/E mean reversion can build large historical datasets by scheduling daily runs.

#### Education

Finance instructors can pull real company data for case studies and valuation exercises without paying for Bloomberg terminals.

#### Personal Projects

Build your own stock screener app, portfolio tracker, or financial news aggregator using this actor as the data layer.

#### Experimentation

Test quantitative strategies - value vs. growth, low P/E screening, dividend capture - on fresh data without paying for a data vendor.

### 🤖 Ask an AI assistant about this scraper

You can ask any AI assistant (ChatGPT, Claude, Gemini): *"How do I use the Apify Stock Analysis Scraper to find technology stocks with a P/E ratio below 20?"* - the AI can guide you through setting up the input, interpreting the output, and connecting it to your workflow.

### ❓ Frequently Asked Questions

#### ❓ How often is the data updated?

StockAnalysis.com updates its data every minute during market hours. Each run fetches fresh data at that moment.

#### ❓ Does it cover international stocks?

The scraper covers all stocks listed on US exchanges (NASDAQ, NYSE, AMEX), which includes foreign companies with US-listed ADRs (e.g. TSM for TSMC, BABA for Alibaba).

#### ❓ Can I get historical price data?

This scraper returns current/intraday data. For historical OHLCV data, you would need a different data source.

#### ❓ What is screener mode?

Screener mode fetches all 5,500+ stocks from the screener and lets you filter by sector and market cap range. Free users get 10 results.

#### ❓ Why is dividendYield null for some stocks?

Companies that don't pay dividends (like AMZN, TSLA) will have null for dividendYield. This is correct - no dividend is paid.

#### ❓ Why does the sector filter scan more candidates than the result count?

The screener sorts stocks by market cap. When sector filtering is enabled, the actor enriches each stock with its real sector and skips non-matching ones. It continues until it finds enough matching stocks.

#### ❓ What happens if a ticker doesn't exist?

Invalid tickers return an error record with `error: "Request failed"` so your run still succeeds and you know which tickers failed.

#### ❓ Can I run this on a schedule?

Yes. Use Apify's scheduling feature to run it daily, weekly, or on any cron schedule to keep your dataset fresh.

#### ❓ How long does it take to scrape 100 stocks?

About 15-20 seconds. Each stock requires 2 lightweight API calls (financial data + company profile).

#### ❓ Is there rate limiting?

The scraper uses polite sequential requests. For very large batches (500+ stocks), it may take a few minutes. No rate limits have been observed for normal usage.

#### ❓ Does it work with preferred shares (AAPL-PA) or ETFs?

The scraper is designed for common stocks. ETF and preferred share pages have different data structures and may not return complete data.

#### ❓ What does the imageUrl field contain?

A direct URL to the company's logo PNG from StockAnalysis.com's CDN. You can embed this directly in a web UI or app.

### 🔌 Integrate with any app

- Google Sheets - live portfolio tracker
- Microsoft Excel - financial analysis workbooks
- Power BI - sector dashboards
- Tableau - market visualization
- Slack - daily market alerts
- Make (Integromat) - automated workflows
- Zapier - no-code integrations
- n8n - self-hosted automation
- REST API - direct dataset access via Apify API
- CSV / JSON / XML - standard data exports

### 🔗 Recommended Actors

| Actor | Description |
|-------|-------------|
| [Coinpaprika Scraper](https://apify.com/parseforge/coinpaprika-scraper) | Crypto market data - prices, market cap, and volume for 5,000+ coins |
| [Finviz Scraper](https://apify.com/parseforge/finviz-scraper) | Stock screener and financial visualizer data |
| [Macrotrends Scraper](https://apify.com/parseforge/macrotrends-scraper) | Long-term historical financial metrics and charts |

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for 80+ specialized data scrapers covering finance, jobs, reviews, real estate, government data, and more.

***

**Disclaimer:** This actor is not affiliated with StockAnalysis.com. All financial data is sourced from publicly accessible web pages for informational purposes only. Do not use this data as the sole basis for investment decisions. Always verify financial data with official sources before trading.

# Actor input Schema

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

Specific stock symbols to look up (e.g. AAPL, MSFT, TSLA). Leave empty to use screener mode.

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

Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000.

## `screener` (type: `boolean`):

Enable screener mode to browse all stocks with optional filters. When enabled, the tickers field is ignored.

## `sector` (type: `string`):

Filter stocks by sector.

## `marketCapMin` (type: `integer`):

Minimum market capitalization in USD (e.g. 1000000000 for $1B).

## `marketCapMax` (type: `integer`):

Maximum market capitalization in USD (e.g. 10000000000 for $10B).

## Actor input object example

```json
{
  "tickers": [
    "AAPL",
    "MSFT",
    "GOOGL",
    "AMZN",
    "TSLA"
  ],
  "maxItems": 10,
  "screener": false
}
```

# Actor output Schema

## `results` (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 = {
    "tickers": [
        "AAPL",
        "MSFT",
        "GOOGL",
        "AMZN",
        "TSLA"
    ],
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/stockanalysis-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 = {
    "tickers": [
        "AAPL",
        "MSFT",
        "GOOGL",
        "AMZN",
        "TSLA",
    ],
    "maxItems": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("parseforge/stockanalysis-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "tickers": [
    "AAPL",
    "MSFT",
    "GOOGL",
    "AMZN",
    "TSLA"
  ],
  "maxItems": 10
}' |
apify call parseforge/stockanalysis-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=parseforge/stockanalysis-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "StockAnalysis Scraper | Stock Financials and Quotes",
        "description": "Extract real-time stock quotes, fundamentals, ratios, ETF data, and IPO calendars from StockAnalysis.com. Pull historical prices, balance sheets, income statements, cash flows, and analyst estimates for thousands of US tickers. Built for traders, analysts, and finance dashboards.",
        "version": "0.1",
        "x-build-id": "OUBISY8iiavRzXjSb"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~stockanalysis-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-stockanalysis-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        },
        "/acts/parseforge~stockanalysis-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-stockanalysis-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor and returns information about the initiated run in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/runsResponseSchema"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/acts/parseforge~stockanalysis-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-stockanalysis-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "tickers": {
                        "title": "Stock Tickers",
                        "type": "array",
                        "description": "Specific stock symbols to look up (e.g. AAPL, MSFT, TSLA). Leave empty to use screener mode.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxItems": {
                        "title": "Max Items",
                        "minimum": 1,
                        "maximum": 1000000,
                        "type": "integer",
                        "description": "Free users: Limited to 10 items (preview). Paid users: Optional, max 1,000,000."
                    },
                    "screener": {
                        "title": "Use Screener Mode",
                        "type": "boolean",
                        "description": "Enable screener mode to browse all stocks with optional filters. When enabled, the tickers field is ignored.",
                        "default": false
                    },
                    "sector": {
                        "title": "Sector",
                        "enum": [
                            "basic-materials",
                            "communication-services",
                            "consumer-cyclical",
                            "consumer-defensive",
                            "energy",
                            "financial-services",
                            "healthcare",
                            "industrials",
                            "real-estate",
                            "technology",
                            "utilities"
                        ],
                        "type": "string",
                        "description": "Filter stocks by sector."
                    },
                    "marketCapMin": {
                        "title": "Market Cap Min (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Minimum market capitalization in USD (e.g. 1000000000 for $1B)."
                    },
                    "marketCapMax": {
                        "title": "Market Cap Max (USD)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum market capitalization in USD (e.g. 10000000000 for $10B)."
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
