botx_api/api/v3/files/upload_file/
models.rs1use serde::{Serialize, Deserialize};
2use uuid::Uuid;
3
4use crate::api::models::AsyncFile;
5
6#[derive(Debug, Serialize, Deserialize, Default, Clone, Builder)]
7#[builder(setter(into, prefix = "with", strip_option))]
8pub struct UploadRequest {
9 pub group_chat_id: Uuid,
11
12 pub file_name: String,
14
15 pub mime_type: String,
17
18 pub content: Vec<u8>,
20
21 pub meta: FileMeta,
23}
24
25#[derive(Debug, Serialize, Deserialize, Default, Clone, Builder)]
26#[builder(setter(into, prefix = "with", strip_option))]
27pub struct FileMeta {
28 pub duration: Option<u128>,
30
31 pub captions: Option<String>,
33}
34
35#[derive(Debug, Serialize, Deserialize, Clone)]
37pub struct UploadResponse {
38 pub result: AsyncFile
40}