---
title: "List Equipment Options"
method: GET
path: "/api/v1/parks/equipment/options"
tags: ["parks"]
---

# List Equipment Options

`GET /api/v1/parks/equipment/options`

## Request

- Base URL: `https://api.alert.camp` (the document declares no server; this is the origin it was published from)
- URL: `https://api.alert.camp/api/v1/parks/equipment/options`
- Auth: none declared

Return equipment options for a specific GoingToCamp provider.

Used by the mobile app to populate the equipment dropdown in the
booking preferences card on the alert detail screen and the
create-alert wizard's activity-type expansion.  Scopable by
``equipment_category_id`` (parent namespace) and/or
``internal_category_id`` (activity).  NS needs the activity
filter — Camping (6 subs incl. 4 RV brackets) and Backcountry /
Canoe-Camping (3 subs each, tent-only) share the -32768 parent,
so the activity dimension is the only way to scope the picker
correctly.  Older callers that pass only ``equipment_category_id``
keep working (the activity filter is opt-in).

## Query parameters

- `provider` string, required: Provider id whose equipment options to return. NOT a hardcoded whitelist (that would require a code edit per new provider — see the Provider-Driven Architecture rule in CLAUDE.md). Any provider id is accepted and matched against the EquipmentOption rows; an unknown provider, or one without an equipment filter, simply yields an empty list.
- `lang` string: Language for labels
- `equipment_category_id` integer, nullable: Parent equipment category — -32768 is the frontcountry/Camping vocabulary every provider exposes; -32767 is PC's dedicated Backcountry vocabulary (1-6 Tents). Optional — when omitted the response is scoped purely by ``internal_category_id`` (or every activity when that's omitted too).
- `internal_category_id` integer, nullable: Seed-side activity id (0=Camping, 2=Chalet, 3=CanoeCamping, 4=Backcountry). Scopes the dropdown to the subset the activity actually accepts. Required for providers whose backcountry/canoe-camping share the camping parent eq cat (NS today) — without it the picker would surface camping-only RV options inside the wilderness pickers.

## Response `200`

Successful Response

- object[]

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/alert/apis/alertcamp.md) · [All operations](https://skmtc.dev/alert/apis/alertcamp/llms.txt) · [OpenAPI document](https://skmtc.dev/alert/apis/alertcamp/revisions/864c8c9ef833?raw)
