# Kurzurlaub Reviews Scraper | 1.5$/1k (`trev0n/kurzurlaub-reviews-scraper`) Actor

Scrapes hotel guest reviews from Kurzurlaub.de - Germany's leading short-trip & wellness platform. HTTP-based, fast and reliable, with overall and per-category ratings, reviewer details, and hotelier responses.

- **URL**: https://apify.com/trev0n/kurzurlaub-reviews-scraper.md
- **Developed by:** [Paweł](https://apify.com/trev0n) (community)
- **Categories:** Travel, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.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

## 🏨 Kurzurlaub Reviews Scraper

🎯 **Pull thousands of real German hotel guest reviews from Kurzurlaub.de — complete with star ratings, per-category scores, and hotelier replies.**

This scraper collects **structured hotel review data** from Kurzurlaub.de, Germany's leading platform for short trips, wellness breaks, and city getaways. For every review you get the reviewer, date, title, full comment, an overall score and six category scores (hotel, room, service, gastronomy, wellness, location), plus the hotel's official response when there is one — and rich hotel-level context like address, star rating, and aggregated ratings.

### 🚀 What Does It Do?

This scraper automatically visits hotel pages on Kurzurlaub.de and collects **clean, ready-to-use review data** — no manual copy-pasting, no browsing through endless pages. Just paste your hotels and hit Start.

💡 **Two ways to use it:**

1. **🔗 Direct Hotel Mode** — Paste hotel offer pages (or review links) and get every review for those hotels.
2. **🔍 Discovery Mode** — Paste a category or region page (e.g. all wellness hotels) and the scraper finds and scrapes every hotel on it automatically.

### 👥 Who Is This For?

| 🏢 Use Case                     | 💬 How It Helps                                                                     |
| ------------------------------- | ----------------------------------------------------------------------------------- |
| 🏨 **Hotels & Resorts**         | Monitor your own reputation and benchmark against competitors on the DACH market    |
| 📊 **Market Researchers**       | Build rich German-language sentiment datasets for tourism and hospitality analysis  |
| 🤖 **AI / Data Teams**          | Gather authentic review text and ratings to train or evaluate travel-focused models |
| 📣 **SEO & Marketing Agencies** | Track guest feedback trends and surface review highlights for client campaigns      |
| 🧳 **Travel-Tech Platforms**    | Enrich your own listings with real guest ratings and category breakdowns            |
| 🔎 **Competitive Analysts**     | Compare category scores (service, food, wellness) across rival hotels at scale      |

### ✨ Features

- 🏨 **Full Review Extraction** — Reviewer, date, title, and the complete comment text
- ⭐ **Overall + 6 Category Ratings** — Hotel, room, service & staff, gastronomy, wellness, and location, on Kurzurlaub's 1–6 scale
- 💬 **Hotelier Responses** — Captures the hotel's official reply and its date when present
- 🏷️ **Rich Hotel Context** — Star rating, address, coordinates, price range, amenities, total review count, and aggregated category scores
- 📅 **Date Cutoff Filter** — Keep only reviews from a chosen date onwards
- 🔢 **Per-Hotel & Global Limits** — Cap reviews per hotel or across the whole run
- 🔍 **Auto-Discovery** — Feed a category or region page and it scrapes every hotel on it
- ⚡ **Fast & Scalable** — Lightweight and efficient; scrape thousands of reviews per run
- 🧹 **Built-in Deduplication** — Each hotel and review is collected once, even across overlapping inputs
- 📤 **Export Anywhere** — Download results as JSON, CSV, Excel, or push to Google Sheets, Zapier, Make, or your CRM

### 🎛️ Filters & Options

| Option                       | What It Does                                                                         |
| ---------------------------- | ------------------------------------------------------------------------------------ |
| 🔗 **Start URLs**            | Hotel offer pages, review links, or category/region listing pages from Kurzurlaub.de |
| 📅 **Cutoff Date**           | Keep only reviews written on or after this date (Europe/Berlin timezone)             |
| 🔢 **Max Reviews Per Hotel** | Limit how many reviews to pull for each hotel (newest first)                         |
| 🏨 **Max Hotels**            | In discovery mode, cap how many hotels are scraped from a listing page               |
| 🔢 **Max Total Reviews**     | Global cap on reviews collected across the whole run                                 |
| 🌐 **Proxy Configuration**   | Optional — works without a proxy, with Apify Proxy available for higher volumes      |

### 📦 What You Get (Output Fields)

Every review includes:

#### Review

| Field          | Example                                                               |
| -------------- | --------------------------------------------------------------------- |
| reviewerName   | `Viola`                                                               |
| reviewDate     | `2025-01-04`                                                          |
| reviewDateRaw  | `04.01.2025`                                                          |
| title          | `Silvester im Seaside Park Hotel - 4 Tage`                            |
| comment        | `Die Lage ist super direkt an der Ostsee. Personal und Sauberkeit 1a` |
| overallRating  | `5.1`                                                                 |
| ratingScaleMax | `6`                                                                   |

#### Category Ratings

| Field                                | Example |
| ------------------------------------ | ------- |
| categoryRatings.hotel                | `6.0`   |
| categoryRatings.room                 | `6.0`   |
| categoryRatings.serviceStaff         | `5.0`   |
| categoryRatings.gastronomy           | `4.0`   |
| categoryRatings.leisureWellness      | `6.0`   |
| categoryRatings.locationSurroundings | `4.5`   |

#### Hotelier Response

| Field                | Example                                                    |
| -------------------- | ---------------------------------------------------------- |
| hotelierResponse     | `Sehr geehrter Gast, herzlichen Dank für Ihr Feedback ...` |
| hotelierResponseDate | `2026-05-29`                                               |

#### Hotel

| Field                             | Example                                                                        |
| --------------------------------- | ------------------------------------------------------------------------------ |
| hotelId                           | `9408`                                                                         |
| hotelName                         | `Hotel Seaside Park Resort`                                                    |
| hotelUrl                          | `https://www.kurzurlaub.de/angebote/367978-...-hotel-seaside-park-resort.html` |
| hotelStarRating                   | `4`                                                                            |
| hotel.aggregateRating.ratingValue | `5.2`                                                                          |
| hotel.aggregateRating.ratingCount | `68`                                                                           |
| hotel.totalReviewCount            | `68`                                                                           |
| hotel.aggregatedCategoryRatings   | `{ "hotel": 5.6, "room": 5.6, "serviceStaff": 5.0 }`                           |
| hotel.address.city                | `Kolberg`                                                                      |
| hotel.geo.latitude                | `54.18995927`                                                                  |

### 📊 Example Output

```json
{
    "hotelId": "9408",
    "hotelName": "Hotel Seaside Park Resort",
    "hotelUrl": "https://www.kurzurlaub.de/angebote/367978-wellness-kurzurlaub-in-kolberg-6-tage-inkl-wellnesspaket-hotel-seaside-park-resort.html",
    "hotelStarRating": 4,
    "reviewerName": "Viola",
    "reviewDate": "2025-01-04",
    "reviewDateRaw": "04.01.2025",
    "title": "Silvester im Seaside Park Hotel - 4 Tage",
    "comment": "Das Sylvesterbuffet war sehr gut. Für Familien ist es sehr schön. Die Lage ist super direkt an der Ostsee. Personal und Sauberkeit 1a",
    "overallRating": 5.1,
    "ratingScaleMax": 6,
    "categoryRatings": {
        "hotel": 6.0,
        "room": 6.0,
        "serviceStaff": 5.0,
        "gastronomy": 4.0,
        "leisureWellness": 6.0,
        "locationSurroundings": 4.5
    },
    "hotelierResponse": null,
    "hotelierResponseDate": null,
    "hotel": {
        "id": "9408",
        "name": "Hotel Seaside Park Resort",
        "starRating": 4,
        "priceRange": "49,00 EUR - 1.099,00 EUR",
        "image": "https://www.kurzurlaub.de/images/object/009408/hotel/3327223-hotel-seaside-park-resort-original.jpg",
        "address": {
            "street": "Wschodnia 20",
            "postalCode": "78-100",
            "city": "Kolberg",
            "region": "Westpommersche Ostseeküste",
            "country": "Polen"
        },
        "geo": { "latitude": 54.18995927, "longitude": 15.60549234 },
        "aggregateRating": { "ratingValue": 5.2, "ratingCount": 68, "bestRating": 6, "worstRating": 1 },
        "totalReviewCount": 68,
        "aggregatedCategoryRatings": {
            "hotel": 5.6,
            "room": 5.6,
            "serviceStaff": 5.0,
            "gastronomy": 5.1,
            "leisureWellness": 5.2,
            "locationSurroundings": 4.8
        },
        "amenities": ["Frühstück", "Halbpension", "Spielplatz", "Fahrradvermietung"]
    },
    "scrapedAt": "2026-06-30T12:00:00.000Z"
}
````

### 📋 Dataset Views

The Apify Console gives you **4 ready-made table views** to quickly browse your results:

| View                      | What It Shows                                                     |
| ------------------------- | ----------------------------------------------------------------- |
| 📊 **Overview**           | Hotel, reviewer, date, overall rating, title, and comment         |
| ⭐ **Ratings**            | Overall plus the six category scores side by side                 |
| 💬 **Hotelier Responses** | Reviews that received an official reply from the hotel            |
| 📋 **Full Details**       | Every single field — the complete dataset including hotel context |

### ❓ FAQ

**🤔 Which rating scale does Kurzurlaub use?**
Kurzurlaub rates on a 1–6 scale where 6.0 is the best possible score. Both overall and category ratings use this scale, and `ratingScaleMax` is included in every record.

**🤔 Can I scrape every hotel in a region or category?**
Yes — paste a category or region listing page (e.g. all wellness hotels) and turn on discovery mode. The scraper finds and scrapes every hotel on it, with an optional cap.

**🤔 Can I get only recent reviews?**
Absolutely. Set a cutoff date and only reviews written on or after that date are kept. Reviews are collected newest-first, so this is fast and efficient.

**🤔 Does it capture the hotel's replies to reviews?**
Yes — when a hotel has responded to a review, both the response text and its date are included.

**🤔 Can I export the data?**
Yes — JSON, CSV, Excel, XML, HTML, RSS. You can also push data directly to Google Sheets, Zapier, Make, or any webhook/API endpoint.

**🤔 How often should I run this?**
For fresh data, run daily or weekly. You can schedule automatic runs on Apify with just a few clicks.

**🤔 Does it work with proxies?**
Yes — it runs fine without a proxy, and you can enable Apify's built-in proxy service for higher volumes or extra reliability.

### 🛠️ Need Custom Filters or Features?

**I'm happy to customize this scraper for your specific needs!** 🤝

Whether you need:

- 🎯 Additional filters (minimum rating, keyword in comment, only reviews with hotelier responses, specific regions)
- 📊 Extra data fields or custom output formats
- 🔄 Integration with your CRM, Google Sheets, or database
- ⏰ Scheduled scraping with automatic deduplication
- 🌐 Scraping from other travel & hotel review platforms alongside Kurzurlaub.de

👉 **Don't hesitate to reach out via private message** — I respond quickly and I'm always open to building exactly what you need. No request is too small or too specific!

### ⚖️ Legal & Ethical Use

This scraper collects **only publicly available information** from Kurzurlaub.de. It does not access private data, bypass authentication, or collect personal contact details. Please use the data responsibly and in compliance with applicable laws and platform terms of service.

# Actor input Schema

## `startUrls` (type: `array`):

Kurzurlaub.de URLs to scrape. Paste hotel offer pages (e.g. https://www.kurzurlaub.de/angebote/367978-...-hotel-seaside-park-resort.html). You can also paste category / region listing pages (e.g. https://www.kurzurlaub.de/wellnesshotel.html) to automatically discover and scrape every hotel on them.

## `maxReviewsPerHotel` (type: `integer`):

Maximum number of reviews to extract for each hotel. Reviews are returned newest-first. Set to 0 for no limit (all reviews).

## `cutoffDate` (type: `string`):

Only keep reviews written on or after this date (format YYYY-MM-DD). Dates are interpreted in the Europe/Berlin timezone. Leave empty to keep all reviews.

## `maxHotels` (type: `integer`):

When you provide category / region listing pages, this caps how many hotels are discovered and scraped from them. Set to 0 for no limit. Ignored when you provide hotel offer pages directly.

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

Global cap on the total number of reviews across all hotels in one run. Set to 0 for no limit.

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

Maximum number of parallel requests.

## `maxRequestRetries` (type: `integer`):

How many times to retry a failed request before giving up.

## `maxRequestsPerMinute` (type: `integer`):

Throttle requests to be polite to the target site.

## `ignoreUrlFailures` (type: `boolean`):

Continue the run even when some URLs fail after all retries.

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

Optional proxy settings. Kurzurlaub.de works without a proxy, but you can enable Apify Proxy for higher volumes or extra reliability.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.kurzurlaub.de/angebote/367978-wellness-kurzurlaub-in-kolberg-6-tage-inkl-wellnesspaket-hotel-seaside-park-resort.html"
    }
  ],
  "maxReviewsPerHotel": 100,
  "cutoffDate": "2025-01-01",
  "maxHotels": 0,
  "maxItems": 0,
  "maxConcurrency": 10,
  "maxRequestRetries": 4,
  "maxRequestsPerMinute": 120,
  "ignoreUrlFailures": true,
  "proxyConfiguration": {
    "useApifyProxy": false
  }
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "startUrls": [
        {
            "url": "https://www.kurzurlaub.de/angebote/367978-wellness-kurzurlaub-in-kolberg-6-tage-inkl-wellnesspaket-hotel-seaside-park-resort.html"
        }
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("trev0n/kurzurlaub-reviews-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 = { "startUrls": [{ "url": "https://www.kurzurlaub.de/angebote/367978-wellness-kurzurlaub-in-kolberg-6-tage-inkl-wellnesspaket-hotel-seaside-park-resort.html" }] }

# Run the Actor and wait for it to finish
run = client.actor("trev0n/kurzurlaub-reviews-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 '{
  "startUrls": [
    {
      "url": "https://www.kurzurlaub.de/angebote/367978-wellness-kurzurlaub-in-kolberg-6-tage-inkl-wellnesspaket-hotel-seaside-park-resort.html"
    }
  ]
}' |
apify call trev0n/kurzurlaub-reviews-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Kurzurlaub Reviews Scraper | 1.5$/1k",
        "description": "Scrapes hotel guest reviews from Kurzurlaub.de - Germany's leading short-trip & wellness platform. HTTP-based, fast and reliable, with overall and per-category ratings, reviewer details, and hotelier responses.",
        "version": "1.0",
        "x-build-id": "N4aUWSy91ZpYGQLUn"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/trev0n~kurzurlaub-reviews-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-trev0n-kurzurlaub-reviews-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/trev0n~kurzurlaub-reviews-scraper/runs": {
            "post": {
                "operationId": "runs-sync-trev0n-kurzurlaub-reviews-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/trev0n~kurzurlaub-reviews-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-trev0n-kurzurlaub-reviews-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",
                "required": [
                    "startUrls"
                ],
                "properties": {
                    "startUrls": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "Kurzurlaub.de URLs to scrape. Paste hotel offer pages (e.g. https://www.kurzurlaub.de/angebote/367978-...-hotel-seaside-park-resort.html). You can also paste category / region listing pages (e.g. https://www.kurzurlaub.de/wellnesshotel.html) to automatically discover and scrape every hotel on them.",
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "maxReviewsPerHotel": {
                        "title": "Max reviews per hotel",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum number of reviews to extract for each hotel. Reviews are returned newest-first. Set to 0 for no limit (all reviews).",
                        "default": 100
                    },
                    "cutoffDate": {
                        "title": "Cutoff date",
                        "type": "string",
                        "description": "Only keep reviews written on or after this date (format YYYY-MM-DD). Dates are interpreted in the Europe/Berlin timezone. Leave empty to keep all reviews."
                    },
                    "maxHotels": {
                        "title": "Max hotels (discovery mode)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "When you provide category / region listing pages, this caps how many hotels are discovered and scraped from them. Set to 0 for no limit. Ignored when you provide hotel offer pages directly.",
                        "default": 0
                    },
                    "maxItems": {
                        "title": "Max total reviews",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Global cap on the total number of reviews across all hotels in one run. Set to 0 for no limit.",
                        "default": 0
                    },
                    "maxConcurrency": {
                        "title": "Max concurrency",
                        "minimum": 1,
                        "maximum": 50,
                        "type": "integer",
                        "description": "Maximum number of parallel requests.",
                        "default": 10
                    },
                    "maxRequestRetries": {
                        "title": "Max request retries",
                        "minimum": 0,
                        "maximum": 20,
                        "type": "integer",
                        "description": "How many times to retry a failed request before giving up.",
                        "default": 4
                    },
                    "maxRequestsPerMinute": {
                        "title": "Max requests per minute",
                        "minimum": 10,
                        "maximum": 600,
                        "type": "integer",
                        "description": "Throttle requests to be polite to the target site.",
                        "default": 120
                    },
                    "ignoreUrlFailures": {
                        "title": "Ignore URL failures",
                        "type": "boolean",
                        "description": "Continue the run even when some URLs fail after all retries.",
                        "default": true
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Optional proxy settings. Kurzurlaub.de works without a proxy, but you can enable Apify Proxy for higher volumes or extra reliability.",
                        "default": {
                            "useApifyProxy": false
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
