# Options Flow & Unusual Activity (`datara/unusual-options-activity`) Actor

Scrape real-time unusual options activity, full chains, and intraday flow from Barchart. Filter by Vol/OI ratio, premium, and option type. Returns clean JSON — ready for Python, spreadsheets, or trading alerts. $1.50/run flat.

- **URL**: https://apify.com/datara/unusual-options-activity.md
- **Developed by:** [Datara](https://apify.com/datara) (community)
- **Categories:** Developer tools
- **Stats:** 23 total users, 4 monthly users, 100.0% runs succeeded, 2 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.50 / run complete

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 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

## Unusual Options Activity Scraper — Barchart

Scrape real-time unusual options activity, full options chains, and intraday flow data from Barchart. Identify smart money moves, sweep orders, and high-conviction signals by filtering contracts where today's volume dramatically exceeds open interest.

---

### What This Actor Does

This actor connects to Barchart's internal data API to extract structured options data across three modes:

- **Unusual Activity** — market-wide scan returning contracts where volume/OI ratio signals unusual positioning. Covers stocks, ETFs, and indices.
- **Options Chain** — full contract-level chain for one or more specific tickers, with optional expiry filtering.
- **Ticker Flow** — intraday order flow for specific tickers, including trade condition classification (ISO, electronic, floor, etc.).

Results are returned as clean, structured JSON — ready for downstream use in spreadsheets, Python, trading dashboards, or automated alert systems.

---

### Pricing

**$1.50 flat per run.** No per-record charges.

- You are only charged if the actor successfully delivers results.
- If the run fails or your filters return zero records, no charge is made.
- A single run in `unusual-activity` mode typically returns 800–1,200 records covering all meaningful signals across stocks, ETFs, and indices.

---

### Input Parameters

| Parameter | Type | Default | Description |
|---|---|---|---|
| `mode` | string | `unusual-activity` | What data to fetch. See modes below. |
| `underlyingType` | string | `all` | Asset class filter: `all`, `stocks`, `etfs`, or `indices`. |
| `tickers` | array | `[]` | Required for `options-chain` and `ticker-flow` modes. E.g. `["AAPL", "NVDA", "SPY"]`. |
| `optionType` | string | `all` | Filter to `call`, `put`, or `all`. |
| `minVolumeOIRatio` | number | `1.5` | Minimum Vol/OI ratio. Higher = stronger unusual signal. Not applied to `ticker-flow`. |
| `minVolume` | number | `1` | Minimum contract volume. Filters out zero-volume noise. |
| `minPremium` | number | `10000` | Minimum total premium in USD. Applied to `unusual-activity` and `options-chain`. Not applied to `ticker-flow`. |
| `expirationDate` | string | `null` | For `options-chain` mode only. Format: `YYYY-MM-DD`. |
| `maxResults` | integer | `1000` | Maximum records returned. Results are ordered by Vol/OI ratio desc — lower values return only the strongest signals. Max: 5,000. |

---

### Output Schema

Every run begins with a `run-summary` record, followed by contract records.

#### Run Summary

```json
{
  "type": "run-summary",
  "mode": "unusual-activity",
  "underlyingType": "all",
  "totalAvailable": 1143,
  "totalReturned": 1000,
  "truncated": true,
  "maxResults": 1000,
  "filtersApplied": {
    "optionType": "all",
    "minVolumeOIRatio": 1.5,
    "minPremium": 10000
  },
  "note": "Only top 1000 signals returned (ordered by Vol/OI ratio desc). Raise maxResults to get more.",
  "fetchedAt": "2026-03-10T09:15:00.000Z"
}
````

To filter out the summary record in downstream processing:

```python
## Python
records = [r for r in dataset if r.get('type') != 'run-summary']
```

```javascript
// JavaScript
const records = dataset.filter(r => r.type !== 'run-summary');
```

#### Contract Records — `unusual-activity` and `options-chain`

```json
{
  "recordId": "b0534h",
  "ticker": "TSLA",
  "contractName": null,
  "type": "put",
  "strike": 490,
  "expiration": "2026-03-20",
  "daysToExpiry": 9,
  "lastPrice": 82.51,
  "bid": 81.70,
  "ask": 82.75,
  "volume": 21710,
  "openInterest": 157,
  "volumeOIRatio": 138.2803,
  "impliedVolatility": 0.6318,
  "weightedIV": 0.43278096333567,
  "delta": -0.967937,
  "moneyness": 0.20151047,
  "premium": 179129210,
  "underlyingPrice": 407.82,
  "sentiment": "bullish",
  "tradeTime": "2026-03-11T19:42:45.000Z",
  "retrievedAt": "2026-03-12T02:23:06.436Z",
  "source": "barchart-unusual-activity"
}
```

**Field notes:**

- `contractName` — the full Barchart symbol (e.g. `TSLA|20260320|490.00P`). This is `null` for `unusual-activity` records because Barchart does not return it on the unusual activity endpoint. It is present on `options-chain` and `ticker-flow` records.
- `volumeOIRatio` — rounded to 4 decimal places. Values below `0.01` would have shown as `0.00` at 2dp, which is why 4dp precision is used.
- `sentiment` — derived from where `lastPrice` falls relative to the bid/ask spread: above ask = `"bullish"` (aggressive buyer), below bid = `"bearish"` (aggressive seller), between = `"neutral"` or `"bullish"`/`"bearish"` based on which side of mid. Returns `"neutral"` when volume is zero.
- `premium` — total dollar value of the trade: `lastPrice × volume × 100`.
- `impliedVolatility` — expressed as a decimal (e.g. `0.63` = 63% IV). Note: the flow endpoint occasionally returns `0` for illiquid or end-of-day prints; treat `impliedVolatility: 0` as effectively null.

#### Contract Records — `ticker-flow`

The flow endpoint returns a different field set. Key differences from the above:

```json
{
  "recordId": "u18m8z",
  "ticker": "AAPL",
  "contractName": "AAPL|20260320|290.00P",
  "type": "put",
  "strike": 290,
  "expiration": "2026-03-20",
  "daysToExpiry": null,
  "optionPrice": 29.95,
  "bid": 28.65,
  "ask": 31.25,
  "underlyingPrice": 259.9983,
  "volume": 1025,
  "openInterest": 135,
  "impliedVolatility": 34.064816047188,
  "premium": 3069875,
  "tradeCondition": "electronic",
  "sentiment": null,
  "tradeTime": "2026-03-11T18:24:33.000Z",
  "retrievedAt": "2026-03-12T02:11:12.715Z",
  "source": "barchart-ticker-flow"
}
```

**Differences from unusual-activity/options-chain:**

- `optionPrice` replaces `lastPrice` — the flow endpoint does not return a separate option last-trade price, so `optionPrice` is the bid/ask midpoint, which is the best available proxy.
- `underlyingPrice` — the underlying stock's last price at the time of the trade. This field is also present on `unusual-activity` and `options-chain` records.
- `lastPrice`, `volumeOIRatio`, `weightedIV`, `delta`, `moneyness` — not present on flow records.
- `daysToExpiry` — always `null` on flow records (not returned by the flow endpoint).
- `tradeCondition` — OPRA condition code for the print. Possible values: `"iso"` (intermarket sweep), `"electronic"`, `"market-maker"`, `"floor"`, `"cancel"`, `"auto-exec"`, `"spread"`, `"cross"`, `"quote"`.
- `sentiment` — always `null` on flow records. Because `optionPrice` is derived from the bid/ask mid, it is impossible to determine whether the trade was buyer- or seller-initiated.

***

### Record Identity and Deduplication

Every record has a `recordId` — a deterministic 6-character hash used to identify unique records across runs.

**How recordId is computed:**

| Mode | Key fields hashed |
|---|---|
| `unusual-activity` | `ticker \| type \| strike \| expiration \| tradeTime` |
| `ticker-flow` | `ticker \| type \| strike \| expiration \| tradeTime` |
| `options-chain` | `ticker \| type \| strike \| expiration` |

`tradeTime` is included for trade-level modes so that two separate fills on the same contract at different times produce different `recordId` values. It is omitted for `options-chain` because the chain is a snapshot — the contract itself is the stable identity regardless of when it was fetched. This means `options-chain` `recordId` values are fully stable across runs.

**Each run returns a full snapshot**, not incremental data. To merge two runs and remove duplicates:

```python
import json

run1 = [r for r in dataset1 if r.get('type') != 'run-summary']
run2 = [r for r in dataset2 if r.get('type') != 'run-summary']

seen = set()
merged = []
for record in run1 + run2:
    if record['recordId'] not in seen:
        seen.add(record['recordId'])
        merged.append(record)

print(f"{len(merged)} unique records")
```

New trades on the same contract will have a different `tradeTime` and therefore a different `recordId` — so you won't lose genuinely new activity by deduplicating.

***

### Modes In Detail

#### `unusual-activity` (default)

Scans the full market for contracts where today's volume is unusually high relative to existing open interest. This is the primary signal used by options flow traders to identify institutional positioning, sweep orders, and potential directional bets.

Results are ordered by Vol/OI ratio descending — strongest signals first.

**When to use:** Daily market scans, alert systems, screening for high-conviction setups.

**Recommended schedule:** Run once or twice per trading day — pre-market and mid-afternoon EST capture the most actionable signals.

```json
{
  "mode": "unusual-activity",
  "underlyingType": "stocks",
  "optionType": "call",
  "minVolumeOIRatio": 5,
  "minPremium": 50000
}
```

***

#### `options-chain`

Returns the full options chain for one or more tickers. Useful for building a complete picture of positioning across all strikes and expiries for a specific stock. Results are ordered by strike price ascending.

```json
{
  "mode": "options-chain",
  "tickers": ["AAPL", "NVDA"],
  "expirationDate": "2026-04-17"
}
```

***

#### `ticker-flow`

Returns intraday order flow for specific tickers — individual trades rather than aggregated contract snapshots. Includes trade condition classification via OPRA codes.

Note: `minVolumeOIRatio` and `minPremium` filters are not applied in this mode. Use `optionType` to filter to calls or puts.

```json
{
  "mode": "ticker-flow",
  "tickers": ["SPY", "QQQ"],
  "optionType": "call"
}
```

***

### Scheduling Recommendations

| Use Case | Schedule | Mode |
|---|---|---|
| Daily morning scan | 9:45 AM EST (market open + 15 min) | `unusual-activity` |
| Intraday refresh | 2:00 PM EST | `unusual-activity` |
| EOD full capture | 4:15 PM EST | `unusual-activity` |
| Ticker monitoring | Every 30 min during market hours | `ticker-flow` |

***

### Cost Examples

| Run Type | Typical Records | Cost |
|---|---|---|
| Full market scan (all types) | ~1,000 | $1.50 |
| Stocks only | ~600 | $1.50 |
| Options chain, 5 tickers | ~500 | $1.50 |
| Twice daily, full scan | ~2,000/day | $3.00/day (~$90/month) |
| Once daily, full scan | ~1,000/day | $1.50/day (~$45/month) |

For comparison, Unusual Whales charges $50/month for dashboard access. This actor gives you raw structured data you can plug directly into your own systems, scripts, and alerts.

***

### Alternatives Compared

| Service | Price | Data Access | Automation |
|---|---|---|---|
| Unusual Whales | $50/month | Dashboard only | No |
| Market Chameleon | $40/month | Dashboard only | No |
| Cheddar Flow | $49/month | Dashboard only | No |
| **This Actor** | **$1.50/run** | **Raw JSON** | **Full API** |

***

### Legal & Data Usage

This actor accesses publicly available data from Barchart.com. Users are responsible for ensuring their use of the data complies with Barchart's terms of service and any applicable financial data regulations in their jurisdiction. This actor is not affiliated with or endorsed by Barchart.

***

### Support

If you encounter issues or have feature requests, please use the **Issues** tab on this actor's Apify Store page. Include your run ID and a description of the problem.

# Actor input Schema

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

What data to fetch. unusual-activity scans the whole market for high Vol/OI signals. options-chain fetches all contracts for specific tickers. ticker-flow fetches intraday order flow for specific tickers.

## `underlyingType` (type: `string`):

Filter by asset class. 'All' fetches stocks, ETFs, and indices in one run.

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

Required for options-chain and ticker-flow modes. Enter one or more stock symbols e.g. AAPL, NVDA, SPY.

## `optionType` (type: `string`):

Filter results to calls only, puts only, or both.

## `minVolumeOIRatio` (type: `number`):

Unusual-activity mode only. Only return contracts where today's volume is at least this multiple of open interest. Higher = stronger unusual signal. Barchart's own filter starts at 1.24. Default 1.5 returns cleaner signals.

## `minPremium` (type: `integer`):

Unusual-activity and options-chain modes. Only return contracts where total premium (lastPrice × volume × 100) is at least this value. Filters out low-dollar noise. Default $10,000.

## `minVolume` (type: `integer`):

Options-chain mode only. Only return contracts where today's volume is at least this value. Filters out zero-volume strikes with no trading activity. Default 1 returns only contracts traded today. Set to 0 to include all strikes including untouched ones.

## `expirationDate` (type: `string`):

Filter options chain to a specific expiry. Format: YYYY-MM-DD. Leave blank to return all expiries.

## `maxResults` (type: `integer`):

Maximum records returned across all asset types. Default 1,000 covers all meaningful unusual activity — the tail beyond this is very low Vol/OI ratio noise. Raise to 5,000 if you need the full long tail. Results are ordered by Vol/OI ratio descending, so a lower maxResults gives you the strongest signals only.

## Actor input object example

```json
{
  "mode": "unusual-activity",
  "underlyingType": "all",
  "tickers": [],
  "optionType": "all",
  "minVolumeOIRatio": 1.5,
  "minPremium": 10000,
  "minVolume": 1,
  "maxResults": 1000
}
```

# 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("datara/unusual-options-activity").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("datara/unusual-options-activity").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 '{}' |
apify call datara/unusual-options-activity --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Options Flow & Unusual Activity",
        "description": "Scrape real-time unusual options activity, full chains, and intraday flow from Barchart. Filter by Vol/OI ratio, premium, and option type. Returns clean JSON — ready for Python, spreadsheets, or trading alerts. $1.50/run flat.",
        "version": "0.0",
        "x-build-id": "0G4QUg1SjIEuetSRD"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/datara~unusual-options-activity/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-datara-unusual-options-activity",
                "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/datara~unusual-options-activity/runs": {
            "post": {
                "operationId": "runs-sync-datara-unusual-options-activity",
                "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/datara~unusual-options-activity/run-sync": {
            "post": {
                "operationId": "run-sync-datara-unusual-options-activity",
                "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": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "unusual-activity",
                            "options-chain",
                            "ticker-flow"
                        ],
                        "type": "string",
                        "description": "What data to fetch. unusual-activity scans the whole market for high Vol/OI signals. options-chain fetches all contracts for specific tickers. ticker-flow fetches intraday order flow for specific tickers.",
                        "default": "unusual-activity"
                    },
                    "underlyingType": {
                        "title": "Underlying Asset Type",
                        "enum": [
                            "all",
                            "stocks",
                            "etfs",
                            "indices"
                        ],
                        "type": "string",
                        "description": "Filter by asset class. 'All' fetches stocks, ETFs, and indices in one run.",
                        "default": "all"
                    },
                    "tickers": {
                        "title": "Tickers",
                        "type": "array",
                        "description": "Required for options-chain and ticker-flow modes. Enter one or more stock symbols e.g. AAPL, NVDA, SPY.",
                        "items": {
                            "type": "string"
                        },
                        "default": []
                    },
                    "optionType": {
                        "title": "Option Type",
                        "enum": [
                            "all",
                            "call",
                            "put"
                        ],
                        "type": "string",
                        "description": "Filter results to calls only, puts only, or both.",
                        "default": "all"
                    },
                    "minVolumeOIRatio": {
                        "title": "Minimum Volume / Open Interest Ratio",
                        "minimum": 0,
                        "type": "number",
                        "description": "Unusual-activity mode only. Only return contracts where today's volume is at least this multiple of open interest. Higher = stronger unusual signal. Barchart's own filter starts at 1.24. Default 1.5 returns cleaner signals.",
                        "default": 1.5
                    },
                    "minPremium": {
                        "title": "Minimum Total Premium ($)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Unusual-activity and options-chain modes. Only return contracts where total premium (lastPrice × volume × 100) is at least this value. Filters out low-dollar noise. Default $10,000.",
                        "default": 10000
                    },
                    "minVolume": {
                        "title": "Minimum Volume (options-chain mode only)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Options-chain mode only. Only return contracts where today's volume is at least this value. Filters out zero-volume strikes with no trading activity. Default 1 returns only contracts traded today. Set to 0 to include all strikes including untouched ones.",
                        "default": 1
                    },
                    "expirationDate": {
                        "title": "Expiration Date (options-chain mode only)",
                        "type": "string",
                        "description": "Filter options chain to a specific expiry. Format: YYYY-MM-DD. Leave blank to return all expiries."
                    },
                    "maxResults": {
                        "title": "Max Results (advanced)",
                        "minimum": 1,
                        "maximum": 5000,
                        "type": "integer",
                        "description": "Maximum records returned across all asset types. Default 1,000 covers all meaningful unusual activity — the tail beyond this is very low Vol/OI ratio noise. Raise to 5,000 if you need the full long tail. Results are ordered by Vol/OI ratio descending, so a lower maxResults gives you the strongest signals only.",
                        "default": 1000
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
