reduct_base/msg/
query_link_api.rs1use crate::msg::entry_api::QueryEntry;
5use chrono::serde::ts_seconds::deserialize as as_ts;
6use chrono::serde::ts_seconds::serialize as to_ts;
7use chrono::{DateTime, Utc};
8use serde::{Deserialize, Serialize};
9
10#[derive(Serialize, Deserialize, Default, Clone, Debug, PartialEq)]
11pub struct QueryLinkCreateRequest {
13 pub bucket: String,
15 pub entry: String,
17 pub record_entry: Option<String>,
19 pub record_timestamp: Option<u64>,
21 pub query: QueryEntry,
23 #[serde(deserialize_with = "as_ts", serialize_with = "to_ts")]
25 pub expire_at: DateTime<Utc>,
26 pub base_url: Option<String>,
28}
29
30#[derive(Serialize, Deserialize, Default, Clone, Debug, PartialEq)]
31pub struct QueryLinkCreateResponse {
33 pub link: String,
35}