# High School Email Scraper (`contacts-api/high-school-email-scraper`) Actor

High school email scraper to extract verified school emails from educational directories, school websites, and academic institutions 📧🏫 Perfect for education outreach, partnerships, and student recruitment campaigns.

- **URL**: https://apify.com/contacts-api/high-school-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 $1.99 / 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

### 🎓 High School Email Scraper — Find Verified Contacts in Minutes

> The fastest way to build a targeted high school email list and reach decision‑makers. This actor searches Google Maps for high schools in any city, crawls their websites, and extracts verified emails, phone numbers, and social profiles — all in one clean dataset for instant outreach. Run the high school email scraper and get results in minutes. Use it as a high school email extractor to uncover qualified high school leads at scale. Build a verified high school list for sales, recruiting, and outreach.

No coding required. Export to CSV, JSON, or Excel instantly.

---

#### 🚀 Quick Start

1. Enter your search term — e.g., "High School"
2. Add one or more target locations — e.g., "New York"
3. Set your desired number of institutions with emails
4. Hit Run and get your results in minutes

Export your high school list to CSV, JSON, or Excel with one click.

---

#### 💡 What Is the High School Email Scraper?

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

- EdTech and SaaS sales teams
- Vendors and service providers (testing, yearbooks, athletics, IT, facilities)
- Nonprofits, education programs, and outreach coordinators
- Researchers, analysts, and consultants

It combines Google Maps listing discovery with deep website crawling to extract publicly available contact data — producing an accurate, deduplicated dataset of school contacts ready for immediate use. Whether you need it as a high school lead finder, a high school lead scraper, a high school contact scraper, or a high school email finder, this actor covers all four in a single automated run and delivers verified high school email contacts with minimal setup.

---

#### 📦 What Data Does It Extract?

| Field | Description |
|---|---|
| Business Name | Official school 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 school website pages |
| Additional Phones | Extra phone numbers discovered during crawl |
| Social Media Links | Facebook, Instagram, LinkedIn, Twitter/X, and more |
| Email Count | Total unique emails found per school |
| Pages Scraped | Number of 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": "High School",
  "googleMapsLocation": ["New York"],
  "maxBusinesses": 50
}
````

##### Full Example with All Options

```json
{
  "googleMapsSearchTerm": "High School",
  "googleMapsLocation": [
    "New York",
    "Boston, Massachusetts",
    "Philadelphia, Pennsylvania"
  ],
  "maxBusinesses": 200,
  "scrapeMaxBusinessesPerLocation": true,
  "proxyConfiguration": {
    "useApifyProxy": true
  }
}
```

##### Input Parameters

| Parameter | Type | Required | Description |
|---|---|---|---|
| `googleMapsSearchTerm` | String | ✅ Yes | School type or niche to search — e.g., "High School", "magnet high school", "charter high school" |
| `googleMapsLocation` | Array | ✅ Yes | One or more locations — e.g., \["New York", "Austin, Texas"] |
| `maxBusinesses` | Number | ❌ No | Max schools with emails to return (1–1,000). The run stops when this target is reached |
| `scrapeMaxBusinessesPerLocation` | Boolean | ❌ No | If true, applies the cap per location. If false, it's a combined total |
| `proxyConfiguration` | Object | ❌ No | Proxy settings. Strongly recommended for large runs |

***

#### 📤 Sample Output

```json
[
  {
    "name": "Riverview High School",
    "website": "https://www.riverviewhs.org",
    "phone": "+1 212-555-0142",
    "full_address": "1500 Riverside Dr, New York, NY 10033, United States",
    "city": "New York",
    "state": "NY",
    "zip": "10033",
    "country_code": "US",
    "scraped_emails": [
      "info@riverviewhs.org",
      "admissions@riverviewhs.org",
      "counseling@riverviewhs.org"
    ],
    "scraped_phones": ["+1 212-555-0142", "+1 212-555-0197"],
    "scraped_social_media": [
      "facebook:https://facebook.com/riverviewhs",
      "twitter:https://twitter.com/riverviewhs"
    ],
    "emails_found": 3,
    "pages_scraped": 18,
    "avg_rating": 4.5,
    "total_reviews": 86,
    "lat": 40.8522,
    "long": -73.9385,
    "place_id": "ChIJ0-EXAMPLEID",
    "scrape_status": "success"
  }
]
```

***

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

Step 1 → Search Google Maps using your term + location\
Step 2 → Collect school listings (name, address, phone, website)\
Step 3 → Visit each school’s website and crawl key pages (Contact, Staff Directory, About, Counseling, Athletics)\
Step 4 → The high school email extractor parses public emails, phone numbers, and social links\
Step 5 → Deduplicate and normalize all contact data\
Step 6 → Return structured results ready for export or API consumption

It acts as both a high school lead finder and a high school lead scraper in one automated pipeline.

***

#### ✨ Key Features

##### 🎯 Precise Location Targeting

Pinpoint schools in your exact target cities, states, or regions — perfect for building hyper-local high school leads for territory-based campaigns.

##### 🔍 Directory-Aware Crawl

Goes beyond homepages. Crawls contact pages, footer blocks, and staff directories to surface every available public email and phone — making it a reliable high school contact scraper for hard-to-find pages.

##### 🧠 Role-Based Contact Detection

Identifies common role-based inboxes (admin, admissions, counseling, athletics, careers, info) for targeted outreach. Use it as a high school email finder when you need relevant departmental contacts.

##### 🧹 Smart De-Duplication

Automatically removes duplicate emails per domain and normalizes formats so your exports stay clean and ready for upload.

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

Consistent field names and data types ready for HubSpot, Salesforce, Apollo, Instantly, or your internal CRM — no manual reformatting needed.

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

Built-in proxy support enables stable, large-scale runs without rate-limiting or IP blocks — ideal when operating this high school data scraper across many cities.

##### ⏱️ 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 programs with new school contacts.

***

#### 🎯 Use Cases

##### 💼 EdTech & SaaS Sales Prospecting

Fill your pipeline with verified school contacts for demos and pilots. Leverage the high school lead finder workflow to uncover decision-makers and department inboxes.

##### 🧑‍🏫 Vendors & Service Providers

Yearbooks, testing, tutoring, athletics, IT, facilities, and security vendors can use the high school lead scraper to create geo-targeted outreach lists in days, not weeks.

##### 🤝 Nonprofits & Community Programs

Identify counselors, program coordinators, and administrators using the high school contact finder to reach the right people for grants, mentoring, and services.

##### 🎓 College Recruitment & Admissions

Build targeted pipelines for outreach to guidance and counseling departments, sports programs, and admissions contacts.

##### 📰 Research, Journalism & Public Policy

The high school data scraper supports region-wide analyses and surveys by exporting structured contact data at scale.

##### 🗃️ CRM Enrichment

Update existing records with missing emails, phone numbers, and social links — powered by a dependable high school contact finder pipeline.

##### 📣 Local & Regional Campaigns

Run across multiple cities or districts and compile high school leads for targeted campaigns and events.

***

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

Scale from a small pilot to a statewide dataset — results depend on:

- Number of locations added
- Search term breadth (e.g., “High School” vs. “STEM magnet high school”)
- Website density and email visibility in each region
- maxBusinesses setting and per-location vs. combined mode
- Proxy configuration and run timeout

Typical Output Ranges

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

Run multiple times across regions to continuously grow your high school 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 contacts are found
- Webhooks: Push results to your CRM or pipeline on run completion

Connect the outputs of your high school data scraper to Instantly, Smartlead, Apollo, HubSpot, Salesforce, or any system 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 "High School Email Scraper" in the Apify Store and click Try for free.

Step 3 — Set Your Search Term\
Enter "High School" or a niche variant like "charter high school", "magnet high school", or "STEM high school".

Step 4 — Add Target Locations\
Enter one or more cities/regions — e.g., "New York", "Boston, Massachusetts", "Philadelphia, Pennsylvania".

Step 5 — Set Your Limit\
Choose how many schools 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 High School 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 institutional contact information — emails and phone numbers published openly on school websites.

Best practices to stay compliant:

- Only use publicly visible contact data
- Do not attempt to bypass login walls or paywalls
- Respect each website’s robots.txt and Terms of Service
- Include an opt-out/unsubscribe option in outreach
- Follow applicable laws in your jurisdiction
- Do not target or collect personal student data; limit outreach to institutional/departmental contacts

Relevant regulations to be aware of:

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

This tool is intended for ethical, compliant outreach and research. 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 school websites — such as office, admissions, counseling, or departmental inboxes. It does not target personal student emails.

Q: Can I search multiple cities in one run?\
A: Yes. Add as many locations as needed and use per-location capping for even geographic distribution of high school leads.

Q: Will it work for charter and magnet schools?\
A: Yes. Set your search term accordingly (e.g., “charter high school”, “magnet high school”) to tailor discovery.

Q: Does it deduplicate results?\
A: Yes. Emails are deduplicated per domain to ensure a clean export, whether you’re using it as a high school email finder or for CRM enrichment.

Q: How deep does the crawl go?\
A: It scans key pages like Contact, Staff Directory, About, Counseling, Athletics, and Footer links. Depth is optimized to find contact data efficiently, acting as a focused high school contact scraper.

Q: Are proxies required?\
A: Not for small runs, but strongly recommended for 200+ schools to avoid rate limits and ensure stability.

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 searching?\
A: Manual search is slow and inconsistent. This pipeline automates discovery and extraction — functioning as both a high school lead finder and a high school lead scraper — delivering results in minutes.

Q: Can agencies white-label or resell this?\
A: Yes. Run it on behalf of clients and deliver fresh, compliant high school leads on a recurring schedule.

***

#### 🧑‍💻 Support & Custom Solutions

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

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

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

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "High School Email Scraper",
        "description": "High school email scraper to extract verified school emails from educational directories, school websites, and academic institutions 📧🏫 Perfect for education outreach, partnerships, and student recruitment campaigns.",
        "version": "1.0",
        "x-build-id": "rJtIvHacaM3Al6sDt"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/contacts-api~high-school-email-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-contacts-api-high-school-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~high-school-email-scraper/runs": {
            "post": {
                "operationId": "runs-sync-contacts-api-high-school-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~high-school-email-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-contacts-api-high-school-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": "High School"
                    },
                    "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
