---
title: "Poll this device's open footage requests"
method: GET
path: "/v1/edge/footage-requests"
tags: ["Edge Footage Requests"]
---

# Poll this device's open footage requests

`GET /v1/edge/footage-requests`

## Request

- Base URL: `https://api.hify.club`
- URL: `https://api.hify.club/v1/edge/footage-requests`
- Auth: HTTP bearer

Returns the calling device's COMPLETE set of open (non-terminal) footage requests, ordered by window_start. This is a reconcile endpoint, not a feed: the device treats the response as desired state and cancels locally anything missing from it, which is how a deleted game or a shrunk window propagates without a separate delete call.
For that reason the response is deliberately never paginated and accepts no `since` filter -- either would silently cancel live requests on the device.
Polling stamps last_polled_at on every returned request (a liveness signal) without touching updated_at.

## Response `200`

The device's complete open set (possibly empty).

- object
  - `requests` FootageRequest[]
    - `id` integer: FootageRequest identifier; echo it back on PATCH.
    - `game_id` integer
    - `arena_id` integer
    - `window_start` string, date-time: Start of the footage window to upload, copied from the Game.
    - `window_end` string, date-time: End of the footage window to upload, copied from the Game.
    - `status` 'pending' | 'acknowledged' | 'uploading': Always an open status here -- terminal requests are omitted from the open set.

## Other responses

- `401`: Missing, malformed or unknown device bearer token.

---

[API](https://skmtc.dev/hify/apis/hify-apis.md) - [All operations](https://skmtc.dev/hify/apis/hify-apis/llms.txt) - [OpenAPI document](https://skmtc.dev/hify/apis/hify-apis/revisions/b5920403538d?raw)
