---
id: ultrabits-api
name: Ultrabits (API)
description: "Ultrabits is a NORDIC Private Torrent Tracker for MOVIES / TV / GENERAL"
language: sv-SE
type: private
encoding: UTF-8
links:
- https://ultrabits.org/
caps:
# `id` is the site's internal category slug — the JSON search endpoint
# echoes it back in each torrent's `category` field, so Cardigann maps
# rows 1:1 against what the API returns. `desc` mirrors the labels
# users see on ultrabits.org so Sonarr / Radarr / Prowlarr render the
# same wording.
# sourced from https://ultrabits.org/all?page=1
categorymappings:
# Movies
- {id: Movie-x264, cat: Movies/HD, desc: "Movies/x264"}
- {id: Movie-x265, cat: Movies/HD, desc: "Movies/x265"}
- {id: Movie-UHD, cat: Movies/UHD, desc: "Movies/UHD"}
- {id: Movie-Remux, cat: Movies/UHD, desc: "Movies/Remux"}
- {id: Movie-BD, cat: Movies/BluRay, desc: "Movies/BluRay"}
- {id: Movie-DVD, cat: Movies/DVD, desc: "Movies/DVDR"}
- {id: Movie-WEB, cat: Movies/WEB-DL, desc: "Movies/WEB-DL"}
- {id: Movie-Subpack, cat: Movies/Foreign, desc: "Movies/Subpack"}
# TV
- {id: TV-x264, cat: TV/HD, desc: "TV/x264"}
- {id: TV-x265, cat: TV/HD, desc: "TV/x265"}
- {id: TV-UHD, cat: TV/UHD, desc: "TV/UHD"}
- {id: TV-WEB, cat: TV/WEB-DL, desc: "TV/WEB-DL"}
- {id: TV-DVD, cat: TV/SD, desc: "TV/DVDR"}
- {id: TV-Nordic, cat: TV/Foreign, desc: "TV/Nordic"}
- {id: TV-Remux, cat: TV, desc: "TV/Remux"}
- {id: TV-BD, cat: TV/HD, desc: "TV/BluRay"}
- {id: TV-Subpack, cat: TV/Foreign, desc: "TV/Subpack"}
# Music
- {id: FLAC, cat: Audio/Lossless, desc: "Audio/FLAC"}
- {id: MP3, cat: Audio/MP3, desc: "Audio/MP3"}
- {id: MusicVid, cat: Audio/Video, desc: "Audio/Video"}
- {id: MusicDisc, cat: Audio/Lossless, desc: "Audio/Disc"}
- {id: Podcast, cat: Audio/Other, desc: "Audio/Podcast"}
# Games
- {id: Game-PC, cat: PC/Games, desc: "PC/Games"}
- {id: Game-PS, cat: Console/PS4, desc: "Console/PlayStation"}
- {id: Game-Xbox, cat: Console/XBox One, desc: "Console/Xbox"}
- {id: Game-NSW, cat: Console/Other, desc: "Console/Switch"}
# Apps
- {id: 0DAY, cat: PC/0day, desc: "PC/0DAY"}
- {id: App-ISO, cat: PC/ISO, desc: "PC/ISO"}
- {id: App-Mobile, cat: PC/Mobile-Android, desc: "PC/Mobile"}
# Books
- {id: eBook, cat: Books/EBook, desc: "Books/eBook"}
- {id: AudioBook, cat: Audio/Audiobook, desc: "Books/Audiobook"}
- {id: Magazine, cat: Books/Mags, desc: "Books/Magazine"}
- {id: Comic, cat: Books/Comics, desc: "Books/Comics"}
modes:
search: [q]
tv-search: [q, season, ep, imdbid, tmdbid]
movie-search: [q, imdbid, tmdbid]
music-search: [q]
book-search: [q]
settings:
- name: apikey
type: text
label: APIKey
- name: info_key
type: info
label: About your API key
default: "Find or Generate a new API Key by accessing your Ultrabits account API keys page."
- name: freeleech
type: checkbox
label: Search freeleech only
default: false
- name: sort
type: select
label: Sort requested from site
default: added
options:
added: created
seeders: seeders
size: size
- name: type
type: select
label: Order requested from site
default: desc
options:
desc: desc
asc: asc
- name: info_activity
type: info
label: Account Inactivity
default: "Log in to the website at least every 3 months to avoid account deactivation."
login:
path: v1/jackett/search
method: get
inputs:
apikey: "{{ .Config.apikey }}"
limit: 1
error:
- selector: error
message:
selector: description
search:
paths:
- path: /v1/jackett/search
response:
type: json
inputs:
q: "{{ .Keywords }}"
apikey: "{{ .Config.apikey }}"
cat: "{{ join .Categories \",\" }}"
imdbid: "{{ .Query.IMDBIDShort }}"
tmdbid: "{{ .Query.TMDBID }}"
season: "{{ .Query.Season }}"
ep: "{{ .Query.Ep }}"
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
sort: "{{ .Config.sort }}"
order: "{{ .Config.type }}"
limit: 100
rows:
selector: data
count:
selector: total
fields:
title:
selector: name
details:
selector: detailsUrl
download:
selector: downloadUrl
category:
selector: category
size:
selector: size
seeders:
selector: seeders
leechers:
selector: leechers
grabs:
selector: grabs
date:
# "addedAt": "2026-04-29T15:45:27.544Z" is returned by Newtonsoft.Json.Linq as 04/29/2026 15:45:27
selector: addedAt
filters:
- name: append
args: " +00:00" # GMT
- name: dateparse
args: "MM/dd/yyyy HH:mm:ss zzz"
infohash:
selector: infoHash
optional: true
imdb:
selector: imdb
tmdbid:
selector: tmdbId
downloadvolumefactor:
selector: downloadvolumefactor
uploadvolumefactor:
selector: uploadvolumefactor
minimumratio:
text: 1.1
minimumseedtime:
# 2 days (as seconds = 2 x 24 x 60 x 60)
text: 172800
# json api