opencode_sdk/http/
parts.rs1use crate::error::Result;
6use crate::http::HttpClient;
7use crate::types::api::UpdatePartResponse;
8use reqwest::Method;
9
10#[derive(Clone)]
12pub struct PartsApi {
13 http: HttpClient,
14}
15
16impl PartsApi {
17 pub fn new(http: HttpClient) -> Self {
19 Self { http }
20 }
21
22 pub async fn delete(&self, session_id: &str, message_id: &str, part_id: &str) -> Result<()> {
28 self.http
29 .request_empty(
30 Method::DELETE,
31 &format!(
32 "/session/{}/message/{}/part/{}",
33 session_id, message_id, part_id
34 ),
35 None,
36 )
37 .await
38 }
39
40 pub async fn update(
46 &self,
47 session_id: &str,
48 message_id: &str,
49 part_id: &str,
50 body: &serde_json::Value,
51 ) -> Result<UpdatePartResponse> {
52 self.http
53 .request_json(
54 Method::PATCH,
55 &format!(
56 "/session/{}/message/{}/part/{}",
57 session_id, message_id, part_id
58 ),
59 Some(body.clone()),
60 )
61 .await
62 }
63}