summaryrefslogtreecommitdiffstats
path: root/cli/src/api/client.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/src/api/client.rs')
-rw-r--r--cli/src/api/client.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/cli/src/api/client.rs b/cli/src/api/client.rs
new file mode 100644
index 0000000..4e6a2b0
--- /dev/null
+++ b/cli/src/api/client.rs
@@ -0,0 +1,23 @@
+
+use serde::Deserialize;
+use std::error::Error;
+
+#[derive(Debug, Deserialize)]
+pub struct Client {
+ pub id: u32,
+ pub name: String,
+ pub contact: Option<String>,
+ pub address: Option<String>,
+ pub email: String,
+ pub phone: Option<String>,
+ pub vat: bool,
+}
+
+impl Client {
+ pub fn all() -> Result<Vec<Self>, Box<dyn Error>> {
+ Ok(ureq::get("http://faktura.ddev.site/api/clients")
+ .set("Accept", "application/json")
+ .call()?
+ .into_json()?)
+ }
+}