# Cruise Data Feed: Lines, Itineraries, Ports & Prices (`vulnv/cruise-data-feed`) Actor

Download structured cruise inventory from 60+ cruise lines (MSC, Disney, Royal Caribbean, Carnival, Viking and more) in one clean schema: ships, sailing dates, durations, ports of call, day-by-day itineraries and pricing. Unofficial; public data only.

- **URL**: https://apify.com/vulnv/cruise-data-feed.md
- **Developed by:** [VulnV](https://apify.com/vulnv) (community)
- **Categories:** Travel
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$7.00 / 1,000 cruise 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

## Cruise Data Feed: All Lines, Itineraries, Ports & Prices

This cruise data scraper downloads clean, structured **cruise inventory from 60+
cruise lines** - MSC, Disney, Royal Caribbean, Carnival, Norwegian, Princess,
Costa, Viking and more - in **one normalized schema**. Every record is a sailing
with its ship, departure date, duration, embarkation/disembarkation ports,
region, day-by-day itinerary and pricing.

> **Unofficial.** This Actor is not affiliated with, endorsed by, or sponsored by
> any cruise line or travel brand. Cruise line and ship names are trademarks of
> their respective owners and are used here only to describe the data the Actor
> returns. The data is public cruise inventory only - no personal data.

### 🚀 How to use

1. Click **Try for free** / **Start**.
2. Pick your filters - cruise line, region, departure port, dates, duration, price
   (or leave them all empty to download the latest sailings across every line).
3. Run the Actor and download the results as **JSON, CSV, Excel, HTML or via API**.

### ✨ Features

- 🛳️ **60+ cruise lines in one schema** - ocean, river and expedition lines, all
  normalized to the same fields. No per-site scraping, no layout drift.
- 🔎 **Rich filtering** - cruise line, region/destination, departure port, ship,
  departure date range, number of nights, price range and round-trip vs. one-way.
- 🗺️ **Day-by-day itineraries** - every record includes the ordered list of ports of
  call (with sequence, port name, day and embark/disembark flags), plus a flat
  `itineraryPortsText` summary for quick scanning.
- 💲 **Pricing** - lead-in price, currency and price-per-night where available.
- ⚡ **Fast & reliable** - talks to a single JSON API, so runs are lightweight (no
  headless browser) and the schema stays stable run-to-run.

### 🧭 Input

All fields are optional. Run with no input to download the latest sailings across all
lines.

| Field | Type | Description |
|-------|------|-------------|
| `cruiseLines` | array | Filter by one or more cruise lines (e.g. `MSC Cruises`, `Royal Caribbean Cruises`). Empty = all lines. |
| `sources` | array | Restrict to specific upstream catalogs: `cruisemapper`, `msc`, `disney`. Empty = all. |
| `region` | string | Match cruises whose region contains this text, e.g. `Caribbean`, `Alaska`, `Mediterranean`. |
| `embarkPort` | string | Match cruises whose departure port contains this text, e.g. `Barcelona`, `Miami`. |
| `shipName` | string | Exact ship name, e.g. `MSC World Europa`. |
| `departureDateFrom` / `departureDateTo` | string (YYYY-MM-DD) | Departure date range. |
| `minNights` / `maxNights` | integer | Cruise duration range, in nights. |
| `minPrice` / `maxPrice` | integer | Price range, in the cruise's own currency. |
| `roundTrip` | string | `any`, `true` (round trip only) or `false` (one way only). |
| `sort` | string | `departure_date`, `-departure_date`, `price`, `-price`. |
| `maxResults` | integer | Maximum number of records to store (default `100`). |

#### Example input

```json
{
  "cruiseLines": ["MSC Cruises", "Royal Caribbean Cruises"],
  "region": "Caribbean",
  "departureDateFrom": "2026-10-01",
  "departureDateTo": "2026-12-31",
  "minNights": 5,
  "sort": "price",
  "maxResults": 100
}
````

### 📦 Output

Each dataset item is one sailing. Example:

```json
{
  "source": "cruisemapper",
  "source_id": "4911264",
  "cruise_line": "MSC Cruises",
  "ship_name": "MSC World Europa",
  "title": "7 nights, round trip from Barcelona",
  "departure_date": "2026-10-18",
  "return_date": "2026-10-25",
  "duration_days": 7,
  "nights": 7,
  "round_trip": true,
  "embark_port": "Barcelona, Spain",
  "disembark_port": "Barcelona, Spain",
  "region": "Western Mediterranean",
  "price_amount": 899,
  "price_currency": "EUR",
  "price_per_night": 128.43,
  "itinerary": [
    { "seq": 1, "port": "Barcelona, Spain", "date_raw": "18 Oct", "is_embark": true, "is_disembark": false },
    { "seq": 2, "port": "Marseille, France", "date_raw": "19 Oct", "is_embark": false, "is_disembark": false }
  ],
  "itineraryPortsText": "Barcelona, Spain → Marseille, France → …",
  "portCount": 8,
  "scraped_at": "2026-06-27T21:14:08.493837"
}
```

The dataset has two views: **Overview** (flat table - line, ship, dates, ports, price)
and **Itineraries** (the full day-by-day `itinerary` array).

### 💡 Use cases

- Build a cruise comparison, search or alerting tool across many lines at once.
- Monitor sailing availability, durations and lead-in prices for specific routes.
- Analyse itineraries, ports of call and seasonality across the whole industry.
- Feed normalized cruise data into a travel agency, affiliate or OTA site.

### 💳 Pricing

This Actor is monetized on a **pay-per-result + usage** basis: you pay a small fee per
cruise record returned, plus the Apify platform usage your run consumes. Runs are
lightweight - a single API, no headless browser - so usage stays low. New users can try
it on the Apify free tier (capped sample). See the **Pricing** tab on the Actor's page
for the current rate.

### ❓ FAQ

**Where does the data come from?**
The feed aggregates publicly available cruise inventory from across the industry and
normalizes it into one schema. Use the data responsibly and in line with applicable laws.

**How current is it?**
The feed is refreshed continuously and re-priced on a recurring schedule. Each record
includes a `scraped_at` timestamp.

**How do I scrape only a few results to test?**
Set `maxResults` to a small number (e.g. `5`) and add a filter such as a single cruise
line or region.

**Is it official?**
No. It is an independent, unofficial Actor and is not affiliated with any cruise line.
Brand names are used only to describe the data.

### 🛠️ Our Other Scrapers

- **[MSC Cruises Scraper](https://apify.com/vulnv/msc-cruises-scraper)** - Live MSC sailings with full itineraries and the cabin price matrix.
- **[Booking.com Cruises Scraper](https://apify.com/vulnv/booking-cruises-scraper)** - Cruise deals, prices and itineraries from Booking.com.
- **[Disney Cruises Scraper](https://apify.com/vulnv/disney-cruises-scraper)** - Disney Cruise Line itineraries and pricing.
- **[Amazon Product Scraper](https://apify.com/vulnv/amazon-product-scraper)** - Amazon product data, pricing and reviews.

📬 **Need help?** Open the **Issues** tab on this Actor's page.

# Actor input Schema

## `cruiseLines` (type: `array`):

Filter by one or more cruise lines. Leave empty for all lines.

## `sources` (type: `array`):

Restrict to specific upstream catalogs. Leave empty for all sources.

## `region` (type: `string`):

Match cruises whose region/destination contains this text, e.g. "Caribbean", "Alaska", "Mediterranean".

## `embarkPort` (type: `string`):

Match cruises whose embarkation port contains this text, e.g. "Barcelona", "Miami", "Southampton".

## `shipName` (type: `string`):

Exact ship name, e.g. "MSC World Europa". Leave empty for all ships.

## `departureDateFrom` (type: `string`):

Earliest departure date to include (YYYY-MM-DD).

## `departureDateTo` (type: `string`):

Latest departure date to include (YYYY-MM-DD).

## `minNights` (type: `integer`):

Only include cruises with at least this many nights.

## `maxNights` (type: `integer`):

Only include cruises with at most this many nights.

## `minPrice` (type: `integer`):

Only include cruises priced at or above this amount (in the cruise's own currency).

## `maxPrice` (type: `integer`):

Only include cruises priced at or below this amount (in the cruise's own currency).

## `roundTrip` (type: `string`):

Filter by trip type: round-trip (returns to the embarkation port) or one-way.

## `sort` (type: `string`):

Order of returned cruises.

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

Maximum number of cruise records to store.

## `apiKey` (type: `string`):

An optional data API key, if you have one. Not required - the Actor works without it.

## `apiBaseUrl` (type: `string`):

Override the CruiseFeed API base URL (for self-hosted mirrors).

## Actor input object example

```json
{
  "roundTrip": "any",
  "sort": "departure_date",
  "maxResults": 50,
  "apiBaseUrl": "https://api.cruisefeed.io"
}
```

# 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 = {
    "maxResults": 50
};

// Run the Actor and wait for it to finish
const run = await client.actor("vulnv/cruise-data-feed").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 = { "maxResults": 50 }

# Run the Actor and wait for it to finish
run = client.actor("vulnv/cruise-data-feed").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 '{
  "maxResults": 50
}' |
apify call vulnv/cruise-data-feed --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Cruise Data Feed: Lines, Itineraries, Ports & Prices",
        "description": "Download structured cruise inventory from 60+ cruise lines (MSC, Disney, Royal Caribbean, Carnival, Viking and more) in one clean schema: ships, sailing dates, durations, ports of call, day-by-day itineraries and pricing. Unofficial; public data only.",
        "version": "1.0",
        "x-build-id": "dQO6G3LWi0oNB6cmq"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/vulnv~cruise-data-feed/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-vulnv-cruise-data-feed",
                "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/vulnv~cruise-data-feed/runs": {
            "post": {
                "operationId": "runs-sync-vulnv-cruise-data-feed",
                "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/vulnv~cruise-data-feed/run-sync": {
            "post": {
                "operationId": "run-sync-vulnv-cruise-data-feed",
                "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": {
                    "cruiseLines": {
                        "title": "Cruise lines",
                        "type": "array",
                        "description": "Filter by one or more cruise lines. Leave empty for all lines.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "AIDA Cruises",
                                "AmaWaterways Cruises",
                                "Ambassador Cruise Line Cruises",
                                "American Cruise Lines Cruises",
                                "Atlas Ocean Voyages Cruises",
                                "Aurora Expeditions Cruises",
                                "Avalon Waterways Cruises",
                                "Azamara Cruises",
                                "Carnival Cruise Line Cruises",
                                "Celebrity Cruises",
                                "Celestyal Cruises",
                                "Costa Cruises",
                                "CroisiEurope Cruises",
                                "Crystal Cruises",
                                "Cunard Cruises",
                                "Disney Cruise Line",
                                "Emerald Cruises",
                                "Fred Olsen Cruise Lines Cruises",
                                "Hapag-Lloyd Cruises",
                                "Holland America Cruises",
                                "Hurtigruten Cruises",
                                "HX Expeditions Cruises",
                                "Lindblad Expeditions Cruises",
                                "Marella Cruises",
                                "Margaritaville at Sea Cruises",
                                "MSC Cruises",
                                "MSC Explora Journeys Cruises",
                                "Norwegian Cruise Line Cruises",
                                "Oceania Cruises",
                                "P&O Cruises",
                                "Phoenix Reisen Cruises",
                                "Ponant Cruises",
                                "Princess Cruises",
                                "Quark Expeditions Cruises",
                                "Regent Seven Seas Cruises",
                                "Ritz-Carlton Yacht Collection Cruises",
                                "Riviera Travel Cruises",
                                "Royal Caribbean Cruises",
                                "Saga Cruises",
                                "Scenic Cruises",
                                "Seabourn Cruises",
                                "SeaDream Yacht Club Cruises",
                                "Silversea Cruises",
                                "Star Clippers Cruises",
                                "TUI Cruises",
                                "UnCruise Adventures Cruises",
                                "Uniworld Cruises",
                                "Viking Cruises",
                                "Viking River Cruises",
                                "Virgin Voyages Cruises",
                                "Windstar Cruises"
                            ]
                        }
                    },
                    "sources": {
                        "title": "Data sources",
                        "type": "array",
                        "description": "Restrict to specific upstream catalogs. Leave empty for all sources.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "cruisemapper",
                                "msc",
                                "disney"
                            ],
                            "enumTitles": [
                                "CruiseMapper (all lines)",
                                "MSC Cruises",
                                "Disney Cruise Line"
                            ]
                        }
                    },
                    "region": {
                        "title": "Region / destination",
                        "type": "string",
                        "description": "Match cruises whose region/destination contains this text, e.g. \"Caribbean\", \"Alaska\", \"Mediterranean\"."
                    },
                    "embarkPort": {
                        "title": "Departure port",
                        "type": "string",
                        "description": "Match cruises whose embarkation port contains this text, e.g. \"Barcelona\", \"Miami\", \"Southampton\"."
                    },
                    "shipName": {
                        "title": "Ship name",
                        "type": "string",
                        "description": "Exact ship name, e.g. \"MSC World Europa\". Leave empty for all ships."
                    },
                    "departureDateFrom": {
                        "title": "Departure date from",
                        "type": "string",
                        "description": "Earliest departure date to include (YYYY-MM-DD)."
                    },
                    "departureDateTo": {
                        "title": "Departure date to",
                        "type": "string",
                        "description": "Latest departure date to include (YYYY-MM-DD)."
                    },
                    "minNights": {
                        "title": "Minimum nights",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Only include cruises with at least this many nights."
                    },
                    "maxNights": {
                        "title": "Maximum nights",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Only include cruises with at most this many nights."
                    },
                    "minPrice": {
                        "title": "Minimum price",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only include cruises priced at or above this amount (in the cruise's own currency)."
                    },
                    "maxPrice": {
                        "title": "Maximum price",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Only include cruises priced at or below this amount (in the cruise's own currency)."
                    },
                    "roundTrip": {
                        "title": "Round trip",
                        "enum": [
                            "any",
                            "true",
                            "false"
                        ],
                        "type": "string",
                        "description": "Filter by trip type: round-trip (returns to the embarkation port) or one-way.",
                        "default": "any"
                    },
                    "sort": {
                        "title": "Sort by",
                        "enum": [
                            "departure_date",
                            "-departure_date",
                            "price",
                            "-price"
                        ],
                        "type": "string",
                        "description": "Order of returned cruises.",
                        "default": "departure_date"
                    },
                    "maxResults": {
                        "title": "Maximum results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum number of cruise records to store.",
                        "default": 100
                    },
                    "apiKey": {
                        "title": "Data API key (optional)",
                        "type": "string",
                        "description": "An optional data API key, if you have one. Not required - the Actor works without it."
                    },
                    "apiBaseUrl": {
                        "title": "API base URL",
                        "type": "string",
                        "description": "Override the CruiseFeed API base URL (for self-hosted mirrors).",
                        "default": "https://api.cruisefeed.io"
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
