# General Surgeon Email Scraper (`contacts-api/general-surgeon-email-scraper`) Actor

General surgeon email scraper to collect verified surgeon emails from hospitals, clinics, and medical directories 📧🏥 Ideal for healthcare outreach, recruitment, and targeted medical lead generation.

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

## Pricing

from $2.00 / 1,000 results

This Actor is paid per event and usage. You are charged both the fixed price for specific events and for Apify platform usage.

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

### 🩺 General Surgeon Email Scraper — Find Verified Leads in Minutes

> The fastest way to build a targeted general surgeon email list. This actor searches Google Maps for General Surgeon practices across any city, crawls their websites, and extracts verified emails, phone numbers, and social media profiles — all in one clean, export-ready dataset.

---

#### 🚀 Quick Start

1. Enter your search term — e.g., "General Surgeon"
2. Add one or more target locations — e.g., "New York, NY"
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.

---

#### 💡 What Is the General Surgeon Email Scraper?

The General Surgeon Email Scraper is a purpose-built lead generation and contact discovery tool designed for:

- Medtech and surgical device sales teams
- Hospital supplier and vendor outreach
- Healthcare staffing and recruitment agencies
- CME providers and physician relations teams
- Researchers and data analysts

It combines Google Maps listing discovery with deep website crawling to extract publicly available contact data — producing an accurate, deduplicated general surgeon list ready for immediate use.

Whether you need it as a general surgeon email finder, a general surgeon lead scraper, a general surgeon lead finder, or a general surgeon contact scraper, this actor covers the full workflow in a single automated run. It also works as a general surgeon contact finder, general surgeon email extractor, and general surgeon data scraper for robust enrichment.

---

#### 📦 What Data Does It Extract?

| Field | Description |
|---|---|
| Business Name | Practice, clinic, or group 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 general surgeon email addresses extracted from website pages |
| Additional Phones | Extra phone numbers discovered during the crawl |
| Social Media Links | Facebook, Instagram, LinkedIn, Twitter/X, 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 |

---

#### ⚙️ Input Configuration

##### Minimal Example

```json
{
  "googleMapsSearchTerm": "General Surgeon",
  "googleMapsLocation": ["New York"],
  "maxBusinesses": 50
}
````

##### Full Example with All Options

```json
{
  "googleMapsSearchTerm": "General Surgeon",
  "googleMapsLocation": [
    "New York",
    "Boston, Massachusetts",
    "Miami, Florida"
  ],
  "maxBusinesses": 200,
  "scrapeMaxBusinessesPerLocation": true,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

##### Input Parameters

| Parameter | Type | Required | Description |
|---|---|---|---|
| `googleMapsSearchTerm` | String | ✅ Yes | Business type or niche to search — e.g., "General Surgeon", "laparoscopic surgeon" |
| `googleMapsLocation` | Array | ✅ Yes | One or more locations — e.g., \["New York", "Austin, Texas"] |
| `maxBusinesses` | Number | ✅ Yes | Max businesses with emails to return (1–1,000). The actor stops when this target is reached |
| `scrapeMaxBusinessesPerLocation` | Boolean | ❌ No | If true, applies `maxBusinesses` to each location. If false, uses a combined total across all locations |
| `proxyConfiguration` | Object | ❌ No | Proxy settings. Strongly recommended for large runs to avoid blocks and rate limits |

***

#### 📤 Sample Output

```json
[
  {
    "name": "Metropolitan General Surgery",
    "website": "https://www.metrogensurgery.com",
    "phone": "+1 212-555-0172",
    "full_address": "845 3rd Ave, New York, NY 10022, United States",
    "city": "New York",
    "state": "NY",
    "zip": "10022",
    "country_code": "US",
    "scraped_emails": [
      "info@metrogensurgery.com",
      "scheduling@metrogensurgery.com"
    ],
    "scraped_phones": ["+1 212-555-0172", "+1 212-555-0141"],
    "scraped_social_media": [
      "linkedin:https://www.linkedin.com/company/metropolitan-general-surgery",
      "facebook:https://www.facebook.com/metrogensurgery"
    ],
    "emails_found": 2,
    "pages_scraped": 13,
    "avg_rating": 4.6,
    "total_reviews": 92,
    "lat": 40.7564,
    "long": -73.9697,
    "place_id": "ChIJ9Z-EXAMPLEID",
    "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, Physicians, Locations)\
Step 4 → Extract public emails, phone numbers, and social media links\
Step 5 → Deduplicate and normalize all contact data\
Step 6 → Return structured results ready for export or API consumption

The pipeline functions as both a discovery engine and a general surgeon contact finder: it identifies practices and groups, then acts as a general surgeon email extractor to pull the verified contact details you need. For enrichment at scale, it operates effectively as a general surgeon data scraper to power downstream analytics and outreach.

***

#### ✨ Key Features

##### 🎯 Precise Location Targeting

Enter any city, state, or region. The actor pinpoints practices and groups in your exact target areas — delivering hyper-local general surgeon leads for territory planning and outreach.

##### 🔍 Deep Website Crawl

Goes beyond the listing. Crawls homepages, contact pages, physician directories, and footers to surface every available public general surgeon email and phone number. Works as a reliable general surgeon contact scraper for multi-page sites.

##### 🌎 Multi-Location Scaling

Run across dozens of cities at once. Choose a combined cap or a per-location cap — perfect for building a broad general surgeon list for national or regional campaigns.

##### 🧹 Smart De-Duplication

Automatically removes duplicate emails per domain so your list stays clean and accurate — fewer bounces and faster prospecting.

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

All results are normalized with consistent field names. Push straight into HubSpot, Salesforce, Apollo, Instantly, or any tool. Ideal for teams using a general surgeon lead finder to accelerate pipeline.

##### 🛡️ Proxy-Ready for Reliability

Built-in proxy support enables stable, large-scale runs without rate-limiting or IP blocks — ideal for agency-level campaigns using a general surgeon lead scraper or general surgeon email finder.

##### ⏱️ Stop at Your Target

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

##### 🔄 Schedulable & Repeatable

Set it to run daily, weekly, or monthly to continuously grow and refresh your general surgeon leads.

***

#### 🎯 Use Cases

##### 💼 B2B Outreach & Sales

Build pitch lists for hospitals, surgery centers, and private practices. Use it as a general surgeon lead finder to fuel cold email campaigns, or as a general surgeon email extractor to enrich existing accounts.

##### 🧑‍⚕️ Healthcare Staffing & Recruiting

Identify practices expanding their surgical teams. The general surgeon lead scraper surfaces contacts you can’t find on job boards and supports recruiter pipelines with verified general surgeon email details.

##### 📣 Local & Regional Marketing

Create geo-targeted campaigns using accurate phone numbers and emails pulled directly from practice websites. Perfect for medtech and CME marketing teams growing a general surgeon list.

##### 🤝 Partnerships & Referrals

Find complementary providers for referral networks — GI clinics, colorectal practices, bariatric programs, anesthesia groups — using the general surgeon contact finder for rapid discovery.

##### 🗃️ CRM/Data Enrichment

Enrich your CRM with missing emails, phones, and social profiles. The general surgeon data scraper complements existing records for better segmentation and outreach.

##### 📚 Research & Benchmarking

Gather structured data on surgical practices across regions for academic studies, competitive analysis, or market mapping, including consistent general surgeon email fields.

***

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

Scale from a small prospect list to a large 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
- Market size for general surgeon leads in your target regions

Typical ranges per run:

- Small (1–3 cities): 20–100 businesses with emails
- Medium (5–15 cities): 200–600 businesses with emails
- Large (20+ cities/states): 800–1,000+ businesses with emails

Run multiple times across different regions to continuously grow your general surgeon list without hitting hard platform 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 general surgeon 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 "General Surgeon Email Scraper" in the Apify Store and click Try for free.

Step 3 — Set Your Search Term\
Enter "General Surgeon" or variants like "laparoscopic surgeon", "general surgery clinic", or "surgical associates".

Step 4 — Add Target Locations\
Enter one or more city/state combos — e.g., "New York", "Dallas, Texas".

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: The 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 general surgeon 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 outreach
- Follow applicable laws in your jurisdiction

Relevant regulations to be aware of:

- GDPR (EU)
- CAN-SPAM Act (US)
- CASL (Canada)
- PECR (UK)

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 public practice inboxes and administrative contacts — i.e., general surgeon email addresses published on websites.

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 general surgeon leads.

Q: Does it deduplicate results?\
A: Yes. Emails are deduplicated per domain so your general surgeon list stays clean.

Q: Can I schedule recurring runs?\
A: Absolutely. Use Apify’s scheduler to refresh your data weekly or monthly — a simple way to maintain a living general surgeon contact finder pipeline.

Q: What niches does the search term support?\
A: Any Google Maps searchable term — try "general surgeon", "surgical clinic", "general and laparoscopic surgeon", "bariatric surgeon", "colorectal surgeon", or "surgical associates". The actor works as a general surgeon email finder and general surgeon lead scraper across related terms.

Q: Are proxies required?\
A: Not for small runs, but strongly recommended for 200+ business runs to avoid rate limits. Proxies help the general surgeon data scraper maintain stability at scale.

Q: What export formats are available?\
A: JSON, CSV, and Excel. You can also consume results via the Apify API or webhooks.

Q: How is this different from manual Google searching?\
A: Manual search is slow and inconsistent. This automated general surgeon contact scraper performs discovery and extraction in one pass, returning structured data in minutes.

Q: Can agencies white-label or resell this?\
A: Yes. Run it for clients and deliver fresh general surgeon leads on a recurring basis.

***

#### 🧑‍💻 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., bariatric, colorectal, trauma)
- Bulk or enterprise run support
- Integration assistance

***

*Built for medtech marketers, recruiters, and outreach teams who need accurate general surgeon leads at scale — fast.*

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": "General Surgeon",
  "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": "General Surgeon",
    "googleMapsLocation": [
        "New York"
    ],
    "maxBusinesses": 5,
    "proxyConfiguration": {
        "useApifyProxy": true
    }
};

// Run the Actor and wait for it to finish
const run = await client.actor("contacts-api/general-surgeon-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": "General Surgeon",
    "googleMapsLocation": ["New York"],
    "maxBusinesses": 5,
    "proxyConfiguration": { "useApifyProxy": True },
}

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

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "General Surgeon Email Scraper",
        "description": "General surgeon email scraper to collect verified surgeon emails from hospitals, clinics, and medical directories 📧🏥 Ideal for healthcare outreach, recruitment, and targeted medical lead generation.",
        "version": "1.0",
        "x-build-id": "qUj6bsWzNHeonj67C"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/contacts-api~general-surgeon-email-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-contacts-api-general-surgeon-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~general-surgeon-email-scraper/runs": {
            "post": {
                "operationId": "runs-sync-contacts-api-general-surgeon-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~general-surgeon-email-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-contacts-api-general-surgeon-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": "General Surgeon"
                    },
                    "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
