```rust extern crate zotero; use zotero::ZoteroInit; use zotero::Post; use zotero::data_structure::item::{BookData, BookDataBuilder, Creator, CreatorBuilder};
let z = ZoteroInit::set_user("123456789", "bZARysJ579K5SdmYuaAJ");
let creators : Vec
let newbook : BookData = BookDataBuilder::default() .title("Sample2") .creators(creators) .item_type("book") .build() .unwrap();
z.createnewitem(new_book); ```
```rust extern crate zotero; use zotero::ZoteroInit; use zotero::Patch; use zotero::Get; use zotero::data_structure::item::ItemType;
let z = ZoteroInit::set_user("123456789", "bZARysJ579K5SdmYuaAJ");
let item = z.get_item("Q8GNE36F", None);
if let Ok(mut result) = item { if let ItemType::Book(bookdata) = &mut result.data { bookdata.title = "A new title".tostring(); bookdata.publisher = "A new publisher".tostring(); z.updateitem(&bookdata.key, &bookdata); }; println!("{:?}", serdejson::to_string(&result.data)); }; ```