cognee_http_server/
cloud_client.rs1use async_trait::async_trait;
2use thiserror::Error;
3
4use crate::auth::AuthenticatedUser;
5use crate::dto::forget::{ForgetPayloadDTO, ForgetResponseDTO};
6
7#[derive(Debug, Clone, Error)]
8pub enum CloudClientError {
9 #[error("cloud forget upstream returned an error")]
10 Upstream { status: u16 },
11
12 #[error("cloud forget upstream is unreachable")]
13 Unreachable,
14
15 #[error("cloud forget upstream returned a malformed response")]
16 MalformedResponse,
17}
18
19#[async_trait]
20pub trait CloudDeleteClient: Send + Sync + 'static {
21 async fn forward_forget(
22 &self,
23 payload: &ForgetPayloadDTO,
24 user: &AuthenticatedUser,
25 ) -> Result<ForgetResponseDTO, CloudClientError>;
26}