# GetYourGuide, Viator, Klook & Tiqets Tours Scraper (`memo23/tours-activities-scraper`) Actor

Compare tour prices and reviews across GetYourGuide, Viator, Klook and Tiqets from one scraper. Pull each tour's price, currency, rating, full reviews, duration and location by destination or URL — built for travel price intelligence, market research and OTA monitoring. JSON or CSV

- **URL**: https://apify.com/memo23/tours-activities-scraper.md
- **Developed by:** [Muhamed Didovic](https://apify.com/memo23) (community)
- **Categories:** Travel, AI, Agents
- **Stats:** 17 total users, 15 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.00 / 1,000 tour 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

## Tours & Activities Scraper — GetYourGuide, Viator, Klook & Tiqets

Scrape tours, activities and attraction tickets from **GetYourGuide, Viator, Klook and Tiqets** with a single actor. Paste a city/destination page and crawl every tour on it, or paste individual tour URLs — and get a clean, identical row for each: price, currency, rating, review count, **full review text**, duration, location, provider and images.

![How it works](https://raw.githubusercontent.com/muhamed-didovic/muhamed-didovic.github.io/main/assets/how-it-works-tours.png)

### Why use this scraper

- **Four platforms, one schema.** GetYourGuide, Viator, Klook and Tiqets normalised into the same fields — no per-site glue code on your side.
- **Real reviews on every platform.** Author, rating, title, text and date — including Klook, whose reviews sit behind bot protection that most scrapers can't reach.
- **Crawl a whole city or target single tours.** Drop in a destination page and the actor fans out to every activity; or pass exact tour URLs for surgical pulls.
- **Price intelligence ready.** Stable currency (pin a country), per-tour price and rating make it a drop-in feed for competitor monitoring and market research.
- **Pure HTTP, pay per result.** Fast, no headless browser tax, and you only pay for the tours you actually get.

### Overview

The Tours & Activities Scraper extracts structured data from the four largest online tours/activities marketplaces. Give it any mix of listing pages (city, destination, category) or detail pages (a single tour), or a search term, and it returns one row per tour/activity with pricing, ratings, reviews, duration, location and images — exportable as JSON, CSV or Excel.

### Supported inputs

| Platform | Listing page (crawl) | Single tour (detail) |
|---|---|---|
| **GetYourGuide** | `getyourguide.com/paris-l16/` | `…/…-t989157/` |
| **Viator** | `viator.com/Paris/d479-ttd` | `…/d479-382015P1` |
| **Klook** | `klook.com/en-US/destination/c8-bali/1-things-to-do/` | `…/activity/73749-…` |
| **Tiqets** | `tiqets.com/en/paris-attractions-c66007/` | `…/…-p703295` |

You can mix platforms and page types in one run. Listing pages are expanded into their individual tours automatically.

### Use cases

- **Competitor & price monitoring** — track tour prices and ratings across all four OTAs for the same destinations.
- **Market research** — measure supply, pricing and review sentiment for a city or activity category.
- **Travel content & affiliates** — build "things to do" pages with live prices, ratings and images.
- **Review mining** — pull review text at scale to analyse what travellers say about a tour or operator.
- **Lead lists for operators** — find which experiences exist in a market and how they're positioned.

### How it works

1. **You provide** start URLs (listing or detail) or search terms, plus a result cap.
2. **Listing pages fan out** — the actor discovers every tour URL on a destination/city/category page and paginates where supported.
3. **Each tour is fetched** with the right strategy per platform and parsed into one normalised row.
4. **Reviews are attached** — embedded reviews for GetYourGuide, Viator and Tiqets; Klook reviews are pulled from its review API.
5. **Results stream to the dataset** — one row per tour, ready to export as JSON, CSV or Excel.

### Input configuration

| Field | Type | Description |
|---|---|---|
| `startUrls` | array | Listing or detail URLs from any of the four platforms. |
| `search` | array | Free-text destinations/keywords (resolved to each platform's search page). |
| `maxItems` | integer | Max tours to scrape across all inputs. Default `20`. |
| `includeReviews` | boolean | Capture per-tour review text. Default `true`. |
| `maxReviewsPerItem` | integer | Cap reviews per tour. Default `10`. |
| `country` | string | ISO-2 exit country (e.g. `us`, `gb`, `de`). Also stabilises GetYourGuide's price currency. |
| `maxConcurrency` | integer | Parallel detail fetches. Default `6`. |

#### Example input

```json
{
  "startUrls": [
    { "url": "https://www.getyourguide.com/paris-l16/" },
    { "url": "https://www.viator.com/Paris/d479-ttd" }
  ],
  "maxItems": 50,
  "includeReviews": true,
  "maxReviewsPerItem": 10,
  "country": "us"
}
````

### Output overview

One row per tour/activity, identical shape across all four platforms. Export as JSON, CSV, Excel or HTML from the dataset.

### Output sample

```json
{
  "platform": "getyourguide",
  "url": "https://www.getyourguide.com/paris-l16/louvre-museum-guided-tour-with-mona-lisa-t989157/",
  "productId": "989157",
  "title": "Louvre Priority Access Mona Lisa & Museum Icons Guided Tour",
  "description": "Discover the Louvre the easy way. Meet icons like the Mona Lisa and the Venus de Milo…",
  "price": 90.28,
  "currency": "USD",
  "rating": 4.53,
  "reviewCount": 929,
  "durationText": null,
  "location": "Paris",
  "latitude": null,
  "longitude": null,
  "provider": "GetYourGuide",
  "categories": [],
  "images": [
    "https://cdn.getyourguide.com/img/tour/…/53.jpg"
  ],
  "reviews": [
    {
      "author": "Barbora",
      "rating": 5,
      "title": null,
      "text": "This tour was absolutely excellent from beginning to end…",
      "date": "2026-06-23T15:52:47+02:00",
      "language": null
    }
  ],
  "scrapedAt": "2026-06-23T17:27:26.424Z"
}
```

### Key output fields

| Field | Description |
|---|---|
| `platform` | `getyourguide` | `viator` | `klook` | `tiqets` |
| `url` | Canonical tour URL |
| `productId` | Platform product/activity ID |
| `title` | Tour/activity name |
| `description` | Short description |
| `price` / `currency` | Lead price + ISO currency |
| `rating` / `reviewCount` | Average rating + total reviews |
| `reviews[]` | `author`, `rating`, `title`, `text`, `date`, `language` |
| `durationText` | Duration where the platform exposes it (e.g. Viator) |
| `location` | City/destination or venue address |
| `latitude` / `longitude` | Coordinates where available |
| `provider` | Brand/operator where available |
| `images[]` | Image URLs |
| `scrapedAt` | ISO timestamp |

### FAQ

**Which platforms are supported?** GetYourGuide, Viator, Klook and Tiqets — in a single actor with one output schema.

**Can I scrape a whole city at once?** Yes. Paste a destination/city/category URL and the actor expands it to every tour it lists, paginating where the platform supports it.

**Do I get individual reviews?** Yes, on all four platforms. GetYourGuide, Viator and Tiqets embed reviews on the page; Klook reviews are fetched from its review API.

**Why is `durationText` sometimes null?** Many entries are tickets or transport with no fixed duration, and some platforms don't publish a machine-readable duration. Viator durations are extracted; GetYourGuide doesn't expose a clean value.

**Why does GetYourGuide price currency change?** GetYourGuide localises currency by IP. Set `country` (e.g. `us`) for a stable currency.

**Do you support search by keyword?** Yes, best-effort via the `search` field. Explicit start URLs are the most reliable.

### Support

Found a bug or need another field or platform? Open an issue on the actor's Issues tab in Apify Console — issues are monitored and addressed quickly.

### Additional services

Need a custom field, an extra tours platform, a scheduled feed, or the data pushed to your database/webhook? Reach out via the Issues tab — custom work and integrations are available.

### Explore more scrapers

Looking for related travel data? Check the rest of the portfolio for hotel, flight and review scrapers across major travel platforms.

### ⚠️ Disclaimer

This actor extracts **publicly available** information only. It does not access any data behind a login, and it does not collect personal data beyond what platforms publish publicly (e.g. public review author display names). You are responsible for using the scraped data in compliance with each platform's terms, applicable laws (including GDPR/CCPA where relevant) and copyright. Use the data responsibly and lawfully.

### SEO keywords

GetYourGuide scraper, Viator scraper, Klook scraper, Tiqets scraper, tours and activities scraper, things to do scraper, travel experiences API, tour price scraper, activity reviews scraper, attraction tickets data, OTA price monitoring, travel data extraction, tours data API, experiences price intelligence, destination activities scraper.

# Actor input Schema

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

Listing pages (city / destination / category) or detail pages (a single tour) from GetYourGuide, Viator, Klook or Tiqets. Listing pages fan out to every tour they contain; detail pages are scraped directly.

## `search` (type: `array`):

Optional free-text destinations or keywords (e.g. "Paris", "Rome colosseum"). Each term is resolved to the search page of every platform. Best-effort — explicit Start URLs are more reliable.

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

Maximum number of tours/activities to scrape across all start URLs.

## `includeReviews` (type: `boolean`):

Capture individual review text per tour (author, rating, title, text, date) where the platform exposes it on the page. GetYourGuide, Viator and Tiqets embed reviews; Klook returns rating + review count only.

## `maxReviewsPerItem` (type: `integer`):

Upper bound on reviews captured per tour when 'Include reviews' is on.

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

Optional ISO-2 country code (e.g. 'us', 'gb', 'de') for the residential exit. All four platforms localize price currency by IP — set this for a consistent currency across results.

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

Parallel detail-page fetches. Lower this if you hit rate limits.

## `saveDebugFiles` (type: `boolean`):

Save raw HTML of each detail page to the key-value store for debugging.

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.getyourguide.com/paris-l16/"
    },
    {
      "url": "https://www.viator.com/Paris/d479-ttd"
    },
    {
      "url": "https://www.klook.com/en-US/destination/c8-bali/1-things-to-do/"
    },
    {
      "url": "https://www.tiqets.com/en/paris-attractions-c66007/"
    }
  ],
  "search": [],
  "maxItems": 20,
  "includeReviews": true,
  "maxReviewsPerItem": 10,
  "maxConcurrency": 6,
  "saveDebugFiles": false
}
```

# 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.getyourguide.com/paris-l16/"
        },
        {
            "url": "https://www.viator.com/Paris/d479-ttd"
        },
        {
            "url": "https://www.klook.com/en-US/destination/c8-bali/1-things-to-do/"
        },
        {
            "url": "https://www.tiqets.com/en/paris-attractions-c66007/"
        }
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("memo23/tours-activities-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.getyourguide.com/paris-l16/" },
        { "url": "https://www.viator.com/Paris/d479-ttd" },
        { "url": "https://www.klook.com/en-US/destination/c8-bali/1-things-to-do/" },
        { "url": "https://www.tiqets.com/en/paris-attractions-c66007/" },
    ] }

# Run the Actor and wait for it to finish
run = client.actor("memo23/tours-activities-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.getyourguide.com/paris-l16/"
    },
    {
      "url": "https://www.viator.com/Paris/d479-ttd"
    },
    {
      "url": "https://www.klook.com/en-US/destination/c8-bali/1-things-to-do/"
    },
    {
      "url": "https://www.tiqets.com/en/paris-attractions-c66007/"
    }
  ]
}' |
apify call memo23/tours-activities-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "GetYourGuide, Viator, Klook & Tiqets Tours Scraper",
        "description": "Compare tour prices and reviews across GetYourGuide, Viator, Klook and Tiqets from one scraper. Pull each tour's price, currency, rating, full reviews, duration and location by destination or URL — built for travel price intelligence, market research and OTA monitoring. JSON or CSV",
        "version": "0.0",
        "x-build-id": "QA32uQD0gU2KapfPE"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/memo23~tours-activities-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-memo23-tours-activities-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/memo23~tours-activities-scraper/runs": {
            "post": {
                "operationId": "runs-sync-memo23-tours-activities-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/memo23~tours-activities-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-memo23-tours-activities-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": {
                    "startUrls": {
                        "title": "Start URLs",
                        "type": "array",
                        "description": "Listing pages (city / destination / category) or detail pages (a single tour) from GetYourGuide, Viator, Klook or Tiqets. Listing pages fan out to every tour they contain; detail pages are scraped directly.",
                        "items": {
                            "type": "object",
                            "required": [
                                "url"
                            ],
                            "properties": {
                                "url": {
                                    "type": "string",
                                    "title": "URL of a web page",
                                    "format": "uri"
                                }
                            }
                        }
                    },
                    "search": {
                        "title": "Search destinations / keywords",
                        "type": "array",
                        "description": "Optional free-text destinations or keywords (e.g. \"Paris\", \"Rome colosseum\"). Each term is resolved to the search page of every platform. Best-effort — explicit Start URLs are more reliable.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxItems": {
                        "title": "Max tours",
                        "minimum": 1,
                        "type": "integer",
                        "description": "Maximum number of tours/activities to scrape across all start URLs.",
                        "default": 20
                    },
                    "includeReviews": {
                        "title": "Include reviews",
                        "type": "boolean",
                        "description": "Capture individual review text per tour (author, rating, title, text, date) where the platform exposes it on the page. GetYourGuide, Viator and Tiqets embed reviews; Klook returns rating + review count only.",
                        "default": true
                    },
                    "maxReviewsPerItem": {
                        "title": "Max reviews per tour",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Upper bound on reviews captured per tour when 'Include reviews' is on.",
                        "default": 10
                    },
                    "country": {
                        "title": "Exit country (ISO-2)",
                        "type": "string",
                        "description": "Optional ISO-2 country code (e.g. 'us', 'gb', 'de') for the residential exit. All four platforms localize price currency by IP — set this for a consistent currency across results."
                    },
                    "maxConcurrency": {
                        "title": "Max concurrency",
                        "minimum": 1,
                        "maximum": 20,
                        "type": "integer",
                        "description": "Parallel detail-page fetches. Lower this if you hit rate limits.",
                        "default": 6
                    },
                    "saveDebugFiles": {
                        "title": "Save debug HTML",
                        "type": "boolean",
                        "description": "Save raw HTML of each detail page to the key-value store for debugging.",
                        "default": 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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
