| 262 | } |
| 263 | |
| 264 | pub fn create_session(&self, parent_id: Option<String>) -> anyhow::Result<SessionInfo> { |
| 265 | let url = format!("{}/session", self.base_url); |
| 266 | let request = CreateSessionRequest { parent_id }; |
| 267 | |
| 268 | let response = self.client.post(&url).json(&request).send()?; |
| 269 | |
| 270 | if !response.status().is_success() { |
| 271 | let status = response.status(); |
| 272 | let text = response.text().unwrap_or_default(); |
| 273 | anyhow::bail!("Failed to create session: {} - {}", status, text); |
| 274 | } |
| 275 | |
| 276 | let session: SessionInfo = response.json()?; |
| 277 | Ok(session) |
| 278 | } |
| 279 | |
| 280 | pub fn get_session(&self, session_id: &str) -> anyhow::Result<SessionInfo> { |
| 281 | let url = format!("{}/session/{}", self.base_url, session_id); |