# Earth911 Recycling Locator Scraper (`crawlerbros/earth911-recycling-locator-scraper`) Actor

Find recycling centers, drop-off locations, and curbside/retail/mail-in recycling programs near any US ZIP code or city for 381 material types, sourced from Earth911's nationwide recycling locator.

- **URL**: https://apify.com/crawlerbros/earth911-recycling-locator-scraper.md
- **Developed by:** [Crawler Bros](https://apify.com/crawlerbros) (community)
- **Categories:** Integrations, Automation, Developer tools
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.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.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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/docs.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python/docs.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/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

## Earth911 Recycling Locator Scraper

Scrape **Earth911** — the largest US recycling locator, covering drop-off centers, curbside programs, retail take-back programs, and mail-in programs for 379 material types (electronics, batteries, hazardous waste, plastics by resin code, construction debris, and more). Search by material and ZIP code / city, filter by radius, distance, and result type. HTTP-only, no auth, no proxy required.

### What this actor does

- **Full material taxonomy** — 379 searchable materials: 369 specific items (e.g. `Cell Phones`, `Motor Oil`, `#1 Plastic Bags`, `Lithium-ion Batteries`) plus 10 broad categories (`Electronics`, `Automotive`, `Batteries`, `Glass`, etc.) that each independently return real results
- **Nationwide coverage** — search near any US ZIP code or `City, ST`
- **Adjustable radius** — 5 / 10 / 25 / 50 / 100 miles
- **Result type filter** — drop-off locations only, programs only (curbside/retail take-back), mail-in programs only, or all
- **Extra filters** — max distance, minimum materials accepted
- **Optional deep enrichment** — fetch each result's detail page for hours, website, exact coordinates, last-verified date, description/instructions, per-material caveats, and the full untruncated materials list
- **Empty fields are omitted** — a field only appears when real data was found

### Output per recycling center / program

- `name` — business or program name
- `listingType` — `location` (physical drop-off site) or `program` (curbside/retail/mail-in)
- `serviceType` — e.g. `Location`, `Curbside Program`, `Mail-in Program`, `Retail Take-Back Program`
- `distanceMiles` — distance from the searched location (drop-off locations only)
- `phone`
- `addressLine1`, `addressLine2`, `city`, `state`, `zip`, `fullAddress`
- `materialsAccepted[]` — materials this center/program accepts
- `materialsAcceptedCount` — total count (may exceed the listed array length if truncated on the search results page; use `fetchDetails` for the full list)
- `materialsTruncated` — `true` if `materialsAccepted[]` was cut short on the results page
- `hours` — real operating hours (drop-off locations), or genuine call-center/support hours for a program (e.g. "Monday-Friday 7am-6pm CT") when the source publishes them; only present when `fetchDetails: true`
- `website`, `lastVerified`, `latitude`, `longitude` — only present when `fetchDetails: true`
- `description` — free-text summary of what the listing does/accepts (most common on programs, but some locations publish one too) — only present when `fetchDetails: true` and the listing publishes one
- `programInstructions` — actionable usage instructions for a program (e.g. "Please call to schedule a pick-up.") — programs only, only present when `fetchDetails: true` and real instructions exist
- `materialNotes` — object mapping material name → a listing-specific caveat for that material (e.g. "This site does not accept mattresses, box springs, air mattresses or waterbeds.") — only present when `fetchDetails: true` and at least one material has a caveat
- `sourceUrl` — the Earth911 detail page for this listing
- `searchMaterial`, `searchLocation`, `searchRadiusMiles` — echo of the search inputs used
- `recordType: "recyclingCenter"`, `scrapedAt`

### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `material` | string (select) | `Electronics` | Material to recycle — 379 options |
| `location` | string | `90210` | US ZIP code or `City, ST` |
| `radiusMiles` | string (select) | `25` | Search radius: `5` / `10` / `25` / `50` / `100` |
| `resultType` | string (select) | `all` | `all` / `locations` / `programs` / `mailin` |
| `maxDistanceMiles` | int | – | Drop results farther than this (locations only) |
| `minMaterialsAccepted` | int | – | Drop results accepting fewer materials than this |
| `fetchDetails` | boolean | `false` | Fetch each result's detail page for hours/website/coordinates/full materials list |
| `maxItems` | int | `30` | Hard cap on emitted records (1–500) |

### Examples

#### Example: electronics recycling near a ZIP code

```json
{
  "material": "Electronics",
  "location": "90210",
  "radiusMiles": "25",
  "maxItems": 30
}
````

#### Example: battery drop-off locations only, within 10 miles

```json
{
  "material": "Lithium-ion Batteries",
  "location": "10001",
  "radiusMiles": "10",
  "resultType": "locations",
  "maxItems": 20
}
```

#### Example: mail-in programs for hazardous items, with full details

```json
{
  "material": "Medications",
  "location": "Chicago, IL",
  "radiusMiles": "50",
  "resultType": "mailin",
  "fetchDetails": true,
  "maxItems": 15
}
```

#### Example: plastics recycling by resin code

```json
{
  "material": "#1 Plastic Beverage Bottles",
  "location": "Seattle, WA",
  "radiusMiles": "25",
  "maxItems": 25
}
```

### Use cases

- **ESG / sustainability compliance tools** — verify recycling availability for reported materials
- **Consumer apps** — "where can I recycle this?" lookups by ZIP code
- **Corporate recycling programs** — research nearby drop-off options for office e-waste, batteries, and hazardous materials
- **Municipal / waste management research** — audit local recycling infrastructure by material type
- **Retail take-back program discovery** — find manufacturer or retailer mail-in programs for a given material

### FAQ

**What is the data source?**
Earth911.com's public recycling locator (search.earth911.com), a nationwide directory of recycling centers and programs. This actor is an independent third-party tool and is not affiliated with Earth911.

**What's the difference between a "location" and a "program"?**
A `location` is a physical drop-off site with a street address and distance from your search location. A `program` is an ongoing service (curbside pickup, retail take-back, or mail-in) that isn't tied to a single address, so it has no `distanceMiles`.

**Why do some results have a `materialsAcceptedCount` larger than `materialsAccepted.length`?**
The Earth911 search-results page truncates long materials lists (e.g. "+28 more"). Set `fetchDetails: true` to fetch the full untruncated list for every result.

**Why is `phone` sometimes missing?**
Earth911 marks unlisted phone numbers as "No Phone" on the source site — this actor omits the field entirely instead of pushing that placeholder text.

**How fresh is the data?**
Earth911 listings show a "last verified" date on their own detail pages (only fetched when `fetchDetails: true`). Some listings are verified more recently than others; this actor surfaces whatever Earth911 currently publishes.

**Does this actor need a proxy or login?**
No. Earth911's locator is fully public. The actor makes plain HTTP requests with no authentication and no proxy.

**Can I search by material category instead of a specific item?**
Yes — the `material` dropdown includes both specific items (e.g. `Cell Phones`) and 10 broad categories (e.g. `Electronics`, `Batteries`), which return a broader set of matching results. Two of Earth911's own category panel headings, "Hazardous" and "Household", are intentionally excluded — they're UI grouping labels only and return zero results as a search term on Earth911 itself; the specific items under them (e.g. `Household Cleaners`, `Household Furniture`) are unaffected and included.

**What are `materialNotes`, `description`, and `programInstructions`?**
With `fetchDetails: true`, some listings publish extra caveats beyond a flat materials list — e.g. "This site does not accept mattresses, box springs, air mattresses or waterbeds" for one specific material, a program-level description of what it does and how, or actionable instructions like "Please call to schedule a pick-up." These are only included when Earth911 actually publishes that text for the listing.

# Actor input Schema

## `material` (type: `string`):

The material/item you want to recycle. Full taxonomy extracted from Earth911's own quicksearch categories, plus the broad category names themselves that return real results (Automotive, Batteries, Construction, Electronics, Garden, Glass, Metals, Paint, Paper, Plastic).

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

US ZIP code, or `City, ST`, to search near.

## `radiusMiles` (type: `string`):

How far from `location` to search. (Apify schema requires string type for select-editor enums.)

## `resultType` (type: `string`):

Restrict to drop-off locations, ongoing programs (curbside/retail take-back/mail-in), mail-in programs only, or all.

## `maxDistanceMiles` (type: `integer`):

Client-side filter: drop results farther than this from `location`. Leave blank to use the full radius. Only applies to drop-off locations (programs have no distance).

## `minMaterialsAccepted` (type: `integer`):

Drop results that accept fewer than this many total materials.

## `fetchDetails` (type: `boolean`):

For each result, fetch its detail page for hours, website, exact coordinates, last-verified date, and the FULL (untruncated) materials-accepted list. Roughly doubles request count and run time.

## `maxItems` (type: `integer`):

Hard cap on emitted records.

## Actor input object example

```json
{
  "material": "Electronics",
  "location": "90210",
  "radiusMiles": "25",
  "resultType": "all",
  "fetchDetails": false,
  "maxItems": 30
}
```

# Actor output Schema

## `recyclingCenters` (type: `string`):

Dataset containing all scraped recycling centers, drop-off locations, and recycling programs.

# 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 = {
    "material": "Electronics",
    "location": "90210",
    "radiusMiles": "25",
    "resultType": "all",
    "fetchDetails": false,
    "maxItems": 30
};

// Run the Actor and wait for it to finish
const run = await client.actor("crawlerbros/earth911-recycling-locator-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 = {
    "material": "Electronics",
    "location": "90210",
    "radiusMiles": "25",
    "resultType": "all",
    "fetchDetails": False,
    "maxItems": 30,
}

# Run the Actor and wait for it to finish
run = client.actor("crawlerbros/earth911-recycling-locator-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 '{
  "material": "Electronics",
  "location": "90210",
  "radiusMiles": "25",
  "resultType": "all",
  "fetchDetails": false,
  "maxItems": 30
}' |
apify call crawlerbros/earth911-recycling-locator-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Earth911 Recycling Locator Scraper",
        "description": "Find recycling centers, drop-off locations, and curbside/retail/mail-in recycling programs near any US ZIP code or city for 381 material types, sourced from Earth911's nationwide recycling locator.",
        "version": "1.0",
        "x-build-id": "TxCy2BuWeFY3r5JZZ"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/crawlerbros~earth911-recycling-locator-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-crawlerbros-earth911-recycling-locator-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/crawlerbros~earth911-recycling-locator-scraper/runs": {
            "post": {
                "operationId": "runs-sync-crawlerbros-earth911-recycling-locator-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/crawlerbros~earth911-recycling-locator-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-crawlerbros-earth911-recycling-locator-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": [
                    "material",
                    "location"
                ],
                "properties": {
                    "material": {
                        "title": "Material to recycle",
                        "enum": [
                            "#1 Plastic Bags",
                            "#1 Plastic Beverage Bottles",
                            "#1 Plastic Clamshells",
                            "#1 Plastic Film",
                            "#1 Plastic Non-Beverage Bottles",
                            "#1 Plastic Trays",
                            "#1 Rigid Plastics",
                            "#2 Plastic Bags",
                            "#2 Plastic Bottles",
                            "#2 Plastic Caps",
                            "#2 Plastic Clamshells",
                            "#2 Plastic Film",
                            "#2 Plastic Jugs - Clear",
                            "#2 Plastic Jugs - Colored",
                            "#2 Rigid Plastics",
                            "#3 Plastic Bags",
                            "#3 Plastic Bottles",
                            "#3 Plastic Film",
                            "#3 Rigid Plastics",
                            "#4 Flexible Plastics",
                            "#4 Plastic Bags",
                            "#4 Plastic Bottles",
                            "#4 Plastic Film",
                            "#4 Rigid Plastics",
                            "#5 Plastic Bags",
                            "#5 Plastic Bottles",
                            "#5 Plastic Caps",
                            "#5 Plastic Clamshells",
                            "#5 Plastic Cups",
                            "#5 Plastic Film",
                            "#5 Rigid Plastics",
                            "#6 Plastic - Expanded",
                            "#6 Plastic Bags",
                            "#6 Plastic Bottles",
                            "#6 Plastic Clamshells - Expanded",
                            "#6 Plastic Cups",
                            "#6 Plastic Cups - Expanded",
                            "#6 Plastic Film",
                            "#6 Plastic Peanuts",
                            "#6 Rigid Plastics",
                            "#7 Plastic Bags",
                            "#7 Plastic Bottles",
                            "#7 Plastic Film",
                            "#7 Rigid Plastics",
                            "Acids",
                            "Acrylics",
                            "Adhesives",
                            "Adult Toys",
                            "Aerosol Cans - Full",
                            "Air Conditioners",
                            "Alkaline Batteries",
                            "Aluminum Beverage Cans",
                            "Aluminum Foil",
                            "Aluminum Food Cans",
                            "Aluminum Pie Plates",
                            "Aluminum Trays",
                            "Ammunition",
                            "Antifreeze",
                            "Arcade Cabinet",
                            "Arts and Crafts Supplies",
                            "Asbestos",
                            "Asphalt",
                            "Audio Equipment",
                            "Auto Bodies",
                            "Auto Parts",
                            "Automotive",
                            "Baby Products",
                            "Barbeque Grills",
                            "Batteries",
                            "Battery Chargers",
                            "Bear Spray",
                            "Bicycles",
                            "Bike Tires",
                            "Binders",
                            "Blenders",
                            "Blu-Ray Players",
                            "Blue Glass Beverage Containers",
                            "Blue Glass Containers",
                            "Boomboxes",
                            "Box Spring",
                            "Brake Fluid",
                            "Branches",
                            "Brick",
                            "Brown Glass Beverage Containers",
                            "Brown Glass Containers",
                            "Brush",
                            "Button Cell Batteries",
                            "CD Cases",
                            "CD Players",
                            "CDs",
                            "CFLs",
                            "CRT Computer Monitors",
                            "CRT Televisions",
                            "Cables",
                            "Calculators",
                            "Candy Wrappers",
                            "Car Batteries",
                            "Car Fluids",
                            "Carpet",
                            "Carpet Padding",
                            "Cassette Players",
                            "Cassette Tapes",
                            "Ceiling Tiles",
                            "Cell Phone Accessories",
                            "Cell Phones",
                            "Ceramic Makeup Container",
                            "Ceramic Tile",
                            "Chemistry Sets",
                            "Chip Bags",
                            "Christmas Trees",
                            "Cigarettes",
                            "Clear Glass Beverage Containers",
                            "Clear Glass Containers",
                            "Clothing",
                            "Coffee Maker",
                            "Colored Pencils",
                            "Compacts",
                            "Compostable Plastics",
                            "Computer Peripherals - External",
                            "Computer Peripherals - Internal",
                            "Concrete",
                            "Construction",
                            "Construction Debris",
                            "Construction Materials",
                            "Contaminated Soil",
                            "Contaminated Wood",
                            "Controlled Substances",
                            "Cooking Oil",
                            "Cookware",
                            "Corks",
                            "Corrugated Cardboard",
                            "Cosmetic Liner Pencil",
                            "Crayons",
                            "Curling Irons",
                            "DVD Players",
                            "DVDs",
                            "Dehumidifiers",
                            "Dental Floss Container",
                            "Desktop Computers",
                            "Digital Cameras",
                            "Dirt",
                            "Doors",
                            "Drink Boxes",
                            "Drink Pouches",
                            "Electronic Servers",
                            "Electronics",
                            "Engine Degreasers",
                            "Envelopes",
                            "Exit Signs",
                            "Explosives",
                            "Eyeglasses",
                            "Fabric",
                            "Ferrous Metals",
                            "Fertilizers",
                            "Fiberglass",
                            "Fire Extinguishers",
                            "Flip-Flops",
                            "Floppy Disks",
                            "Fluorescent Tubes",
                            "Freezers",
                            "Fungicides",
                            "GPS Systems",
                            "Game Consoles",
                            "Garden",
                            "Garden Tools",
                            "Gas Cylinders",
                            "Gas/Oil Mixture",
                            "Gasoline",
                            "Gift Bags",
                            "Glass",
                            "Glue Sticks",
                            "Grass Clippings",
                            "Green Glass Beverage Containers",
                            "Green Glass Containers",
                            "Grid Suspension",
                            "Gypsum Drywall",
                            "HHW",
                            "Hair",
                            "Hair Dye",
                            "Hair Spray",
                            "Halogen Bulbs",
                            "Hand Sanitizer",
                            "Hard Drives",
                            "Hardware",
                            "Hay",
                            "Heaters",
                            "Herbicides",
                            "Holiday Greens",
                            "Home Electronics",
                            "Household Cleaners",
                            "Household Furniture",
                            "Hoverboards",
                            "Humidifiers",
                            "Hydraulic Fluid",
                            "Incandescent Lightbulbs",
                            "Inkjet Cartridges",
                            "Innertubes",
                            "Insecticides",
                            "Items Containing Mercury",
                            "Kerosene",
                            "LCD Computer Monitors",
                            "LCD Televisions",
                            "Lacquer",
                            "Laptop Computers",
                            "Latex Foam Pillows",
                            "Latex Paint",
                            "Lead Paint Chips",
                            "Lead-acid Batteries - Non-automotive",
                            "Leaves",
                            "Lice Shampoo",
                            "Light Fixtures",
                            "Lighter Fluid",
                            "Lighters",
                            "Lighting Ballasts",
                            "Linens",
                            "Linoleum",
                            "Lip gloss tube",
                            "Lipstick tube",
                            "Lithium Batteries",
                            "Lithium-ion Batteries",
                            "Lumber",
                            "MP3 Players",
                            "Magazines",
                            "Makeup palettes",
                            "Mannequins",
                            "Manure",
                            "Marine Batteries",
                            "Mascara Tubes and Wands",
                            "Mattress Topper",
                            "Mattresses",
                            "Medical Equipment - Handheld",
                            "Medical Equipment - Large",
                            "Medical Sharps",
                            "Medication Containers",
                            "Medications",
                            "Mercury Thermostats",
                            "Metal Clothes Hangers",
                            "Metal Paint Cans",
                            "Metal Tags",
                            "Metals",
                            "Microwaves",
                            "Mixed Paper",
                            "Motor Oil",
                            "Motor Oil Containers",
                            "Multi-wall Paper Bags",
                            "Music Greeting Cards",
                            "Musical Instruments - Metal",
                            "Musical Instruments - Non-metal",
                            "Nail Polish",
                            "Nail Polish Removers",
                            "Neon Lights",
                            "Newspaper",
                            "Nickel-cadmium Batteries",
                            "Nickel-metal Hydride Batteries",
                            "Nickel-zinc Batteries",
                            "Non-Organic Food Waste",
                            "Nonferrous Metals",
                            "Office Furniture",
                            "Office Machines",
                            "Office Paper",
                            "Office Supplies",
                            "Oil Filters",
                            "Oil-Based Paint",
                            "Organic Food Waste",
                            "Ornaments",
                            "Pagers",
                            "Paint",
                            "Paint Strippers",
                            "Paint Thinners",
                            "Pallets",
                            "Paper",
                            "Paper Cups",
                            "Paper Labels",
                            "Paper Shredders",
                            "Paper Sleeves",
                            "Paperback Books",
                            "Paperboard",
                            "Pepper Spray",
                            "Perfumes",
                            "Pesticide Containers",
                            "Pesticides",
                            "Phone Books",
                            "Photographic Chemicals",
                            "Pipettes",
                            "Pizza Boxes",
                            "Plastic",
                            "Plastic Bottle Accessories",
                            "Plastic Buckets",
                            "Plastic Cards",
                            "Plastic Egg Cartons",
                            "Plastic Furniture",
                            "Plastic Packing Materials",
                            "Plastic Paint Cans",
                            "Plastic Plant Materials",
                            "Plastic Playsets",
                            "Pool Chemicals",
                            "Porcelain Makeup Container",
                            "Porcelain Products",
                            "Power Steering Fluid",
                            "Power Tools",
                            "Printers",
                            "Projectors",
                            "Propane Tanks",
                            "Radiators",
                            "Receivers",
                            "Record Players",
                            "Refrigerators",
                            "Road Flares",
                            "Roofing Materials",
                            "Sachet",
                            "Sand",
                            "Sawdust",
                            "Scanners",
                            "Sealers",
                            "Shingles",
                            "Shoes",
                            "Silicone containers",
                            "Silver-oxide Batteries",
                            "Six-pack Rings",
                            "Small Appliances",
                            "Smartphones",
                            "Smartwatches",
                            "Smoke Detectors",
                            "Solar Panels",
                            "Solvents",
                            "Sporting Goods",
                            "Squeezable tubes - Aluminum",
                            "Squeezable tubes - Plastic",
                            "Steel Cans",
                            "Steel Lids",
                            "Stone",
                            "String Lights",
                            "Stumps",
                            "Surfboards",
                            "Synthetic Cork",
                            "Tablets",
                            "Telephones",
                            "Television",
                            "Television Accessories",
                            "Tennis Balls",
                            "Tile",
                            "Tires",
                            "Toasters",
                            "Toner Cartridges",
                            "Tools",
                            "Toothbrushes",
                            "Toothpaste Tubes",
                            "Toothpaste tube",
                            "Toys",
                            "Transmission Fluid",
                            "Trophies",
                            "Truck Tires",
                            "Two-Way Radios",
                            "Typewriters",
                            "Tyvek Envelopes",
                            "VCRs",
                            "Vacuum Cleaners",
                            "Vape Pens",
                            "Varnish",
                            "Vehicles",
                            "Video Game Cartridges",
                            "Video Game Peripherals",
                            "Video Tapes",
                            "Vinyl Records",
                            "Washer/Dryers",
                            "Water Filters",
                            "Weeds",
                            "Wet-strength Paperboard",
                            "Windows",
                            "Wood",
                            "Wood Chips",
                            "Wood Furnishings",
                            "Wood Stains",
                            "X-rays",
                            "Yard Waste",
                            "Yoga Mats",
                            "Zinc-air Batteries",
                            "Zinc-carbon Batteries",
                            "Zipper binder"
                        ],
                        "type": "string",
                        "description": "The material/item you want to recycle. Full taxonomy extracted from Earth911's own quicksearch categories, plus the broad category names themselves that return real results (Automotive, Batteries, Construction, Electronics, Garden, Glass, Metals, Paint, Paper, Plastic).",
                        "default": "Electronics"
                    },
                    "location": {
                        "title": "ZIP code or city",
                        "type": "string",
                        "description": "US ZIP code, or `City, ST`, to search near.",
                        "default": "90210"
                    },
                    "radiusMiles": {
                        "title": "Search radius (miles)",
                        "enum": [
                            "5",
                            "10",
                            "25",
                            "50",
                            "100"
                        ],
                        "type": "string",
                        "description": "How far from `location` to search. (Apify schema requires string type for select-editor enums.)",
                        "default": "25"
                    },
                    "resultType": {
                        "title": "Result type",
                        "enum": [
                            "all",
                            "locations",
                            "programs",
                            "mailin"
                        ],
                        "type": "string",
                        "description": "Restrict to drop-off locations, ongoing programs (curbside/retail take-back/mail-in), mail-in programs only, or all.",
                        "default": "all"
                    },
                    "maxDistanceMiles": {
                        "title": "Max distance filter (miles)",
                        "minimum": 1,
                        "maximum": 100,
                        "type": "integer",
                        "description": "Client-side filter: drop results farther than this from `location`. Leave blank to use the full radius. Only applies to drop-off locations (programs have no distance)."
                    },
                    "minMaterialsAccepted": {
                        "title": "Min materials accepted",
                        "minimum": 1,
                        "maximum": 500,
                        "type": "integer",
                        "description": "Drop results that accept fewer than this many total materials."
                    },
                    "fetchDetails": {
                        "title": "Fetch full details (slower)",
                        "type": "boolean",
                        "description": "For each result, fetch its detail page for hours, website, exact coordinates, last-verified date, and the FULL (untruncated) materials-accepted list. Roughly doubles request count and run time.",
                        "default": false
                    },
                    "maxItems": {
                        "title": "Max items",
                        "minimum": 1,
                        "maximum": 500,
                        "type": "integer",
                        "description": "Hard cap on emitted records.",
                        "default": 30
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
