pub struct ArchiveClient { /* private fields */ }Expand description
Client for the Yuki Archive SOAP service.
Implementations§
Source§impl ArchiveClient
impl ArchiveClient
pub fn new() -> ArchiveClient
Sourcepub fn with_client(http: Client) -> ArchiveClient
pub fn with_client(http: Client) -> ArchiveClient
Build over a caller-provided HTTP client, so a long-running consumer can share a single pooled client across all service clients.
Sourcepub async fn authenticate(&mut self, api_key: &str) -> Result<String, YukiError>
pub async fn authenticate(&mut self, api_key: &str) -> Result<String, YukiError>
Authenticate with the Yuki API and store the session ID.
Sourcepub async fn documents_in_folder_page(
&self,
folder_id: i32,
start_date: &str,
end_date: &str,
number_of_records: usize,
start_record: usize,
) -> Result<Vec<ArchiveDocument>, YukiError>
pub async fn documents_in_folder_page( &self, folder_id: i32, start_date: &str, end_date: &str, number_of_records: usize, start_record: usize, ) -> Result<Vec<ArchiveDocument>, YukiError>
Fetch one page of documents from an archive folder.
Sourcepub async fn documents_in_folder(
&self,
folder_id: i32,
start_date: &str,
end_date: &str,
) -> Result<Vec<ArchiveDocument>, YukiError>
pub async fn documents_in_folder( &self, folder_id: i32, start_date: &str, end_date: &str, ) -> Result<Vec<ArchiveDocument>, YukiError>
List every document in an archive folder.
Sourcepub async fn documents_in_folder_paged(
&self,
folder_id: i32,
start_date: &str,
end_date: &str,
limit: Option<usize>,
offset: Option<usize>,
) -> Result<Vec<ArchiveDocument>, YukiError>
pub async fn documents_in_folder_paged( &self, folder_id: i32, start_date: &str, end_date: &str, limit: Option<usize>, offset: Option<usize>, ) -> Result<Vec<ArchiveDocument>, YukiError>
List documents in an archive folder, paging until the folder is exhausted.
offset skips records server-side; limit caps the total returned. With no
limit every document is fetched, so a folder larger than one page is never
silently truncated.
Sourcepub async fn documents_by_type(
&self,
doc_type: i32,
) -> Result<String, YukiError>
pub async fn documents_by_type( &self, doc_type: i32, ) -> Result<String, YukiError>
List all documents of a given document type.
Sourcepub async fn search_documents(
&self,
search_text: &str,
start_date: &str,
end_date: &str,
) -> Result<Vec<ArchiveDocument>, YukiError>
pub async fn search_documents( &self, search_text: &str, start_date: &str, end_date: &str, ) -> Result<Vec<ArchiveDocument>, YukiError>
Search documents in the archive using a free-text query within a date range.
Pass an empty string for search_text to retrieve all documents in the period.
Returns up to 500 results sorted by document date descending.
Sourcepub async fn modified_documents_by_type(
&self,
doc_type: i32,
modified_since: &str,
) -> Result<String, YukiError>
pub async fn modified_documents_by_type( &self, doc_type: i32, modified_since: &str, ) -> Result<String, YukiError>
List documents of a given type that were modified since the specified date.
Sourcepub async fn upload_document(
&self,
admin_id: &str,
filename: &str,
data_base64: &str,
folder_id: i32,
) -> Result<String, YukiError>
pub async fn upload_document( &self, admin_id: &str, filename: &str, data_base64: &str, folder_id: i32, ) -> Result<String, YukiError>
Upload a document to the archive without additional metadata.
Returns the document ID assigned by Yuki.
Sourcepub async fn upload_document_with_data(
&self,
admin_id: &str,
filename: &str,
data_base64: &str,
folder_id: i32,
currency: &str,
amount: f64,
cost_category: Option<&str>,
payment_method: Option<&str>,
project: Option<&str>,
remarks: Option<&str>,
) -> Result<String, YukiError>
pub async fn upload_document_with_data( &self, admin_id: &str, filename: &str, data_base64: &str, folder_id: i32, currency: &str, amount: f64, cost_category: Option<&str>, payment_method: Option<&str>, project: Option<&str>, remarks: Option<&str>, ) -> Result<String, YukiError>
Upload a document to the archive with invoice metadata.
Returns the document ID assigned by Yuki.
Sourcepub async fn cost_categories(&self) -> Result<Vec<CostCategory>, YukiError>
pub async fn cost_categories(&self) -> Result<Vec<CostCategory>, YukiError>
Retrieve all available cost categories.
Sourcepub async fn payment_methods(&self) -> Result<Vec<PaymentMethod>, YukiError>
pub async fn payment_methods(&self) -> Result<Vec<PaymentMethod>, YukiError>
Retrieve all available payment methods.
Sourcepub fn parse_archive_documents(
xml: &str,
) -> Result<Vec<ArchiveDocument>, YukiError>
pub fn parse_archive_documents( xml: &str, ) -> Result<Vec<ArchiveDocument>, YukiError>
Parse a SearchDocuments or DocumentsInFolder SOAP response into a list of documents.
Each <Document ID="uuid"> element carries child elements for each field.
The document ID is an XML attribute; all other fields are child text nodes.
Sourcepub fn parse_cost_categories(xml: &str) -> Result<Vec<CostCategory>, YukiError>
pub fn parse_cost_categories(xml: &str) -> Result<Vec<CostCategory>, YukiError>
Parse a CostCategories SOAP response.
Each CostCategory element carries an ID attribute and a Description child element:
<CostCategory ID="45100"><Description>...</Description></CostCategory>
Sourcepub fn parse_payment_methods(xml: &str) -> Result<Vec<PaymentMethod>, YukiError>
pub fn parse_payment_methods(xml: &str) -> Result<Vec<PaymentMethod>, YukiError>
Parse a PaymentMethods SOAP response.
Each PaymentMethod element carries an ID attribute and a Description child element:
<PaymentMethod ID="4"><Description>...</Description></PaymentMethod>
Trait Implementations§
Source§impl Default for ArchiveClient
impl Default for ArchiveClient
Source§fn default() -> ArchiveClient
fn default() -> ArchiveClient
Auto Trait Implementations§
impl !RefUnwindSafe for ArchiveClient
impl !UnwindSafe for ArchiveClient
impl Freeze for ArchiveClient
impl Send for ArchiveClient
impl Sync for ArchiveClient
impl Unpin for ArchiveClient
impl UnsafeUnpin for ArchiveClient
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<D> OwoColorize for D
impl<D> OwoColorize for D
Source§fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
fn fg<C>(&self) -> FgColorDisplay<'_, C, Self>where
C: Color,
Source§fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
fn bg<C>(&self) -> BgColorDisplay<'_, C, Self>where
C: Color,
Source§fn black(&self) -> FgColorDisplay<'_, Black, Self>
fn black(&self) -> FgColorDisplay<'_, Black, Self>
Source§fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
fn on_black(&self) -> BgColorDisplay<'_, Black, Self>
Source§fn red(&self) -> FgColorDisplay<'_, Red, Self>
fn red(&self) -> FgColorDisplay<'_, Red, Self>
Source§fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
fn on_red(&self) -> BgColorDisplay<'_, Red, Self>
Source§fn green(&self) -> FgColorDisplay<'_, Green, Self>
fn green(&self) -> FgColorDisplay<'_, Green, Self>
Source§fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
fn on_green(&self) -> BgColorDisplay<'_, Green, Self>
Source§fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
fn yellow(&self) -> FgColorDisplay<'_, Yellow, Self>
Source§fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
fn on_yellow(&self) -> BgColorDisplay<'_, Yellow, Self>
Source§fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
fn blue(&self) -> FgColorDisplay<'_, Blue, Self>
Source§fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
fn on_blue(&self) -> BgColorDisplay<'_, Blue, Self>
Source§fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
fn magenta(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_magenta(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
fn purple(&self) -> FgColorDisplay<'_, Magenta, Self>
Source§fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
fn on_purple(&self) -> BgColorDisplay<'_, Magenta, Self>
Source§fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
fn cyan(&self) -> FgColorDisplay<'_, Cyan, Self>
Source§fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
fn on_cyan(&self) -> BgColorDisplay<'_, Cyan, Self>
Source§fn white(&self) -> FgColorDisplay<'_, White, Self>
fn white(&self) -> FgColorDisplay<'_, White, Self>
Source§fn on_white(&self) -> BgColorDisplay<'_, White, Self>
fn on_white(&self) -> BgColorDisplay<'_, White, Self>
Source§fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
fn default_color(&self) -> FgColorDisplay<'_, Default, Self>
Source§fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
fn on_default_color(&self) -> BgColorDisplay<'_, Default, Self>
Source§fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
fn bright_black(&self) -> FgColorDisplay<'_, BrightBlack, Self>
Source§fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
fn on_bright_black(&self) -> BgColorDisplay<'_, BrightBlack, Self>
Source§fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
fn bright_red(&self) -> FgColorDisplay<'_, BrightRed, Self>
Source§fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
fn on_bright_red(&self) -> BgColorDisplay<'_, BrightRed, Self>
Source§fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
fn bright_green(&self) -> FgColorDisplay<'_, BrightGreen, Self>
Source§fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
fn on_bright_green(&self) -> BgColorDisplay<'_, BrightGreen, Self>
Source§fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
fn bright_yellow(&self) -> FgColorDisplay<'_, BrightYellow, Self>
Source§fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
fn on_bright_yellow(&self) -> BgColorDisplay<'_, BrightYellow, Self>
Source§fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
fn bright_blue(&self) -> FgColorDisplay<'_, BrightBlue, Self>
Source§fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
fn on_bright_blue(&self) -> BgColorDisplay<'_, BrightBlue, Self>
Source§fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_magenta(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_magenta(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
fn bright_purple(&self) -> FgColorDisplay<'_, BrightMagenta, Self>
Source§fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
fn on_bright_purple(&self) -> BgColorDisplay<'_, BrightMagenta, Self>
Source§fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
fn bright_cyan(&self) -> FgColorDisplay<'_, BrightCyan, Self>
Source§fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
fn on_bright_cyan(&self) -> BgColorDisplay<'_, BrightCyan, Self>
Source§fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
fn bright_white(&self) -> FgColorDisplay<'_, BrightWhite, Self>
Source§fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
fn on_bright_white(&self) -> BgColorDisplay<'_, BrightWhite, Self>
Source§fn bold(&self) -> BoldDisplay<'_, Self>
fn bold(&self) -> BoldDisplay<'_, Self>
Source§fn dimmed(&self) -> DimDisplay<'_, Self>
fn dimmed(&self) -> DimDisplay<'_, Self>
Source§fn italic(&self) -> ItalicDisplay<'_, Self>
fn italic(&self) -> ItalicDisplay<'_, Self>
Source§fn underline(&self) -> UnderlineDisplay<'_, Self>
fn underline(&self) -> UnderlineDisplay<'_, Self>
Source§fn blink(&self) -> BlinkDisplay<'_, Self>
fn blink(&self) -> BlinkDisplay<'_, Self>
Source§fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
fn blink_fast(&self) -> BlinkFastDisplay<'_, Self>
Source§fn reversed(&self) -> ReversedDisplay<'_, Self>
fn reversed(&self) -> ReversedDisplay<'_, Self>
Source§fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
fn strikethrough(&self) -> StrikeThroughDisplay<'_, Self>
Source§fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn color<Color>(&self, color: Color) -> FgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::fg or
a color-specific method, such as OwoColorize::green, Read moreSource§fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
fn on_color<Color>(&self, color: Color) -> BgDynColorDisplay<'_, Color, Self>where
Color: DynColor,
OwoColorize::bg or
a color-specific method, such as OwoColorize::on_yellow, Read more