open_lark/service/search/v2/
models.rs1use serde::{Deserialize, Serialize};
2
3#[derive(Debug, Serialize, Deserialize)]
5pub struct SearchMessageRequest {
6 pub query: String,
8 #[serde(skip_serializing_if = "Option::is_none")]
10 pub page_size: Option<i32>,
11 #[serde(skip_serializing_if = "Option::is_none")]
13 pub page_token: Option<String>,
14}
15
16#[derive(Debug, Serialize, Deserialize)]
18pub struct SearchAppRequest {
19 pub query: String,
21 #[serde(skip_serializing_if = "Option::is_none")]
23 pub page_size: Option<i32>,
24 #[serde(skip_serializing_if = "Option::is_none")]
26 pub page_token: Option<String>,
27}
28
29#[derive(Debug, Serialize, Deserialize)]
31pub struct SearchResultItem {
32 #[serde(skip_serializing_if = "Option::is_none")]
34 pub id: Option<String>,
35 #[serde(skip_serializing_if = "Option::is_none")]
37 pub title: Option<String>,
38 #[serde(skip_serializing_if = "Option::is_none")]
40 pub content: Option<String>,
41 #[serde(skip_serializing_if = "Option::is_none")]
43 pub url: Option<String>,
44 #[serde(skip_serializing_if = "Option::is_none")]
46 pub create_time: Option<String>,
47 #[serde(skip_serializing_if = "Option::is_none")]
49 pub update_time: Option<String>,
50}
51
52#[derive(Debug, Serialize, Deserialize)]
54pub struct SearchResponse {
55 pub items: Vec<SearchResultItem>,
57 #[serde(skip_serializing_if = "Option::is_none")]
59 pub has_more: Option<bool>,
60 #[serde(skip_serializing_if = "Option::is_none")]
62 pub page_token: Option<String>,
63}
64
65#[derive(Debug, Serialize, Deserialize)]
67pub struct DataSource {
68 #[serde(skip_serializing_if = "Option::is_none")]
70 pub id: Option<String>,
71 #[serde(skip_serializing_if = "Option::is_none")]
73 pub name: Option<String>,
74 #[serde(skip_serializing_if = "Option::is_none")]
76 pub description: Option<String>,
77 #[serde(skip_serializing_if = "Option::is_none")]
79 pub status: Option<String>,
80 #[serde(skip_serializing_if = "Option::is_none")]
82 pub create_time: Option<String>,
83 #[serde(skip_serializing_if = "Option::is_none")]
85 pub update_time: Option<String>,
86}
87
88#[derive(Debug, Serialize, Deserialize)]
90pub struct CreateDataSourceRequest {
91 pub name: String,
93 #[serde(skip_serializing_if = "Option::is_none")]
95 pub description: Option<String>,
96 #[serde(skip_serializing_if = "Option::is_none")]
98 pub config: Option<serde_json::Value>,
99}
100
101#[derive(Debug, Serialize, Deserialize)]
103pub struct UpdateDataSourceRequest {
104 #[serde(skip_serializing_if = "Option::is_none")]
106 pub name: Option<String>,
107 #[serde(skip_serializing_if = "Option::is_none")]
109 pub description: Option<String>,
110 #[serde(skip_serializing_if = "Option::is_none")]
112 pub config: Option<serde_json::Value>,
113}
114
115#[derive(Debug, Serialize, Deserialize)]
117pub struct ListDataSourceRequest {
118 #[serde(skip_serializing_if = "Option::is_none")]
120 pub page_size: Option<i32>,
121 #[serde(skip_serializing_if = "Option::is_none")]
123 pub page_token: Option<String>,
124}
125
126#[derive(Debug, Serialize, Deserialize)]
128pub struct ListDataSourceResponse {
129 pub items: Vec<DataSource>,
131 #[serde(skip_serializing_if = "Option::is_none")]
133 pub has_more: Option<bool>,
134 #[serde(skip_serializing_if = "Option::is_none")]
136 pub page_token: Option<String>,
137}
138
139#[derive(Debug, Serialize, Deserialize)]
141pub struct DataItem {
142 #[serde(skip_serializing_if = "Option::is_none")]
144 pub id: Option<String>,
145 #[serde(skip_serializing_if = "Option::is_none")]
147 pub title: Option<String>,
148 #[serde(skip_serializing_if = "Option::is_none")]
150 pub content: Option<String>,
151 #[serde(skip_serializing_if = "Option::is_none")]
153 pub url: Option<String>,
154 #[serde(skip_serializing_if = "Option::is_none")]
156 pub properties: Option<serde_json::Value>,
157 #[serde(skip_serializing_if = "Option::is_none")]
159 pub create_time: Option<String>,
160 #[serde(skip_serializing_if = "Option::is_none")]
162 pub update_time: Option<String>,
163}
164
165#[derive(Debug, Serialize, Deserialize)]
167pub struct CreateDataItemRequest {
168 pub id: String,
170 #[serde(skip_serializing_if = "Option::is_none")]
172 pub title: Option<String>,
173 #[serde(skip_serializing_if = "Option::is_none")]
175 pub content: Option<String>,
176 #[serde(skip_serializing_if = "Option::is_none")]
178 pub url: Option<String>,
179 #[serde(skip_serializing_if = "Option::is_none")]
181 pub properties: Option<serde_json::Value>,
182}
183
184#[derive(Debug, Serialize, Deserialize)]
186pub struct BatchCreateDataItemRequest {
187 pub items: Vec<CreateDataItemRequest>,
189}
190
191#[derive(Debug, Serialize, Deserialize)]
193pub struct Schema {
194 #[serde(skip_serializing_if = "Option::is_none")]
196 pub id: Option<String>,
197 #[serde(skip_serializing_if = "Option::is_none")]
199 pub name: Option<String>,
200 #[serde(skip_serializing_if = "Option::is_none")]
202 pub description: Option<String>,
203 #[serde(skip_serializing_if = "Option::is_none")]
205 pub definition: Option<serde_json::Value>,
206 #[serde(skip_serializing_if = "Option::is_none")]
208 pub create_time: Option<String>,
209 #[serde(skip_serializing_if = "Option::is_none")]
211 pub update_time: Option<String>,
212}
213
214#[derive(Debug, Serialize, Deserialize)]
216pub struct CreateSchemaRequest {
217 pub name: String,
219 #[serde(skip_serializing_if = "Option::is_none")]
221 pub description: Option<String>,
222 pub definition: serde_json::Value,
224}
225
226#[derive(Debug, Serialize, Deserialize)]
228pub struct UpdateSchemaRequest {
229 #[serde(skip_serializing_if = "Option::is_none")]
231 pub name: Option<String>,
232 #[serde(skip_serializing_if = "Option::is_none")]
234 pub description: Option<String>,
235 #[serde(skip_serializing_if = "Option::is_none")]
237 pub definition: Option<serde_json::Value>,
238}