jellyfin_sdk_rust/api/endpoints/
activity_log.rs

1use crate::api::models::logs::JellyfinLogEntry;
2use crate::api::URLBuilder;
3use crate::models::JellyfinBaseResponse;
4use crate::{JellyfinAPI, JellyfinResponse, JellyfinSDKResult};
5
6impl JellyfinAPI {
7    #[cfg(feature = "sync")]
8    pub fn get_log_entries(&self) -> JellyfinSDKResult<()> {
9        unimplemented!()
10    }
11
12    /// Gets activity log entries.
13    pub async fn async_get_log_entries(
14        &self,
15        start_index: Option<u32>,
16        limit: Option<u32>,
17        min_date: Option<String>,
18        has_user_id: Option<bool>,
19    ) -> JellyfinSDKResult<JellyfinResponse<JellyfinBaseResponse<JellyfinLogEntry>>> {
20        let mut url = URLBuilder::from(self.base_addr(), "/System/ActivityLog/Entries")?;
21
22        url.add_optional_param("startIndex", start_index);
23        url.add_optional_param("limit", limit);
24        url.add_optional_param("minDate", min_date);
25        url.add_optional_param("hasUserId", has_user_id);
26
27        let res = self.async_client().get(url.build()).send().await?;
28
29        JellyfinResponse::async_from(res).await
30    }
31}