# HN Who Is Hiring — Job Listings Scraper & Alert (`bikram07/hn-who-is-hiring`) Actor

Scrape the Hacker News 'Who is Hiring' thread into structured job listings as clean JSON. Filter by keyword or remote-only, pull any month, and use alert mode for new listings only. Built on the official HN Firebase API. $1 per 1,000 listings.

- **URL**: https://apify.com/bikram07/hn-who-is-hiring.md
- **Developed by:** [Bikram](https://apify.com/bikram07) (community)
- **Categories:** Jobs, Lead generation, Automation
- **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 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

## Hacker News Who Is Hiring Scraper — HN Jobs API

Turn the monthly Hacker News **"Who is Hiring?"** thread into structured job listings as clean JSON. Filter by keyword or remote-only, pull any month back to 2011, and run in **alert mode** to get only new listings since your last run. Built on the **official HN Firebase API** — no HTML scraping, no parsers to break when the page changes.

### What it does

Every month the `whoishiring` account posts three threads on Hacker News:

1. **Who is Hiring?** — companies posting open roles
2. **Who wants to be Hired?** — candidates posting profiles
3. **Freelancer? Seeking Freelancer?** — contract / freelance opportunities

This Actor fetches the listings from any one of these threads, parses each free-form comment into structured fields (company, role, location, remote flag, job type, visa), and writes them to your dataset — ready for analysis, alerting, CRM import, or feeding into an AI agent.

### How it works

1. Calls the official HN Firebase API to find the latest (or a specific month's) `whoishiring` thread for the thread type you chose.
2. Iterates every top-level comment in that thread (each comment = one listing).
3. Cleans the HTML, then parses the conventional `Company | Role | Location | Type` first line plus keyword signals across the full text (remote, visa, full/part-time, contract, internship).
4. Applies your keyword and remote-only filters, and — in alert mode — skips listings it already output for this thread on a previous run.
5. Pushes each matching listing to the dataset as a structured item.

### Input

| Field | Type | Required | Description |
|---|---|---|---|
| `threadType` | string | no | `hiring`, `seeking`, or `freelance` (default: `hiring`) |
| `month` | string | no | Specific month, e.g. `June 2026`. Leave blank for the latest thread. |
| `maxListings` | integer | no | Max listings to output this run, 1–5000 (default: 500) |
| `alertMode` | boolean | no | Only output listings not seen in previous runs for this thread (default: false) |
| `keywords` | array | no | Only include listings containing at least one term, e.g. `Python`, `React`, `machine learning` (case-insensitive, matches full text) |
| `remoteOnly` | boolean | no | Only output listings whose first line mentions remote work (default: false) |
| `includeDead` | boolean | no | Include flagged/dead listings (default: false) |

**Example — remote Python/ML listings from the latest thread:**
```json
{
    "threadType": "hiring",
    "keywords": ["Python", "machine learning", "LLM"],
    "remoteOnly": true,
    "maxListings": 200
}
````

**Example — alert mode for daily new listings:**

```json
{
    "threadType": "hiring",
    "alertMode": true,
    "maxListings": 500
}
```

**Example — pull a specific past month:**

```json
{
    "threadType": "hiring",
    "month": "May 2026",
    "maxListings": 500
}
```

### Output fields

Each listing becomes one dataset item with these fields:

| Field | Type | Description |
|---|---|---|
| `listingId` | string | HN comment ID for this listing |
| `hnUrl` | string | Direct link to the comment on Hacker News |
| `threadId` | string | HN item ID of the parent thread |
| `threadMonth` | string | Month of the thread, e.g. `June 2026` |
| `threadType` | string | `hiring`, `seeking`, or `freelance` |
| `author` | string | HN username that posted the listing |
| `postedAt` | string | ISO 8601 timestamp (UTC) the listing was posted |
| `text` | string | Full cleaned listing text (HTML stripped, entities decoded) |
| `company` | string | Company name (parsed from the `\|`-delimited first line) |
| `role` | string | Role/title (parsed from the first line) |
| `location` | string | Location (parsed from the first line) |
| `jobTypeRaw` | string | Raw job-type segment from the first line, if present |
| `isRemote` | boolean | First line mentions remote / WFH / distributed / anywhere |
| `isFullTime` | boolean | Text mentions full-time |
| `isPartTime` | boolean | Text mentions part-time |
| `isContract` | boolean | Text mentions contract / freelance / consultant |
| `isInternship` | boolean | Text mentions intern / internship |
| `offersVisa` | boolean | Text mentions visa / H1B / sponsorship |
| `isDead` | boolean | Listing was flagged/marked dead by HN moderators |

```json
{
    "listingId": "44127834",
    "hnUrl": "https://news.ycombinator.com/item?id=44127834",
    "threadId": "48357725",
    "threadMonth": "June 2026",
    "threadType": "hiring",
    "author": "rpuritty",
    "postedAt": "2026-06-01T08:14:22+00:00",
    "text": "Hotwash | Founding Engineer (→ CTO for the right person) | REMOTE (US), Boston a plus | Full-time\n\nI'm a solo founder...",
    "company": "Hotwash",
    "role": "Founding Engineer (→ CTO for the right person)",
    "location": "REMOTE (US), Boston a plus",
    "jobTypeRaw": "Full-time",
    "isRemote": true,
    "isFullTime": true,
    "isPartTime": false,
    "isContract": false,
    "isInternship": false,
    "offersVisa": false,
    "isDead": false
}
```

### Use cases

- **Job seekers** — Pull the latest thread, filter by your stack (`keywords`) and `remoteOnly`, and scan structured listings instead of scrolling hundreds of comments.
- **Recruiters & sourcers** — Build a direct-contact database of companies with open roles, filtered by tech stack and remote policy — no recruiter middlemen.
- **B2B sales / dev-tool founders** — Companies actively hiring engineers are warm prospects for developer tools and infrastructure. Run daily with `alertMode: true` and pipe new listings into your CRM as hiring-intent leads.
- **Job-board & aggregator builders** — Feed clean monthly listings into your own job board or newsletter on a schedule.
- **Market researchers & analysts** — Track which technologies, locations, and remote/visa patterns appear month over month as a tech-hiring demand signal (pull past months via `month`).

### Setting up monthly or daily alerts

1. Set `threadType: "hiring"` and `alertMode: true`.
2. Create an [Apify Schedule](https://docs.apify.com/platform/schedules) — daily (e.g. 09:00 UTC) to catch new listings as companies post throughout the month, or monthly to grab each fresh thread.
3. Add a webhook to push new listings to Slack, email, or your ATS/CRM.
4. The Actor auto-discovers the latest thread, so there's no URL to update each month.

### Pricing — $1 per 1,000 listings

Pay-per-event (pay-per-result). You're charged only for listings actually written to your dataset.

| Event | Price | When |
|---|---|---|
| `hn-job-listing` | $0.001 | Per listing written to the dataset |

Listings excluded by your `keywords` / `remoteOnly` filters, and listings already seen in alert mode, are skipped before output — so you're never charged for them.

### Use from Claude, Cursor & AI agents (MCP)

```json
{
    "mcpServers": {
        "apify": {
            "url": "https://mcp.apify.com/sse?actors=bikram07/hn-who-is-hiring",
            "headers": {
                "Authorization": "Bearer YOUR_APIFY_TOKEN"
            }
        }
    }
}
```

Ask your agent: *"Get all remote Python jobs from the latest HN Who is Hiring thread."*

Or via API:

```bash
curl -X POST "https://api.apify.com/v2/acts/bikram07~hn-who-is-hiring/run-sync-get-dataset-items?token=YOUR_APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"threadType": "hiring", "keywords": ["Python"], "remoteOnly": true}'
```

### FAQ

**Is this a subscription?**
No. It's pay-per-result on Apify — $1 per 1,000 listings written to your dataset. No monthly fee or commitment; you pay only for what each run outputs.

**How does the pricing work, exactly?**
You're billed $0.001 per listing pushed to the dataset (`hn-job-listing` event). A run that outputs 250 listings costs $0.25. Listings removed by your filters or skipped by alert mode are never charged. (Apify's own platform usage may apply on free/paid plans per your Apify account.)

**Does it use the official Hacker News API?**
Yes. It reads the official [HN Firebase API](https://github.com/HackerNews/API) (`hacker-news.firebaseio.com`) — no HTML scraping or headless browser — so it doesn't break when the website layout changes, and it returns real data straight from the source.

**How current is the data, and when do new threads appear?**
The Firebase API is real-time, so new listings appear within seconds of being posted. A new thread goes up on the first weekday of each month — leave `month` blank to always pull the latest one automatically.

**Can I get past months?**
Yes — set `month: "January 2025"` (or any past month the `whoishiring` account has posted, going back to ~2011).

**Can I get a refund?**
Refunds are handled per Apify's billing terms. If a run produced clearly wrong output due to an Actor bug, contact support at 31nathbikram@gmail.com and we'll make it right.

### Limitations / what it does NOT do

- **Field parsing is best-effort.** `company`, `role`, `location`, and `jobTypeRaw` are parsed from the conventional `Company | Role | Location | Type` first line. Posts that don't follow that format may leave some of these fields blank — the full `text` is always included so nothing is lost.
- **Boolean flags are keyword-based.** `isRemote`, `offersVisa`, `isFullTime`, etc. are detected from text patterns, not a verified database. Treat them as signals, not guarantees.
- **No salary or apply-URL extraction.** These aren't broken out into their own fields; if present, they remain inside `text`.
- **No contact-info enrichment.** It returns what the poster wrote on HN; it does not look up emails, company data, or external profiles.
- **`remoteOnly` checks the first line only**, where the remote tag conventionally appears.

### Related searches

Hacker News Who Is Hiring scraper · HN jobs API · who is hiring API · HN job listings · who is hiring Hacker News · HN monthly hiring thread · tech job listings scraper · hiring intent data · remote developer jobs scraper · HN job board scraper

***

Uses the official [Hacker News Firebase API](https://github.com/HackerNews/API). Not affiliated with Y Combinator or Hacker News. Support: 31nathbikram@gmail.com

# Actor input Schema

## `threadType` (type: `string`):

Which monthly HN thread to scrape.

## `month` (type: `string`):

Specific month to scrape, e.g. <b>June 2026</b>. Leave blank to get the latest thread.

## `maxListings` (type: `integer`):

Maximum number of job listings to output in this run.

## `alertMode` (type: `boolean`):

When enabled, the Actor remembers which listings it has already output for this thread and only outputs <b>new listings added since the last run</b>. Useful for monitoring a thread daily as new companies post.

## `keywords` (type: `array`):

Only include listings that contain at least one of these keywords (case-insensitive). Example: <b>Python</b>, <b>React</b>, <b>machine learning</b>. Leave empty to include all listings.

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

Only output listings that mention remote work (REMOTE, WFH, distributed, anywhere).

## `includeDead` (type: `boolean`):

Include listings that have been flagged or marked dead by HN moderators. Disabled by default.

## Actor input object example

```json
{
  "threadType": "hiring",
  "maxListings": 500,
  "alertMode": false,
  "remoteOnly": false,
  "includeDead": 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("bikram07/hn-who-is-hiring").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("bikram07/hn-who-is-hiring").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 bikram07/hn-who-is-hiring --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=bikram07/hn-who-is-hiring",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "HN Who Is Hiring — Job Listings Scraper & Alert",
        "description": "Scrape the Hacker News 'Who is Hiring' thread into structured job listings as clean JSON. Filter by keyword or remote-only, pull any month, and use alert mode for new listings only. Built on the official HN Firebase API. $1 per 1,000 listings.",
        "version": "0.1",
        "x-build-id": "4JQqgYrbDMwwacMoS"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/bikram07~hn-who-is-hiring/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-bikram07-hn-who-is-hiring",
                "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/bikram07~hn-who-is-hiring/runs": {
            "post": {
                "operationId": "runs-sync-bikram07-hn-who-is-hiring",
                "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/bikram07~hn-who-is-hiring/run-sync": {
            "post": {
                "operationId": "run-sync-bikram07-hn-who-is-hiring",
                "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": {
                    "threadType": {
                        "title": "Thread type",
                        "enum": [
                            "hiring",
                            "seeking",
                            "freelance"
                        ],
                        "type": "string",
                        "description": "Which monthly HN thread to scrape.",
                        "default": "hiring"
                    },
                    "month": {
                        "title": "Month (optional)",
                        "type": "string",
                        "description": "Specific month to scrape, e.g. <b>June 2026</b>. Leave blank to get the latest thread."
                    },
                    "maxListings": {
                        "title": "Max listings",
                        "minimum": 1,
                        "maximum": 5000,
                        "type": "integer",
                        "description": "Maximum number of job listings to output in this run.",
                        "default": 500
                    },
                    "alertMode": {
                        "title": "Alert mode (only new listings)",
                        "type": "boolean",
                        "description": "When enabled, the Actor remembers which listings it has already output for this thread and only outputs <b>new listings added since the last run</b>. Useful for monitoring a thread daily as new companies post.",
                        "default": false
                    },
                    "keywords": {
                        "title": "Keywords filter (optional)",
                        "type": "array",
                        "description": "Only include listings that contain at least one of these keywords (case-insensitive). Example: <b>Python</b>, <b>React</b>, <b>machine learning</b>. Leave empty to include all listings.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "remoteOnly": {
                        "title": "Remote only",
                        "type": "boolean",
                        "description": "Only output listings that mention remote work (REMOTE, WFH, distributed, anywhere).",
                        "default": false
                    },
                    "includeDead": {
                        "title": "Include flagged / dead comments",
                        "type": "boolean",
                        "description": "Include listings that have been flagged or marked dead by HN moderators. Disabled by default.",
                        "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
