# Yahoo Finance Scraper - Stocks, Crypto, Quotes & History (`solidscrape/yahoo-finance-scraper`) Actor

Scrape Yahoo Finance reliably: real-time stock & crypto quotes, historical OHLCV, fundamentals, and symbol search. Solves the 429 rate-limiting that breaks free yfinance. No API key. Export JSON/CSV/Excel.

- **URL**: https://apify.com/solidscrape/yahoo-finance-scraper.md
- **Developed by:** [Shahryar](https://apify.com/solidscrape) (community)
- **Categories:** Business
- **Stats:** 2 total users, 1 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. You are not charged for the Apify platform usage, but only a fixed price for specific events.

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.

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

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

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

## Yahoo Finance Scraper – Stocks, Crypto, Quotes & History (No API Key)

Scrape **Yahoo Finance** market data reliably: **real-time quotes** for stocks, crypto, FX, ETFs and indices; **historical OHLCV** price history; **fundamentals** (company profile, financials, key statistics); and **ticker search** — all via Yahoo's public JSON endpoints. No API key, no login. Export to JSON, CSV, or Excel.

Built for **stock & crypto market research, portfolio tracking, backtesting datasets, and financial dashboards**.

### Why this scraper

The free `yfinance` library and naive scripts keep breaking with **HTTP 429 (Too Many Requests)** and **"Invalid Cookie / Invalid Crumb"** errors, because Yahoo now gates its quote and fundamentals endpoints behind a **session cookie + crumb handshake** and rate-limits by IP. This Actor implements that handshake the way `yfinance` does it internally — fetch a session cookie, obtain a fresh crumb, reuse both — and adds **automatic crumb refresh on 401, exponential back-off on 429, IP rotation via Apify Proxy, and request pacing**. That is the edge: it keeps pulling data when free tools get blocked.

### What it does

- 📈 **Real-time quotes** – price, change, % change, market cap, volume, day high/low, 52-week range, P/E, dividend yield, and more. **Batched** (many symbols per request).
- 🕯️ **Historical OHLCV** – open, high, low, close, adjusted close, and volume per bar, from 1-minute intraday up to monthly, over ranges up to `max`.
- 🏢 **Fundamentals** – company profile (sector, industry, website, employees), key statistics, summary detail, and financial data via Yahoo's `quoteSummary` modules.
- 🔎 **Symbol search** – look up tickers by company/asset name.
- 🪙 **Any asset class** – stocks, crypto (`BTC-USD`), FX (`EURUSD=X`), indices (`^GSPC`), ETFs (`SPY`).
- 🛡️ **Reliable** – cookie+crumb handshake, refresh on Invalid Crumb, 429 back-off, proxy rotation, graceful skipping of delisted/invalid tickers.

### Example input

```json
{
  "dataType": "quote",
  "symbols": ["AAPL", "MSFT", "BTC-USD", "EURUSD=X"],
  "proxyConfiguration": { "useApifyProxy": true }
}
````

Historical:

```json
{
  "dataType": "historical",
  "symbols": ["AAPL", "TSLA"],
  "interval": "1d",
  "range": "6mo",
  "proxyConfiguration": { "useApifyProxy": true }
}
```

Fundamentals:

```json
{
  "dataType": "fundamentals",
  "symbols": ["AAPL"],
  "modules": ["assetProfile", "summaryDetail", "financialData", "defaultKeyStatistics"]
}
```

Search:

```json
{
  "dataType": "search",
  "searchQuery": "apple"
}
```

### Example output

**Quote** (`type: "quote"`)

```json
{
  "type": "quote",
  "symbol": "AAPL",
  "name": "Apple Inc.",
  "quoteType": "EQUITY",
  "exchange": "NasdaqGS",
  "currency": "USD",
  "price": 283.78,
  "change": 2.41,
  "changePercent": 0.857,
  "previousClose": 281.37,
  "dayHigh": 285.95,
  "dayLow": 274.21,
  "volume": 261244321,
  "marketCap": 4200000000000,
  "fiftyTwoWeekHigh": 317.4,
  "fiftyTwoWeekLow": 199.26,
  "trailingPE": 31.2,
  "marketState": "REGULAR",
  "scrapedAt": "2026-06-26T15:00:00.000Z"
}
```

**Historical bar** (`type: "bar"`)

```json
{
  "type": "bar",
  "symbol": "AAPL",
  "date": "2026-06-25T13:30:00.000Z",
  "timestamp": 1782480600,
  "open": 281.10,
  "high": 285.95,
  "low": 274.21,
  "close": 283.78,
  "adjClose": 283.78,
  "volume": 261244321,
  "currency": "USD"
}
```

**Fundamentals** (`type: "fundamentals"`)

```json
{
  "type": "fundamentals",
  "symbol": "AAPL",
  "name": "Apple Inc.",
  "sector": "Technology",
  "industry": "Consumer Electronics",
  "website": "https://www.apple.com",
  "country": "United States",
  "employees": 164000,
  "marketCap": 4200000000000,
  "currency": "USD",
  "trailingPE": 31.2,
  "dividendYield": 0.0045,
  "revenue": 400000000000,
  "recommendationKey": "buy",
  "targetMeanPrice": 305.0,
  "modules": ["assetProfile", "summaryDetail", "price", "defaultKeyStatistics", "financialData"],
  "summaryDetail": { "trailingPE": 31.2, "marketCap": 4200000000000 },
  "scrapedAt": "2026-06-26T15:00:00.000Z"
}
```

**Search result** (`type: "searchResult"`)

```json
{
  "type": "searchResult",
  "symbol": "AAPL",
  "name": "Apple Inc.",
  "exchange": "NASDAQ",
  "assetType": "Equity",
  "sector": "Technology",
  "industry": "Consumer Electronics",
  "query": "apple",
  "scrapedAt": "2026-06-26T15:00:00.000Z"
}
```

### Output fields

Every item carries a `type` discriminator so you can split the dataset by output kind.

**Quote** (`type: "quote"`)

| Field | Description |
|---|---|
| `symbol` | Ticker symbol |
| `name` | Company / asset name |
| `quoteType` | EQUITY, CRYPTOCURRENCY, CURRENCY, INDEX, ETF, … |
| `exchange` | Exchange name |
| `currency` | Quote currency |
| `price` | Current/last regular-market price |
| `change` | Absolute price change |
| `changePercent` | Percent price change |
| `previousClose` | Previous close |
| `open` | Regular-market open |
| `dayHigh` / `dayLow` | Intraday high / low |
| `volume` | Regular-market volume |
| `marketCap` | Market capitalization |
| `fiftyTwoWeekHigh` / `fiftyTwoWeekLow` | 52-week high / low |
| `trailingPE` / `forwardPE` | Price/earnings ratios |
| `epsTrailingTwelveMonths` | Trailing EPS |
| `dividendYield` | Dividend yield |
| `bid` / `ask` | Bid / ask |
| `preMarketPrice` / `postMarketPrice` | Extended-hours prices (when available) |
| `marketState` | PRE, REGULAR, POST, CLOSED |
| `regularMarketTime` | Quote timestamp (ISO 8601) |
| `scrapedAt` | Scrape timestamp (ISO 8601) |

**Historical bar** (`type: "bar"`)

| Field | Description |
|---|---|
| `symbol` | Ticker symbol |
| `date` | Bar timestamp (ISO 8601) |
| `timestamp` | Unix epoch seconds |
| `open` / `high` / `low` / `close` | OHLC prices |
| `adjClose` | Split/dividend-adjusted close |
| `volume` | Bar volume |
| `currency` | Quote currency |

**Fundamentals** (`type: "fundamentals"`)

| Field | Description |
|---|---|
| `symbol` | Ticker symbol |
| `name` | Company name |
| `sector` / `industry` | Classification |
| `website` / `country` / `employees` | Profile basics |
| `marketCap` / `currency` | Valuation |
| `trailingPE` / `forwardPE` / `beta` | Key statistics |
| `dividendYield` / `profitMargins` | Ratios |
| `revenue` / `revenueGrowth` | Financials |
| `recommendationKey` / `targetMeanPrice` | Analyst signals |
| `modules` | Modules requested (array) |
| `<moduleName>` | Each requested module, flattened (e.g. `summaryDetail`, `financialData`) |
| `scrapedAt` | Scrape timestamp (ISO 8601) |

**Search result** (`type: "searchResult"`)

| Field | Description |
|---|---|
| `symbol` | Ticker symbol |
| `name` | Company / asset name |
| `exchange` | Exchange (display) |
| `assetType` | Equity, Cryptocurrency, ETF, … |
| `sector` / `industry` | Classification (when available) |
| `score` | Yahoo relevance score |
| `query` | The search query used |

### Input reference

| Field | Type | Description |
|---|---|---|
| `dataType` | string | `quote`, `historical`, `fundamentals`, or `search` (default `quote`). |
| `symbols` | array | Tickers to fetch (quote / historical / fundamentals). |
| `searchQuery` | string | Name to look up (only for `search`). |
| `interval` | string | Bar size for `historical` (`1m`…`3mo`, default `1d`). |
| `range` | string | History range for `historical` (`1d`…`max`, default `1mo`). |
| `modules` | array | quoteSummary modules for `fundamentals`. |
| `requestDelayMs` | integer | Delay between requests in ms (default `600`). |
| `proxyConfiguration` | object | Apify Proxy settings (residential recommended at volume). |

### Common use cases

- **Portfolio & watchlist tracking** – batch quotes for a list of holdings.
- **Backtesting & quant research** – pull historical OHLCV for many symbols.
- **Fundamental screening** – sector, P/E, margins, revenue, analyst targets.
- **Crypto & FX monitoring** – `BTC-USD`, `ETH-USD`, `EURUSD=X`, etc.
- **Dashboards & alerts** – schedule runs and feed a spreadsheet or BI tool.

### Notes & limits

- **Rate limiting:** Yahoo throttles by IP (HTTP 429). This Actor paces requests, backs off, rotates proxy IPs, and refreshes the crumb on 401. For large symbol lists, use **residential proxies** and/or increase `requestDelayMs`.
- **Intraday history:** intervals below `1d` (e.g. `1m`, `5m`) are only available for short ranges (typically ≤ 60 days) per Yahoo's own limits.
- **Crumb flow changes:** Yahoo occasionally changes the cookie/crumb handshake (cookie host, EU consent gate, crumb location). The Actor has a fallback consent flow, but if quotes/fundamentals suddenly fail with 401, the handshake is the first thing to revisit.
- **Unofficial source:** these are Yahoo's public web endpoints, not a supported/commercial API. Data is provided as-is; respect Yahoo's terms and use responsibly.
- **Delisted / invalid tickers** are skipped and logged rather than crashing the run.

### FAQ

**Do I need a Yahoo / API key?** No. The Actor uses Yahoo's public JSON endpoints and handles the cookie+crumb session for you.

**Why does free yfinance keep getting 429 / Invalid Crumb?** Yahoo rate-limits by IP and rotates the crumb. This Actor refreshes the crumb on 401, backs off on 429, and rotates IPs via Apify Proxy.

**Which symbols are supported?** Anything Yahoo Finance lists: stocks (`AAPL`), crypto (`BTC-USD`), FX (`EURUSD=X`), indices (`^GSPC`), ETFs (`SPY`).

**Can I get many symbols at once?** Yes — `quote` batches up to ~50 symbols per request. Historical and fundamentals are one request per symbol.

**Is the data real-time?** Quotes are Yahoo's regular-market values, which for many exchanges are delayed (commonly ~15 min). Crypto and FX are effectively live.

# Actor input Schema

## `dataType` (type: `string`):

What to fetch from Yahoo Finance: real-time quotes, historical OHLCV bars, fundamentals/profile, or a symbol search.

## `symbols` (type: `array`):

Ticker symbols to fetch. Stocks (AAPL, MSFT), crypto (BTC-USD, ETH-USD), FX (EURUSD=X), indices (^GSPC), ETFs (SPY). Used by quote, historical, and fundamentals.

## `searchQuery` (type: `string`):

Only for dataType = search. A company or asset name to look up, e.g. "apple", "bitcoin", "vanguard s\&p 500". Returns matching tickers.

## `interval` (type: `string`):

Bar size for historical data. Intraday intervals (1m–90m) are only available for short ranges (typically ≤ 60 days).

## `range` (type: `string`):

How far back to fetch historical data. Use 'max' for full available history (daily and longer intervals only).

## `modules` (type: `array`):

Only for dataType = fundamentals. Which quoteSummary modules to fetch. Leave empty for a sensible default (assetProfile, summaryDetail, price, defaultKeyStatistics, financialData).

## `requestDelayMs` (type: `integer`):

Pause between consecutive Yahoo calls to avoid 429 rate-limiting. Increase if you hit rate limits on large symbol lists.

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

Yahoo rate-limits (HTTP 429) aggressively by IP. Apify Proxy is enabled by default; residential proxies are recommended for large jobs.

## Actor input object example

```json
{
  "dataType": "quote",
  "symbols": [
    "AAPL",
    "BTC-USD",
    "EURUSD=X",
    "^GSPC"
  ],
  "searchQuery": "apple",
  "interval": "1d",
  "range": "1mo",
  "modules": [
    "assetProfile",
    "financialData",
    "earnings",
    "recommendationTrend"
  ],
  "requestDelayMs": 600,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# Actor output Schema

## `quotes` (type: `string`):

No description

## `historical` (type: `string`):

No description

## `fundamentals` (type: `string`):

No description

## `search` (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 = {
    "symbols": [
        "AAPL",
        "MSFT",
        "BTC-USD"
    ],
    "modules": [
        "assetProfile",
        "summaryDetail",
        "price",
        "defaultKeyStatistics",
        "financialData"
    ],
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("solidscrape/yahoo-finance-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 = {
    "symbols": [
        "AAPL",
        "MSFT",
        "BTC-USD",
    ],
    "modules": [
        "assetProfile",
        "summaryDetail",
        "price",
        "defaultKeyStatistics",
        "financialData",
    ],
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("solidscrape/yahoo-finance-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 '{
  "symbols": [
    "AAPL",
    "MSFT",
    "BTC-USD"
  ],
  "modules": [
    "assetProfile",
    "summaryDetail",
    "price",
    "defaultKeyStatistics",
    "financialData"
  ],
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call solidscrape/yahoo-finance-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Yahoo Finance Scraper - Stocks, Crypto, Quotes & History",
        "description": "Scrape Yahoo Finance reliably: real-time stock & crypto quotes, historical OHLCV, fundamentals, and symbol search. Solves the 429 rate-limiting that breaks free yfinance. No API key. Export JSON/CSV/Excel.",
        "version": "0.1",
        "x-build-id": "COjcUWYBmTJizVcgS"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/solidscrape~yahoo-finance-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-solidscrape-yahoo-finance-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/solidscrape~yahoo-finance-scraper/runs": {
            "post": {
                "operationId": "runs-sync-solidscrape-yahoo-finance-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/solidscrape~yahoo-finance-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-solidscrape-yahoo-finance-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": {
                    "dataType": {
                        "title": "Data type",
                        "enum": [
                            "quote",
                            "historical",
                            "fundamentals",
                            "search"
                        ],
                        "type": "string",
                        "description": "What to fetch from Yahoo Finance: real-time quotes, historical OHLCV bars, fundamentals/profile, or a symbol search.",
                        "default": "quote"
                    },
                    "symbols": {
                        "title": "Symbols (tickers)",
                        "type": "array",
                        "description": "Ticker symbols to fetch. Stocks (AAPL, MSFT), crypto (BTC-USD, ETH-USD), FX (EURUSD=X), indices (^GSPC), ETFs (SPY). Used by quote, historical, and fundamentals.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "searchQuery": {
                        "title": "Search query",
                        "type": "string",
                        "description": "Only for dataType = search. A company or asset name to look up, e.g. \"apple\", \"bitcoin\", \"vanguard s&p 500\". Returns matching tickers."
                    },
                    "interval": {
                        "title": "Interval (historical)",
                        "enum": [
                            "1m",
                            "2m",
                            "5m",
                            "15m",
                            "30m",
                            "60m",
                            "90m",
                            "1h",
                            "1d",
                            "5d",
                            "1wk",
                            "1mo",
                            "3mo"
                        ],
                        "type": "string",
                        "description": "Bar size for historical data. Intraday intervals (1m–90m) are only available for short ranges (typically ≤ 60 days).",
                        "default": "1d"
                    },
                    "range": {
                        "title": "Range (historical)",
                        "enum": [
                            "1d",
                            "5d",
                            "1mo",
                            "3mo",
                            "6mo",
                            "1y",
                            "2y",
                            "5y",
                            "10y",
                            "ytd",
                            "max"
                        ],
                        "type": "string",
                        "description": "How far back to fetch historical data. Use 'max' for full available history (daily and longer intervals only).",
                        "default": "1mo"
                    },
                    "modules": {
                        "title": "Fundamentals modules",
                        "type": "array",
                        "description": "Only for dataType = fundamentals. Which quoteSummary modules to fetch. Leave empty for a sensible default (assetProfile, summaryDetail, price, defaultKeyStatistics, financialData).",
                        "items": {
                            "type": "string"
                        }
                    },
                    "requestDelayMs": {
                        "title": "Delay between requests (ms)",
                        "minimum": 0,
                        "maximum": 10000,
                        "type": "integer",
                        "description": "Pause between consecutive Yahoo calls to avoid 429 rate-limiting. Increase if you hit rate limits on large symbol lists.",
                        "default": 600
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Yahoo rate-limits (HTTP 429) aggressively by IP. Apify Proxy is enabled by default; residential proxies are recommended for large jobs.",
                        "default": {
                            "useApifyProxy": true
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
