feat: add lists endpoint with save and delete list item methods
Implement SaveListItemRequest and SaveListItemResponse models. Add save_list_item (create/update via PUT) and delete_list_item methods. Tests cover creating, updating, deleting list items and not-found error.
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
use reqwest::Method;
|
||||
use uuid::Uuid;
|
||||
|
||||
use crate::client::OnspringClient;
|
||||
use crate::error::Result;
|
||||
use crate::models::{SaveListItemRequest, SaveListItemResponse};
|
||||
|
||||
impl OnspringClient {
|
||||
/// Creates or updates a list item in the specified list.
|
||||
pub async fn save_list_item(
|
||||
&self,
|
||||
list_id: i32,
|
||||
request: SaveListItemRequest,
|
||||
) -> Result<SaveListItemResponse> {
|
||||
let path = format!("/Lists/id/{}/items", list_id);
|
||||
self.request(Method::PUT, &path, &[], Some(&request)).await
|
||||
}
|
||||
|
||||
/// Deletes a list item from the specified list.
|
||||
pub async fn delete_list_item(&self, list_id: i32, item_id: Uuid) -> Result<()> {
|
||||
let path = format!("/Lists/id/{}/itemId/{}", list_id, item_id);
|
||||
self.request_no_content(Method::DELETE, &path, &[], Option::<&()>::None)
|
||||
.await
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
mod apps;
|
||||
mod fields;
|
||||
mod files;
|
||||
mod lists;
|
||||
mod ping;
|
||||
mod records;
|
||||
|
||||
Reference in New Issue
Block a user