1use serde::{Deserialize, Serialize};
5
6#[derive(Clone, Debug, Serialize, Deserialize, PartialEq, Eq)]
8#[serde(rename_all = "UPPERCASE")]
9pub enum HttpMethod {
10 GET,
11 POST,
12 PUT,
13 DELETE,
14 PATCH,
15}
16
17#[derive(Clone, Debug, Serialize, Deserialize, PartialEq, Eq)]
19pub struct HookRule {
20 pub id: Option<String>,
22 pub hotkey: String,
24 pub method: HttpMethod,
25 pub url: String,
26 #[serde(default, skip_serializing_if = "Option::is_none")]
28 pub body: Option<String>,
29 #[serde(default = "enabled_true")]
31 pub enabled: bool,
32}
33
34#[inline]
35fn enabled_true() -> bool {
36 true
37}