qbittorrent_web_api/README.md
2022-08-05 20:20:21 +00:00

41 lines
1.2 KiB
Markdown

# qBittorrent web api for Rust
This is an automatic async implementation of the qBittorrent 4.1 web api. The api generation is based on a forked wiki markdown file describing the api which can be found [here](https://github.com/jowax/qBittorrent/wiki/WebUI-API-(qBittorrent-4.1)) and the original [here](https://github.com/qbittorrent/qBittorrent/wiki/WebUI-API-(qBittorrent-4.1)).
## Example
```rust
use anyhow::Result;
use qbittorrent_web_api::Api;
#[tokio::main]
async fn main() -> Result<()> {
let api = Api::login("http://localhost:8080", "admin", "adminadmin").await?;
// add a torrent
api.torrent_management()
.add("http://www.legittorrents.info/download.php?id=5cc013e801095be61d768e609e3039da58616fd0&f=Oddepoxy%20-%20Oddepoxy%20(2013)%20[OGG%20320%20CBR].torrent")
.send()
.await?;
// critical logs
let logs = api.log()
.main()
.critical(true)
.warning(false)
.normal(false)
.info(false)
.send()
.await?;
println!("{:#?}", logs);
// current torrent info
let info = api.torrent_management().info().send().await?;
println!("{:#?}", info);
Ok(())
}
```