use crate::client::ZaiClient;
pub struct DocumentDeleteRequest {
id: String,
}
impl DocumentDeleteRequest {
pub fn new(id: impl Into<String>) -> Self {
Self { id: id.into() }
}
pub async fn send_via(&self, client: &ZaiClient) -> crate::ZaiResult<DocumentDeleteResponse> {
let route = crate::client::routes::DOCUMENTS_DELETE;
let url = client.endpoints().resolve_route(route, &[&self.id])?;
client
.send_empty::<DocumentDeleteResponse>(route.method(), url)
.await
}
}
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize, validator::Validate)]
pub struct DocumentDeleteResponse {
#[serde(skip_serializing_if = "Option::is_none")]
pub code: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub message: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub timestamp: Option<u64>,
}