Skip to main content

eero_api/types/
forward.rs

1use std::collections::HashMap;
2
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, Deserialize, Serialize)]
6pub struct PortForward {
7    pub url: String,
8    #[serde(default)]
9    pub enabled: Option<bool>,
10    #[serde(default)]
11    pub ip_address: Option<String>,
12    #[serde(default)]
13    pub port: Option<String>,
14    #[serde(default)]
15    pub external_port: Option<String>,
16    #[serde(default)]
17    pub protocol: Option<String>,
18    #[serde(default)]
19    pub hostname: Option<String>,
20    #[serde(default)]
21    pub display_name: Option<String>,
22    #[serde(flatten)]
23    pub extra: HashMap<String, serde_json::Value>,
24}
25
26#[derive(Debug, Clone, Serialize)]
27pub struct NewPortForward {
28    pub ip_address: String,
29    pub port: String,
30    #[serde(skip_serializing_if = "Option::is_none")]
31    pub external_port: Option<String>,
32    #[serde(skip_serializing_if = "Option::is_none")]
33    pub protocol: Option<String>,
34}