cognee_http_server/dto/
delete.rs1use serde::{Deserialize, Serialize};
4use utoipa::{IntoParams, ToSchema};
5use uuid::Uuid;
6
7#[derive(Debug, Deserialize, IntoParams)]
9#[serde(rename_all = "snake_case")]
10pub struct DeleteQuery {
11 pub data_id: Uuid,
13
14 pub dataset_id: Uuid,
16
17 #[serde(default = "default_mode")]
20 pub mode: DeleteMode,
21
22 #[serde(default)]
25 pub delete_dataset_if_empty: bool,
26}
27
28fn default_mode() -> DeleteMode {
29 DeleteMode::Soft
30}
31
32#[derive(Debug, Clone, Copy, Deserialize, Serialize, ToSchema, Default)]
33#[serde(rename_all = "lowercase")]
34pub enum DeleteMode {
35 #[default]
36 Soft,
37 Hard,
38}
39
40#[derive(Debug, Serialize, ToSchema)]
42pub struct DeleteSuccessResponseDTO {
43 pub status: String,
44}
45
46impl DeleteSuccessResponseDTO {
47 pub fn ok() -> Self {
48 Self {
49 status: "success".to_owned(),
50 }
51 }
52}
53
54#[derive(Debug, Serialize, ToSchema)]
56pub struct DeleteErrorResponseDTO {
57 pub error: String,
58}