Skip to main content

heldar_kernel/routes/
mod.rs

1use axum::Router;
2
3use crate::state::AppState;
4
5pub mod ai;
6pub mod anr;
7pub mod auth;
8pub mod backup;
9pub mod cameras;
10pub mod discovery;
11pub mod health;
12pub mod incidents;
13pub mod liveview;
14pub mod metrics;
15pub mod onvif;
16pub mod outbox;
17pub mod playback;
18pub mod playback_sessions;
19pub mod recording_control;
20pub mod recordings;
21pub mod schedules;
22pub mod snapshot_schedules;
23pub mod system;
24pub mod zones;
25
26/// Assemble the kernel API router (absolute paths, mounted at root by the composing server). The
27/// auth admin surface stays here for now; domain apps merge their own routers in
28/// the server binary.
29pub fn api_router() -> Router<AppState> {
30    Router::new()
31        .merge(system::router())
32        .merge(cameras::router())
33        .merge(recordings::router())
34        .merge(anr::router())
35        .merge(recording_control::router())
36        .merge(playback::router())
37        .merge(playback_sessions::router())
38        .merge(liveview::router())
39        .merge(health::router())
40        .merge(discovery::router())
41        .merge(ai::router())
42        .merge(zones::router())
43        .merge(schedules::router())
44        .merge(snapshot_schedules::router())
45        .merge(incidents::router())
46        .merge(backup::router())
47        .merge(onvif::router())
48        .merge(outbox::router())
49        .merge(auth::router())
50}