Skip to content

VanillaBrooks/qbittorrent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

qbittorrent

This is an asynchronous api library for the popular bittorrent client qbittorrent.

Implementation

Features of this library are implemented as-needed. If you require certain methods create an issue or submit a pull request.

Example

use qbittorrent::Api;

#[tokio::main(flavor = "current_thread")]
async fn main() {
	let username = "your webui username";
	let password = "your webui username";
	let address = "http://localhost:8080";

	let api = Api::new(username, password, address).await.unwrap();

	let global_speeds = api.get_global_transfer_info().await.unwrap();
	println!("current download rate is at {} bytes / sec", global_speeds.dl_info_speed());

	let torrent_list = api.get_torrent_list().await.unwrap();
	println!("qbittorrent is managing {} torrents", torrent_list.len());
}

Progress

Authentication
	✅ Login
	❌ Logout
Application
	❌ Get application version
	❌ Get API version
	❌ Get build info
	❌ Shutdown application
	❌ Get application preferences
	❌ Set application preferences
	❌ Get default save path
Log
	❌ Get log
	❌ Get peer log
Sync
	✅ Get main data
	Get torrent peers data
Transfer info
	✅ Get global transfer info
	✅ Get alternative speed limits state
	✅ Toggle alternative speed limits
	❌ Get global download limit
	❌ Set global download limit
	❌ Get global upload limit
	❌ Set global upload limit
	❌ Ban peers
Torrent management
	✅ Get torrent list
	✅ Get torrent generic properties
	✅ Get torrent trackers
	❌ Get torrent web seeds
	✅ Get torrent contents
	❌ Get torrent pieces' states
	❌ Get torrent pieces' hashes
	❌ Pause torrents
	✅ Resume torrents
	❌ Delete torrents
	❌ Recheck torrents
	❌ Reannounce torrents
	❌ Edit trackers
	❌ Remove trackers
	❌ Add peers
	✅ Add new torrent
	❌ Add trackers to torrent
	❌ Increase torrent priority
	❌ Decrease torrent priority
	❌ Maximal torrent priority
	❌ Minimal torrent priority
	❌ Set file priority
	❌ Get torrent download limit
	❌ Set torrent download limit
	❌ Set torrent share limit
	❌ Get torrent upload limit
	❌ Set torrent upload limit
	❌ Set torrent location
	❌ Set torrent name
	❌ Set torrent category
	✅ Get all categories
	❌ Add new category
	❌ Edit category
	❌ Remove categories
	❌ Add torrent tags
	❌ Remove torrent tags
	❌ Get all tags
	❌ Create tags
	❌ Delete tags
	❌ Set automatic torrent management
	❌ Toggle sequential download
	❌ Set first/last piece priority
	❌ Set force start
	❌ Set super seeding
RSS (experimental)
	❌ Add folder
	❌ Add feed
	❌ Remove item
	❌ Move item
	❌ Get all items
	❌ Set auto-downloading rule
	❌ Rename auto-downloading rule
	❌ Remove auto-downloading rule
	❌ Get all auto-downloading rules
Search
	❌ Start search
	❌ Stop search
	❌ Get search status
	❌ Get search results
	❌ Delete search
	❌ Get search categories
	❌ Get search plugins
	❌ Install search plugin
	❌ Uninstall search plugin
	❌ Enable search plugin
	❌ Update search plugins

About

Qbittorrent rust api implementation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages