summaryrefslogtreecommitdiff
path: root/src/kraken/namespaces
diff options
context:
space:
mode:
Diffstat (limited to 'src/kraken/namespaces')
-rw-r--r--src/kraken/namespaces/mod.rs1
-rw-r--r--src/kraken/namespaces/users.rs32
2 files changed, 33 insertions, 0 deletions
diff --git a/src/kraken/namespaces/mod.rs b/src/kraken/namespaces/mod.rs
index 5f4b421..d8a065f 100644
--- a/src/kraken/namespaces/mod.rs
+++ b/src/kraken/namespaces/mod.rs
@@ -3,6 +3,7 @@ pub use super::models;
pub use super::Client;
pub mod clips;
+pub mod users;
pub struct Namespace<T> {
client: Client,
diff --git a/src/kraken/namespaces/users.rs b/src/kraken/namespaces/users.rs
new file mode 100644
index 0000000..d4adb8e
--- /dev/null
+++ b/src/kraken/namespaces/users.rs
@@ -0,0 +1,32 @@
+use std::collections::BTreeMap;
+use super::super::models::{User};
+use super::super::Client;
+use crate::client::{RatelimitKey, ClientTrait, ApiRequest};
+use reqwest::Method;
+use super::Namespace;
+
+pub struct Users {}
+type UsersNamespace = Namespace<Users>;
+
+impl UsersNamespace {
+ pub fn by_id(self, id: &str) -> ApiRequest<User> {
+ use self::by_id;
+ by_id(self.client, id)
+ }
+}
+
+impl Client {
+ pub fn users(&self) -> UsersNamespace {
+ UsersNamespace::new(self)
+ }
+}
+
+pub fn by_id(client: Client, id: &str)
+ -> ApiRequest<User>
+{
+ let client = client.inner;
+ let url = String::from("https://") + client.domain() + "/kraken/users/" + id;
+ let params = BTreeMap::new();
+
+ ApiRequest::new(url, params, client, Method::GET, Some(RatelimitKey::Default))
+}