diff --git a/docs/docs/integrations/api.md b/docs/docs/integrations/api.md index af2f1fe24..27b760cab 100644 --- a/docs/docs/integrations/api.md +++ b/docs/docs/integrations/api.md @@ -155,22 +155,23 @@ Version info Events from the database. Accepts the following query string parameters: -| param | Type | Description | -| -------------------- | ----- | ----------------------------------------------- | -| `before` | int | Epoch time | -| `after` | int | Epoch time | -| `cameras` | str | , separated list of cameras | -| `labels` | str | , separated list of labels | -| `zones` | str | , separated list of zones | -| `limit` | int | Limit the number of events returned | -| `has_snapshot` | int | Filter to events that have snapshots (0 or 1) | -| `has_clip` | int | Filter to events that have clips (0 or 1) | -| `include_thumbnails` | int | Include thumbnails in the response (0 or 1) | -| `in_progress` | int | Limit to events in progress (0 or 1) | -| `time_range` | str | Time range in format after,before (00:00,24:00) | -| `timezone` | str | Timezone to use for time range | -| `min_score` | float | Minimum score of the event | -| `max_score` | float | Maximum score of the event | +| param | Type | Description | +| -------------------- | ----- | ----------------------------------------------------- | +| `before` | int | Epoch time | +| `after` | int | Epoch time | +| `cameras` | str | , separated list of cameras | +| `labels` | str | , separated list of labels | +| `zones` | str | , separated list of zones | +| `limit` | int | Limit the number of events returned | +| `has_snapshot` | int | Filter to events that have snapshots (0 or 1) | +| `has_clip` | int | Filter to events that have clips (0 or 1) | +| `include_thumbnails` | int | Include thumbnails in the response (0 or 1) | +| `in_progress` | int | Limit to events in progress (0 or 1) | +| `time_range` | str | Time range in format after,before (00:00,24:00) | +| `timezone` | str | Timezone to use for time range | +| `min_score` | float | Minimum score of the event | +| `max_score` | float | Maximum score of the event | +| `is_submitted` | int | Filter events that are submitted to Frigate+ (0 or 1) | ### `GET /api/timeline` diff --git a/frigate/http.py b/frigate/http.py index acfeb0a85..105f21c4e 100644 --- a/frigate/http.py +++ b/frigate/http.py @@ -779,6 +779,7 @@ def events(): favorites = request.args.get("favorites", type=int) min_score = request.args.get("min_score", type=float) max_score = request.args.get("max_score", type=float) + is_submitted = request.args.get("is_submitted", type=int) clauses = [] @@ -907,6 +908,12 @@ def events(): if min_score is not None: clauses.append((Event.data["score"] >= min_score)) + if is_submitted is not None: + if is_submitted == 0: + clauses.append((Event.plus_id.is_null())) + else: + clauses.append((Event.plus_id != "")) + if len(clauses) == 0: clauses.append((True))