Endpoint

Authentication

None — public endpoint. It is designed to stay reachable during outages: on any internal error it still returns HTTP 200 with an empty list.

Query parameters

Scoping: a notice with no building/area targets is global and is always returned. Targeted notices are only returned when your building_id / service_area_id matches one of the notice’s targets — without context you only see global notices. Only active notices inside their display window (starts_at <= now <= ends_at, nulls open-ended) are returned.

Response — 200 OK

body and resolved_at are derived aliases: body mirrors message; resolved_at is null while the notice is active and equals ends_at once it isn’t. service_notice_buildings / service_notice_areas list the notice’s targets (empty arrays for global notices). On error the endpoint degrades gracefully to { "notices": [] } with HTTP 200.