# GoodFirms Scraper - IT Company & Agency Leads (`logiover/goodfirms-scraper`) Actor

GoodFirms scraper & unofficial API alternative: export GoodFirms B2B company leads to CSV/JSON. Hourly rate, team size, rating. No login, no key.

- **URL**: https://apify.com/logiover/goodfirms-scraper.md
- **Developed by:** [Logiover](https://apify.com/logiover) (community)
- **Categories:** Lead generation, Business
- **Stats:** 3 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 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.

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

<div align="center">

<img src="https://cdn-icons-png.flaticon.com/128/3135/3135715.png" width="92" alt="GoodFirms Scraper"/>

## 🏢 GoodFirms Scraper

#### Turn any <a href="https://www.goodfirms.co">GoodFirms.co</a> directory into a clean **B2B company-leads** dataset

<p>
<img src="https://img.shields.io/badge/✓_NO_LOGIN-no_API_key-2ea44f?style=for-the-badge&labelColor=0b3d2e"/>
<img src="https://img.shields.io/badge/🎯_AGENCY_LEADS-IT_·_software_·_marketing-7c3aed?style=for-the-badge&labelColor=2e1065"/>
<img src="https://img.shields.io/badge/🏢_4000+-companies/directory-1f6feb?style=for-the-badge&labelColor=0b2e6b"/>
</p>
<p>
<img src="https://img.shields.io/badge/Website_+_Profile-captured-008060?style=flat-square"/>
<img src="https://img.shields.io/badge/Hourly_rate_·_Team_size-✓-e91e63?style=flat-square"/>
<img src="https://img.shields.io/badge/Rating_·_Reviews-✓-9c27b0?style=flat-square"/>
<img src="https://img.shields.io/badge/Country_·_City-✓-00bcd4?style=flat-square"/>
<img src="https://img.shields.io/badge/Export-JSON·CSV·Excel·API-f59e0b?style=flat-square"/>
</p>

<br/>

**The fastest way to scrape GoodFirms** — the leading B2B IT & agency directory. 🏢 company name & website · 💵 hourly rate & min project size · 👥 team size & founded year · 📍 city / country · ⭐ rating & review count · 🛠️ service focus. **No login, no API key.**

</div>

---

### 🚀 Why scrape GoodFirms?

GoodFirms.co ranks tens of thousands of **software development, mobile app, web design, digital marketing, AI and IT-services companies** worldwide — each with hourly rate, team size, founded year, location, rating and reviews. A single country/service directory can list **4,000+ companies across ~100 pages**.

This **GoodFirms scraper** reads those server-rendered firm cards and paginates the whole result set, so one run becomes:

> 🎯 a **B2B lead engine** — agency / IT-vendor outreach lists with website, location, size & rate — and
> 📊 a **market-intelligence dataset** — map vendors by service, country, price band & rating for competitor research and sourcing.

---

### ✨ What you get

<table>
<tr>
  <td width="33%" valign="top">

#### 🏢 Company
**Name**, **website**, GoodFirms **profile URL**, tagline / short description, and listed **service focus**.

  </td>
  <td width="33%" valign="top">

#### 💵 Firmographics
**Hourly rate** band, **min project size**, **team / employee size** and **founded year** — qualify vendors fast.

  </td>
  <td width="33%" valign="top">

#### 📍 Location & trust
**City** + **region / country**, plus the GoodFirms **rating** and **review count** as a quality signal.

  </td>
</tr>
</table>

---

### ⚡ Quick start

Open a GoodFirms directory, apply your filters, copy the URL, paste it in:

```json
{
  "searchUrls": ["https://www.goodfirms.co/directory/country/top-software-development-companies/us"],
  "maxResults": 500
}
````

Scrape **multiple services / countries** in one run:

```json
{
  "searchUrls": [
    "https://www.goodfirms.co/directory/country/top-software-development-companies/us",
    "https://www.goodfirms.co/directory/country/top-mobile-app-development-companies/gb",
    "https://www.goodfirms.co/directory/platform/top-digital-marketing-agencies"
  ],
  "maxResults": 3000
}
```

***

### ⚙️ Input

<table>
<thead><tr><th align="left">Field</th><th align="left">What it does</th></tr></thead>
<tbody>
<tr><td><code>searchUrls</code></td><td>GoodFirms directory / category / country / city URLs copied from the site. Every filter encoded in the URL is respected, and the actor paginates with <code>?page=N</code>.</td></tr>
<tr><td><code>maxResults</code></td><td>Global cap across all URLs. <code>0</code> = no limit.</td></tr>
<tr><td><code>maxResultsPerSearch</code></td><td>Per-URL cap. <code>0</code> = no cap.</td></tr>
<tr><td><code>useProxy</code> / <code>proxyConfiguration</code></td><td>Apify Proxy — <b>residential</b> recommended (default).</td></tr>
<tr><td><code>maxConcurrency</code></td><td>How many directory URLs to run in parallel.</td></tr>
</tbody>
</table>

***

### 📤 Output

One clean row per company:

```json
{
  "id": "75762",
  "name": "SDLC Corp",
  "website": "https://sdlccorp.com/",
  "profileUrl": "https://www.goodfirms.co/company/sdlc-corp",
  "tagline": "SDLC Corp provides cutting-edge custom software development services for mobile, web and enterprise systems...",
  "hourlyRate": "$25 - $49/hr",
  "minProjectSize": null,
  "teamSize": "250 - 999",
  "foundedYear": "2015",
  "location": "San Francisco, California",
  "city": "San Francisco",
  "region": "California",
  "rating": "4.9",
  "reviewCount": "155",
  "services": "Software Development, Mobile App Development",
  "scrapedAt": "2026-06-05T15:31:24.950Z"
}
```

The **Output** tab also ships a ready-made <kbd>Companies Overview</kbd> table — company, website, rate, team size, location, rating & reviews.

***

### 🎯 Use cases

| | Use case | How |
|---|---|---|
| 🎯 | **Agency / IT-vendor lead gen** | Build outreach lists of software, app, web & marketing firms by country, service or price band. |
| 🔎 | **Vendor sourcing & shortlisting** | Filter providers by hourly rate, team size, rating & reviews to shortlist suppliers. |
| 📊 | **Competitor & market research** | Map the competitive landscape of any IT service across regions. |
| 🧮 | **Price & rate benchmarking** | Benchmark hourly rates and team sizes across markets. |
| 🗂️ | **Directories & aggregators** | Power a B2B company feed or CRM enrichment from a scheduled run. |

***

### 🤖 Automate it

Put it on an **Apify Schedule** → a fresh company-leads feed on your cadence, straight to the **Apify API, a webhook, Google Sheet, S3** or your warehouse. Chain it with an **email-finder / email-verifier** to enrich and clean leads before outreach.

***

### ❓ FAQ

<details>
<summary><b>Do I need a GoodFirms account or API key?</b></summary>
<br/>
No. The actor reads public directory data — no login, no token.
</details>

<details>
<summary><b>Which directories can I scrape?</b></summary>
<br/>
Any GoodFirms listing URL — service categories (software development, mobile apps, web design, digital marketing, AI, IT services…), and their country / city / platform variants. Just paste the URL from your browser.
</details>

<details>
<summary><b>How do I filter by country, service or city?</b></summary>
<br/>
Apply the filters on GoodFirms itself, then copy the resulting URL into <code>searchUrls</code>. Every filter encoded in the URL is respected, and the actor paginates the whole result set.
</details>

<details>
<summary><b>Does it page through the whole directory?</b></summary>
<br/>
Yes. It follows GoodFirms' <code>?page=N</code> pagination up to your <code>maxResults</code> cap, deduplicating companies as it goes.
</details>

<details>
<summary><b>Is scraping this allowed?</b></summary>
<br/>
The actor collects publicly available directory data. You are responsible for complying with GoodFirms' terms and your local regulations.
</details>

#### Is this a GoodFirms API alternative?

Yes. GoodFirms has no public company API, so this actor works as an unofficial GoodFirms API alternative — it reads the public directory pages directly and returns structured company records, no API key required.

#### How do I export GoodFirms data to CSV or JSON?

Run the actor on your directory URLs, then download the dataset as CSV, JSON, Excel or pull it from the Apify API. Every company-leads row (name, website, hourly rate, team size, rating, reviews) is included in the GoodFirms data export.

#### Can I scrape GoodFirms without an API or login?

Yes — this is a GoodFirms company data extraction tool that needs no login and no token. It reads server-rendered firm cards from public directory pages, so you can scrape GoodFirms without an API.

### 📝 Changelog

#### 2026-06-07

- Docs: added coverage for GoodFirms API alternative, CSV/JSON data export, and no-login company data extraction use cases.

<br/>

<div align="center">

#### ▶️ Ready to run

<img src="https://img.shields.io/badge/Click_Start-and_get_company_leads-2ea44f?style=for-the-badge&labelColor=0b3d2e"/>

<sub>No login · No API key · JSON · CSV · Excel · API</sub>

</div>

# Actor input Schema

## `searchUrls` (type: `array`):

GoodFirms.co listing URLs copied straight from the site — e.g. https://www.goodfirms.co/directory/country/top-software-development-companies/us or any service/category/country/city directory page. Apply your filters on GoodFirms, then paste the resulting URL here. The actor paginates the whole result set with ?page=N.

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

Stop after this many companies across all URLs. 0 = no limit (a single directory can span thousands of companies).

## `maxResultsPerSearch` (type: `integer`):

Cap companies collected per individual directory URL. 0 = no per-URL cap.

## `useProxy` (type: `boolean`):

Route requests through Apify Proxy. Residential is recommended and is the default.

## `proxyConfiguration` (type: `object`):

Apify Proxy settings. Residential gives the highest success rate.

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

How many directory URLs to process in parallel.

## Actor input object example

```json
{
  "searchUrls": [
    "https://www.goodfirms.co/directory/country/top-software-development-companies/us"
  ],
  "maxResults": 200,
  "maxResultsPerSearch": 0,
  "useProxy": true,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ]
  },
  "maxConcurrency": 3
}
```

# Actor output Schema

## `id` (type: `string`):

GoodFirms entity ID

## `name` (type: `string`):

Company name

## `website` (type: `string`):

Company website (referral params stripped)

## `profileUrl` (type: `string`):

GoodFirms profile URL

## `tagline` (type: `string`):

Short company description

## `hourlyRate` (type: `string`):

Hourly rate band

## `teamSize` (type: `string`):

Employee / team size band

## `foundedYear` (type: `string`):

Year founded

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

Full location string

## `city` (type: `string`):

City

## `region` (type: `string`):

Region, state or country

## `rating` (type: `string`):

Average rating

## `reviewCount` (type: `string`):

Number of reviews

## `topReview` (type: `string`):

Featured customer review snippet shown on the listing card

## `topReviewProvider` (type: `string`):

Role/company of the featured review author

## `serviceFocus` (type: `string`):

Service category derived from the directory URL (e.g. Software Development)

## `scrapedAt` (type: `string`):

Scrape timestamp

# 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 = {
    "searchUrls": [
        "https://www.goodfirms.co/directory/country/top-software-development-companies/us"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("logiover/goodfirms-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 = { "searchUrls": ["https://www.goodfirms.co/directory/country/top-software-development-companies/us"] }

# Run the Actor and wait for it to finish
run = client.actor("logiover/goodfirms-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 '{
  "searchUrls": [
    "https://www.goodfirms.co/directory/country/top-software-development-companies/us"
  ]
}' |
apify call logiover/goodfirms-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "GoodFirms Scraper - IT Company & Agency Leads",
        "description": "GoodFirms scraper & unofficial API alternative: export GoodFirms B2B company leads to CSV/JSON. Hourly rate, team size, rating. No login, no key.",
        "version": "0.1",
        "x-build-id": "13G1hkc46wmJgXG8j"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/logiover~goodfirms-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-logiover-goodfirms-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/logiover~goodfirms-scraper/runs": {
            "post": {
                "operationId": "runs-sync-logiover-goodfirms-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/logiover~goodfirms-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-logiover-goodfirms-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": {
                    "searchUrls": {
                        "title": "Directory / category URLs",
                        "type": "array",
                        "description": "GoodFirms.co listing URLs copied straight from the site — e.g. https://www.goodfirms.co/directory/country/top-software-development-companies/us or any service/category/country/city directory page. Apply your filters on GoodFirms, then paste the resulting URL here. The actor paginates the whole result set with ?page=N.",
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxResults": {
                        "title": "Max results (total)",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Stop after this many companies across all URLs. 0 = no limit (a single directory can span thousands of companies).",
                        "default": 200
                    },
                    "maxResultsPerSearch": {
                        "title": "Max results per URL",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Cap companies collected per individual directory URL. 0 = no per-URL cap.",
                        "default": 0
                    },
                    "useProxy": {
                        "title": "Use Apify Proxy",
                        "type": "boolean",
                        "description": "Route requests through Apify Proxy. Residential is recommended and is the default.",
                        "default": true
                    },
                    "proxyConfiguration": {
                        "title": "Proxy configuration",
                        "type": "object",
                        "description": "Apify Proxy settings. Residential gives the highest success rate.",
                        "default": {
                            "useApifyProxy": true,
                            "apifyProxyGroups": [
                                "RESIDENTIAL"
                            ]
                        }
                    },
                    "maxConcurrency": {
                        "title": "Max concurrent URLs",
                        "minimum": 1,
                        "maximum": 10,
                        "type": "integer",
                        "description": "How many directory URLs to process in parallel.",
                        "default": 3
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
