# Heavy Construction Contractors Email Scraper (`contacts-api/heavy-construction-contractors-email-scraper`) Actor

Heavy construction contractors email scraper to extract verified emails from infrastructure contractors, civil engineering firms, road builders, and large-scale construction companies 📧🏗️ Perfect for B2B outreach, supplier partnerships, and construction industry lead generation.

- **URL**: https://apify.com/contacts-api/heavy-construction-contractors-email-scraper.md
- **Developed by:** [Lead Heaven](https://apify.com/contacts-api) (community)
- **Categories:** Lead generation, Automation, Other
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

Pay per event

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

### 🏗️ Heavy Construction Contractors Email Scraper — Find Verified Leads in Minutes

> The fastest way to build a targeted heavy construction contractors list. This actor searches Google Maps for heavy construction companies and general contractors across any location, crawls their websites, and extracts verified emails, phone numbers, and social profiles — all in one clean, export-ready dataset optimized for heavy construction contractors leads.

---

#### 🚀 Quick Start

1. Enter your search term — e.g., "Heavy Construction Contractors", "general contractors", "civil contractors"
2. Add one or more target locations — e.g., "New York", "Dallas, Texas"
3. Set your desired number of businesses with emails
4. Hit Run and get your results in minutes

No coding required. Export to CSV, JSON, or Excel instantly. Use it as your heavy construction contractors email extractor to kickstart outreach.

---

#### 💡 What Is the Heavy Construction Contractors Email Scraper?

The Heavy Construction Contractors Email Scraper is a purpose-built lead generation and contact discovery tool designed for:

- Commercial construction sales teams and estimators
- Equipment rental and materials suppliers
- B2B outreach and partnership professionals
- Market researchers and analysts

It combines Google Maps discovery with deep website crawling to extract publicly available contact data — delivering an accurate, deduplicated heavy construction contractors list ready for immediate use.

Whether you need it as a heavy construction contractors lead finder, a heavy construction contractors lead scraper, or a heavy construction contractors email finder — this actor covers all three in a single automated run. It doubles as a heavy construction contractors contact scraper for broader contact discovery.

---

#### 📦 What Data Does It Extract?

| Field | Description |
|---|---|
| Business Name | Company name from Google Maps |
| Website | Official website URL |
| Phone | Primary phone from the listing or website |
| Full Address | Complete address as listed |
| City / State / ZIP | Parsed location components |
| Country Code | ISO country code where available |
| Emails | All public emails extracted from website pages |
| Additional Phones | Extra phone numbers discovered during crawl |
| Social Media Links | Facebook, Instagram, LinkedIn, Twitter, and more |
| Email Count | Total unique emails found per business |
| Pages Scraped | Number of website pages crawled per domain |
| Rating | Average Google Maps star rating |
| Reviews | Total number of Google reviews |
| Latitude / Longitude | Geo-coordinates for mapping and filtering |
| Place ID | Google Maps place identifier |
| Scrape Status | Per-record status: success, partial, or error |

Use this heavy construction contractors data scraper to enrich your CRM with verified contact points.

---

#### ⚙️ Input Configuration

##### Minimal Example

```json
{
  "googleMapsSearchTerm": "Heavy Construction Contractors",
  "googleMapsLocation": ["New York"],
  "maxBusinesses": 50
}
````

##### Full Example with All Options

```json
{
  "googleMapsSearchTerm": "Heavy Construction Contractors",
  "googleMapsLocation": [
    "New York",
    "Dallas, Texas",
    "Chicago, Illinois"
  ],
  "maxBusinesses": 200,
  "scrapeMaxBusinessesPerLocation": true,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

##### Input Parameters

| Parameter | Type | Required | Description |
|---|---|---|---|
| `googleMapsSearchTerm` | String | Yes | Business type or niche to search — e.g., "Heavy Construction Contractors", "civil contractors", "infrastructure contractors" |
| `googleMapsLocation` | Array | Yes | One or more locations — e.g., \["New York", "Dallas, Texas"] |
| `maxBusinesses` | Number | Yes | Max businesses with emails to return (1–1,000). Actor stops at this target |
| `scrapeMaxBusinessesPerLocation` | Boolean | No | If true, applies the cap per location. If false, it's a combined total across all locations |
| `proxyConfiguration` | Object | No | Proxy settings. Strongly recommended for large runs and consistency |

***

#### 📤 Sample Output

```json
[
  {
    "name": "Ironridge Civil & Heavy Construction",
    "website": "https://www.ironridgecivil.com",
    "phone": "+1 212-555-0148",
    "full_address": "445 W 34th St, New York, NY 10001, United States",
    "city": "New York",
    "state": "NY",
    "zip": "10001",
    "country_code": "US",
    "scraped_emails": [
      "info@ironridgecivil.com",
      "estimating@ironridgecivil.com"
    ],
    "scraped_phones": ["+1 212-555-0148", "+1 212-555-0192"],
    "scraped_social_media": [
      "linkedin:https://www.linkedin.com/company/ironridge-civil",
      "facebook:https://www.facebook.com/ironridgecivil"
    ],
    "emails_found": 2,
    "pages_scraped": 18,
    "avg_rating": 4.6,
    "total_reviews": 37,
    "lat": 40.7536,
    "long": -73.9967,
    "place_id": "ChIJ9aEXAMPLEID",
    "scrape_status": "success"
  }
]
```

***

#### 🔧 How It Works — Under the Hood

```
Step 1 → Search Google Maps using your term + location
Step 2 → Collect business listings (name, address, phone, website)
Step 3 → Visit each website and crawl key pages (Home, Contact, About, Services, Footer)
Step 4 → Extract public emails, phone numbers, and social media links
Step 5 → Deduplicate and normalize contact data
Step 6 → Return structured results ready for export, CRM import, or API consumption
```

The pipeline functions as both a discovery engine and a heavy construction contractors email scraper, so you can source and extract in one run.

***

#### ✨ Key Features

##### 🎯 Precise Location Targeting

Target any city, state, or region. The actor pinpoints companies in your exact markets to help you build localized heavy construction contractors leads.

##### 🔍 Deep Website Crawl

Goes beyond Google listings. Crawls homepages, contact pages, service pages, and footers to surface every available public email, phone, and social link — acting as a reliable heavy construction contractors email extractor.

##### 🧭 Role-Aware Email Discovery

Prioritizes inboxes commonly used in construction like estimating@, bids@, proposals@, info@, hr@, and office@ to maximize outreach readiness using the heavy construction contractors contact scraper.

##### 🧹 Smart De-Duplication

Automatically removes duplicate emails per domain, normalizes phone formats, and aggregates social links so your heavy construction contractors list stays clean and ready for send.

##### 🌎 Multi-Location Scaling

Run across dozens of cities at once. Choose a combined cap or per-location cap — ideal for regional campaigns and national rollouts with consistent heavy construction contractors leads.

##### 🛡️ Proxy-Ready Stability

Built-in proxy support ensures resilient, large-scale runs without rate limits or IP blocks. Recommended for 200+ business campaigns and recurring schedules.

##### 📊 Structured, CRM-Ready Output

Normalized fields map cleanly into HubSpot, Salesforce, Apollo, Instantly, or any outreach tool. Perfect for a heavy construction contractors contact finder workflow.

##### ⏱️ Stop Exactly at Your Target

The actor halts as soon as your maxBusinesses limit is reached — no wasted compute, no overage, predictable costs.

***

#### 🎯 Use Cases

- B2B Outreach & Sales Development
  - Build targeted heavy construction contractors leads for materials suppliers, safety services, software vendors, and equipment rentals.
- Estimating & Bidding Pipelines
  - Quickly identify contractors and grab estimating@ or bids@ emails using a dependable heavy construction contractors email finder.
- Vendor & Partner Expansion
  - Surface general contractors and civil firms for long-term supply relationships with a repeatable heavy construction contractors lead scraper.
- Regional Account Mapping
  - Generate a geo-segmented heavy construction contractors list for territory planning and channel assignment.
- CRM Enrichment & Data Hygiene
  - Use the heavy construction contractors contact finder to fill missing emails, phones, and social links in existing records.
- Market Research & Analyst Reports
  - Analyze density of heavy firms by metro area and compare reviews/ratings using the heavy construction contractors data scraper.

***

#### 📈 How Many Results Can You Get?

Scale from a small prospect list to a regional database — results depend on:

- Number of locations added
- Search term breadth (niche vs. broad)
- Website density and email visibility in each market
- maxBusinesses setting and per-location vs. combined mode
- Proxy configuration and run timeout

Typical Output Ranges

| Campaign Size | Businesses with Emails |
|---|---|
| Small (1–3 cities) | 30 – 120 |
| Medium (5–15 cities) | 250 – 700 |
| Large (20+ cities / states) | 800 – 1,000+ per run |

Run multiple times across different regions to continuously grow your heavy construction contractors list without hitting hard limits.

***

#### 🔌 Integrations & Export Options

Once your run completes, you can:

- JSON: Full structured data download
- CSV / Excel: Import directly into spreadsheets
- Apify API: Stream results into your own apps or workflows
- Zapier / Make: Trigger automations when new heavy construction contractors leads are found
- Webhooks: Push results to your CRM or pipeline on run completion

Plug directly into Instantly, Smartlead, Apollo, HubSpot, Salesforce, or any outreach platform that accepts CSV/JSON imports.

***

#### 🛠️ Step-by-Step Usage Guide

Step 1 — Log in to Apify\
Create a free account or sign in at apify.com.

Step 2 — Open the Actor\
Search for "Heavy Construction Contractors Email Scraper" in the Apify Store and click Try for free.

Step 3 — Set Your Search Term\
Enter "Heavy Construction Contractors" or variants like "civil contractors", "infrastructure contractors", "general contractors".

Step 4 — Add Target Locations\
Enter one or more cities or regions — e.g., "New York", "Dallas, Texas", "Phoenix, Arizona".

Step 5 — Set Your Limit\
Choose how many businesses with emails you want — 20 for a quick test, up to 1,000 for a full campaign.

Step 6 — Choose Scaling Strategy

- Combined cap: Total across all locations combined
- Per-location cap: Applies your limit independently to each city

Step 7 — Enable Proxies\
Turn on Apify Proxy for stable, uninterrupted crawling at scale.

Step 8 — Run 🚀\
Click Start and let the Heavy Construction Contractors Email Scraper do the work.

Step 9 — Export\
Download as JSON, CSV, or Excel — or pull via API straight into your stack.

***

#### ⚖️ Legal & Compliance

This actor collects only publicly available business contact information — emails and phone numbers published openly on websites.

Best practices to stay compliant:

- Only use publicly visible contact data
- Do not bypass login walls or paywalls
- Respect each website’s robots.txt and Terms of Service
- Include an unsubscribe option in all outreach
- Follow applicable laws in your jurisdiction

Relevant regulations to be aware of:

- GDPR (European Union)
- CAN-SPAM Act (United States)
- CASL (Canada)
- PECR (United Kingdom)

This tool is intended for ethical business prospecting only. You are responsible for how you use the data collected.

***

#### ❓ Frequently Asked Questions

Q: Does this scrape private or personal emails?\
A: No. The actor only extracts emails that are publicly visible on business websites — common inboxes like info@, bids@, estimating@, hr@, and admin@.

Q: Can I search multiple cities in one run?\
A: Yes. Add as many locations as needed. Use per-location capping for even geographic distribution of heavy construction contractors leads.

Q: Does it deduplicate results?\
A: Yes. Emails are deduplicated per domain to keep your heavy construction contractors list accurate and clean.

Q: Can I schedule recurring runs?\
A: Absolutely. Use Apify’s built-in scheduler to run weekly or monthly and keep your pipeline fresh with a consistent heavy construction contractors email flow.

Q: What niches does the search term support?\
A: Any Google Maps searchable term — try "heavy civil contractors", "bridge contractors", "infrastructure contractors", "general contractors", or "site development contractors". Use the actor as a heavy construction contractors data scraper to compare niches.

Q: Is a proxy required?\
A: Not for small runs, but strongly recommended for 200+ business runs to avoid rate limits and ensure stability.

Q: How is this different from manual searching?\
A: Manual search is slow and inconsistent. This automated heavy construction contractors lead finder discovers companies and acts as a heavy construction contractors contact scraper in one workflow — from discovery to email extraction — in minutes.

Q: Can agencies white-label or resell this?\
A: Yes. Run it for clients and deliver fresh heavy construction contractors leads on a recurring basis using your own branding.

***

#### 🧑‍💻 Support & Custom Solutions

Have a question, feature request, or need a custom build?

Email: scrapermindapi@gmail.com

We’re happy to help with:

- Custom input/output configurations
- Niche-specific adaptations (e.g., bridge, road, marine, industrial)
- Bulk or enterprise run support
- CRM and marketing stack integrations

***

Built for sales, partnerships, and supplier teams who need accurate heavy construction contractors email at scale — fast. Use it as your go-to heavy construction contractors email extractor, heavy construction contractors lead scraper, and heavy construction contractors contact finder to keep your heavy construction contractors list growing week after week.

For any help or custom solution, contact via this mail: scrapermindapi@gmail.com

# Actor input Schema

## `googleMapsSearchTerm` (type: `string`):

Enter the business type or niche for email scraper (e.g., 'coffee shops', 'dentists').

## `googleMapsLocation` (type: `array`):

Target geographic location for the email scraper (e.g., 'Miami, Florida').

## `maxBusinesses` (type: `integer`):

Target number of businesses to find (1-1000). The scraper will stop when this target is reached.

## `scrapeMaxBusinessesPerLocation` (type: `boolean`):

If enabled, the scraper will collect up to `maxBusinesses` results per location. If disabled, it combines all locations up to a single total limit.

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

Proxy settings for scraping. Recommended for large-scale scraping.

## Actor input object example

```json
{
  "googleMapsSearchTerm": "Heavy Construction Contractors",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "scrapeMaxBusinessesPerLocation": false,
  "proxyConfiguration": {
    "useApifyProxy": 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 = {
    "googleMapsSearchTerm": "Heavy Construction Contractors",
    "googleMapsLocation": [
        "New York"
    ],
    "maxBusinesses": 5,
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("contacts-api/heavy-construction-contractors-email-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 = {
    "googleMapsSearchTerm": "Heavy Construction Contractors",
    "googleMapsLocation": ["New York"],
    "maxBusinesses": 5,
    "proxyConfiguration": { "useApifyProxy": True },
}

# Run the Actor and wait for it to finish
run = client.actor("contacts-api/heavy-construction-contractors-email-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 '{
  "googleMapsSearchTerm": "Heavy Construction Contractors",
  "googleMapsLocation": [
    "New York"
  ],
  "maxBusinesses": 5,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}' |
apify call contacts-api/heavy-construction-contractors-email-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=contacts-api/heavy-construction-contractors-email-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Heavy Construction Contractors Email Scraper",
        "description": "Heavy construction contractors email scraper to extract verified emails from infrastructure contractors, civil engineering firms, road builders, and large-scale construction companies 📧🏗️ Perfect for B2B outreach, supplier partnerships, and construction industry lead generation.",
        "version": "1.0",
        "x-build-id": "hejMbeS6AiqFY8PQB"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/contacts-api~heavy-construction-contractors-email-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-contacts-api-heavy-construction-contractors-email-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/contacts-api~heavy-construction-contractors-email-scraper/runs": {
            "post": {
                "operationId": "runs-sync-contacts-api-heavy-construction-contractors-email-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/contacts-api~heavy-construction-contractors-email-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-contacts-api-heavy-construction-contractors-email-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",
                "required": [
                    "googleMapsLocation",
                    "googleMapsSearchTerm"
                ],
                "properties": {
                    "googleMapsSearchTerm": {
                        "title": "Search Term",
                        "type": "string",
                        "description": "Enter the business type or niche for email scraper (e.g., 'coffee shops', 'dentists').",
                        "default": "Heavy Construction Contractors"
                    },
                    "googleMapsLocation": {
                        "title": "Location",
                        "type": "array",
                        "description": "Target geographic location for the email scraper (e.g., 'Miami, Florida').",
                        "default": [
                            "New York"
                        ],
                        "items": {
                            "type": "string"
                        }
                    },
                    "maxBusinesses": {
                        "title": "Maximum Businesses With Emails",
                        "minimum": 1,
                        "maximum": 1000,
                        "type": "integer",
                        "description": "Target number of businesses to find (1-1000). The scraper will stop when this target is reached.",
                        "default": 5
                    },
                    "scrapeMaxBusinessesPerLocation": {
                        "title": "Scrape Max Businesses Per Location",
                        "type": "boolean",
                        "description": "If enabled, the scraper will collect up to `maxBusinesses` results per location. If disabled, it combines all locations up to a single total limit.",
                        "default": false
                    },
                    "proxyConfiguration": {
                        "title": "Proxy Configuration",
                        "type": "object",
                        "description": "Proxy settings for scraping. Recommended for large-scale scraping."
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
