# Arbeitnow Jobs Scraper (`solidcode/arbeitnow-scraper`) Actor

\[💰 $0.50 / 1K] Extract job postings from Arbeitnow, the European job board for remote and DACH tech roles. Filter by keyword, job type, tags, location, and posting date — each result includes title, company, location, remote flag, full description, tags, and apply link.

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

## Pricing

from $0.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.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## Arbeitnow Jobs Scraper

Pull live job postings from Arbeitnow at scale — full job descriptions, employment types, skill tags, company names, locations, remote flags, and direct apply links for every open role across Germany, Austria, Switzerland, and remote Europe. Built for recruiters, job-market analysts, and aggregator platforms who need fresh DACH and remote-tech listings without checking the board page by page every morning.

### Why This Scraper?

- **Seven employment-type filters with bilingual matching** — Full-time, Part-time, Internship, Working student, Apprenticeship / Dual studies, Freelance, and Contract, matched across both English and German source labels (Vollzeit, Praktikum, Werkstudent, Festanstellung) so nothing slips through the language gap.
- **Full job descriptions, not snippets** — every row carries the complete posting body (formatted HTML), so you get requirements, benefits, and contact details — not a one-line teaser.
- **Recency window down to the last 24 hours** — pull only jobs posted in the last 1, 3, 7, 14, or 30 days; perfect for scheduled runs that grab just the newest roles.
- **Remote-only switch for distributed hiring** — one toggle returns only roles flagged remote-friendly, the core of Arbeitnow's audience.
- **Strong DACH and European coverage** — Berlin, Munich, Vienna, Zurich and beyond, with German-city location matching built in (München, Köln, Wien).
- **Free-text search across title, company, and description** — match "Rust", "growth marketing", or a specific employer name anywhere in the posting, not just the headline.
- **Skill-tag filtering** — narrow to roles carrying tags like JavaScript, Python, Marketing, or Design.
- **One flat row per job** — title, company, location, remote flag, job types, tags, full description, apply URL, and posting date in a single clean record, deduplicated by job, ready for any spreadsheet or CRM.
- **Up to 100 jobs per page with sustained pagination** — walks the entire feed to the natural end, or stops cleanly at your result cap.

### Use Cases

**Recruitment & Talent Sourcing**
- Build a daily feed of new tech roles in Berlin, Munich, or Vienna
- Track which companies are actively hiring for specific stacks
- Monitor competitor job postings to read their roadmap and team growth
- Source remote-friendly roles for distributed candidate pools

**Job-Market Research**
- Map demand for skills like Python, React, or DevOps across the DACH region
- Compare employment-type mix (full-time vs. working student vs. freelance)
- Measure how quickly postings appear and disappear from the market
- Benchmark remote-work adoption across German-speaking employers

**Job Boards & Aggregators**
- Power a niche board with fresh, structured DACH and remote listings
- Enrich an existing aggregator with full descriptions and apply links
- Keep a curated feed current with daily recency-windowed runs
- Deduplicate and normalize postings into your own schema

**Career Tools & Alerts**
- Build keyword alerts for candidates watching a specific role or company
- Feed a CV-matching engine with complete job-requirement text
- Surface only roles posted in the last 24 hours for instant notifications
- Filter by tag and location to drive personalized recommendations

### Getting Started

#### Newest software roles

The simplest start — a keyword and a result cap:

```json
{
    "searchKeyword": "software engineer",
    "maxResults": 100
}
````

#### Remote roles from the last week

```json
{
    "searchKeyword": "python",
    "remoteOnly": true,
    "postedWithinDays": "7",
    "maxResults": 200
}
```

#### Berlin working-student and internship roles

```json
{
    "jobTypes": ["working_student", "internship"],
    "location": "Berlin",
    "tags": ["marketing"],
    "maxResults": 150
}
```

#### Full-featured run

```json
{
    "searchKeyword": "data",
    "jobTypes": ["full_time", "contract"],
    "tags": ["python", "sql"],
    "location": "München",
    "remoteOnly": false,
    "postedWithinDays": "14",
    "maxResults": 500
}
```

### Input Reference

#### What to Scrape

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `searchKeyword` | string | `"software engineer"` | Word or phrase matched across job title, company name, and full description. Leave blank to collect all jobs matching the filters below. |

#### Filters

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `jobTypes` | array (multi-select) | `[]` (all) | Keep only these employment types: Full-time, Part-time, Internship, Working student, Apprenticeship / Dual studies, Freelance, Contract. Matching is keyword-based and handles both English and German labels. |
| `tags` | array | `[]` (all) | Keep only jobs carrying any of these skill or category tags (e.g. "javascript", "python", "marketing", "design"). Case-insensitive. |
| `location` | string | `""` (any) | Keep only jobs whose location contains this text (e.g. "Berlin", "München", "Vienna"). |
| `remoteOnly` | boolean | `false` | Turn on to return only roles that allow remote work. |
| `postedWithinDays` | select | `Any time` | Keep only jobs posted within this window: Any time, Last 24 hours, Last 3 days, Last 7 days, Last 14 days, or Last 30 days. |

#### Limits

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `maxResults` | integer | `100` | Hard cap on total job rows returned. Set to 0 for no cap. The run keeps the full last page even if it slightly overshoots. |

### Output

Each job is returned as one flat record:

```json
{
    "title": "Senior Backend Engineer (m/f/d)",
    "companyName": "Acme GmbH",
    "location": "Berlin, Germany",
    "isRemote": true,
    "jobTypes": ["Full-time", "Permanent"],
    "tags": ["python", "django", "postgresql"],
    "description": "<p>We are looking for a Senior Backend Engineer to join our platform team...</p>",
    "slug": "senior-backend-engineer-m-f-d-acme-gmbh-berlin-123456",
    "url": "https://www.arbeitnow.com/jobs/companies/acme-gmbh/senior-backend-engineer-berlin-123456",
    "createdAt": 1717593600,
    "postedAt": "2026-06-05T12:00:00Z"
}
```

#### Fields

| Field | Type | Description |
|-------|------|-------------|
| `title` | string | Job title as published |
| `companyName` | string | Hiring company name |
| `location` | string | Job location (city, region, or country) |
| `isRemote` | boolean | Whether the role allows remote work |
| `jobTypes` | string\[] | Employment-type labels for the role |
| `tags` | string\[] | Skill and category tags attached to the posting |
| `description` | string | Full job description (formatted HTML) |
| `slug` | string | Unique posting identifier used for deduplication |
| `url` | string | Direct link to the job posting and apply page |
| `createdAt` | number | Posting time as a Unix timestamp (seconds) |
| `postedAt` | string | Posting time as a human-readable ISO 8601 date |

### Tips for Best Results

- **Match German labels too** — the source mixes languages, so `jobTypes` keyword matching already catches Vollzeit, Praktikum, and Werkstudent. You don't need to add German terms yourself; just pick the English option.
- **Use the recency window for scheduled runs** — set `postedWithinDays` to "Last 24 hours" on a daily schedule to capture only brand-new postings; the run stops automatically once it reaches older jobs, keeping each run fast and cheap.
- **Search location names in their native spelling** — "München" and "Wien" match more local listings than "Munich" and "Vienna".
- **Start small to validate** — run with `maxResults` of 50 first to confirm the filter mix returns the roles you expect, then scale up.
- **Combine remote with a keyword** — pairing `remoteOnly` with a stack keyword (e.g. "react") is the fastest way to a clean distributed-hiring shortlist.
- **Leave everything blank for the full feed** — with no filters set, the scraper walks the entire current job board to the end.
- **Keep tags broad-ish** — very narrow tag combinations may end a run early once a long stretch of pages yields no matches; widen the tag or drop a filter for a fuller harvest.

### Pricing

**From $0.50 per 1,000 results** — among the most affordable job-board scrapers on the platform. No compute or time-based charges — you pay per result, plus a small fixed per-run start fee. Bronze, Silver, and Gold subscribers pay progressively less; the table below shows total cost at each discount tier.

| Results | No discount | Bronze | Silver | Gold |
|---------|-------------|--------|--------|------|
| 100 | $0.06 | $0.056 | $0.053 | $0.05 |
| 1,000 | $0.60 | $0.56 | $0.53 | $0.50 |
| 10,000 | $6.00 | $5.60 | $5.30 | $5.00 |
| 100,000 | $60.00 | $56.00 | $53.00 | $50.00 |

A "result" is any job row in the output dataset. Platform fees are additional and depend on your Apify plan.

### Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

- **Zapier** / **Make** / **n8n** — Workflow automation
- **Google Sheets** — Direct spreadsheet export
- **Slack** / **Email** — Notifications on new results
- **Webhooks** — Trigger custom APIs on run completion
- **Apify API** — Full programmatic access

### Legal & Ethical Use

This actor is designed for legitimate recruitment research, job-market analysis, and aggregation. Users are responsible for complying with applicable laws and Arbeitnow's Terms of Service. Do not use extracted data for spam, harassment, or any unlawful purpose, and handle any personal data contained in postings responsibly and in line with applicable privacy regulations.

# Actor input Schema

## `searchKeyword` (type: `string`):

Word or phrase to match across job title, company name, and description (e.g. 'software engineer', 'product manager', 'marketing'). Leave blank to collect all jobs matching the filters below.

## `jobTypes` (type: `array`):

Only include jobs of these employment types. Matching is keyword-based and case-insensitive — a job is kept if any of its listed employment types contains a matching keyword (the source data mixes English and German labels, e.g. 'Full-time permanent', 'Werkstudent'). Leave empty to include all types.

## `tags` (type: `array`):

Only include jobs carrying any of these skill or category tags (e.g. 'javascript', 'python', 'marketing', 'design'). Matching is case-insensitive. Very narrow tags combined with other filters may end the run early once a stretch of pages yields no matches. Leave empty to include all tags.

## `location` (type: `string`):

Only include jobs whose location contains this text (e.g. 'Berlin', 'München', 'Vienna'). Leave blank for any location.

## `remoteOnly` (type: `boolean`):

Turn on to return only jobs that allow remote work.

## `postedWithinDays` (type: `string`):

Only include jobs posted within this time window. Great for daily or weekly scheduled runs that pick up just the newest postings — the run stops automatically once it reaches postings older than the window.

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

Hard cap on total job rows returned. Default 100 — increase for bigger runs, or set to 0 for no cap (an internal upper bound still applies to prevent runaway pagination). The actor stops requesting new pages once this number is hit but keeps the full last page even if it slightly overshoots.

## Actor input object example

```json
{
  "searchKeyword": "software engineer",
  "jobTypes": [],
  "tags": [],
  "remoteOnly": false,
  "postedWithinDays": "0",
  "maxResults": 100
}
```

# Actor output Schema

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

Table of jobs with the most useful fields — title, company, location, remote flag, posting date, and link.

## `details` (type: `string`):

Full per-job rows including description, tags, job types, slug, and timestamps.

# 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 = {
    "searchKeyword": "software engineer",
    "jobTypes": [],
    "tags": [],
    "location": "",
    "remoteOnly": false,
    "postedWithinDays": "0",
    "maxResults": 100
};

// Run the Actor and wait for it to finish
const run = await client.actor("solidcode/arbeitnow-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 = {
    "searchKeyword": "software engineer",
    "jobTypes": [],
    "tags": [],
    "location": "",
    "remoteOnly": False,
    "postedWithinDays": "0",
    "maxResults": 100,
}

# Run the Actor and wait for it to finish
run = client.actor("solidcode/arbeitnow-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 '{
  "searchKeyword": "software engineer",
  "jobTypes": [],
  "tags": [],
  "location": "",
  "remoteOnly": false,
  "postedWithinDays": "0",
  "maxResults": 100
}' |
apify call solidcode/arbeitnow-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Arbeitnow Jobs Scraper",
        "description": "[💰 $0.50 / 1K] Extract job postings from Arbeitnow, the European job board for remote and DACH tech roles. Filter by keyword, job type, tags, location, and posting date — each result includes title, company, location, remote flag, full description, tags, and apply link.",
        "version": "1.0",
        "x-build-id": "oybjwWBbZWc90Zqwm"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/solidcode~arbeitnow-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-solidcode-arbeitnow-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/solidcode~arbeitnow-scraper/runs": {
            "post": {
                "operationId": "runs-sync-solidcode-arbeitnow-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/solidcode~arbeitnow-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-solidcode-arbeitnow-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": {
                    "searchKeyword": {
                        "title": "Search Keyword",
                        "type": "string",
                        "description": "Word or phrase to match across job title, company name, and description (e.g. 'software engineer', 'product manager', 'marketing'). Leave blank to collect all jobs matching the filters below."
                    },
                    "jobTypes": {
                        "title": "Job Types",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Only include jobs of these employment types. Matching is keyword-based and case-insensitive — a job is kept if any of its listed employment types contains a matching keyword (the source data mixes English and German labels, e.g. 'Full-time permanent', 'Werkstudent'). Leave empty to include all types.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "full_time",
                                "part_time",
                                "internship",
                                "working_student",
                                "apprenticeship",
                                "freelance",
                                "contract"
                            ],
                            "enumTitles": [
                                "Full-time",
                                "Part-time",
                                "Internship",
                                "Working student",
                                "Apprenticeship / Dual studies",
                                "Freelance",
                                "Contract"
                            ]
                        },
                        "default": []
                    },
                    "tags": {
                        "title": "Tags",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Only include jobs carrying any of these skill or category tags (e.g. 'javascript', 'python', 'marketing', 'design'). Matching is case-insensitive. Very narrow tags combined with other filters may end the run early once a stretch of pages yields no matches. Leave empty to include all tags.",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "location": {
                        "title": "Location",
                        "type": "string",
                        "description": "Only include jobs whose location contains this text (e.g. 'Berlin', 'München', 'Vienna'). Leave blank for any location."
                    },
                    "remoteOnly": {
                        "title": "Remote jobs only",
                        "type": "boolean",
                        "description": "Turn on to return only jobs that allow remote work.",
                        "default": false
                    },
                    "postedWithinDays": {
                        "title": "Posted Within",
                        "enum": [
                            "0",
                            "1",
                            "3",
                            "7",
                            "14",
                            "30"
                        ],
                        "type": "string",
                        "description": "Only include jobs posted within this time window. Great for daily or weekly scheduled runs that pick up just the newest postings — the run stops automatically once it reaches postings older than the window.",
                        "default": "0"
                    },
                    "maxResults": {
                        "title": "Maximum Results",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Hard cap on total job rows returned. Default 100 — increase for bigger runs, or set to 0 for no cap (an internal upper bound still applies to prevent runaway pagination). The actor stops requesting new pages once this number is hit but keeps the full last page even if it slightly overshoots.",
                        "default": 100
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
