# NL Hospital Waiting Times Monitor (NZa Treeknorm) (`codeclouds/nl-ziekenhuis-wachttijden-monitor`) Actor

Wettelijk verplichte NZa-wachttijden per ziekenhuis/behandelcentrum en behandeling, met automatische Treeknorm-overschrijdingsdetectie.

- **URL**: https://apify.com/codeclouds/nl-ziekenhuis-wachttijden-monitor.md
- **Developed by:** [Dennis](https://apify.com/codeclouds) (community)
- **Categories:** Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.00 / 1,000 wachttijd-records

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

## NL Hospital Waiting Times Monitor (NZa Treeknorm) 🏥

Official, **legally mandated** waiting-time data for every Dutch hospital and independent treatment center (ZBC), straight from the **NZa Zorgbeeldportaal** — the same open data Dutch care providers are legally required to submit monthly. No login, no API key, no scraping: this is a direct government REST feed.

### Why this actor?

Dutch hospitals and independent clinics are legally obliged (NZa Regeling NR/REG-2421) to report their waiting times per treatment/specialism every month. This data is public, but it's only exposed via a JSON/XML REST endpoint with no filtering UI and no built-in "is this normal?" signal — you get a raw number of days per care provider/treatment, and you have to know the Treeknorm (the Dutch national waiting-time norm) yourself to know if it matters.

This actor does that interpretation for you:

- ✅ **Automatic Treeknorm-overschrijding detection** — flags every record that legally exceeds the norm (28 days for outpatient visits/diagnostics, 49 days for treatment)
- 🏥 **Full provider + location detail** — care provider name, KVK number, AGB codes, exact address per location
- 🔎 **Specialism and treatment-type filtering** — narrow down to a specialism (e.g. "cardiologie") or treatment type without downloading the full dataset
- 📊 **National dataset, zero configuration** — leave the input empty and get the entire country (~11,000 records) in one run
- 🚫 **No personal data** — this is aggregated, per-provider/per-treatment data with an explicit "insufficient observations" flag from the NZa itself; individual patients are never identifiable

### When should an AI agent use this?

- "Which hospitals near me have the shortest waiting time for cardiology?"
- "Is this hospital's waiting time for hip surgery exceeding the legal Treeknorm?"
- "Compare waiting times for ophthalmology treatments across all providers in the Netherlands."
- "Which care providers are currently violating the Treeknorm for outpatient visits?"
- "Get me the current waiting time for [specific KVK number / care provider]."
- "Track whether waiting times for a specific treatment are improving month over month."

### What this Actor does

- Fetches waiting-time records from the NZa Zorgbeeldportaal REST API (`zorgbeeld.nza.nl`)
- Maps every raw record into a flat, analysis-ready JSON object
- Computes the applicable Treeknorm limit per treatment type and flags violations
- Filters by KVK number(s), specialism (substring search) and/or treatment type
- Caps output per run so you control dataset size and cost

### Input

| Field | Type | Description |
|---|---|---|
| `kvkNummers` | string[] | Exact KVK numbers of care providers to fetch. Leave empty for the entire national dataset. |
| `specialismQuery` | string | Case-insensitive substring match against the medical specialism, e.g. `"oogheelkunde"`. |
| `treatmentTypes` | string[] | Filter on `"Behandeling"` (treatment), `"Polikliniekbezoek"` (outpatient visit) and/or `"Diagnostiek"` (diagnostics). Leave empty for all. |
| `alleenTreeknormOverschrijding` | boolean | Only return combinations that exceed the legal Treeknorm. Default `false`. |
| `maxResults` | integer | Cap on output records per run (default `5000`, max `20000`). |
| `trackTrend` | boolean | Compares each provider/location/treatment combination with the previous run and flags a first-time Treeknorm violation. Default `false`. |

### Output

```json
{
  "kvkNummer": "30178964",
  "zorgaanbieder": "Eyescan Shared Service Centre B.V.",
  "zorgaanbiederAgbCode": "22220126",
  "locatie": "Eyescan Wassenaar",
  "locatieAgbCode": "22220126",
  "adres": {
    "straat": "Rijksstraatweg",
    "huisnummer": "324B",
    "postcode": "2242AB",
    "stad": "Wassenaar"
  },
  "specialisme": "Oogheelkunde (301)",
  "behandeling": "Ooglidcorrectie (oogheelkunde)",
  "behandelingBeschrijving": "Ooglidcorrectie (oogheelkunde) Zorgactiviteitencode(s): 31563, ...",
  "behandelType": "Behandeling",
  "wachttijdDagen": 180,
  "treeknormLimietDagen": 49,
  "treeknormOverschreden": true,
  "voldoendeWaarnemingen": true,
  "meetdatum": "2026-07-13T12:29:04.334Z",
  "rangnummerKortsteWachttijd": 3,
  "treeknormOverschrijdingsFactor": 3.67,
  "treeknormOverschrijdingsDagen": 131,
  "treatmentKey": "TK-oogheelkunde-ooglidcorrectie",
  "locationKey": "LK-eyescan-wassenaar",
  "nieuweOverschrijding": null,
  "overschrijdingOpgelost": null,
  "bron": "NZa Zorgbeeldportaal"
}
````

**`treeknormOverschrijdingsFactor`/`treeknormOverschrijdingsDagen`** are always computed, not only for
violations: the factor is the ratio of waiting time to the Treeknorm limit (`1.0` = exactly on the norm), and
`treeknormOverschrijdingsDagen` is the absolute day difference (negative = comfortably within the norm). This
tells 2 days late apart from 180 days late, instead of a flat boolean.

#### Trend tracking (`trackTrend`, optional, separately charged)

With `trackTrend: true`, every provider/location/treatment combination (`treatmentKey`+`locationKey`) is
compared with the previous run:

- `nieuweOverschrijding`: `null` when no previous run exists for this combination; otherwise `true` only when
  the Treeknorm is violated **this run for the first time** (it wasn't violated last run), `false` otherwise
- `overschrijdingOpgelost`: symmetric with `nieuweOverschrijding` — `null` when no previous run exists;
  otherwise `true` only when a combination that violated the Treeknorm last run **no longer does this run**,
  `false` otherwise

This is the actionable "getting worse"/"getting better" signal for scheduled/recurring runs — a subscriber
sees new violations and resolved violations appear instead of just a snapshot every time.

### Use cases

- **Patient decision support** — compare waiting times across providers before choosing where to go
- **Referrer (huisarts) tooling** — check current waiting times when referring a patient
- **Insurer / benchmarking dashboards** — track Treeknorm compliance across the sector over time
- **AI agents & MCP tools** — flat JSON, small input schema, direct yes/no Treeknorm signal
- **Journalism / research** — analyze which specialisms or regions have the worst access to care

### Pricing

This Actor uses Apify's Pay-Per-Event (PPE) pricing model.

- **Actor Start:** $0.00005 (Apify default)
- **wachttijd-record:** $0.004 per plain waiting-time record (raised from $0.003 — now always includes the
  `treeknormOverschrijdingsFactor`/`-Dagen` severity fields, not just a boolean)
- **treeknorm-overschrijding-alert:** $0.01 per record that exceeds the legal Treeknorm — priced higher because this is the actionable signal (a provider legally failing to meet the national norm), not just a data point
- **nieuwe-overschrijding-signaal:** $0.018 extra, only with `trackTrend` enabled and only when a combination
  violates the Treeknorm for the first time compared to the previous run
- **overschrijding-opgelost-signaal:** $0.018 extra, only with `trackTrend` enabled and only when a
  combination that violated the Treeknorm last run no longer does this run

### Legal

- Source: **NZa Zorgbeeldportaal** (`zorgbeeld.nza.nl`), an official Dutch government (Nederlandse Zorgautoriteit) open data feed. Care providers are legally required to submit this data monthly under NZa Regeling NR/REG-2421.
- No authentication, no scraping — this is a direct, public REST API intended for reuse.
- Data is aggregated per care provider/location/treatment. The NZa itself withholds figures with insufficient underlying observations (`voldoendeWaarnemingen: false`) to prevent individual patients from being identifiable — this actor passes that flag through and never overrides it.
- No personal data of any kind is collected, stored, or output.

### FAQ

**Q: What is the "Treeknorm"?**
A: A widely recognized Dutch national waiting-time norm: max. 4 weeks (28 days) for an outpatient visit or diagnostics, max. 7 weeks (49 days) for treatment. This actor applies it automatically per record.

**Q: Why is `treeknormOverschreden` always `false` for some records even though `wachttijdDagen` is high?**
A: If `voldoendeWaarnemingen` is `false`, the NZa itself flagged the underlying observation count as too low to publish a reliable figure — this actor never marks such a record as a Treeknorm violation.

**Q: How do I find a care provider's KVK number?**
A: Run once with `specialismQuery` or no filter at all — every returned record includes the `kvkNummer`, reusable in future targeted runs.

**Q: What is `rangnummerKortsteWachttijd`?**
A: A rank (1 = shortest waiting time) among all records in *this run* that share the same specialism and treatment — answers "which provider has the shortest wait for X" directly, without you having to sort the output yourself. It's computed only over the records this run returns, not the full national dataset, unless you ran with no filters at all.

**Q: How often is the data updated?**
A: The NZa updates this feed roughly every two weeks; a weekly or monthly scheduled run is more than sufficient.

### Related Actors

Also by this developer:

- **[NL Waterstanden & Watertemperatuur Monitor](../nl-waterstanden-monitor)** — same profile: a direct, authentication-free Dutch open-government-data REST feed with no scraping involved.
- **[NL Parking Monitor](https://apify.com/codeclouds/nl-parking-monitor)** — same profile: a direct, authentication-free Dutch open-government-data feed (RDW), no scraping involved.
- **[NL Milieuzones & Zero-Emissiezones Monitor](https://apify.com/codeclouds/nl-emissiezones-monitor)** — same profile: a direct, authentication-free NDW road-traffic-data feed, no scraping involved.

***

*Keywords: nza wachttijden, ziekenhuis wachttijd, treeknorm, zorgbeeldportaal, dutch hospital waiting times, medisch specialistische zorg, wachtlijst ziekenhuis, healthcare data netherlands.*

### Keywords

netherlands, healthcare, hospital, waiting-time, nza, treeknorm, open-data, government-data, mcp-tool

### Changelog

#### 0.4.0

- Added `overschrijdingOpgelost` field and a new charged event `overschrijding-opgelost-signaal` ($0.018,
  same tier as `nieuwe-overschrijding-signaal`): symmetric trend signal for a combination that violated the
  Treeknorm last run and no longer does this run. Only with `trackTrend` enabled. Price confirmed by the user
  (2026-07-16, see docs/actor-verbeteringen/PRIJSBESLISSINGEN.md). **New event — must still be created in
  Apify Console > Monetization before the next `apify push`.**

#### 0.3.1 - Bugfix

- Fixed `trackTrend` (`nieuwe-overschrijding-signaal`) never seeing prior-run state: the actor was
  reading/writing its snapshot to Apify's per-Run *default* key-value store, which is not shared between
  separate runs. Now uses a named, persistent key-value store. A new baseline will be captured on the next run.

#### 0.3.0

- Added `treeknormOverschrijdingsFactor`/`treeknormOverschrijdingsDagen` — an always-computed severity measure
  (not just a boolean), distinguishing 2 days late from 180 days late. `wachttijd-record` raised from $0.003 to
  $0.004 to reflect this.
- Added `trackTrend`: compares each combination with the previous run and flags first-time Treeknorm
  violations. New charged event `nieuwe-overschrijding-signaal` ($0.018).
- Both confirmed by the user (2026-07-14, see docs/actor-verbeteringen/PRIJSBESLISSINGEN.md).

#### 0.2.0

- Added `rangnummerKortsteWachttijd` — ranks each record (1 = shortest wait) against others in the same
  run sharing the same specialism/treatment, so "shortest waiting time near me" no longer requires sorting
  11,000 records yourself. No pricing change.

#### 0.1.0 - Initial release

- Fetch waiting-time records from the NZa Zorgbeeldportaal REST API, optionally scoped to one or more KVK numbers.
- Automatic Treeknorm-limit computation and violation flagging per treatment type.
- Specialism (substring) and treatment-type filtering.
- Pay-per-event pricing: base record vs. higher-value Treeknorm-violation alert.

# Actor input Schema

## `kvkNummers` (type: `array`):

Exact Dutch Chamber of Commerce (KVK) numbers of the care provider(s) to fetch, e.g. "30178964". Leave empty to fetch the entire national dataset.

## `specialismQuery` (type: `string`):

Case-insensitive substring match against the medical specialism, e.g. "oogheelkunde" or "cardiologie". Leave empty to include all specialisms.

## `treatmentTypes` (type: `array`):

Filter on treatment type. Leave empty for all types.

## `alleenTreeknormOverschrijding` (type: `boolean`):

Only return provider/treatment combinations that exceed the legal Treeknorm (28 days for outpatient visit/diagnostics, 49 days for treatment).

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

Caps how many output records this run produces (1-20,000).

## `trackTrend` (type: `boolean`):

Compares each provider/location/treatment combination with the previous run (via the actor's key-value store) and flags when a combination violates the Treeknorm for the FIRST time. Charges the extra nieuwe-overschrijding-signaal event.

## Actor input object example

```json
{
  "kvkNummers": [],
  "treatmentTypes": [],
  "alleenTreeknormOverschrijding": false,
  "maxResults": 5000,
  "trackTrend": 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 = {};

// Run the Actor and wait for it to finish
const run = await client.actor("codeclouds/nl-ziekenhuis-wachttijden-monitor").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 = {}

# Run the Actor and wait for it to finish
run = client.actor("codeclouds/nl-ziekenhuis-wachttijden-monitor").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 '{}' |
apify call codeclouds/nl-ziekenhuis-wachttijden-monitor --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=codeclouds/nl-ziekenhuis-wachttijden-monitor",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "NL Hospital Waiting Times Monitor (NZa Treeknorm)",
        "description": "Wettelijk verplichte NZa-wachttijden per ziekenhuis/behandelcentrum en behandeling, met automatische Treeknorm-overschrijdingsdetectie.",
        "version": "0.1",
        "x-build-id": "b3KYS2V70garfXeOt"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/codeclouds~nl-ziekenhuis-wachttijden-monitor/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-codeclouds-nl-ziekenhuis-wachttijden-monitor",
                "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/codeclouds~nl-ziekenhuis-wachttijden-monitor/runs": {
            "post": {
                "operationId": "runs-sync-codeclouds-nl-ziekenhuis-wachttijden-monitor",
                "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/codeclouds~nl-ziekenhuis-wachttijden-monitor/run-sync": {
            "post": {
                "operationId": "run-sync-codeclouds-nl-ziekenhuis-wachttijden-monitor",
                "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": {
                    "kvkNummers": {
                        "title": "KVK numbers (care providers)",
                        "type": "array",
                        "description": "Exact Dutch Chamber of Commerce (KVK) numbers of the care provider(s) to fetch, e.g. \"30178964\". Leave empty to fetch the entire national dataset.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "specialismQuery": {
                        "title": "Specialism search",
                        "type": "string",
                        "description": "Case-insensitive substring match against the medical specialism, e.g. \"oogheelkunde\" or \"cardiologie\". Leave empty to include all specialisms."
                    },
                    "treatmentTypes": {
                        "title": "Treatment types",
                        "type": "array",
                        "description": "Filter on treatment type. Leave empty for all types.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "Behandeling",
                                "Polikliniekbezoek",
                                "Diagnostiek"
                            ],
                            "enumTitles": [
                                "Treatment",
                                "Outpatient visit",
                                "Diagnostics"
                            ]
                        },
                        "default": []
                    },
                    "alleenTreeknormOverschrijding": {
                        "title": "Only Treeknorm violations",
                        "type": "boolean",
                        "description": "Only return provider/treatment combinations that exceed the legal Treeknorm (28 days for outpatient visit/diagnostics, 49 days for treatment).",
                        "default": false
                    },
                    "maxResults": {
                        "title": "Max results",
                        "minimum": 1,
                        "maximum": 20000,
                        "type": "integer",
                        "description": "Caps how many output records this run produces (1-20,000).",
                        "default": 5000
                    },
                    "trackTrend": {
                        "title": "Track new Treeknorm violations since previous run",
                        "type": "boolean",
                        "description": "Compares each provider/location/treatment combination with the previous run (via the actor's key-value store) and flags when a combination violates the Treeknorm for the FIRST time. Charges the extra nieuwe-overschrijding-signaal event.",
                        "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
