# Careerviet Jobs Details Scraper (`alexist/careerviet-jobs-details-scraper`) Actor

Scrape detailed job listings from CareerViet.vn with precision. This scraper collects job titles, descriptions, salary info, requirements, company details, and 18+ structured fields — perfect for recruiters, job aggregators, and labor market researchers.

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

## Pricing

Pay per usage

This Actor is paid per platform usage. The Actor is free to use, and you only pay for the Apify platform usage, which gets cheaper the higher subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#pay-per-usage

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
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/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

## CareerViet Jobs Scraper: Extract Vietnamese Job Data at Scale

---

### What Is CareerViet.vn?

CareerViet.vn is Vietnam's leading online job portal, hosting thousands of active vacancies across industries including technology, finance, construction, and hospitality. The platform connects job seekers with employers nationwide, featuring detailed listings with salary ranges, benefits, and qualification requirements. Extracting this job data manually is tedious and error-prone — the **CareerViet Jobs Scraper** automates extraction, delivering clean, structured records ready for analysis or integration.

---

### Overview

The **CareerViet Jobs Scraper** extracts comprehensive job detail pages from CareerViet.vn, converting unstructured listings into machine-readable records. It serves:

- **Recruiters & HR teams** monitoring Vietnam's job market and competitor postings
- **Job aggregator platforms** indexing Vietnamese opportunities
- **Market researchers** analyzing employment trends and salary benchmarks
- **Data analysts** building datasets for hiring insights

Key advantages include high-volume extraction (up to 200 items per URL), graceful error handling, and detailed structured output covering salary, location, requirements, and benefits.

---

### Input Configuration

The scraper accepts a configuration object specifying which job listings to extract:

```json
{
    "urls": [
        "https://careerviet.vn/en/search-job/business-development-executive.35C76348.html",
        "https://careerviet.vn/en/search-job/125589-hcm-architectural-design-engineer-construction.35C7A7B5.html",
        "https://careerviet.vn/en/search-job/senior-technical-engineer.35C7B4EB.html",
        "https://careerviet.vn/en/search-job/urgent-site-solution-engineer.35C7B418.html",
        "https://careerviet.vn/en/search-job/lighting-business-development-executive.35C7B263.html"
    ],
    "max_items_per_url": 200,
    "ignore_url_failures": true
}
````

| Parameter | Type | Description |
|---|---|---|
| `urls` | Array | Direct links to individual job detail pages on CareerViet.vn. Paste job URLs one by one or bulk-edit a prepared list. |
| `max_items_per_url` | Number | Maximum records to extract per URL (recommended: 200 for full extraction). |
| `ignore_url_failures` | Boolean | If `true`, the scraper continues if some URLs fail; if `false`, it stops on first failure. |

> **Best practice:** Use individual job detail page URLs (e.g., ending with `.html` and a job code like `35C76348`), not search results pages.

***

### Output Format & Field Definitions

**Sample output**

```json
{
  "in_language": "en",
  "title": "Business Development Executive",
  "description": "\n        <p><strong>1. Lead Generation & Market Research</strong></p><ul><li>Conduct market research to identify potential B2B prospects in target markets.</li><li>Maintain and enrich a database of qualified leads using tools such as HubSpot and LinkedIn.</li><li>Assist in developing outreach lists for outbound campaigns (email, social, events).</li></ul><p><strong>2. Marketing & Campaign Support</strong></p><ul><li>Support the creation and execution of targeted B2B email and social media campaigns.</li><li>Coordinate the development of marketing materials (presentations, case studies, newsletters).</li><li>Collaborate with the marketing team to execute lead magnets, PR activities, and webinars.</li></ul><p><strong>3. CRM & Data Management</strong></p><ul><li>Ensure accurate tracking of all leads, opportunities, and partner interactions in HubSpot.</li><li>Assist in building sales pipelines and reporting dashboards.</li><li>Maintain partner records and categorisation within the CRM.</li></ul><p><strong>4. Partner Cultivation</strong></p><ul><li>Support follow-up and relationship-building efforts with existing and prospective clients.</li><li>Coordinate Easia Travel’s participation in trade shows, roadshows, and virtual events.</li><li>Help implement incentive programmes, joint marketing activities, and FAM trips.</li></ul><p><strong>5. Sales Enablement</strong></p><ul><li>Prepare meeting briefs, proposals, and follow-up communications.</li><li>Conduct competitor benchmarking and pricing comparisons to support business cases.</li><li>Assist in collating feedback from clients and reporting on market trends.</li></ul>\n        <p><strong>1. Required Skills</strong></p><ul><li>Minimum 2 years’ experience in B2B sales, marketing, or business development, preferably in the travel industry or with international markets</li><li>Strong research and organisational skills with high attention to detail.</li><li>Familiarity with CRM tools (preferably HubSpot), LinkedIn Sales Navigator, and basic design tools (e.g., Canva).</li><li>Excellent written and verbal communication skills in English.</li><li>Strong interest in travel and intercultural communication.</li></ul><p><strong>2. ​Preferred Attributes</strong></p><ul><li>Self-driven, proactive, and capable of working independently in a remote environment.</li><li>Strategic thinker with a hands-on approach.</li><li>Team-oriented and collaborative, with a global mindset.</li></ul>\n        <p>Industry: Restaurant / Hotel, Tourism, Sales / Business Development</p>\n        <p>Experience: 2 Years</p>\n        <p>Job level: Experienced (Non - Manager)</p>\n        <p>Job type : Full Time</p>\n        <p>Location: Ha Noi</p>\n    ",
  "date_posted": "2026-07-18T01:00:17.049Z",
  "valid_through": "2026-08-13T23:59:00Z",
  "base_salary": {
    "@type": "MonetaryAmount",
    "currency": "VND",
    "value": {
      "@type": "QuantitativeValue",
      "value": "Competitive",
      "unit_text": "MONTH"
    }
  },
  "industry": "Restaurant / Hotel, Tourism, Sales / Business Development",
  "job_benefits": "Laptop, Insurance, Travel, Allowances, Travel Abroad, Incentive bonus, Healthcare, Training Scheme, Salary review, Business Expense, Seniority Allowance, Annual Leave",
  "experience_requirements": {
    "@type": "OccupationalExperienceRequirements",
    "months_of_experience": 24,
    "description": "Experience 2 Years"
  },
  "education_requirements": {
    "@type": "EducationalOccupationalCredential",
    "credential_category": "professional certificate",
    "alternate_name": "Bachelor"
  },
  "direct_apply": true,
  "url": "https://careerviet.vn/en/search-job/business-development-executive.35C76348.html",
  "identifier": {
    "@type": "PropertyValue",
    "name": "Công ty Easia Travel",
    "value": "35C76348"
  },
  "hiring_organization": {
    "@type": "Organization",
    "name": "Công ty Easia Travel",
    "url": "https://careerviet.vn/en/nha-tuyen-dung/cong-ty-easia-travel.35A902E7.html",
    "same_as": null,
    "logo": "https://images.careerviet.vn/employer_folders/lot5/268775/170432logo_asia.jpg",
    "description": "<p>Công ty Easia Travel: 33B Pham Ngu Lao, Hoan Kiem, Ha Noi</p>"
  },
  "employment_type": [
    "\"FULL_TIME\""
  ],
  "job_location": {
    "@type": "Place",
    "address": {
      "@type": "PostalAddress",
      "street_address": "33B Phạm Ngũ Lão, Hoàn Kiếm, Hà Nội",
      "address_region": "Hoan Kiem District",
      "address_locality": "Ha Noi",
      "postal_code": "10000",
      "address_country": "VN"
    },
    "geo": {
      "@type": "GeoCoordinates",
      "latitude": "21.022231264000027",
      "longitude": "105.85984573600007"
    }
  },
  "skills": "Business Development Executive, Business development officer, Chuyên viên phát triển, Business Development Specialist, Business Development Staff, Nhân viên phát triển kinh doanh, Chuyên viên phát triển kinh doanh",
  "work_hours": "40hoursperweek(8h30–12h&13h30–17h30)fromMondaytoFriday",
  "applicant_location_requirements": {
    "@type": "Country",
    "name": "VietNam"
  }
}
```

Each scraped job returns 18 structured fields:

#### Core Job Information

| Field | Type | Meaning |
|---|---|---|
| `Title` | String | Official job title as posted on CareerViet (e.g., "Business Development Executive") |
| `Identifier` | String | Unique job code assigned by CareerViet (e.g., `35C76348`) |
| `URL` | String | Direct link to the job detail page |
| `In Language` | String | Language of the listing (typically "en" or "vi") |
| `Direct Apply` | Boolean | Whether applicants can apply directly through CareerViet or must apply externally |

#### Job Description & Details

| Field | Type | Meaning |
|---|---|---|
| `Description` | String | Full HTML job description including responsibilities, qualifications, and benefits |
| `Industry` | String | Job sector category (e.g., "Technology", "Construction", "Finance") |
| `Employment Type` | String | Contract type (e.g., "Full-time", "Part-time", "Permanent", "Contract") |
| `Work Hours` | String | Expected working schedule (e.g., "Monday-Friday 8AM-5PM") |
| `Skills` | Array | Required or preferred technical and soft skills for the role |

#### Compensation & Benefits

| Field | Type | Meaning |
|---|---|---|
| `Base Salary` | String | Offered salary range (e.g., "$2,000 - $4,000/month") in posted currency |
| `Job Benefits` | Array | Additional benefits offered (e.g., "Health Insurance", "Travel Allowance", "Bonuses") |

#### Candidate Requirements

| Field | Type | Meaning |
|---|---|---|
| `Experience Requirements` | String | Minimum work experience needed (e.g., "3+ years in business development") |
| `Education Requirements` | String | Required education level (e.g., "Bachelor's degree or higher") |

#### Location & Organization

| Field | Type | Meaning |
|---|---|---|
| `Job Location` | String | City or specific office address (e.g., "Ho Chi Minh City", "Da Nang") |
| `Applicant Location Requirements` | String | Geographic restrictions for applicants (e.g., "Ho Chi Minh City residents preferred", or "Remote OK") |
| `Hiring Organization` | String | Company name and employer details |

#### Dates

| Field | Type | Meaning |
|---|---|---|
| `Date Posted` | Date | When the job was listed on CareerViet |
| `Valid Through` | Date | Application deadline or listing expiry date |

***

### Usage Instructions

1. **Locate job URLs** — Browse CareerViet.vn, find jobs of interest, and copy the job detail page URL.
2. **Prepare input** — Add URLs to the `urls` array. Set `max_items_per_url: 200` for complete extraction.
3. **Configure failures** — Set `ignore_url_failures: true` to skip invalid URLs and continue scraping.
4. **Execute** — Start the actor and monitor progress in the run log.
5. **Export** — Download results as JSON, CSV, or Excel for analysis, database import, or platform integration.

**Troubleshooting:**

- Ensure URLs are job *detail* pages (ending in `.html`), not search result pages.
- If a URL fails, verify the job still exists on CareerViet and hasn't expired.
- For bulk scrapes, enable `ignore_url_failures` to prevent timeout interruptions.

***

### Business Applications

- **Talent acquisition:** Track open positions in your industry and monitor competitor hiring
- **Salary benchmarking:** Analyze compensation trends by role, location, and experience level
- **Job aggregation:** Feed Vietnamese job data into multi-market job boards or search engines
- **Labor market analysis:** Research employment demand, skills gaps, and hiring patterns in Vietnam
- **Recruitment analytics:** Build datasets for predictive hiring models or trend reports

By automating data extraction, the CareerViet Jobs Scraper transforms hours of manual work into minutes, enabling fast, data-driven hiring decisions.

***

### Conclusion

The **CareerViet Jobs Scraper** is an efficient tool for anyone needing structured Vietnamese job market data. Whether you're building a recruitment platform, conducting labor research, or optimizing hiring strategy, this scraper delivers clean, detailed records from CareerViet.vn at scale. Start scraping today and gain competitive hiring intelligence.

# Actor input Schema

## `urls` (type: `array`):

Add the URLs of the Specific jobs urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.

## `ignore_url_failures` (type: `boolean`):

If true, the scraper will continue running even if some URLs fail to be scraped.

## Actor input object example

```json
{
  "urls": [
    "https://careerviet.vn/en/search-job/business-development-executive.35C76348.html",
    "https://careerviet.vn/en/search-job/125589-hcm-architectural-design-engineer-construction.35C7A7B5.html",
    "https://careerviet.vn/en/search-job/senior-technical-engineer.35C7B4EB.html",
    "https://careerviet.vn/en/search-job/urgent-site-solution-engineer.35C7B418.html",
    "https://careerviet.vn/en/search-job/lighting-business-development-executive.35C7B263.html"
  ],
  "ignore_url_failures": true
}
```

# API

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

## JavaScript example

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

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

// Prepare Actor input
const input = {
    "urls": [
        "https://careerviet.vn/en/search-job/business-development-executive.35C76348.html",
        "https://careerviet.vn/en/search-job/125589-hcm-architectural-design-engineer-construction.35C7A7B5.html",
        "https://careerviet.vn/en/search-job/senior-technical-engineer.35C7B4EB.html",
        "https://careerviet.vn/en/search-job/urgent-site-solution-engineer.35C7B418.html",
        "https://careerviet.vn/en/search-job/lighting-business-development-executive.35C7B263.html"
    ],
    "ignore_url_failures": true
};

// Run the Actor and wait for it to finish
const run = await client.actor("alexist/careerviet-jobs-details-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 = {
    "urls": [
        "https://careerviet.vn/en/search-job/business-development-executive.35C76348.html",
        "https://careerviet.vn/en/search-job/125589-hcm-architectural-design-engineer-construction.35C7A7B5.html",
        "https://careerviet.vn/en/search-job/senior-technical-engineer.35C7B4EB.html",
        "https://careerviet.vn/en/search-job/urgent-site-solution-engineer.35C7B418.html",
        "https://careerviet.vn/en/search-job/lighting-business-development-executive.35C7B263.html",
    ],
    "ignore_url_failures": True,
}

# Run the Actor and wait for it to finish
run = client.actor("alexist/careerviet-jobs-details-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 '{
  "urls": [
    "https://careerviet.vn/en/search-job/business-development-executive.35C76348.html",
    "https://careerviet.vn/en/search-job/125589-hcm-architectural-design-engineer-construction.35C7A7B5.html",
    "https://careerviet.vn/en/search-job/senior-technical-engineer.35C7B4EB.html",
    "https://careerviet.vn/en/search-job/urgent-site-solution-engineer.35C7B418.html",
    "https://careerviet.vn/en/search-job/lighting-business-development-executive.35C7B263.html"
  ],
  "ignore_url_failures": true
}' |
apify call alexist/careerviet-jobs-details-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Careerviet Jobs Details Scraper",
        "description": "Scrape detailed job listings from CareerViet.vn with precision. This scraper collects job titles, descriptions, salary info, requirements, company details, and 18+ structured fields — perfect for recruiters, job aggregators, and labor market researchers.",
        "version": "0.0",
        "x-build-id": "C7Eiz5MSPUKfp1qGd"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/alexist~careerviet-jobs-details-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-alexist-careerviet-jobs-details-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/alexist~careerviet-jobs-details-scraper/runs": {
            "post": {
                "operationId": "runs-sync-alexist-careerviet-jobs-details-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/alexist~careerviet-jobs-details-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-alexist-careerviet-jobs-details-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": {
                    "urls": {
                        "title": "URLs of the Specific jobs urls to scrape",
                        "type": "array",
                        "description": "Add the URLs of the Specific jobs urls you want to scrape. You can paste URLs one by one, or use the Bulk edit section to add a prepared list.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "ignore_url_failures": {
                        "title": "Continue running even if some URLs fail to be scraped",
                        "type": "boolean",
                        "description": "If true, the scraper will continue running even if some URLs fail to be scraped."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
