# Resident Advisor Scraper — Events, Lineups & Promoters (`logiover/resident-advisor-scraper`) Actor

RA.co events scraper & API alternative: export Resident Advisor DJ lineups, venues, promoters & dates to CSV/JSON. Scrape ra.co without login or API key.

- **URL**: https://apify.com/logiover/resident-advisor-scraper.md
- **Developed by:** [Logiover](https://apify.com/logiover) (community)
- **Categories:** Social media, Business
- **Stats:** 3 total users, 2 monthly users, 100.0% runs succeeded, 1 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2.50 / 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 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

<h1 align="center">🎧 Resident Advisor Scraper — Scrape RA.co Electronic-Music Events</h1>

<p align="center">
  <b>Export Resident Advisor (ra.co) events to JSON, CSV & Excel — by city and date.</b><br/>
  Titles, dates & set times, venues, full DJ line-ups, promoters, attending counts, tickets and flyer images.
</p>

<p align="center">
  <img src="https://img.shields.io/badge/Resident%20Advisor-ra.co-FF5C00?style=for-the-badge&logo=soundcloud&logoColor=white" alt="Resident Advisor" />
  <img src="https://img.shields.io/badge/No%20login-required-00C853?style=for-the-badge" alt="No login" />
  <img src="https://img.shields.io/badge/No%20API%20key-needed-2962FF?style=for-the-badge" alt="No API key" />
  <img src="https://img.shields.io/badge/Output-JSON%20%7C%20CSV%20%7C%20Excel-6200EA?style=for-the-badge" alt="Output formats" />
  <img src="https://img.shields.io/badge/Worldwide-cities-FF4081?style=for-the-badge" alt="Worldwide" />
</p>

---

### 🚀 What this actor does

The **Resident Advisor scraper** turns any RA.co city listing into clean, structured **electronic music events data**. Pick the cities (by name or RA area ID) and a date range, hit run, and get one tidy row per event — ready for your calendar app, gig-discovery product, promoter CRM, data analysis or research.

It talks to Resident Advisor's own public events API the same way the ra.co website does, so you get **fast, reliable, browser-free** results — no Selenium, no login, no API key, no flaky DOM scraping.

<table>
  <tr>
    <td>✅ <b>Scrape ra.co by city</b> — London, Berlin, Amsterdam, New York, Tokyo & 100+ more</td>
    <td>✅ <b>Filter by date range</b> — tonight, this weekend, next 90 days, any window</td>
  </tr>
  <tr>
    <td>✅ <b>Full DJ line-ups</b> — every artist on the bill</td>
    <td>✅ <b>Promoter lead-gen</b> — who's putting on the party</td>
  </tr>
  <tr>
    <td>✅ <b>Venue + city + country</b> — with venue page link</td>
    <td>✅ <b>Attending & interested counts</b> — gauge the hype</td>
  </tr>
  <tr>
    <td>✅ <b>Ticket flag + flyer image</b></td>
    <td>✅ <b>Pagination handled</b> — thousands of events per city</td>
  </tr>
</table>

---

### 🎯 Use cases

- **Event aggregators & gig-finder apps** — power "what's on tonight" with live electronic-music events data.
- **Promoter & venue lead generation** — build a list of active promoters and clubs in any market.
- **DJ & booking agencies** — track where artists are playing and which line-ups are trending.
- **Market & nightlife research** — analyse event volume, ticketing and audience interest by city.
- **Music journalism & newsletters** — auto-build weekly city round-ups from **scraped ra.co events**.
- **Price & demand monitoring** — watch attending counts and ticketed share over time.

---

### 🧩 Input

| Field | Type | Description |
|-------|------|-------------|
| `areas` | array | Cities by **name** (`"london"`, `"berlin"`, `"new york"`) or raw **RA area IDs** (`"8"`, `"13"`). |
| `searchUrls` | array | RA event-listing URLs (e.g. `https://ra.co/events/uk/london`). City resolved automatically. |
| `dateFrom` | string | `YYYY-MM-DD` — events on/after this date. Empty = today. |
| `dateTo` | string | `YYYY-MM-DD` — events on/before this date. Empty = next 90 days. |
| `maxResults` | integer | Total event cap across all cities. `0` = no limit. |
| `maxResultsPerArea` | integer | Per-city cap. `0` = no cap. |
| `sortOrder` | string | `ASCENDING` (soonest first) or `DESCENDING`. |
| `useProxy` / `proxyConfiguration` | bool / object | Apify Proxy (Residential recommended). |
| `maxConcurrency` | integer | Cities processed in parallel. |

#### Example input

```json
{
  "areas": ["berlin", "london", "amsterdam"],
  "dateFrom": "2026-06-05",
  "dateTo": "2026-06-30",
  "maxResults": 500,
  "sortOrder": "ASCENDING",
  "proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}
````

> 💡 **Tip:** Not sure of a city's area ID? Just paste its events URL into `searchUrls`, e.g. `https://ra.co/events/it/milan`. The actor reads the area straight from the page.

***

### 📦 Output

Each event is one dataset record. Download as **JSON, CSV, Excel, HTML or XML**, or pull via the Apify API.

```json
{
  "id": "2457415",
  "title": "Half Fridays Sunset Party",
  "url": "https://ra.co/events/2457415",
  "date": "2026-06-05",
  "startTime": "2026-06-05T16:00:00.000",
  "endTime": "2026-06-05T22:00:00.000",
  "venueName": "Mr. Purple",
  "venueUrl": "https://ra.co/clubs/112143",
  "city": "New York City",
  "areaId": "8",
  "country": "United States of America",
  "countryCode": "US",
  "lineup": "DJ One, DJ Two",
  "artists": ["DJ One", "DJ Two"],
  "promoter": "alibi, Congregation",
  "promoters": ["alibi", "Congregation"],
  "attending": 8,
  "interestedCount": 8,
  "isTicketed": true,
  "image": "https://images.ra.co/47b27fd461153046356d5b4c1e8c91c2166b90d7.jpg",
  "scrapedAt": "2026-06-05T12:00:00.000Z"
}
```

| Field | Description |
|-------|-------------|
| `title`, `url`, `id` | Event name, ra.co link, RA event ID |
| `date`, `startTime`, `endTime` | Event date and set times |
| `venueName`, `venueUrl` | Club / venue and its RA page |
| `city`, `country`, `countryCode`, `areaId` | Location & RA area |
| `lineup` / `artists` | Full DJ line-up (string + array) |
| `promoter` / `promoters` | Promoter(s) — **lead-gen gold** |
| `attending`, `interestedCount` | Audience signal |
| `isTicketed`, `image` | Ticket flag and flyer artwork |

***

### ❓ FAQ

<details>
  <summary><b>Do I need a Resident Advisor account or API key?</b></summary>
  <br/>No. The actor reads RA's public event listings. No login, no key, no headless browser.
</details>

<details>
  <summary><b>Which cities are supported?</b></summary>
  <br/>Every city Resident Advisor lists. 100+ major cities are recognized by name out of the box (London, Berlin, Amsterdam, Paris, New York, LA, Tokyo, Sydney, and many more). For any other city, paste its <code>ra.co/events/...</code> URL or its numeric area ID.
</details>

<details>
  <summary><b>How far ahead can I scrape?</b></summary>
  <br/>Any date window. Set <code>dateFrom</code> / <code>dateTo</code> (YYYY-MM-DD). By default it covers today through the next 90 days.
</details>

<details>
  <summary><b>How many events can it return?</b></summary>
  <br/>Thousands per city — pagination is fully handled. Use <code>maxResults</code> / <code>maxResultsPerArea</code> to cap volume and cost.
</details>

<details>
  <summary><b>Is scraping ra.co legal?</b></summary>
  <br/>The actor collects only publicly available event information. You are responsible for complying with Resident Advisor's terms and applicable laws, and for how you use the data.
</details>

<details>
  <summary><b>Why use Apify Proxy?</b></summary>
  <br/>Residential proxy gives the highest success rate and lets you scale across many cities without rate-limit hiccups. It's the default.
</details>

#### Is this a Resident Advisor / ra.co API alternative?

Yes. Resident Advisor offers no public API key for events, so this actor reads RA's public listings the same way the ra.co site does — a practical ra.co API alternative with no login and no key required.

#### How do I export Resident Advisor events to CSV or JSON?

Run the actor for your cities and date range, then download the dataset as JSON, CSV, Excel, HTML or XML — or pull it via the Apify API. It's a straightforward Resident Advisor data export for spreadsheets and pipelines.

#### Can I scrape ra.co without login to get DJ line-ups?

Yes. This DJ lineup scraper pulls full artist line-ups, venues and promoters from ra.co without any login or API key. Residential proxy is recommended for scale.

***

### 🔌 Run it your way

- **Apify Console** — fill the form, click **Start**.
- **Schedule** — run nightly to keep an events feed fresh.
- **API / SDK** — integrate the dataset into your own app or pipeline.
- **Integrations** — push results to Google Sheets, Slack, Make, Zapier, a webhook and more.

***

<p align="center">
  <b>🎟️ Scrape Resident Advisor events at scale — line-ups, venues, promoters & dates in clean JSON.</b><br/>
  <img src="https://img.shields.io/badge/▶-Run%20the%20RA.co%20scraper-FF5C00?style=for-the-badge" alt="Run it" />
</p>

<p align="center"><sub>Keywords: Resident Advisor scraper · RA.co events · scrape ra.co · electronic music events data · DJ lineup scraper · club & venue events · promoter lead generation · techno & house event listings · nightlife data API · ra.co API alternative · Resident Advisor data export · export ra.co events to CSV · scrape ra.co without login.</sub></p>

***

### 📝 Changelog

#### 2026-06-07

- Docs: added coverage for ra.co API alternative, Resident Advisor data export to CSV/JSON, and scraping ra.co without login for DJ line-ups.

# Actor input Schema

## `areas` (type: `array`):

Cities to scrape — use plain city names (e.g. "london", "berlin", "amsterdam", "new york") or raw RA numeric area IDs (e.g. "8" for New York City, "13" for London). The most popular cities worldwide are recognized by name out of the box.

## `searchUrls` (type: `array`):

Resident Advisor event-listing URLs copied straight from the site — e.g. https://ra.co/events/uk/london or https://ra.co/events/de/berlin. The city is resolved from the URL automatically. Use this if your city is not recognized by name.

## `dateFrom` (type: `string`):

Only include events on or after this date. Leave empty to start from today.

## `dateTo` (type: `string`):

Only include events on or before this date. Leave empty for the next 90 days.

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

Stop after this many events across all cities. 0 = no limit (a busy city can return thousands of events over a wide date range).

## `maxResultsPerArea` (type: `integer`):

Cap events per individual city/area. 0 = no per-city cap.

## `sortOrder` (type: `string`):

Order events by listing date.

## `useProxy` (type: `boolean`):

Route requests through Apify Proxy. Residential is recommended and is the default.

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

Apify Proxy settings. Residential gives the highest success rate against ra.co.

## `maxConcurrency` (type: `integer`):

How many cities/areas to process in parallel.

## Actor input object example

```json
{
  "areas": [
    "berlin",
    "london"
  ],
  "searchUrls": [],
  "maxResults": 200,
  "maxResultsPerArea": 0,
  "sortOrder": "ASCENDING",
  "useProxy": true,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  },
  "maxConcurrency": 3
}
```

# Actor output Schema

## `id` (type: `string`):

Event ID

## `title` (type: `string`):

Title

## `url` (type: `string`):

Event URL

## `date` (type: `string`):

Date

## `startTime` (type: `string`):

Start time

## `endTime` (type: `string`):

End time

## `venueName` (type: `string`):

Venue

## `venueUrl` (type: `string`):

Venue URL

## `venueLive` (type: `string`):

Venue live

## `city` (type: `string`):

City

## `areaId` (type: `string`):

Area ID

## `country` (type: `string`):

Country

## `countryCode` (type: `string`):

Country code

## `lineup` (type: `string`):

Lineup

## `artists` (type: `string`):

Artists

## `promoter` (type: `string`):

Promoter

## `promoters` (type: `string`):

Promoters

## `attending` (type: `string`):

Attending

## `interestedCount` (type: `string`):

Interested

## `isTicketed` (type: `string`):

Ticketed

## `image` (type: `string`):

Flyer image

## `scrapedAt` (type: `string`):

Scraped at

# 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 = {
    "areas": [
        "berlin",
        "london"
    ],
    "searchUrls": []
};

// Run the Actor and wait for it to finish
const run = await client.actor("logiover/resident-advisor-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 = {
    "areas": [
        "berlin",
        "london",
    ],
    "searchUrls": [],
}

# Run the Actor and wait for it to finish
run = client.actor("logiover/resident-advisor-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 '{
  "areas": [
    "berlin",
    "london"
  ],
  "searchUrls": []
}' |
apify call logiover/resident-advisor-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Resident Advisor Scraper — Events, Lineups & Promoters",
        "description": "RA.co events scraper & API alternative: export Resident Advisor DJ lineups, venues, promoters & dates to CSV/JSON. Scrape ra.co without login or API key.",
        "version": "1.0",
        "x-build-id": "cDkNDpvsaoMmJ9UPU"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/logiover~resident-advisor-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-logiover-resident-advisor-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/logiover~resident-advisor-scraper/runs": {
            "post": {
                "operationId": "runs-sync-logiover-resident-advisor-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/logiover~resident-advisor-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-logiover-resident-advisor-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": {
                    "areas": {
                        "title": "Cities / areas",
                        "type": "array",
                        "description": "Cities to scrape — use plain city names (e.g. \"london\", \"berlin\", \"amsterdam\", \"new york\") or raw RA numeric area IDs (e.g. \"8\" for New York City, \"13\" for London). The most popular cities worldwide are recognized by name out of the box.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "searchUrls": {
                        "title": "RA event URLs (optional)",
                        "type": "array",
                        "description": "Resident Advisor event-listing URLs copied straight from the site — e.g. https://ra.co/events/uk/london or https://ra.co/events/de/berlin. The city is resolved from the URL automatically. Use this if your city is not recognized by name.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "dateFrom": {
                        "title": "Date from (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Only include events on or after this date. Leave empty to start from today."
                    },
                    "dateTo": {
                        "title": "Date to (YYYY-MM-DD)",
                        "type": "string",
                        "description": "Only include events on or before this date. Leave empty for the next 90 days."
                    },
                    "maxResults": {
                        "title": "Max results (total)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Stop after this many events across all cities. 0 = no limit (a busy city can return thousands of events over a wide date range).",
                        "default": 200
                    },
                    "maxResultsPerArea": {
                        "title": "Max results per city",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Cap events per individual city/area. 0 = no per-city cap.",
                        "default": 0
                    },
                    "sortOrder": {
                        "title": "Sort order",
                        "enum": [
                            "ASCENDING",
                            "DESCENDING"
                        ],
                        "type": "string",
                        "description": "Order events by listing date.",
                        "default": "ASCENDING"
                    },
                    "useProxy": {
                        "title": "Use Apify Proxy",
                        "type": "boolean",
                        "description": "Route requests through Apify Proxy. Residential is recommended and is the default.",
                        "default": true
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Apify Proxy settings. Residential gives the highest success rate against ra.co.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    },
                    "maxConcurrency": {
                        "title": "Max concurrent cities",
                        "minimum": 1,
                        "maximum": 10,
                        "type": "integer",
                        "description": "How many cities/areas to process in parallel.",
                        "default": 3
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
