# ACA Camps Scraper (`crawlerbros/aca-camps-scraper`) Actor

Scrape the American Camp Association's Find a Camp directory - 3,900+ accredited and member day, overnight, and family camps with 11,000+ programs across the US. Search by camp type, location, activities, gender, cost, and more.

- **URL**: https://apify.com/crawlerbros/aca-camps-scraper.md
- **Developed by:** [Crawler Bros](https://apify.com/crawlerbros) (community)
- **Categories:** Automation, Lead generation, Other
- **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

## ACA Camps Scraper

Scrape the **American Camp Association's Find a Camp directory** — the official nationwide database of ~3,900 day camps, overnight camps, and family/adult camps with ~11,000+ programs across the US. Search by camp type, location (zip radius or state), activities, affiliation, gender served, cost, and camper age/grade — or look up specific camps and programs directly by ID or name. Every camp record includes accreditation status, full address, contact info, and its program roster; program records include session-level dates, pricing, and age ranges. Empty fields are omitted.

### What this actor does

- **Four modes:** `search` (browse/filter), `byCampId` (exact lookup), `byCampName` (name lookup), `byProgramId` (program + session lookup)
- **Full filter surface:** camp type, location (zip + radius, or one/many states), gender served, ACA accreditation, activities (multi-select or single-focus), affiliations, cost range, camper age/grade, session length and date range, disabilities/special needs served, specific populations served, waterfront access, day-camp amenities
- **Rich camp records:** accreditation status, founded year, full address, GPS coordinates, phone, email, website, director, operator, affiliation/religion, photo gallery, and every program the camp offers
- **Rich program records:** gender served, day/overnight type, general notes (before/aftercare, transportation), financial aid, waterfront access, GPS coordinates, photo gallery, and every scheduled session with dates, duration, age range, and price
- **Empty fields are omitted** — you'll never see a `null`, `""`, or placeholder value in the output

### Output per camp (`recordType: "camp"`)

- `campId`, `campName`
- `accreditationStatus` — `accredited`, `affiliate_member`, or omitted if neither
- `foundedYear`
- `description`
- `addressStreet`, `addressCity`, `addressState`, `addressStateName`, `addressZip`
- `latitude`, `longitude` — GPS coordinates of the camp
- `phone`, `email`, `websiteUrl`
- `director`, `operator`, `affiliationOrReligion`
- `logoUrl`
- `photos[]` — camp photo gallery (when the camp has published one)
- `programs[]` — `programId`, `programName`, `programUrl`, `gender`, `type`, `ageGrade`, `transportationAvailable`, `cost`, `city`, `state`, `description`
- `programCount`
- `campProfileUrl`
- `scrapedAt`

### Output per program (`recordType: "program"`, mode=byProgramId)

- `programId`, `programName`
- `campId`, `campName`, `campProfileUrl`
- `accreditationStatus`, `foundedYear`
- `description`
- `gender` — e.g. `Coed`, `Boys Only`, `Girls Only`
- `type` — e.g. `Day`, `Overnight`
- `generalNotes[]` — e.g. before/after-camp care, minimum attendance days
- `transportationNotes`
- `financialAidAvailable`, `financialAidNote`
- `waterfront[]` — e.g. `Ocean`, `Pool`, `Lake`
- `addressStreet`, `addressCity`, `addressState`, `addressStateName`, `addressZip`
- `latitude`, `longitude` — GPS coordinates of the camp
- `phone`, `email`, `websiteUrl`, `director`
- `logoUrl`
- `photos[]` — camp photo gallery (when the camp has published one)
- `sessions[]` — `name`, `startDate`, `endDate`, `duration`, `excludesWeekends`, `ageGrade`, `cost`, `costAmount`
- `sessionCount`
- `programProfileUrl`
- `scrapedAt`

### Input

| Field | Type | Default | Description |
|---|---|---|---|
| `mode` | string | `search` | `search` / `byCampId` / `byCampName` / `byProgramId` |
| `campType` | string | `day_camp` | `day_camp` / `overnight_camp` / `day_and_overnight` / `adult_camp` (mode=search) |
| `campNameQuery` | string | – | Full or partial camp name, min 3 characters (mode=byCampName) |
| `campIds` | array | – | Numeric camp IDs (mode=byCampId) |
| `programIds` | array | – | Numeric program IDs (mode=byProgramId) |
| `locationType` | string | (none) | `""` nationwide / `zip` / `state` (mode=search) |
| `postalCode` | string | – | 5-digit US zip code (locationType=zip) |
| `distanceMiles` | string | `50` | Search radius in miles, or "any distance" (locationType=zip) |
| `states` | array | – | US states/territories to restrict to (locationType=state) |
| `gender` | array | – | `coed` / `only_boys` / `only_girls` |
| `accreditedOnly` | boolean | `false` | Only ACA-accredited camps |
| `activities` | array | – | Restrict to camps offering ALL of these activities (multi-select) |
| `singleFocusActivity` | string | – | Restrict to camps whose ENTIRE program is dedicated to this one activity (e.g. an all-sailing camp). Ignored if `activities` is also set |
| `affiliations` | array | – | Restrict to camps affiliated with these organizations |
| `disabilities` | string | – | Restrict to camps serving campers with this disability/special need |
| `disabilitySpecializesIn` | boolean | `false` | Only camps that SPECIALIZE in the selected `disabilities` value |
| `disabilityExclusively` | boolean | `false` | Only camps that EXCLUSIVELY serve the selected `disabilities` value |
| `audiences` | string | – | Restrict to camps with programs for this specific population (e.g. LGBTQ, homeschooled, military families) |
| `waterfront` | array | – | Restrict to camps with this waterfront access (`lake_pond_river` / `ocean` / `pool`) |
| `dayCampAmenities` | array | – | Restrict day camps to these amenities (aftercare, lunch, transportation, etc.) |
| `costMin` / `costMax` | integer | – | Program price range in USD |
| `ageYears` | integer | – | Camper age |
| `grade` | string | – | Camper grade (Pre-K through 12th) |
| `sessionDurations` | array | – | Restrict to these session lengths |
| `sessionStartDate` | string | – | Restrict to programs with a session starting on/after this date (`YYYY-MM-DD`) |
| `sessionEndDate` | string | – | Restrict to programs with a session ending on/before this date (`YYYY-MM-DD`) |
| `sortBy` | string | `accredited` | Sort order for mode=search results |
| `maxItems` | integer | `25` | Hard cap on emitted records (1–500) |

#### Example: day camps near a zip code

```json
{
  "mode": "search",
  "campType": "day_camp",
  "locationType": "zip",
  "postalCode": "10001",
  "distanceMiles": "50",
  "maxItems": 50
}
````

#### Example: accredited overnight camps in a state, coed only

```json
{
  "mode": "search",
  "campType": "overnight_camp",
  "locationType": "state",
  "states": ["CO", "WY"],
  "gender": ["coed"],
  "accreditedOnly": true,
  "maxItems": 50
}
```

#### Example: look up specific camps by ID

```json
{
  "mode": "byCampId",
  "campIds": ["1883", "3265"]
}
```

#### Example: overnight camps specializing in autism, with sessions in June

```json
{
  "mode": "search",
  "campType": "overnight_camp",
  "disabilities": "autism",
  "disabilitySpecializesIn": true,
  "sessionStartDate": "2026-06-01",
  "sessionEndDate": "2026-06-30",
  "maxItems": 50
}
```

#### Example: single-focus space/aeronautics camps

```json
{
  "mode": "search",
  "campType": "overnight_camp",
  "singleFocusActivity": "aeronautics",
  "maxItems": 50
}
```

#### Example: day camps with lunch provided and ocean waterfront overnight camps

```json
{
  "mode": "search",
  "campType": "day_camp",
  "dayCampAmenities": ["lunch_provided", "transportation_door_to_door"],
  "maxItems": 50
}
```

#### Example: find camps by name, then look up a program's sessions

```json
{
  "mode": "byCampName",
  "campNameQuery": "YMCA",
  "maxItems": 20
}
```

```json
{
  "mode": "byProgramId",
  "programIds": ["16330", "4836"]
}
```

### Use cases

- **Parent/family planning tools** — power a camp-comparison or recommendation site with accreditation, cost, and session dates
- **Youth program directories** — aggregate accredited camps by region, activity, or affiliation
- **Market research** — analyze camp pricing, accreditation rates, and program mix by state
- **Nonprofit/association research** — study camp affiliations (YMCA, religious, Scouts, etc.) across the US
- **Lead generation** — build contact lists of camp directors and operators by region or camp type
- **Session/pricing trackers** — monitor camp session dates, capacity windows, and pricing changes over a season

### FAQ

**What's the data source?** The American Camp Association's public "Find a Camp" directory at find.acacamps.org — the official nationwide camp-search tool ACA makes available to parents. No login is required to search or view camp profiles.

**Is this affiliated with the American Camp Association?** No — this is an independent, third-party actor that reads the same public directory pages available to any visitor.

**What does "accredited" vs "affiliate member" mean?** ACA accreditation means a camp has passed a peer-review process against up to 300 health and safety standards. "Affiliate member" camps are ACA members that have not (yet) completed accreditation. Camps with neither badge are not currently ACA-accredited.

**Why do some camps have no sessions in the byProgramId output?** Session-level dates and pricing are only populated for camps whose season is still upcoming or in progress at the time of the request; camps that haven't published this year's session calendar yet will return a program record without a `sessions[]` array.

**Why do some fields like `email`, `phone`, or `founded Year` sometimes not appear?** Camps self-report their listing information to ACA. Fields the camp didn't provide are simply omitted rather than shown as empty or placeholder values.

**Why do some program descriptions in search results end mid-sentence with "..."?** ACA truncates long program descriptions on its own search-results pages. In a small number of cases the source's own truncation cuts a description at a byte offset that lands inside a special character (an em-dash, curly quote, etc.), which the actor cleans up automatically so you'll only ever see the trailing "..." — never a stray corrupted character.

**Can I search by multiple states or activities at once?** Yes — `states`, `activities`, `affiliations`, `gender`, `sessionDurations`, `waterfront`, and `dayCampAmenities` all accept multiple values and are combined with the other filters (a camp must match ALL selected values within a filter, matching the source site's own semantics).

**What's the difference between `activities` and `singleFocusActivity`?** `activities` finds camps that offer all of the selected activities alongside other programming (most camps). `singleFocusActivity` finds camps whose entire program is built around one activity (e.g. a dedicated sailing camp or space camp). The two are mutually exclusive — if both are set, `activities` takes priority.

**Do `latitude`/`longitude` and `photos` appear on every camp?** GPS coordinates are published for essentially every camp with a mapped address. Photos depend on whether the camp uploaded a gallery to its ACA listing — camps without one simply omit the `photos` field rather than returning an empty array.

**Does distance sorting work without a zip code?** No — `sortBy: "camp_location"` requires `locationType: "zip"` with a `postalCode`. If you request distance sort without a zip code, the actor falls back to accredited-first sorting.

**How many camps and programs are in the directory?** Roughly 3,900 camps and 11,000 programs across the US at any given time; exact counts fluctuate as camps update their listings.

**Do I need a proxy or cookies to run this?** No — the actor works out of the box with no configuration beyond the input fields above.

# Actor input Schema

## `mode` (type: `string`):

What to fetch.

## `campType` (type: `string`):

What type of camp to search for.

## `campNameQuery` (type: `string`):

Full or partial camp name to search for, e.g. `YMCA` or `Camp Fire`. Matches at least 3 characters.

## `campIds` (type: `array`):

Numeric ACA camp IDs, e.g. `1883`. Find these via mode=search or mode=byCampName results (`campId` field).

## `programIds` (type: `array`):

Numeric ACA program IDs, e.g. `4836`. Find these via mode=search results (`programs[].programId` field).

## `locationType` (type: `string`):

How to narrow camps by location. Leave as Nationwide to search all US locations.

## `postalCode` (type: `string`):

5-digit US zip code to search around, e.g. `10001`.

## `distanceMiles` (type: `string`):

Distance in miles from the zip code.

## `states` (type: `array`):

Restrict results to camps located in these US states/territories.

## `gender` (type: `array`):

Restrict results to camps/programs serving these genders. Leave empty for all.

## `accreditedOnly` (type: `boolean`):

Only include camps that are currently ACA-accredited.

## `activities` (type: `array`):

Restrict results to camps offering these activities. Leave empty for all.

## `singleFocusActivity` (type: `string`):

Restrict results to camps whose ENTIRE program is dedicated to this one activity (e.g. an all-sailing camp) rather than camps that merely offer it. Ignored if `activities` (multi-select) is also set — the two are mutually exclusive on the upstream site. Leave blank to not filter by single focus.

## `affiliations` (type: `array`):

Restrict results to camps affiliated with these organizations. Leave empty for all.

## `disabilities` (type: `string`):

Restrict results to camps serving campers with this disability or special need. Leave blank for all.

## `disabilitySpecializesIn` (type: `boolean`):

Only include camps whose program SPECIALIZES in serving campers with the selected `disabilities` value. Ignored if `disabilities` is blank.

## `disabilityExclusively` (type: `boolean`):

Only include camps whose program EXCLUSIVELY serves campers with the selected `disabilities` value. Ignored if `disabilities` is blank.

## `audiences` (type: `string`):

Restrict results to camps with programs designed for this specific population. Leave blank for all.

## `waterfront` (type: `array`):

Restrict results to camps with this waterfront access. Leave empty for all.

## `dayCampAmenities` (type: `array`):

Restrict results to day camps offering these amenities (before/after-care, transportation, etc). Only applies to day camps. Leave empty for all.

## `costMin` (type: `integer`):

Only include programs costing at least this much. Only affects camps with published pricing.

## `costMax` (type: `integer`):

Only include programs costing at most this much. Only affects camps with published pricing.

## `ageYears` (type: `integer`):

Restrict results to programs accepting campers of this age.

## `grade` (type: `string`):

Restrict results to programs accepting campers in this grade.

## `sessionDurations` (type: `array`):

Restrict results to programs offering these session lengths. Leave empty for all.

## `sessionStartDate` (type: `string`):

Restrict results to programs with a session starting on or after this date. Format: `YYYY-MM-DD`, e.g. `2026-06-01`. Leave blank for no filter.

## `sessionEndDate` (type: `string`):

Restrict results to programs with a session ending on or before this date. Format: `YYYY-MM-DD`, e.g. `2026-08-31`. Leave blank for no filter.

## `sortBy` (type: `string`):

Sort order for mode=search results. `Distance` requires a zip code (locationType=zip).

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

Hard cap on emitted records.

## Actor input object example

```json
{
  "mode": "search",
  "campType": "day_camp",
  "campNameQuery": "YMCA",
  "campIds": [],
  "programIds": [],
  "locationType": "",
  "postalCode": "",
  "distanceMiles": "50",
  "states": [],
  "gender": [],
  "accreditedOnly": false,
  "activities": [],
  "singleFocusActivity": "",
  "affiliations": [],
  "disabilities": "",
  "disabilitySpecializesIn": false,
  "disabilityExclusively": false,
  "audiences": "",
  "waterfront": [],
  "dayCampAmenities": [],
  "grade": "",
  "sessionDurations": [],
  "sessionStartDate": "",
  "sessionEndDate": "",
  "sortBy": "accredited",
  "maxItems": 25
}
```

# Actor output Schema

## `camps` (type: `string`):

Dataset containing all scraped ACA camps and/or 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 = {
    "mode": "search",
    "campType": "day_camp",
    "campNameQuery": "YMCA",
    "campIds": [],
    "programIds": [],
    "locationType": "",
    "postalCode": "",
    "distanceMiles": "50",
    "states": [],
    "gender": [],
    "accreditedOnly": false,
    "activities": [],
    "singleFocusActivity": "",
    "affiliations": [],
    "disabilities": "",
    "disabilitySpecializesIn": false,
    "disabilityExclusively": false,
    "audiences": "",
    "waterfront": [],
    "dayCampAmenities": [],
    "grade": "",
    "sessionDurations": [],
    "sessionStartDate": "",
    "sessionEndDate": "",
    "sortBy": "accredited",
    "maxItems": 25
};

// Run the Actor and wait for it to finish
const run = await client.actor("crawlerbros/aca-camps-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 = {
    "mode": "search",
    "campType": "day_camp",
    "campNameQuery": "YMCA",
    "campIds": [],
    "programIds": [],
    "locationType": "",
    "postalCode": "",
    "distanceMiles": "50",
    "states": [],
    "gender": [],
    "accreditedOnly": False,
    "activities": [],
    "singleFocusActivity": "",
    "affiliations": [],
    "disabilities": "",
    "disabilitySpecializesIn": False,
    "disabilityExclusively": False,
    "audiences": "",
    "waterfront": [],
    "dayCampAmenities": [],
    "grade": "",
    "sessionDurations": [],
    "sessionStartDate": "",
    "sessionEndDate": "",
    "sortBy": "accredited",
    "maxItems": 25,
}

# Run the Actor and wait for it to finish
run = client.actor("crawlerbros/aca-camps-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 '{
  "mode": "search",
  "campType": "day_camp",
  "campNameQuery": "YMCA",
  "campIds": [],
  "programIds": [],
  "locationType": "",
  "postalCode": "",
  "distanceMiles": "50",
  "states": [],
  "gender": [],
  "accreditedOnly": false,
  "activities": [],
  "singleFocusActivity": "",
  "affiliations": [],
  "disabilities": "",
  "disabilitySpecializesIn": false,
  "disabilityExclusively": false,
  "audiences": "",
  "waterfront": [],
  "dayCampAmenities": [],
  "grade": "",
  "sessionDurations": [],
  "sessionStartDate": "",
  "sessionEndDate": "",
  "sortBy": "accredited",
  "maxItems": 25
}' |
apify call crawlerbros/aca-camps-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "ACA Camps Scraper",
        "description": "Scrape the American Camp Association's Find a Camp directory - 3,900+ accredited and member day, overnight, and family camps with 11,000+ programs across the US. Search by camp type, location, activities, gender, cost, and more.",
        "version": "1.0",
        "x-build-id": "vlOB51YXfzXmJ092R"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/crawlerbros~aca-camps-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-crawlerbros-aca-camps-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~aca-camps-scraper/runs": {
            "post": {
                "operationId": "runs-sync-crawlerbros-aca-camps-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~aca-camps-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-crawlerbros-aca-camps-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": [
                    "mode"
                ],
                "properties": {
                    "mode": {
                        "title": "Mode",
                        "enum": [
                            "search",
                            "byCampId",
                            "byCampName",
                            "byProgramId"
                        ],
                        "type": "string",
                        "description": "What to fetch.",
                        "default": "search"
                    },
                    "campType": {
                        "title": "Camp type (mode=search)",
                        "enum": [
                            "day_camp",
                            "overnight_camp",
                            "day_and_overnight",
                            "adult_camp"
                        ],
                        "type": "string",
                        "description": "What type of camp to search for.",
                        "default": "day_camp"
                    },
                    "campNameQuery": {
                        "title": "Camp name (mode=byCampName)",
                        "type": "string",
                        "description": "Full or partial camp name to search for, e.g. `YMCA` or `Camp Fire`. Matches at least 3 characters.",
                        "default": ""
                    },
                    "campIds": {
                        "title": "Camp IDs (mode=byCampId)",
                        "type": "array",
                        "description": "Numeric ACA camp IDs, e.g. `1883`. Find these via mode=search or mode=byCampName results (`campId` field).",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "programIds": {
                        "title": "Program IDs (mode=byProgramId)",
                        "type": "array",
                        "description": "Numeric ACA program IDs, e.g. `4836`. Find these via mode=search results (`programs[].programId` field).",
                        "default": [],
                        "items": {
                            "type": "string"
                        }
                    },
                    "locationType": {
                        "title": "Location filter (mode=search)",
                        "enum": [
                            "",
                            "zip",
                            "state"
                        ],
                        "type": "string",
                        "description": "How to narrow camps by location. Leave as Nationwide to search all US locations.",
                        "default": ""
                    },
                    "postalCode": {
                        "title": "US zip code (locationType=zip)",
                        "type": "string",
                        "description": "5-digit US zip code to search around, e.g. `10001`.",
                        "default": ""
                    },
                    "distanceMiles": {
                        "title": "Search radius (locationType=zip)",
                        "enum": [
                            "5",
                            "10",
                            "15",
                            "20",
                            "30",
                            "50",
                            "75",
                            "100",
                            "200",
                            "300",
                            "500",
                            "12500"
                        ],
                        "type": "string",
                        "description": "Distance in miles from the zip code.",
                        "default": "50"
                    },
                    "states": {
                        "title": "US states (locationType=state)",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Restrict results to camps located in these US states/territories.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "AL",
                                "AK",
                                "AZ",
                                "AR",
                                "CA",
                                "CO",
                                "CT",
                                "DE",
                                "DC",
                                "FL",
                                "GA",
                                "HI",
                                "ID",
                                "IL",
                                "IN",
                                "IA",
                                "KS",
                                "KY",
                                "LA",
                                "ME",
                                "MD",
                                "MA",
                                "MI",
                                "MN",
                                "MS",
                                "MO",
                                "MT",
                                "NE",
                                "NV",
                                "NH",
                                "NJ",
                                "NM",
                                "NY",
                                "NC",
                                "ND",
                                "OH",
                                "OK",
                                "OR",
                                "PA",
                                "PR",
                                "RI",
                                "SC",
                                "SD",
                                "TN",
                                "TX",
                                "UT",
                                "VT",
                                "VI",
                                "VA",
                                "WA",
                                "WV",
                                "WI",
                                "WY"
                            ],
                            "enumTitles": [
                                "Alabama",
                                "Alaska",
                                "Arizona",
                                "Arkansas",
                                "California",
                                "Colorado",
                                "Connecticut",
                                "Delaware",
                                "District of Columbia",
                                "Florida",
                                "Georgia",
                                "Hawaii",
                                "Idaho",
                                "Illinois",
                                "Indiana",
                                "Iowa",
                                "Kansas",
                                "Kentucky",
                                "Louisiana",
                                "Maine",
                                "Maryland",
                                "Massachusetts",
                                "Michigan",
                                "Minnesota",
                                "Mississippi",
                                "Missouri",
                                "Montana",
                                "Nebraska",
                                "Nevada",
                                "New Hampshire",
                                "New Jersey",
                                "New Mexico",
                                "New York",
                                "North Carolina",
                                "North Dakota",
                                "Ohio",
                                "Oklahoma",
                                "Oregon",
                                "Pennsylvania",
                                "Puerto Rico",
                                "Rhode Island",
                                "South Carolina",
                                "South Dakota",
                                "Tennessee",
                                "Texas",
                                "Utah",
                                "Vermont",
                                "Virgin Islands",
                                "Virginia",
                                "Washington",
                                "West Virginia",
                                "Wisconsin",
                                "Wyoming"
                            ]
                        },
                        "default": []
                    },
                    "gender": {
                        "title": "Gender served",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Restrict results to camps/programs serving these genders. Leave empty for all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "coed",
                                "only_boys",
                                "only_girls"
                            ],
                            "enumTitles": [
                                "Coed",
                                "Boys Only",
                                "Girls Only"
                            ]
                        },
                        "default": []
                    },
                    "accreditedOnly": {
                        "title": "ACA-accredited camps only",
                        "type": "boolean",
                        "description": "Only include camps that are currently ACA-accredited.",
                        "default": false
                    },
                    "activities": {
                        "title": "Activities offered",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Restrict results to camps offering these activities. Leave empty for all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "leave_no_trace",
                                "acting",
                                "aerobics",
                                "aeronautics",
                                "all_terrain_vehicle",
                                "animal_encounters",
                                "animation",
                                "aquatic_ecology",
                                "archaeology",
                                "archery",
                                "architecture",
                                "arts_and_crafts",
                                "astronomy",
                                "aviation",
                                "motocross",
                                "backpacking",
                                "baseball",
                                "basket_making",
                                "basketball",
                                "bike_touring",
                                "biology",
                                "bowling",
                                "business",
                                "citcounselor_development",
                                "camping_skills",
                                "canoeing",
                                "canyoneering",
                                "spelunking",
                                "ceramics",
                                "cheerleading",
                                "chemistry",
                                "circus",
                                "college_prep",
                                "computer",
                                "conservation",
                                "creative_writing",
                                "cross_country_skiing",
                                "culinary",
                                "cultural_appreciation",
                                "dance",
                                "day_trips",
                                "diving",
                                "downhill_skiing",
                                "drama",
                                "drawing_and_painting",
                                "engineering",
                                "english_as_second_language",
                                "entomology",
                                "ethnic_studies",
                                "experiencing_history",
                                "farming",
                                "fencing",
                                "field_hockey",
                                "film_and_tv",
                                "fishing",
                                "fitness",
                                "football",
                                "forest_ecology",
                                "gaga",
                                "games",
                                "general_academics",
                                "geo_caching",
                                "geology",
                                "go_karts",
                                "golf",
                                "gymnastics",
                                "herpetology",
                                "hiking",
                                "history",
                                "horseback_riding_english",
                                "horseback_riding_vaulting",
                                "horseback_riding_western",
                                "hunting",
                                "ice_climbing",
                                "ice_hockey",
                                "ice_skating",
                                "social_skills",
                                "international_studies",
                                "journalism",
                                "kayaking",
                                "lacrosse",
                                "languages",
                                "leadership_development",
                                "liberal_arts",
                                "magic",
                                "marine_science",
                                "martial_arts",
                                "mathematics",
                                "military",
                                "model_rocketry",
                                "mountain_biking",
                                "mountaineering",
                                "music_intrumental",
                                "music_vocal",
                                "nature_exposure",
                                "sewing",
                                "orienteering",
                                "ornithology",
                                "paddleboarding",
                                "paintball",
                                "parkour",
                                "philosophy",
                                "photography",
                                "physics",
                                "pickleball",
                                "pottery",
                                "debate",
                                "race_car_driving",
                                "racquetball",
                                "radio",
                                "rafting",
                                "ranch_work",
                                "readingliterature",
                                "religious_study",
                                "riflery",
                                "robotics",
                                "rock_climbing",
                                "roller_hockey",
                                "rollerblading",
                                "ropes_course",
                                "rowing",
                                "rugby",
                                "running",
                                "scuba",
                                "sailing",
                                "science",
                                "scooter",
                                "sculpture",
                                "service_learning",
                                "silk_screening",
                                "skateboarding",
                                "snorkeling",
                                "snowboarding",
                                "shoeshowing",
                                "soccer",
                                "softball",
                                "squash",
                                "stained_glass",
                                "street_hockey",
                                "surfing",
                                "swimming",
                                "tennis",
                                "theater",
                                "track_and_field",
                                "teen_travel__inside_the_us",
                                "teen_travel__outside_the_us",
                                "ultimate_frisbee",
                                "veterinary_science",
                                "volleyball",
                                "wakeboarding",
                                "water_polo",
                                "water_skiing",
                                "weight_lifting",
                                "wilderness_survival",
                                "wilderness_trips",
                                "wildlife_ecology",
                                "windsurfing",
                                "woodturning",
                                "woodworking",
                                "wrestling",
                                "yoga_pilates_tai_chi",
                                "zip_line",
                                "zoology"
                            ],
                            "enumTitles": [
                                "\"Leave No Trace\" Skills",
                                "Acting",
                                "Aerobics",
                                "Aeronautics",
                                "All-Terrain Vehicle (ATV)",
                                "Animal Encounters",
                                "Animation",
                                "Aquatic Ecology/Study",
                                "Archaeology",
                                "Archery",
                                "Architecture",
                                "Arts and Crafts",
                                "Astronomy",
                                "Aviation",
                                "BMX/Motocross",
                                "Backpacking",
                                "Baseball",
                                "Basket Making/Weaving",
                                "Basketball",
                                "Bike Touring",
                                "Biology",
                                "Bowling",
                                "Business/Finance",
                                "CIT/Counselor Development",
                                "Camping Skills/Outdoor Living",
                                "Canoeing",
                                "Canyoneering",
                                "Caving / Spelunking",
                                "Ceramics",
                                "Cheerleading",
                                "Chemistry",
                                "Circus",
                                "College Prep",
                                "Computer/Technology",
                                "Conservation",
                                "Creative Writing",
                                "Cross Country Skiing",
                                "Culinary/Cooking",
                                "Cultural Appreciation",
                                "Dance",
                                "Day Trips",
                                "Diving",
                                "Downhill Skiing",
                                "Drama",
                                "Drawing and Painting",
                                "Engineering",
                                "English as a Second Language",
                                "Entomology (Insects)",
                                "Ethnic Studies",
                                "Experiencing History",
                                "Farming/Gardening",
                                "Fencing",
                                "Field Hockey",
                                "Film and TV",
                                "Fishing",
                                "Fitness",
                                "Football",
                                "Forest Ecology",
                                "GaGa",
                                "Games",
                                "General Academics",
                                "Geo-caching",
                                "Geology (Earth)",
                                "Go-Karts",
                                "Golf",
                                "Gymnastics",
                                "Herpetology (Amphibians & Reptiles)",
                                "Hiking",
                                "History",
                                "Horseback Riding - English",
                                "Horseback Riding - Vaulting",
                                "Horseback Riding - Western",
                                "Hunting",
                                "Ice Climbing",
                                "Ice Hockey",
                                "Ice Skating",
                                "Intentional Social Skill Development",
                                "International Studies",
                                "Journalism/Writing",
                                "Kayaking",
                                "Lacrosse",
                                "Languages",
                                "Leadership Development",
                                "Liberal Arts",
                                "Magic",
                                "Marine Science",
                                "Martial Arts",
                                "Mathematics",
                                "Military",
                                "Model Rocketry",
                                "Mountain Biking",
                                "Mountaineering",
                                "Music - Instrumental",
                                "Music - Vocal",
                                "Nature Exposure",
                                "Needlearts/Sewing",
                                "Orienteering",
                                "Ornithology (Birds)",
                                "Paddleboarding",
                                "Paintball",
                                "Parkour",
                                "Philosophy/Logic/Critical Thinking",
                                "Photography",
                                "Physics",
                                "Pickleball",
                                "Pottery",
                                "Public Speaking/Debate",
                                "Race Car Driving",
                                "Racquetball",
                                "Radio",
                                "Rafting",
                                "Ranch Work",
                                "Reading/Literature",
                                "Religious Study",
                                "Riflery",
                                "Robotics",
                                "Rock Climbing",
                                "Roller Hockey",
                                "Rollerblading/Roller Skating",
                                "Ropes Course",
                                "Rowing/Crew",
                                "Rugby",
                                "Running",
                                "SCUBA",
                                "Sailing",
                                "Science",
                                "Scooter",
                                "Sculpture",
                                "Service Learning/Community Service",
                                "Silk Screening",
                                "Skateboarding",
                                "Snorkeling",
                                "Snowboarding",
                                "Snowshoeing",
                                "Soccer",
                                "Softball",
                                "Squash",
                                "Stained Glass",
                                "Street Hockey",
                                "Surfing",
                                "Swimming",
                                "Tennis",
                                "Theater",
                                "Track & Field",
                                "Travel - inside the U.S.",
                                "Travel - outside the U.S.",
                                "Ultimate Frisbee",
                                "Veterinary Science",
                                "Volleyball",
                                "Wakeboarding",
                                "Water Polo",
                                "Water Skiing",
                                "Weight Lifting",
                                "Wilderness Survival",
                                "Wilderness Trips",
                                "Wildlife Ecology",
                                "Windsurfing",
                                "Woodturning",
                                "Woodworking",
                                "Wrestling",
                                "Yoga/Pilates/Tai Chi",
                                "Zip Line",
                                "Zoology (Animals)"
                            ]
                        },
                        "default": []
                    },
                    "singleFocusActivity": {
                        "title": "Single-focus activity (mode=search)",
                        "enum": [
                            "",
                            "leave_no_trace",
                            "acting",
                            "aerobics",
                            "aeronautics",
                            "all_terrain_vehicle",
                            "animal_encounters",
                            "animation",
                            "aquatic_ecology",
                            "archaeology",
                            "archery",
                            "architecture",
                            "arts_and_crafts",
                            "astronomy",
                            "aviation",
                            "motocross",
                            "backpacking",
                            "baseball",
                            "basket_making",
                            "basketball",
                            "bike_touring",
                            "biology",
                            "bowling",
                            "business",
                            "citcounselor_development",
                            "camping_skills",
                            "canoeing",
                            "canyoneering",
                            "spelunking",
                            "ceramics",
                            "cheerleading",
                            "chemistry",
                            "circus",
                            "college_prep",
                            "computer",
                            "conservation",
                            "creative_writing",
                            "cross_country_skiing",
                            "culinary",
                            "cultural_appreciation",
                            "dance",
                            "day_trips",
                            "diving",
                            "downhill_skiing",
                            "drama",
                            "drawing_and_painting",
                            "engineering",
                            "english_as_second_language",
                            "entomology",
                            "ethnic_studies",
                            "experiencing_history",
                            "farming",
                            "fencing",
                            "field_hockey",
                            "film_and_tv",
                            "fishing",
                            "fitness",
                            "football",
                            "forest_ecology",
                            "gaga",
                            "games",
                            "general_academics",
                            "geo_caching",
                            "geology",
                            "go_karts",
                            "golf",
                            "gymnastics",
                            "herpetology",
                            "hiking",
                            "history",
                            "horseback_riding_english",
                            "horseback_riding_vaulting",
                            "horseback_riding_western",
                            "hunting",
                            "ice_climbing",
                            "ice_hockey",
                            "ice_skating",
                            "social_skills",
                            "international_studies",
                            "journalism",
                            "kayaking",
                            "lacrosse",
                            "languages",
                            "leadership_development",
                            "liberal_arts",
                            "magic",
                            "marine_science",
                            "martial_arts",
                            "mathematics",
                            "military",
                            "model_rocketry",
                            "mountain_biking",
                            "mountaineering",
                            "music_intrumental",
                            "music_vocal",
                            "nature_exposure",
                            "sewing",
                            "orienteering",
                            "ornithology",
                            "paddleboarding",
                            "paintball",
                            "parkour",
                            "philosophy",
                            "photography",
                            "physics",
                            "pickleball",
                            "pottery",
                            "debate",
                            "race_car_driving",
                            "racquetball",
                            "radio",
                            "rafting",
                            "ranch_work",
                            "readingliterature",
                            "religious_study",
                            "riflery",
                            "robotics",
                            "rock_climbing",
                            "roller_hockey",
                            "rollerblading",
                            "ropes_course",
                            "rowing",
                            "rugby",
                            "running",
                            "scuba",
                            "sailing",
                            "science",
                            "scooter",
                            "sculpture",
                            "service_learning",
                            "silk_screening",
                            "skateboarding",
                            "snorkeling",
                            "snowboarding",
                            "shoeshowing",
                            "soccer",
                            "softball",
                            "squash",
                            "stained_glass",
                            "street_hockey",
                            "surfing",
                            "swimming",
                            "tennis",
                            "theater",
                            "track_and_field",
                            "teen_travel__inside_the_us",
                            "teen_travel__outside_the_us",
                            "ultimate_frisbee",
                            "veterinary_science",
                            "volleyball",
                            "wakeboarding",
                            "water_polo",
                            "water_skiing",
                            "weight_lifting",
                            "wilderness_survival",
                            "wilderness_trips",
                            "wildlife_ecology",
                            "windsurfing",
                            "woodturning",
                            "woodworking",
                            "wrestling",
                            "yoga_pilates_tai_chi",
                            "zip_line",
                            "zoology"
                        ],
                        "type": "string",
                        "description": "Restrict results to camps whose ENTIRE program is dedicated to this one activity (e.g. an all-sailing camp) rather than camps that merely offer it. Ignored if `activities` (multi-select) is also set — the two are mutually exclusive on the upstream site. Leave blank to not filter by single focus.",
                        "default": ""
                    },
                    "affiliations": {
                        "title": "Camp affiliations",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Restrict results to camps affiliated with these organizations. Leave empty for all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "4h_club",
                                "american_cancer_society",
                                "american_diabetes_association",
                                "american_heart_association",
                                "arthritis_foundation",
                                "assemblies_of_god",
                                "atheist_humanist",
                                "audubon_society",
                                "baptist_american",
                                "baptist_independent",
                                "baptist_southern",
                                "big_brothers_big_sisters",
                                "boy_scouts_of_america",
                                "boys_and_girls_clubs_of_america",
                                "buddhism",
                                "camp_fire_usa",
                                "childrens_oncology_camp_association",
                                "christian_science",
                                "christian_service_brigade",
                                "church_of_christ",
                                "church_of_god",
                                "church_of_jesus_christ_of_latter_day_saints",
                                "church_of_nazarene",
                                "church_of_the_brethren",
                                "college_or_university",
                                "community_center",
                                "community_of_christ",
                                "diabetes_education_and_camping_association",
                                "disciples_of_christ",
                                "easterseals",
                                "elks",
                                "episcopal",
                                "evangelical_covenant",
                                "evangelical_free",
                                "exclude_camps_with_a_religious_affiliation",
                                "the_national_ffa_organization",
                                "fresh_air_society",
                                "girl_scouts_of_the_usa",
                                "girls_inc",
                                "government_state_federal",
                                "greek_orthodox",
                                "hindu",
                                "hole_in_the_wall",
                                "hospital_health_medical",
                                "independent_for_profit",
                                "independent_not_for_profit",
                                "international_association_of_burn_camps",
                                "islam",
                                "jehovahs_witness",
                                "jewish_community_center",
                                "association_independent_jewish_camps",
                                "jewish_conservative",
                                "jewish_orthodox",
                                "jewish_other",
                                "jewish_reform",
                                "kiwanis_club",
                                "lions_club",
                                "lutheran_elca",
                                "lutheran_missouri_synod",
                                "mennonite",
                                "moravian",
                                "multidenominational_christian",
                                "museum_zoo_science_center",
                                "nondenominational_christian",
                                "parks_and_recreation",
                                "presbyterian",
                                "quaker",
                                "rheumatic_diseases",
                                "roman_catholic",
                                "salvation_army",
                                "school",
                                "scientology",
                                "seriousfun_network",
                                "settlement_house",
                                "seventh_day_adventist",
                                "sikhism",
                                "the_arc",
                                "united_church_of_christ",
                                "united_methodist",
                                "urban_league",
                                "woodmen_of_the_world",
                                "ymca",
                                "ywca"
                            ],
                            "enumTitles": [
                                "4-H Clubs",
                                "American Cancer Society",
                                "American Diabetes Association",
                                "American Heart Association",
                                "Arthritis Foundation",
                                "Assemblies of God",
                                "Atheist/Humanist",
                                "Audubon Society",
                                "Baptist, American",
                                "Baptist, Independent",
                                "Baptist, Southern",
                                "Big Brothers Big Sisters",
                                "Boy Scouts of America",
                                "Boys & Girls Clubs of America",
                                "Buddhism",
                                "Camp Fire",
                                "Children's Oncology Camp Association",
                                "Christian Science",
                                "Christian Service Brigade",
                                "Church of Christ",
                                "Church of God",
                                "Church of Jesus Christ of Latter-day Saints",
                                "Church of Nazarene",
                                "Church of the Brethren",
                                "College or University",
                                "Community Center",
                                "Community of Christ",
                                "Diabetes Education & Camping Association",
                                "Disciples of Christ",
                                "Easterseals",
                                "Elks",
                                "Episcopal",
                                "Evangelical, Covenant",
                                "Evangelical, Free",
                                "Exclude camps with a religious affiliation",
                                "FFA",
                                "Fresh Air Society",
                                "Girl Scouts of the USA",
                                "Girls Inc.",
                                "Government, State/Federal",
                                "Greek Orthodox",
                                "Hindu",
                                "Hole in the Wall",
                                "Hospital/Health/Medical",
                                "Independent, For Profit",
                                "Independent, Not for Profit",
                                "International Association of Burn Camps",
                                "Islam",
                                "Jehovah's Witness",
                                "Jewish Community Center",
                                "Jewish, Association of Independent Jewish Camps",
                                "Jewish, Conservative",
                                "Jewish, Orthodox",
                                "Jewish, Other",
                                "Jewish, Reform",
                                "Kiwanis Club",
                                "Lions Club",
                                "Lutheran, ELCA",
                                "Lutheran, Missouri Synod",
                                "Mennonite",
                                "Moravian",
                                "Multidenominational Christian",
                                "Museum/Zoo/Science Center",
                                "Nondenominational Christian",
                                "Parks and Recreation",
                                "Presbyterian",
                                "Quaker",
                                "Rheumatic Diseases",
                                "Roman Catholic",
                                "Salvation Army",
                                "School (Elementary/Middle/High)",
                                "Scientology",
                                "SeriousFun Network",
                                "Settlement House",
                                "Seventh-day Adventist",
                                "Sikhism",
                                "The Arc",
                                "United Church of Christ",
                                "United Methodist",
                                "Urban League",
                                "Woodmen of the World",
                                "YMCA",
                                "YWCA"
                            ]
                        },
                        "default": []
                    },
                    "disabilities": {
                        "title": "Campers with disabilities or special needs",
                        "enum": [
                            "",
                            "adhd",
                            "amputees",
                            "anxiety_depression",
                            "aspergers",
                            "asthma_respiratory",
                            "autism",
                            "behavioral_emotional",
                            "blood_disorders",
                            "brain_injury",
                            "burn_victims",
                            "cancer_patients",
                            "celiac_disease",
                            "cerebral_palsy",
                            "craniofacial",
                            "crohns_colitis",
                            "cystic_fibrosis",
                            "diabetes",
                            "down_syndrome",
                            "epilepsy",
                            "severe_food_allergies",
                            "hearing_impairment_deaf",
                            "heart_defects",
                            "hemophilia",
                            "hiv_aids",
                            "intellectual_disability",
                            "leukemia",
                            "mobility_limitation",
                            "multiple_sclerosis",
                            "muscular_dystrophy",
                            "obsessive_compulsive_disorder",
                            "organ_transplant",
                            "post_traumatic_stress",
                            "prader_willi",
                            "sickle_cell",
                            "skin_disorder",
                            "speech_communication_impairment",
                            "spina_bifida",
                            "substance_abuse",
                            "tourette_syndrome",
                            "visual_impairment_blind",
                            "weight_loss"
                        ],
                        "type": "string",
                        "description": "Restrict results to camps serving campers with this disability or special need. Leave blank for all.",
                        "default": ""
                    },
                    "disabilitySpecializesIn": {
                        "title": "...camp specializes in this disability (disabilities)",
                        "type": "boolean",
                        "description": "Only include camps whose program SPECIALIZES in serving campers with the selected `disabilities` value. Ignored if `disabilities` is blank.",
                        "default": false
                    },
                    "disabilityExclusively": {
                        "title": "...camp exclusively serves this disability (disabilities)",
                        "type": "boolean",
                        "description": "Only include camps whose program EXCLUSIVELY serves campers with the selected `disabilities` value. Ignored if `disabilities` is blank.",
                        "default": false
                    },
                    "audiences": {
                        "title": "Programs for specific populations",
                        "enum": [
                            "",
                            "youth_at_risk",
                            "family_member_with_illness",
                            "foster_youth",
                            "gender_diverse",
                            "gifted",
                            "grief",
                            "homeless_children",
                            "homeschooled",
                            "glbtq",
                            "economically_disadvantaged",
                            "children_of_military",
                            "campers_from_outside_us",
                            "inner_city_youth"
                        ],
                        "type": "string",
                        "description": "Restrict results to camps with programs designed for this specific population. Leave blank for all.",
                        "default": ""
                    },
                    "waterfront": {
                        "title": "Waterfront access",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Restrict results to camps with this waterfront access. Leave empty for all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "lake_pond_river",
                                "ocean",
                                "pool"
                            ],
                            "enumTitles": [
                                "Lake/Pond/River",
                                "Ocean",
                                "Pool"
                            ]
                        },
                        "default": []
                    },
                    "dayCampAmenities": {
                        "title": "Day camp amenities (campType=day_camp/day_and_overnight)",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Restrict results to day camps offering these amenities (before/after-care, transportation, etc). Only applies to day camps. Leave empty for all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "aftercamp_care_is_available",
                                "after_school_programs",
                                "beforecamp_care_is_available_",
                                "fewer_than_5_days",
                                "lunch_provided",
                                "transportation_central_pick_up",
                                "transportation_door_to_door"
                            ],
                            "enumTitles": [
                                "After-camp care is available",
                                "After-school programs offered",
                                "Before-camp care is available",
                                "Camper may attend fewer than 5 days a week",
                                "Lunch is provided by the camp",
                                "Central location pick up",
                                "Door-to-door transportation"
                            ]
                        },
                        "default": []
                    },
                    "costMin": {
                        "title": "Minimum program cost (USD)",
                        "minimum": 0,
                        "maximum": 100000,
                        "type": "integer",
                        "description": "Only include programs costing at least this much. Only affects camps with published pricing."
                    },
                    "costMax": {
                        "title": "Maximum program cost (USD)",
                        "minimum": 0,
                        "maximum": 100000,
                        "type": "integer",
                        "description": "Only include programs costing at most this much. Only affects camps with published pricing."
                    },
                    "ageYears": {
                        "title": "Camper age (years)",
                        "minimum": 0,
                        "maximum": 99,
                        "type": "integer",
                        "description": "Restrict results to programs accepting campers of this age."
                    },
                    "grade": {
                        "title": "Camper grade",
                        "enum": [
                            "",
                            "-2",
                            "-1",
                            "1",
                            "2",
                            "3",
                            "4",
                            "5",
                            "6",
                            "7",
                            "8",
                            "9",
                            "10",
                            "11",
                            "12"
                        ],
                        "type": "string",
                        "description": "Restrict results to programs accepting campers in this grade.",
                        "default": ""
                    },
                    "sessionDurations": {
                        "title": "Session length",
                        "uniqueItems": true,
                        "type": "array",
                        "description": "Restrict results to programs offering these session lengths. Leave empty for all.",
                        "items": {
                            "type": "string",
                            "enum": [
                                "4",
                                "5",
                                "11",
                                "18",
                                "25",
                                "32",
                                "39",
                                "46",
                                "53",
                                "60",
                                "67"
                            ],
                            "enumTitles": [
                                "Less than 1 week",
                                "1 week",
                                "2 weeks",
                                "3 weeks",
                                "4 weeks",
                                "5 weeks",
                                "6 weeks",
                                "7 weeks",
                                "8 weeks",
                                "9 weeks",
                                "10+ weeks"
                            ]
                        },
                        "default": []
                    },
                    "sessionStartDate": {
                        "title": "Session start date on/after",
                        "type": "string",
                        "description": "Restrict results to programs with a session starting on or after this date. Format: `YYYY-MM-DD`, e.g. `2026-06-01`. Leave blank for no filter.",
                        "default": ""
                    },
                    "sessionEndDate": {
                        "title": "Session end date on/before",
                        "type": "string",
                        "description": "Restrict results to programs with a session ending on or before this date. Format: `YYYY-MM-DD`, e.g. `2026-08-31`. Leave blank for no filter.",
                        "default": ""
                    },
                    "sortBy": {
                        "title": "Sort results by",
                        "enum": [
                            "accredited",
                            "camp_label_sortable",
                            "cost_asc",
                            "cost_desc",
                            "camp_location"
                        ],
                        "type": "string",
                        "description": "Sort order for mode=search results. `Distance` requires a zip code (locationType=zip).",
                        "default": "accredited"
                    },
                    "maxItems": {
                        "title": "Max items",
                        "minimum": 1,
                        "maximum": 500,
                        "type": "integer",
                        "description": "Hard cap on emitted records.",
                        "default": 25
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
