systemprompt_models/users/
summary.rs1use chrono::{DateTime, Utc};
7use schemars::JsonSchema;
8use serde::{Deserialize, Serialize};
9use systemprompt_identifiers::{SessionId, UserId};
10
11#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
12pub struct UserSummary {
13 pub id: UserId,
14 pub name: String,
15 pub email: String,
16 pub status: Option<String>,
17 pub roles: Vec<String>,
18 pub created_at: Option<DateTime<Utc>>,
19}
20
21#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema)]
22pub struct SessionSummary {
23 pub session_id: SessionId,
24 pub ip_address: Option<String>,
25 pub user_agent: Option<String>,
26 pub device_type: Option<String>,
27 pub started_at: Option<DateTime<Utc>>,
28 pub last_activity_at: Option<DateTime<Utc>>,
29 pub is_active: bool,
30}