Skip to main content

authx_core/models/
audit_log.rs

1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};
3use uuid::Uuid;
4
5#[derive(Debug, Clone, Serialize, Deserialize)]
6pub struct AuditLog {
7    pub id: Uuid,
8    pub user_id: Option<Uuid>,
9    pub org_id: Option<Uuid>,
10    pub action: String,
11    pub resource_type: String,
12    pub resource_id: Option<String>,
13    pub ip_address: Option<String>,
14    pub metadata: serde_json::Value,
15    pub created_at: DateTime<Utc>,
16}
17
18#[derive(Debug, Clone)]
19pub struct CreateAuditLog {
20    pub user_id: Option<Uuid>,
21    pub org_id: Option<Uuid>,
22    pub action: String,
23    pub resource_type: String,
24    pub resource_id: Option<String>,
25    pub ip_address: Option<String>,
26    pub metadata: Option<serde_json::Value>,
27}