# Techmeme Scraper | Tech News Headlines (`parseforge/techmeme-scraper`) Actor

Scrape tech news from Techmeme including headlines, source links, summaries, related coverage, timestamps and discussion links. Build curated technology news datasets for trend monitoring, media analysis and content aggregation projects at scale across the full catalog

- **URL**: https://apify.com/parseforge/techmeme-scraper.md
- **Developed by:** [ParseForge](https://apify.com/parseforge) (community)
- **Categories:** News, Developer tools, Other
- **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)

## 📰 Techmeme Scraper

> 🚀 **Export Techmeme tech news stories to CSV, JSON, or Excel in seconds.** No API key, no login, no code required.

> 🕒 **Last updated:** 2026-05-22 · **📊 10 fields** per record · **20+ stories per run** · **Global tech coverage**

Techmeme is the definitive aggregator of tech news - curated by editors and algorithms from hundreds of sources including WSJ, CNBC, Bloomberg, Ars Technica, and The Verge. This actor scrapes the latest tech news stories directly from the Techmeme homepage in real-time, giving you clean structured data including headlines, source publications, summaries, related coverage clusters, and publication dates. No account or API access required.

The data is extracted directly from Techmeme's server-rendered HTML, ensuring accurate, up-to-the-minute coverage of what the tech world is talking about.

**Coverage:** AI, cloud computing, big tech, startups, cybersecurity, policy, earnings reports, product launches, layoffs, acquisitions - everything Techmeme's editors curate from 200+ tech publications worldwide.

### Target Audience / Use Cases

| Who | What they build |
|-----|----------------|
| Journalists / researchers | Daily tech news monitoring pipelines |
| Investors | Real-time market signal extraction from tech press |
| AI / ML teams | Training data for news summarization and classification |
| Media analysts | Source and coverage trend analysis |
| Product managers | Competitive intelligence feeds |
| Newsletter creators | Automated content curation and briefings |

### 📋 What the Techmeme Scraper does

- Fetches the live Techmeme homepage (updated continuously throughout the day)
- Extracts every curated story cluster: headline, source publication, summary excerpt
- Captures the full related-coverage cluster for each story (multiple publications covering the same event)
- Records the publication date of each story
- Collects thumbnail images where available
- Exports to CSV, Excel, JSON, or XML with one click
- Works without login or API key

> 💡 **Why it matters:** Techmeme aggregates thousands of tech articles daily down to ~20 curated story clusters - the signal in a sea of noise. Automating this feed gives you a structured, machine-readable version of the most important tech stories of the day, with source metadata and full related-coverage context that no other single feed provides.

### 🎬 Full Demo

🚧 Coming soon

### ⚙️ Input

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `maxItems` | integer | No | Max stories to collect. Free users limited to 10. Default: 10 |

**Example 1 - Quick preview (free users):**
```json
{
  "maxItems": 10
}
````

**Example 2 - Full day's stories (paid users):**

```json
{
  "maxItems": 100
}
```

> ⚠️ **Good to Know:** Free users are limited to 10 stories per run. [Create a free account w/ $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp) to unlock up to 1,000,000 stories per run.

### 📊 Output

Each story record contains the following fields:

| Field | Type | Description |
|-------|------|-------------|
| 🖼 `imageUrl` | string | Thumbnail image URL for the story (null if not available) |
| 📰 `title` | string | Full headline text of the story |
| 🔗 `url` | string | Direct link to the primary source article |
| 🌐 `source` | string | Homepage URL of the primary publication |
| 📰 `sourceName` | string | Name of the primary publication (e.g. "Wall Street Journal") |
| 📝 `summary` | string | Brief excerpt or summary from the Techmeme cluster |
| 🔗 `relatedLinks` | array | Related coverage: array of {title, url, source} objects |
| 📅 `publishedAt` | string | Publication date in YYYY-MM-DD format |
| 🕒 `scrapedAt` | string | ISO 8601 timestamp of when the data was collected |
| ❌ `error` | string | Error message if scraping failed (null otherwise) |

**Sample output record:**

```json
{
  "imageUrl": "https://www.techmeme.com/260521/i14.jpg",
  "title": "The US Commerce Department plans to award $2B in grants to nine quantum computing companies and will take equity stakes; IBM is set to get $1B of the package",
  "url": "https://www.wsj.com/tech/u-s-to-award-quantum-computing-firms-2-billion-and-take-equity-stakes-7382e6be",
  "source": "https://www.wsj.com/",
  "sourceName": "Wall Street Journal",
  "summary": "Trump administration hopes to spur 'a new era of American innovation,' Commerce's Lutnick says - WASHINGTON-The Trump administration ...",
  "relatedLinks": [
    { "title": "NIST", "url": "https://www.nist.gov/news-events/...", "source": "nist.gov" },
    { "title": "Ars Technica", "url": "https://arstechnica.com/...", "source": "arstechnica.com" },
    { "title": "Reuters", "url": "https://www.reuters.com/...", "source": "reuters.com" }
  ],
  "publishedAt": "2026-05-21",
  "scrapedAt": "2026-05-22T02:56:20.061Z",
  "error": null
}
```

**Sample output record 2:**

```json
{
  "imageUrl": "https://www.techmeme.com/260521/i44.jpg",
  "title": "Spotify closes up 13% after announcing new features and 2030 guidance, forecasting a compound annual growth rate in the mid-teens and gross margins of 35%-40%",
  "url": "https://www.cnbc.com/2026/05/21/spotify-spot-stock-guidance-investor-day-ai.html",
  "source": "http://www.cnbc.com/",
  "sourceName": "CNBC",
  "summary": "Spotify shares jumped 15% on Thursday after the music streaming platform laid out guidance for 2030 and reached an artificial intelligence deal ...",
  "relatedLinks": [
    { "title": "Mumbrella", "url": "https://mumbrella.com.au/...", "source": "mumbrella.com.au" },
    { "title": "Axios", "url": "https://www.axios.com/...", "source": "axios.com" },
    { "title": "Bloomberg", "url": "https://www.bloomberg.com/...", "source": "bloomberg.com" }
  ],
  "publishedAt": "2026-05-21",
  "scrapedAt": "2026-05-22T02:56:19.995Z",
  "error": null
}
```

### ✨ Why choose this Actor

| Feature | Details |
|---------|---------|
| 🎯 Real-time data | Scrapes the live Techmeme homepage - data is as fresh as Techmeme's own feed |
| 🗞 Full cluster coverage | Captures every related article per story cluster, not just the headline |
| 🔗 Clean source attribution | Source name and homepage URL for every primary story and related link |
| 📅 Dated records | Publication date extracted from Techmeme's internal URL structure |
| 🖼 Images included | Thumbnail images where Techmeme provides them |
| 🚀 Fast execution | Single HTTP request, completes in under 5 seconds |
| 🔓 No login required | Public page only - no account, cookie, or API key needed |
| 📦 Export-ready | CSV, JSON, Excel, XML all available out of the box |

### 📈 How it compares to alternatives

| Method | Coverage | Speed | Structured data |
|--------|----------|-------|----------------|
| **This Actor** | All current Techmeme stories | Under 5 seconds | Yes - all fields |
| Manual browsing | Limited | Slow | No |
| RSS feed | Headlines only, no cluster | Fast | Partial |
| Twitter/X scraping | Fragmented | Slow | No |
| Building your own scraper | All | Variable | Variable |

### 🚀 How to use

1. Click **Try for free** on the Techmeme Scraper page
2. Set `maxItems` to how many stories you want (default 10, up to 1,000,000 for paid users)
3. Click **Start** and wait a few seconds
4. Download your dataset as CSV, JSON, Excel, or XML

### 💼 Business use cases

#### Investor and market intelligence

Track earnings reports, product launches, acquisitions, and layoff announcements as they break on Techmeme. Build alerts for companies in your portfolio by scanning story titles and sources daily.

#### AI training data

Collect thousands of tech news headlines, summaries, and multi-source coverage clusters as labeled training data for news classification, summarization, and topic modeling models.

#### Competitive intelligence

Monitor how often your competitors appear in Techmeme coverage and which outlets are writing about them. Identify emerging narratives in your market before they become mainstream.

#### Media and PR research

Identify which publications break the biggest tech stories first, analyze cluster sizes to gauge story importance, and benchmark coverage across different tech sectors.

### 🔌 Automating Techmeme Scraper

Connect to your workflow tools with no code:

- **Make (Integromat)** - Schedule daily runs and push stories to a Google Sheet or Notion database
- **Zapier** - Trigger emails or Slack messages when new Techmeme stories match keywords
- **Slack** - Post a daily briefing of top tech stories to your team channel
- **Google Sheets** - Maintain a running log of tech news for analysis

### 🌟 Beyond business use cases

#### Academic research

Track how tech news narratives form and spread across publications. Analyze which stories attract the largest related-coverage clusters as a proxy for news importance.

#### Personal learning

Build a daily automated briefing of the most-discussed tech topics to stay current without spending hours reading. Filter by keyword in the title to focus on topics you care about.

#### Non-profit and journalism

Track policy, regulation, and government tech stories as they break. Use the cluster data to understand which angle different publications take on the same story.

#### Experimentation

Feed Techmeme data into an LLM to generate daily summaries, briefings, or analysis. The structured cluster format maps naturally to "event + perspectives" prompting patterns.

### 🤖 Ask an AI assistant about this scraper

You can ask Claude, ChatGPT, or any AI assistant:

> "How do I use the Techmeme Scraper on Apify to collect today's top tech news stories and export them to a spreadsheet?"

The data format is simple enough that any AI can help you filter, summarize, or transform it once you have the JSON output.

### ❓ Frequently Asked Questions

**❓ How often is Techmeme updated?**
Techmeme's editors update the site continuously throughout the day. Each run of this actor fetches the current live state of the page.

**❓ How many stories does a single run return?**
The Techmeme homepage typically shows 15-25 curated story clusters at any time. Setting `maxItems` higher than ~25 will return all available stories on the current page.

**❓ What is a "related link" in the output?**
Techmeme groups multiple publications covering the same story into a cluster. The `relatedLinks` array contains all the secondary sources that Techmeme has grouped under the primary story.

**❓ Does this include the Techmeme River?**
This actor scrapes the main Techmeme homepage (curated clusters). The River page (techmeme.com/river) is a separate chronological feed and is not included in this version.

**❓ Is there a cost to use this actor?**
Free users get 10 stories per run. Paid Apify plans unlock up to 1,000,000 results. [Create a free account w/ $5 credit](https://console.apify.com/sign-up?fpr=vmoqkp).

**❓ Does it require login or cookies?**
No. The Techmeme homepage is fully public and server-rendered. No authentication, cookies, or API keys are needed.

**❓ How fast is it?**
A typical run completes in under 5 seconds - it makes a single HTTP request to techmeme.com and parses the HTML.

**❓ What format is the publishedAt date?**
The date is returned in YYYY-MM-DD format (e.g. "2026-05-21"), derived from Techmeme's internal URL structure. Time-of-day is not available from the main page.

**❓ Can I filter stories by topic or keyword?**
Not within the actor input - but you can filter the JSON output by scanning `title` or `sourceName` fields after export, or use Make/Zapier to filter on download.

**❓ What happens if Techmeme changes its layout?**
The actor will be updated to match any layout changes. Check the actor version history or follow ParseForge for update notices.

**❓ Is the output data normalized?**
Yes. Source names are extracted from the `<cite>` element, source URLs from the anchor tag, images from the `<img>` element, and summaries from the text following the headline - all parsed consistently.

**❓ Can I run this on a schedule?**
Yes - use Apify's built-in scheduler to run this actor daily, hourly, or on any cron schedule. Combine with a Make or Zapier integration to push results anywhere automatically.

### 🔌 Integrate with any app

Apify connects this actor to 1,000+ apps via webhooks and integrations:

**Productivity:** Google Sheets, Notion, Airtable, Excel
**Communication:** Slack, Discord, Microsoft Teams, Email
**Automation:** Make (Integromat), Zapier, n8n, Pipedream
**Databases:** PostgreSQL, MySQL, MongoDB, Supabase
**AI platforms:** OpenAI, Anthropic, Hugging Face, LangChain
**Business intelligence:** Tableau, Power BI, Looker, Google Data Studio

### 🔗 Recommended Actors

| Actor | Description |
|-------|-------------|
| [Hacker News Scraper](https://apify.com/parseforge) | Scrape HN front page stories, comments, and scores |
| [RSS Feed Scraper](https://apify.com/parseforge) | Pull structured articles from any RSS/Atom feed |
| [Google News Scraper](https://apify.com/parseforge) | Export Google News results by keyword or topic |

> 💡 **Pro Tip:** browse the complete [ParseForge collection](https://apify.com/parseforge) for scrapers covering 100+ websites - from news and finance to jobs and real estate.

***

*This actor is not affiliated with, endorsed by, or connected to Techmeme or Gabe Rivera. It scrapes only publicly available information from the Techmeme homepage. Use responsibly and in accordance with Techmeme's terms of service.*

# Actor input Schema

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

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

## Actor input object example

```json
{
  "maxItems": 10
}
```

# 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 = {
    "maxItems": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("parseforge/techmeme-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 = { "maxItems": 10 }

# Run the Actor and wait for it to finish
run = client.actor("parseforge/techmeme-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 '{
  "maxItems": 10
}' |
apify call parseforge/techmeme-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Techmeme Scraper | Tech News Headlines",
        "description": "Scrape tech news from Techmeme including headlines, source links, summaries, related coverage, timestamps and discussion links. Build curated technology news datasets for trend monitoring, media analysis and content aggregation projects at scale across the full catalog",
        "version": "0.1",
        "x-build-id": "nqy00LEvKjmGVSleY"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/parseforge~techmeme-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-parseforge-techmeme-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~techmeme-scraper/runs": {
            "post": {
                "operationId": "runs-sync-parseforge-techmeme-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~techmeme-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-parseforge-techmeme-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": {
                    "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"
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
