windmill_api/models/
audit_log.rs

1/*
2 * Windmill API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: 1.511.0
7 * Contact: contact@windmill.dev
8 * Generated by: https://openapi-generator.tech
9 */
10
11use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct AuditLog {
16    #[serde(rename = "id")]
17    pub id: i32,
18    #[serde(rename = "timestamp")]
19    pub timestamp: String,
20    #[serde(rename = "username")]
21    pub username: String,
22    #[serde(rename = "operation")]
23    pub operation: Operation,
24    #[serde(rename = "action_kind")]
25    pub action_kind: ActionKind,
26    #[serde(rename = "resource", skip_serializing_if = "Option::is_none")]
27    pub resource: Option<String>,
28    #[serde(rename = "parameters", skip_serializing_if = "Option::is_none")]
29    pub parameters: Option<serde_json::Value>,
30    #[serde(rename = "span", skip_serializing_if = "Option::is_none")]
31    pub span: Option<String>,
32}
33
34impl AuditLog {
35    pub fn new(id: i32, timestamp: String, username: String, operation: Operation, action_kind: ActionKind) -> AuditLog {
36        AuditLog {
37            id,
38            timestamp,
39            username,
40            operation,
41            action_kind,
42            resource: None,
43            parameters: None,
44            span: None,
45        }
46    }
47}
48/// 
49#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
50pub enum Operation {
51    #[serde(rename = "jobs.run")]
52    JobsPeriodRun,
53    #[serde(rename = "jobs.run.script")]
54    JobsPeriodRunPeriodScript,
55    #[serde(rename = "jobs.run.preview")]
56    JobsPeriodRunPeriodPreview,
57    #[serde(rename = "jobs.run.flow")]
58    JobsPeriodRunPeriodFlow,
59    #[serde(rename = "jobs.run.flow_preview")]
60    JobsPeriodRunPeriodFlowPreview,
61    #[serde(rename = "jobs.run.script_hub")]
62    JobsPeriodRunPeriodScriptHub,
63    #[serde(rename = "jobs.run.dependencies")]
64    JobsPeriodRunPeriodDependencies,
65    #[serde(rename = "jobs.run.identity")]
66    JobsPeriodRunPeriodIdentity,
67    #[serde(rename = "jobs.run.noop")]
68    JobsPeriodRunPeriodNoop,
69    #[serde(rename = "jobs.flow_dependencies")]
70    JobsPeriodFlowDependencies,
71    #[serde(rename = "jobs")]
72    Jobs,
73    #[serde(rename = "jobs.cancel")]
74    JobsPeriodCancel,
75    #[serde(rename = "jobs.force_cancel")]
76    JobsPeriodForceCancel,
77    #[serde(rename = "jobs.disapproval")]
78    JobsPeriodDisapproval,
79    #[serde(rename = "jobs.delete")]
80    JobsPeriodDelete,
81    #[serde(rename = "account.delete")]
82    AccountPeriodDelete,
83    #[serde(rename = "ai.request")]
84    AiPeriodRequest,
85    #[serde(rename = "resources.create")]
86    ResourcesPeriodCreate,
87    #[serde(rename = "resources.update")]
88    ResourcesPeriodUpdate,
89    #[serde(rename = "resources.delete")]
90    ResourcesPeriodDelete,
91    #[serde(rename = "resource_types.create")]
92    ResourceTypesPeriodCreate,
93    #[serde(rename = "resource_types.update")]
94    ResourceTypesPeriodUpdate,
95    #[serde(rename = "resource_types.delete")]
96    ResourceTypesPeriodDelete,
97    #[serde(rename = "schedule.create")]
98    SchedulePeriodCreate,
99    #[serde(rename = "schedule.setenabled")]
100    SchedulePeriodSetenabled,
101    #[serde(rename = "schedule.edit")]
102    SchedulePeriodEdit,
103    #[serde(rename = "schedule.delete")]
104    SchedulePeriodDelete,
105    #[serde(rename = "scripts.create")]
106    ScriptsPeriodCreate,
107    #[serde(rename = "scripts.update")]
108    ScriptsPeriodUpdate,
109    #[serde(rename = "scripts.archive")]
110    ScriptsPeriodArchive,
111    #[serde(rename = "scripts.delete")]
112    ScriptsPeriodDelete,
113    #[serde(rename = "users.create")]
114    UsersPeriodCreate,
115    #[serde(rename = "users.delete")]
116    UsersPeriodDelete,
117    #[serde(rename = "users.update")]
118    UsersPeriodUpdate,
119    #[serde(rename = "users.login")]
120    UsersPeriodLogin,
121    #[serde(rename = "users.login_failure")]
122    UsersPeriodLoginFailure,
123    #[serde(rename = "users.logout")]
124    UsersPeriodLogout,
125    #[serde(rename = "users.accept_invite")]
126    UsersPeriodAcceptInvite,
127    #[serde(rename = "users.decline_invite")]
128    UsersPeriodDeclineInvite,
129    #[serde(rename = "users.token.create")]
130    UsersPeriodTokenPeriodCreate,
131    #[serde(rename = "users.token.delete")]
132    UsersPeriodTokenPeriodDelete,
133    #[serde(rename = "users.add_to_workspace")]
134    UsersPeriodAddToWorkspace,
135    #[serde(rename = "users.add_global")]
136    UsersPeriodAddGlobal,
137    #[serde(rename = "users.setpassword")]
138    UsersPeriodSetpassword,
139    #[serde(rename = "users.impersonate")]
140    UsersPeriodImpersonate,
141    #[serde(rename = "users.leave_workspace")]
142    UsersPeriodLeaveWorkspace,
143    #[serde(rename = "oauth.login")]
144    OauthPeriodLogin,
145    #[serde(rename = "oauth.login_failure")]
146    OauthPeriodLoginFailure,
147    #[serde(rename = "oauth.signup")]
148    OauthPeriodSignup,
149    #[serde(rename = "variables.create")]
150    VariablesPeriodCreate,
151    #[serde(rename = "variables.delete")]
152    VariablesPeriodDelete,
153    #[serde(rename = "variables.update")]
154    VariablesPeriodUpdate,
155    #[serde(rename = "flows.create")]
156    FlowsPeriodCreate,
157    #[serde(rename = "flows.update")]
158    FlowsPeriodUpdate,
159    #[serde(rename = "flows.delete")]
160    FlowsPeriodDelete,
161    #[serde(rename = "flows.archive")]
162    FlowsPeriodArchive,
163    #[serde(rename = "apps.create")]
164    AppsPeriodCreate,
165    #[serde(rename = "apps.update")]
166    AppsPeriodUpdate,
167    #[serde(rename = "apps.delete")]
168    AppsPeriodDelete,
169    #[serde(rename = "folder.create")]
170    FolderPeriodCreate,
171    #[serde(rename = "folder.update")]
172    FolderPeriodUpdate,
173    #[serde(rename = "folder.delete")]
174    FolderPeriodDelete,
175    #[serde(rename = "folder.add_owner")]
176    FolderPeriodAddOwner,
177    #[serde(rename = "folder.remove_owner")]
178    FolderPeriodRemoveOwner,
179    #[serde(rename = "group.create")]
180    GroupPeriodCreate,
181    #[serde(rename = "group.delete")]
182    GroupPeriodDelete,
183    #[serde(rename = "group.edit")]
184    GroupPeriodEdit,
185    #[serde(rename = "group.adduser")]
186    GroupPeriodAdduser,
187    #[serde(rename = "group.removeuser")]
188    GroupPeriodRemoveuser,
189    #[serde(rename = "igroup.create")]
190    IgroupPeriodCreate,
191    #[serde(rename = "igroup.delete")]
192    IgroupPeriodDelete,
193    #[serde(rename = "igroup.adduser")]
194    IgroupPeriodAdduser,
195    #[serde(rename = "igroup.removeuser")]
196    IgroupPeriodRemoveuser,
197    #[serde(rename = "variables.decrypt_secret")]
198    VariablesPeriodDecryptSecret,
199    #[serde(rename = "workspaces.edit_command_script")]
200    WorkspacesPeriodEditCommandScript,
201    #[serde(rename = "workspaces.edit_deploy_to")]
202    WorkspacesPeriodEditDeployTo,
203    #[serde(rename = "workspaces.edit_auto_invite_domain")]
204    WorkspacesPeriodEditAutoInviteDomain,
205    #[serde(rename = "workspaces.edit_webhook")]
206    WorkspacesPeriodEditWebhook,
207    #[serde(rename = "workspaces.edit_copilot_config")]
208    WorkspacesPeriodEditCopilotConfig,
209    #[serde(rename = "workspaces.edit_error_handler")]
210    WorkspacesPeriodEditErrorHandler,
211    #[serde(rename = "workspaces.create")]
212    WorkspacesPeriodCreate,
213    #[serde(rename = "workspaces.update")]
214    WorkspacesPeriodUpdate,
215    #[serde(rename = "workspaces.archive")]
216    WorkspacesPeriodArchive,
217    #[serde(rename = "workspaces.unarchive")]
218    WorkspacesPeriodUnarchive,
219    #[serde(rename = "workspaces.delete")]
220    WorkspacesPeriodDelete,
221}
222
223impl Default for Operation {
224    fn default() -> Operation {
225        Self::JobsPeriodRun
226    }
227}
228/// 
229#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
230pub enum ActionKind {
231    #[serde(rename = "Created")]
232    Created,
233    #[serde(rename = "Updated")]
234    Updated,
235    #[serde(rename = "Delete")]
236    Delete,
237    #[serde(rename = "Execute")]
238    Execute,
239}
240
241impl Default for ActionKind {
242    fn default() -> ActionKind {
243        Self::Created
244    }
245}
246