This is a very simple api wrapper in Node using Promises.
$ npm i rarbg --save
const RarbgApi = require('rarbg')
// Create a new instance of the module.
const rarbg = new RarbgApi()
You can pass the configuration by the constructor
const rarbg = new RarbgApi({
host: 'torrentapi.org',
path: '/pubapi_v2.php?',
app_id: 'my_application',
user_agent: 'My Application 0.0.1'
})
There are two methods, search()
and list()
that you can use. The search()
method takes an object of options (see below) for various searching and sorting capabilities. Both methods return an array of objects containing filename
, category
, and download
properties, or an error in the case of nothing being found or a different error.
// Searching by various parameters
rarbg.search({
search_string: 'star wars',
sort: 'seeders',
category: rarbg.categories.MOVIES_X264_1080,
min_seeders: 50
})
.then(response => {
console.log(response)
// Output:
// [
// {
// "filename": "Star.Wars.Episode.VII.The.Force.Awakens.2015.1080p.BluRay.H264.AAC-RARBG",
// "category": "Movies/x264/1080",
// "download": "magnet:?xt=urn:btih:..."
// },
// {
// "filename": "Star.Wars.Episode.VII.The.Force.Awakens.2015.1080p.BluRay.x264-Replica",
// "category": "Movies/x264/1080",
// "download": "magnet:?xt=urn:btih:..."
// }
// ]
})
.catch(err => console.error(err))
// List recent torrents
rarbg.list()
.then(response => {
console.log(response)
// Output:
// [
// {
// "filename": "Those.Who.Cant.S02E02.HDTV.x264-AMBIT[rartv]",
// "category": "TV Episodes",
// "download": "magnet:?xt=urn:btih:..."
// },
// {
// "filename": "Those.Who.Cant.S02E02.720p.HDTV.x264-AMBIT[rartv]",
// "category": "TV HD Episodes",
// "download": "magnet:?xt=urn:btih:..."
// }
// ...
// ]
})
.catch(err => console.error(err))
search_string
: The string to searchsearch_imdb
: Search by imdb idsearch_tvdb
: Search by tvdb idsearch_themoviedb
: Search by TMdb id
category
: The only two string values can be'movies'
and'tv'
, but you can use the following constants:
rarbg.categories.XXX
rarbg.categories.MOVIES_XVID
rarbg.categories.MOVIES_XVID_720
rarbg.categories.MOVIES_X264
rarbg.categories.MOVIES_X264_1080
rarbg.categories.MOVIES_X264_720
rarbg.categories.MOVIES_X264_3D
rarbg.categories.MOVIES_X264_4K
rarbg.categories.MOVIES_X265_4K
rarbg.categories.MOVIES_X265_4K_HDR
rarbg.categories.MOVIES_FULL_BD
rarbg.categories.MOVIES_BD_REMUX
rarbg.categories.TV_EPISODES
rarbg.categories.TV_HD_EPISODES
rarbg.categories.MUSIC_MP3
rarbg.categories.MUSIC_FLAC
rarbg.categories.GAMES_PC_ISO
rarbg.categories.GAMES_PC_RIP
rarbg.categories.GAMES_PS3
rarbg.categories.GAMES_XBOX_360
rarbg.categories.SOFTWARE_PC_ISO
rarbg.categories.E_BOOKS
Note: The category
option only allows for one category, although the api itself allows for more.
sort
: Possible values are'seeders'
,'leechers'
, or'last'
limit
: Possible values are25
,50
, or100
. Default is25
min_seeders
: Numerical value for the minimum seeders availablemin_leechers
: Numerical value for the minimum leechers available
MIT