---
title: "List Alerts"
method: GET
path: "/api/v1/alerts"
tags: ["alerts"]
---

# List Alerts

`GET /api/v1/alerts`

## 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/alerts`
- Auth: none declared

List all alerts for the current user.

Returns alerts with campground_selections included, sorted by creation date (newest first).

## Query parameters

- `active_only` boolean: Filter to only active alerts
- `include_expired` boolean: Include alerts with past date ranges

## Headers

- `authorization` string, nullable
- `x-dev-user-id` string, nullable
- `x-app-version` string, nullable

## Response `200`

Successful Response

- AlertListResponse: Schema for list of alerts response.
  - `alerts` AlertResponse[], required
    - `id` string, required
    - `user_id` string, required
    - `alert_type` string
    - `provider` string, nullable
    - `park_id` string, required
    - `park_name` string, required
    - `date_start` string, date, required
    - `date_end` string, date, required
    - `days_filter` string
    - `split_stay` boolean
    - `nights_min` integer, required
    - `nights_max` integer, nullable, required
    - `campground_selections` CampgroundSelectionResponse[]
      - `id` string, required
      - `campground_id` string, required
      - `zone_ids` string[]
      - `site_ids` string[]
      - `created_at` string, date-time, required
      - `updated_at` string, date-time, required
    - `is_active` boolean, required
    - `notify_push` boolean, required
    - `notify_email` boolean, required
    - `notify_sms` boolean
    - `party_size` integer, nullable
    - `sub_equipment_id` integer, nullable
    - `op_access_point_resource_id` integer, nullable
    - `tent_pads` integer, nullable
    - `day_use_cells` object, nullable
    - `entry_dates` string[], nullable
    - `activity_type` string, nullable
    - `equipment_filter_mode` string
    - `has_electricity` boolean, nullable
    - `is_accessible` boolean, nullable
    - `pets_only` boolean, nullable
    - `is_pull_through` boolean, nullable
    - `is_tent_only` boolean, nullable
    - `shade_only` boolean, nullable
    - `waterfront_only` boolean, nullable
    - `booking_url` string, nullable
    - `out_of_season` OutOfSeasonHint: Why an alert's dates cannot match: every watched site is out of season. The dates are reported ONLY when every watched site shares one season, and are NULL otherwise. An aggregate across differing seasons contradicts its own message: a site open Jan-Mar beside one open Sep-Dec spans the whole year, so a June request would be told it falls outside "Jan 1 - Dec 31". Widening to the union, or narrowing to the intersection, is wrong in the same way — only unanimity can be stated as a single range. ``distinct_seasons`` lets the app choose its wording: one season gets "this park runs May-October", several get "none of the N sites you picked are open then". ``sites_checked`` counts how much of the selection had a known season at all, so the app can soften when it is a small fraction.
      - `season_start` string, nullable
      - `season_end` string, nullable
      - `distinct_seasons` integer, required
      - `sites_checked` integer, required
    - `last_checked_at` string, nullable, required
    - `last_notified_at` string, nullable, required
    - `notification_count` integer, required
    - `availabilities_found` integer
    - `cancellations_found` integer
    - `scan_count` integer
    - `created_at` string, date-time, required
    - `updated_at` string, date-time, required
    - `created_via` string, nullable
    - `created_by_agent` string, nullable
  - `total` integer, required
  - `active_count` integer, required

## 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)
