Skip to main content

List Workspace Photos

GET 

/api/v1/devices/photos

List workspace-wide photos with renderable GPS coords (Phase 122-01).

Returns the newest limit photos (max 500) whose captured_at is in [from, to] across all workspace devices the requester can see. Photos whose coordinate resolution returns null are excluded (D-05) — only renderable photos cross the wire for the dashboard map layer.

Role scoping (D-04 / v1.20 D-09):

  • field_worker: only own device's photos
  • manager/owner: all workspace devices

Cross-workspace device_ids are silently filtered out (no information leak via differential 403). Over 50 device_ids returns 400 TOO_MANY_DEVICE_IDS to bound query parameter abuse.

Coexists with GET /devices/{uuid}/sessions/{sid}/photos which is preserved unchanged (Phase 120-04). The two endpoints have intentionally different null-coord semantics: per-session keeps null-coord rows (still listed in the session detail panel), workspace-wide drops them (can't render).

Request

Responses

OK