# NCL Cruises Scraper — Itineraries, Cabin Prices & Deals (`vulnv/ncl-cruises-scraper`) Actor

Scrape Norwegian Cruise Line (NCL) itineraries by destination, port, ship, date and duration. Extract full cruise details: sailing dates, ports of call, the complete stateroom price grid and deals.

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

## Pricing

from $4.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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

## NCL Cruises Scraper

Search **Norwegian Cruise Line (NCL)** cruises and extract full itinerary details — ship,
ports of call, sailing dates, duration and the complete **stateroom price grid** (Inside,
Oceanview, Balcony, Club Balcony Suite, Suite, The Haven) — as clean, structured JSON.

The scraper mirrors the filters on the NCL vacations search (destination, departure port,
ship, dates, duration, price and cabin type) and returns one record per itinerary.

### 🚀 How to use

1. Click **Try for free** / **Start**.
2. Pick your filters — destination, departure port, ship, dates, duration, cabin type
   (or leave them empty to scrape all available cruises).
3. Run the Actor and download the results as **JSON, CSV, Excel, HTML or via API**.

### ✨ Features

- 🔎 **Full search filtering** — destination, departure port, ship, departure date range,
  number of nights, max price, cabin type and guest count.
- 🚢 **Rich per-itinerary data** — ship, embarkation port, ordered ports of call, duration,
  destination regions and every sailing date.
- 💶 **Complete stateroom pricing** — lowest available price per cabin category across all
  sailings, plus per-sailing pricing for each stateroom type.
- 🗓️ **Details page scraping** — for each cruise it visits the details page and adds the
  title, hero/map images, full ship and ports-of-call info, taxes & fees and the detailed
  stateroom price grid (base price, offers and availability per sailing).
- 🔗 **Detail page URL** — a ready-to-open link to each cruise on ncl.com.
- 🌍 **Any NCL market** — defaults to the `fr/en` storefront (EUR); the market is configurable.

### 🧭 Input

All fields are optional. Run with no input to scrape all available cruises.

| Field | Type | Description |
|-------|------|-------------|
| `destinations` | array | Destination regions, e.g. `CARIBBEAN`, `ALASKA`, `MEDITERRANEAN`. |
| `embarkationPorts` | array | Departure port codes, e.g. `MIA`, `TPA`, `BCN`. |
| `ships` | array | Ship codes, e.g. `ENCORE`, `PRIMA`, `GEM`. |
| `cabinTypes` | array | `INSIDE`, `OCEANVIEW`, `BALCONY`, `MINISUITE`, `SUITE`, `HAVEN`. |
| `minNights` / `maxNights` | integer | Cruise duration range, in nights. |
| `departureDateFrom` / `departureDateTo` | string (YYYY-MM-DD) | Keep cruises with a sailing departing in this range. |
| `maxPrice` | integer | Keep cruises with an available cabin at or below this price. |
| `guests` | integer | Guests the prices are calculated for (default `2`, 1–4). |
| `scrapeDetails` | boolean | Visit each cruise's details page for images, ship/ports detail and the full price grid (default `true`). |
| `maxResults` | integer | Maximum number of itineraries to store (default `100`). |
| `baseUrl`, `marketPath` | string | Storefront/market overrides. Defaults target `https://www.ncl.com` (`fr/en`). |
| `proxyConfiguration` | object | Optional proxy for outbound requests. |

#### Example input

```json
{
  "destinations": ["CARIBBEAN"],
  "minNights": 7,
  "maxNights": 7,
  "departureDateFrom": "2026-11-01",
  "departureDateTo": "2027-03-31",
  "scrapeDetails": true,
  "maxResults": 50
}
````

### 📦 Output

Each dataset item is one itinerary. Abridged example:

```json
{
  "code": "GEM7TPABPIRTBCZMTPA",
  "title": "7-day-caribbean-round-trip-tampa-harvest-caye-cozumel-and-roatan",
  "shipCode": "GEM",
  "shipName": "Norwegian Gem",
  "duration": 7,
  "embarkationPort": "TPA",
  "destinations": ["Caribbean"],
  "portsOfCall": ["TPA", "BPI", "RTB", "CZM", "TPA"],
  "portsOfCallText": "Tampa, Florida → Harvest Caye, Belize → Roatán, Honduras → Cozumel, Mexico → Tampa, Florida",
  "sailingsCount": 5,
  "firstDeparture": "2026-11-21",
  "lastDeparture": "2027-03-27",
  "lowestPrice": 605,
  "currency": "EUR",
  "priceFromInside": 605,
  "priceFromBalcony": 1100,
  "priceFromTheHaven": 3870,
  "detailUrl": "https://www.ncl.com/fr/en/cruises/7-day-caribbean-...-GEM7TPABPIRTBCZMTPA?itineraryCode=GEM7TPABPIRTBCZMTPA",
  "sailings": [
    { "sailId": 61766, "departureDate": 1795237200000, "pricing": [ { "code": "INSIDE", "combinedPrice": 605 } ] }
  ],
  "cruiseDetails": {
    "title": "7-Day Caribbean Round-trip Tampa",
    "ship": { "code": "GEM", "title": "Norwegian Gem" },
    "portsOfCall": [ { "code": "TPA", "title": "Tampa, Florida" } ],
    "sailings": [ { "sailId": 61766, "staterooms": [ { "code": "INSIDE", "combinedPrice": 605, "basePrice": 999 } ] } ]
  }
}
```

The most useful detail facts (ship, ports, per-cabin "from" prices, departure dates) are
flattened to the **top level** so they appear directly in the dataset table; the full
nested details live under `cruiseDetails`. The dataset has two views: **Overview** (flat
table) and **Cruise details** (full nested object).

### 💡 Use cases

- Monitor NCL cruise prices and Free at Sea deals for specific routes or ships.
- Build a cruise comparison or price-alerting tool.
- Analyse itineraries, ports of call and sailing durations across a season.
- Feed structured cruise data into a travel agency or affiliate site.

### 💳 Pricing

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

### ❓ FAQ

**Is scraping NCL data legal?**
The Actor collects only publicly available information shown on the NCL website. Use the
data responsibly and in line with applicable laws and the site's terms.

**Which market is scraped?**
It defaults to the `fr/en` storefront (EUR). The `marketPath` and `baseUrl` inputs let you
target other NCL markets (e.g. `uk/en`, `us/en`).

**Can I get all cabin prices and the full itinerary?**
Yes — keep `scrapeDetails` enabled (the default). Each cruise then includes the full
stateroom price grid and ports-of-call details.

### 🛠️ Our Other Scrapers

Explore our full suite of scraping tools to power your data needs:

- **[MSC Cruises Scraper](https://apify.com/vulnv/msc-cruises-scraper)** — Scrape MSC Cruises itineraries, cabin prices and deals.
- **[Booking.com Cruises Scraper](https://apify.com/vulnv/booking-cruises-scraper)** — Extract cruise deals, prices and itineraries from Booking.com.
- **[Yelp Business Scraper](https://apify.com/vulnv/yelp-scraper)** — Scrape Yelp business listings, ratings and contact details.
- **[Email Validator](https://apify.com/vulnv/email-validator)** — Validate and verify email addresses at scale.

📬 **Need help or have a feature request?** Contact us at <support@vulnv.com> or visit our [Apify profile](https://apify.com/vulnv).

# Actor input Schema

## `destinations` (type: `array`):

Filter by destination region. Leave empty for all destinations.

## `ships` (type: `array`):

Filter by NCL ship. Leave empty for all ships.

## `embarkationPorts` (type: `array`):

Filter by embarkation port (code). Leave empty for all ports.

## `cabinTypes` (type: `array`):

Only keep itineraries with availability in these stateroom categories. Leave empty for all.

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

Only include cruises with at least this many nights.

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

Only include cruises with at most this many nights.

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

Only include cruises with a sailing departing on or after this date (YYYY-MM-DD).

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

Only include cruises with a sailing departing on or before this date (YYYY-MM-DD).

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

Only include cruises with an available cabin at or below this price (per the cabin types filter, in the market currency).

## `guests` (type: `integer`):

Number of guests the prices are calculated for.

## `scrapeDetails` (type: `boolean`):

Visit each cruise's details page to add the title, images, full ship and ports-of-call info, taxes and the detailed stateroom price grid. Slower, but captures everything on the details page.

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

Maximum number of itineraries to store.

## `baseUrl` (type: `string`):

Storefront base URL.

## `marketPath` (type: `string`):

Storefront market path segment, e.g. fr/en, uk/en, us/en.

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

Optional proxy used for all outbound requests. Apify Proxy (datacenter) is usually sufficient.

## Actor input object example

```json
{
  "guests": 2,
  "scrapeDetails": true,
  "maxResults": 50,
  "baseUrl": "https://www.ncl.com",
  "marketPath": "fr/en",
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

# 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,
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("vulnv/ncl-cruises-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 = {
    "maxResults": 50,
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("vulnv/ncl-cruises-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 '{
  "maxResults": 50,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call vulnv/ncl-cruises-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "NCL Cruises Scraper — Itineraries, Cabin Prices & Deals",
        "description": "Scrape Norwegian Cruise Line (NCL) itineraries by destination, port, ship, date and duration. Extract full cruise details: sailing dates, ports of call, the complete stateroom price grid and deals.",
        "version": "1.0",
        "x-build-id": "dedqozGN1zX3BqW5k"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/vulnv~ncl-cruises-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-vulnv-ncl-cruises-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/vulnv~ncl-cruises-scraper/runs": {
            "post": {
                "operationId": "runs-sync-vulnv-ncl-cruises-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/vulnv~ncl-cruises-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-vulnv-ncl-cruises-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": {
                    "destinations": {
                        "title": "Destinations",
                        "type": "array",
                        "description": "Filter by destination region. Leave empty for all destinations.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "CARIBBEAN",
                                "BAHAMAS",
                                "BERMUDA",
                                "MEXICAN_RIVIERA",
                                "ALASKA",
                                "HAWAII",
                                "PACIFIC_COASTAL",
                                "CANADA_NEW_ENGL",
                                "PANAMA_CANAL",
                                "MEDITERRANEAN",
                                "GREEK_ISLES",
                                "NORTHERN_EUROPE",
                                "TRANSATLANTIC",
                                "SOUTH_AMERICA",
                                "AFRICA",
                                "ASIA",
                                "AUSTRALIA",
                                "SOUTH_PACIFIC",
                                "EXTRAORDINARY_JOURNEYS",
                                "WEEKEND"
                            ],
                            "enumTitles": [
                                "Caribbean",
                                "Bahamas",
                                "Bermuda",
                                "Mexican Riviera",
                                "Alaska",
                                "Hawaii",
                                "Pacific Coastal",
                                "Canada & New England",
                                "Panama Canal",
                                "Mediterranean",
                                "Greek Isles",
                                "Northern Europe",
                                "Transatlantic",
                                "South America",
                                "Africa",
                                "Asia",
                                "Australia & New Zealand",
                                "South Pacific",
                                "Extraordinary Journeys",
                                "Weekend & Getaways"
                            ]
                        }
                    },
                    "ships": {
                        "title": "Ships",
                        "type": "array",
                        "description": "Filter by NCL ship. Leave empty for all ships.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "PRIMA",
                                "VIVA",
                                "AQUA",
                                "AURA",
                                "LUNA",
                                "ENCORE",
                                "BLISS",
                                "JOY",
                                "ESCAPE",
                                "BREAKAWAY",
                                "GETAWAY",
                                "EPIC",
                                "JADE",
                                "JEWEL",
                                "PEARL",
                                "GEM",
                                "DAWN",
                                "STAR",
                                "SPIRIT",
                                "SUN",
                                "SKY",
                                "PRIDE_AMER"
                            ],
                            "enumTitles": [
                                "Norwegian Prima",
                                "Norwegian Viva",
                                "Norwegian Aqua",
                                "Norwegian Aura",
                                "Norwegian Luna",
                                "Norwegian Encore",
                                "Norwegian Bliss",
                                "Norwegian Joy",
                                "Norwegian Escape",
                                "Norwegian Breakaway",
                                "Norwegian Getaway",
                                "Norwegian Epic",
                                "Norwegian Jade",
                                "Norwegian Jewel",
                                "Norwegian Pearl",
                                "Norwegian Gem",
                                "Norwegian Dawn",
                                "Norwegian Star",
                                "Norwegian Spirit",
                                "Norwegian Sun",
                                "Norwegian Sky",
                                "Pride of America"
                            ]
                        }
                    },
                    "embarkationPorts": {
                        "title": "Departure ports",
                        "type": "array",
                        "description": "Filter by embarkation port (code). Leave empty for all ports.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "MIA",
                                "TPA",
                                "PCV",
                                "NYC",
                                "LAX",
                                "SEA",
                                "SAN",
                                "GAL",
                                "BOS",
                                "MSY",
                                "JAX",
                                "PHL",
                                "HNL",
                                "SJU",
                                "VAN",
                                "QUE",
                                "BCN",
                                "CIV",
                                "VCE",
                                "RAV",
                                "PIR",
                                "IST",
                                "LIS",
                                "TAR",
                                "SOU",
                                "CPH",
                                "REY",
                                "HEL",
                                "BUE",
                                "SYD",
                                "AKL",
                                "PPT",
                                "TOK",
                                "YOK",
                                "HKG",
                                "SIN",
                                "INC",
                                "SAI",
                                "LTK",
                                "WQF"
                            ],
                            "enumTitles": [
                                "Miami",
                                "Tampa",
                                "Port Canaveral",
                                "New York",
                                "Los Angeles",
                                "Seattle",
                                "San Diego",
                                "Galveston",
                                "Boston",
                                "New Orleans",
                                "Jacksonville",
                                "Philadelphia",
                                "Honolulu",
                                "San Juan",
                                "Vancouver",
                                "Quebec City",
                                "Barcelona",
                                "Rome (Civitavecchia)",
                                "Venice",
                                "Ravenna",
                                "Athens (Piraeus)",
                                "Istanbul",
                                "Lisbon",
                                "Tarragona",
                                "Southampton",
                                "Copenhagen",
                                "Reykjavik",
                                "Helsinki",
                                "Buenos Aires",
                                "Sydney",
                                "Auckland",
                                "Papeete (Tahiti)",
                                "Tokyo",
                                "Yokohama",
                                "Hong Kong",
                                "Singapore",
                                "Incheon (Seoul)",
                                "SAI",
                                "LTK",
                                "WQF"
                            ]
                        }
                    },
                    "cabinTypes": {
                        "title": "Cabin types",
                        "type": "array",
                        "description": "Only keep itineraries with availability in these stateroom categories. Leave empty for all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "INSIDE",
                                "OCEANVIEW",
                                "BALCONY",
                                "MINISUITE",
                                "SUITE",
                                "HAVEN"
                            ],
                            "enumTitles": [
                                "Inside",
                                "Oceanview",
                                "Balcony",
                                "Club Balcony Suite",
                                "Suite",
                                "The Haven"
                            ]
                        }
                    },
                    "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."
                    },
                    "departureDateFrom": {
                        "title": "Departure date from",
                        "type": "string",
                        "description": "Only include cruises with a sailing departing on or after this date (YYYY-MM-DD)."
                    },
                    "departureDateTo": {
                        "title": "Departure date to",
                        "type": "string",
                        "description": "Only include cruises with a sailing departing on or before this date (YYYY-MM-DD)."
                    },
                    "maxPrice": {
                        "title": "Maximum price",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Only include cruises with an available cabin at or below this price (per the cabin types filter, in the market currency)."
                    },
                    "guests": {
                        "title": "Guests",
                        "minimum": 1,
                        "maximum": 4,
                        "type": "integer",
                        "description": "Number of guests the prices are calculated for.",
                        "default": 2
                    },
                    "scrapeDetails": {
                        "title": "Scrape cruise details page",
                        "type": "boolean",
                        "description": "Visit each cruise's details page to add the title, images, full ship and ports-of-call info, taxes and the detailed stateroom price grid. Slower, but captures everything on the details page.",
                        "default": true
                    },
                    "maxResults": {
                        "title": "Maximum results",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum number of itineraries to store.",
                        "default": 100
                    },
                    "baseUrl": {
                        "title": "Base URL",
                        "type": "string",
                        "description": "Storefront base URL.",
                        "default": "https://www.ncl.com"
                    },
                    "marketPath": {
                        "title": "Market path",
                        "type": "string",
                        "description": "Storefront market path segment, e.g. fr/en, uk/en, us/en.",
                        "default": "fr/en"
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Optional proxy used for all outbound requests. Apify Proxy (datacenter) is usually sufficient.",
                        "default": {
                            "useApifyProxy": true
                        }
                    }
                }
            },
            "runsResponseSchema": {
                "type": "object",
                "properties": {
                    "data": {
                        "type": "object",
                        "properties": {
                            "id": {
                                "type": "string"
                            },
                            "actId": {
                                "type": "string"
                            },
                            "userId": {
                                "type": "string"
                            },
                            "startedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "finishedAt": {
                                "type": "string",
                                "format": "date-time",
                                "example": "2025-01-08T00:00:00.000Z"
                            },
                            "status": {
                                "type": "string",
                                "example": "READY"
                            },
                            "meta": {
                                "type": "object",
                                "properties": {
                                    "origin": {
                                        "type": "string",
                                        "example": "API"
                                    },
                                    "userAgent": {
                                        "type": "string"
                                    }
                                }
                            },
                            "stats": {
                                "type": "object",
                                "properties": {
                                    "inputBodyLen": {
                                        "type": "integer",
                                        "example": 2000
                                    },
                                    "rebootCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "restartCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "resurrectCount": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "computeUnits": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "options": {
                                "type": "object",
                                "properties": {
                                    "build": {
                                        "type": "string",
                                        "example": "latest"
                                    },
                                    "timeoutSecs": {
                                        "type": "integer",
                                        "example": 300
                                    },
                                    "memoryMbytes": {
                                        "type": "integer",
                                        "example": 1024
                                    },
                                    "diskMbytes": {
                                        "type": "integer",
                                        "example": 2048
                                    }
                                }
                            },
                            "buildId": {
                                "type": "string"
                            },
                            "defaultKeyValueStoreId": {
                                "type": "string"
                            },
                            "defaultDatasetId": {
                                "type": "string"
                            },
                            "defaultRequestQueueId": {
                                "type": "string"
                            },
                            "buildNumber": {
                                "type": "string",
                                "example": "1.0.0"
                            },
                            "containerUrl": {
                                "type": "string"
                            },
                            "usage": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            },
                            "usageTotalUsd": {
                                "type": "number",
                                "example": 0.00005
                            },
                            "usageUsd": {
                                "type": "object",
                                "properties": {
                                    "ACTOR_COMPUTE_UNITS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATASET_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "KEY_VALUE_STORE_WRITES": {
                                        "type": "number",
                                        "example": 0.00005
                                    },
                                    "KEY_VALUE_STORE_LISTS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_READS": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "REQUEST_QUEUE_WRITES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_INTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "DATA_TRANSFER_EXTERNAL_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                                        "type": "integer",
                                        "example": 0
                                    },
                                    "PROXY_SERPS": {
                                        "type": "integer",
                                        "example": 0
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
