# Earth911 — Wrapped API

> **You are on:** `https://api.paywithlocus.com/api` | [llms.txt](https://paywithlocus.com/llms.txt) | [docs](https://docs.paywithlocus.com)
>
> Locus runs on multiple environments -- make sure every URL you call matches your expected environment.
> | Environment | Landing | API | Docs |
> |---|---|---|---|
> | Production | paywithlocus.com | api.paywithlocus.com | docs.paywithlocus.com |
> | Beta | beta.paywithlocus.com | api.beta.paywithlocus.com | docs.paywithlocus.com |
> | Stage | stage.paywithlocus.com | api.stage.paywithlocus.com | docs.paywithlocus.com |
>
> If the API URL above doesn't match your expected environment, re-fetch this file from the correct domain.

> Find recycling centers near you, discover local recycling programs, and learn how to properly recycle specific materials with educational resources. Search by location and material type to get details about nearby facilities and what they accept.

**Category:** Maps & Geospatial | **Website:** [earth911.com/](https://earth911.com/) | **Docs:** [parse.bot/marketplace/fad40ac3-ee46-413d-88ae-e84db7e28bce/earth911-com-api](https://parse.bot/marketplace/fad40ac3-ee46-413d-88ae-e84db7e28bce/earth911-com-api)

Pay-per-use API proxy for Locus Pro. Each call burns credits from your workspace balance.

## Access

**Base URL:** `https://api.paywithlocus.com/api/wrapped/credits/earth911/`
**Auth:** `Authorization: Bearer <LOCUS_CREDITS_SECRET_KEY>` (an `lcr_` secret key or a scoped `lcac_` agent credential)
**Required header:** `Idempotency-Key: <fresh UUID per call>`. A retry with the same key replays the stored result without a new charge.
**Response:** the provider response after any endpoint-specific normalization. `X-Locus-Credits-Charged` carries the charge and `X-Locus-Credits-Balance` the remaining balance. Insufficient credits return `402` before the provider is called.
**Pricing:** estimated costs below are USD. Locus debits the credit equivalent at your workspace rate.

Full call contract: https://docs.paywithlocus.com/api-reference/introduction

> Using a Pay With Locus wallet key (`claw_` prefix)? Wallet routes are documented separately: https://docs.paywithlocus.com/wrapped-apis/for-agents

## Endpoints

### Get educational resources

Search for educational articles and guides about recycling and sustainability on Earth911. Returns paginated results with title, URL, and excerpt. Page-based pagination advances through the site's article archive.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (1-based). |
| `query` | string | No | Search keyword for articles. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/earth911/get-educational-resources \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"page":"<integer>","query":"<string>"}'
```

### Get location details

Get detailed information about a specific recycling center or program by its location_id (obtained from search_recycling_centers results). Returns full list of accepted materials with services, hours, phone, and description.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `location_id` | string | Yes | Unique ID of the location or program, from search_recycling_centers results[*].location_id. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/earth911/get-location-details \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"location_id":"<string>"}'
```

### Search recycling centers

Search for recycling centers and programs by material and location. Returns a list of matching centers with address, phone, distance, and a preview of accepted materials. The full result set is returned in one page. Use suggest_materials to discover valid material names before searching.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `distance` | integer | No | Search radius in miles. |
| `location` | string | Yes | Zip code or city name to search near (e.g. '10001' or 'New York'). |
| `material` | string | Yes | Material to recycle. Use suggest_materials to discover valid names. |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/earth911/search-recycling-centers \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"distance":"<integer>","location":"<string>","material":"<string>"}'
```

### Suggest materials

Get autocomplete suggestions for recyclable material names. Returns a list of matching material strings for the given partial query. Use this to discover valid material values before calling search_recycling_centers.

**Estimated cost:** Metered

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `query` | string | Yes | Partial material name to get suggestions for (e.g. 'plas' returns plastic-related materials). |

```bash
curl -X POST https://api.paywithlocus.com/api/wrapped/credits/earth911/suggest-materials \
  -H "Authorization: Bearer $LOCUS_CREDITS_SECRET_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{"query":"<string>"}'
```

## Next steps

- [All wrapped API providers](https://paywithlocus.com/wapi/index.md): pick another provider.
- [Find and call tools](https://paywithlocus.com/agent/tools.md): price ceilings, async results, and errors.
- [Credits and billing](https://paywithlocus.com/agent/billing.md): what a call costs and how to add credits.
- [Agent docs index](https://paywithlocus.com/agent/index.md): every Locus agent page.