Go to file
2022-07-11 04:13:42 +02:00
.devcontainer Manually push tag 2022-07-10 20:48:32 +00:00
.github Fix release pipeline 2022-07-11 02:06:12 +00:00
qbittorrent-web-api-gen Create release 0.2.33 2022-07-11 02:08:10 +00:00
src Refactor project to two crates for easier publishing. 2022-07-10 16:32:55 +00:00
.gitignore Add source files 2022-07-10 17:06:19 +02:00
Cargo.lock Create release 0.2.33 2022-07-11 02:08:10 +00:00
Cargo.toml Create release 0.2.33 2022-07-11 02:08:10 +00:00
LICENSE Initial commit 2022-07-10 17:00:13 +02:00
README.md Update readme 2022-07-11 02:09:27 +00:00

qBittorrent web api for Rust

This is an automatic async implementation of the qBittorrent 4.1 web api. The api generation is based on the wiki markdown file which can be seen here.

Example

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(())
}