mastodon API rust lib elefren, fixed and updated. and also all ASYNC! NB. most examples are now wrong.
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
# Mammut. A API Wrapper for the Mastodon API.
|
|
|
|
|
|
|
|
### [Documentation](https://docs.rs/mammut/)
|
|
|
|
|
|
|
|
A wrapper around the [API](https://github.com/tootsuite/mastodon/blob/master/docs/Using-the-API/API.md#tag) for [Mastodon](https://mastodon.social/)
|
|
|
|
|
|
|
|
```rust
|
|
|
|
# extern crate mammut;
|
|
|
|
# fn main() {
|
|
|
|
# try().unwrap();
|
|
|
|
# }
|
|
|
|
# fn try() -> mammut::Result<()> {
|
|
|
|
use mammut::Registration;
|
|
|
|
use mammut::apps::{AppBuilder, Scope};
|
|
|
|
|
|
|
|
let app = AppBuilder {
|
|
|
|
client_name: "mammut_test",
|
|
|
|
redirect_uris: "urn:ietf:wg:oauth:2.0:oob",
|
|
|
|
scopes: Scope::Read,
|
|
|
|
website: None,
|
|
|
|
};
|
|
|
|
|
|
|
|
let mut registration = Registration::new("https://mastodon.social")?;
|
|
|
|
registration.register(app)?;
|
|
|
|
let url = registration.authorise()?;
|
|
|
|
// Here you now need to open the url in the browser
|
|
|
|
// And handle a the redirect url coming back with the code.
|
|
|
|
let code = String::from("RETURNED_FROM_BROWSER");
|
|
|
|
let mastodon = registration.create_access_token(code)?;
|
|
|
|
|
|
|
|
println!("{:?}", mastodon.get_home_timeline()?);
|
|
|
|
# Ok(())
|
|
|
|
# }
|
|
|
|
```
|