# A rich and hybrid mystb.in API wrapper for Rust 🦀

## Introduction

myust is a rich and hybrid Rust wrapper for the mystb.in API that aims for user-flexibility.

myust supports hybrid clients:

[tokio::main]

async fn main() { let client = Client::new(); let tomorrow = Utc::now().checkedadddays(Days::new(1)).unwrap().into(); let result = client .createpaste(|p| { p.filename("myust.txt") .content("Hello from myust!") .expires(tomorrow) }) .await; match result { Ok() => { let paste = result.unwrap(); let url = format!("https://mystb.in/{}", paste.id); println!("Result: {}", url) }, Err() => { println!("Error code: {}", result.unwraperr().code) } } } Synchronously creating a multifile paste with a password: rust use myust::SyncClient;

fn main() { let client = SyncClient::new(); let paste = client .createmultifilepaste(|p| { p.file(|f| { f.filename("myust1.txt") .content("first file") .password("myust") }); // set the password on the first file only, same for expiration date p.file(|f| f.filename("myust2.txt").content("second file")) }) .unwrap(); let url = format!("https://mystb.in/{}", paste.id); println!("Result: {}", url) } ```

Asynchronously deleting a paste (you must own the paste): ```rust use myust::AuthClient;

[tokio::main]

async fn main() { let client = AuthClient::new("YOURMYSTBINTOKEN").await; let result = client.deletepaste("EquipmentMovingExpensive").await; // The paste ID to delete match result { Ok() => println!("Successfully deleted the paste."), Err() => { println!("Error code: {}", result.unwraperr().code) } } } ```

You can check for another example snippets in the test file.

Help

If you need any help regarding myust, feel free to open an issue about your problem.