diff --git a/examples/rate_limiting.rs b/examples/rate_limiting.rs new file mode 100644 index 0000000..aec8834 --- /dev/null +++ b/examples/rate_limiting.rs @@ -0,0 +1,27 @@ +use listenbrainz::raw::Client; + +fn main() { + let token = std::env::args().nth(1).expect("No token provided"); + + let client = Client::new(); + + loop { + match client.validate_token(&token) { + Ok(response) => { + println!("{:?}", response.rate_limit); + + if let Some(remaining) = response.rate_limit.map(|r| r.remaining) { + if remaining == 0 { + break; + } + } else { + break; + } + } + Err(err) => { + eprintln!("{}", err); + break; + } + } + } +}