152 lines
4.0 KiB
YAML
152 lines
4.0 KiB
YAML
---
|
|
id: jptv-api
|
|
name: JPTV (API)
|
|
description: "JPTV is a JAPANESE Private Torrent Tracker for JAPANESE TV / MOVIES / GENERAL"
|
|
language: ja-JP
|
|
type: private
|
|
encoding: UTF-8
|
|
links:
|
|
- https://jptv.club/
|
|
|
|
caps:
|
|
categorymappings:
|
|
- {id: 1, cat: Movies, desc: "Movies"}
|
|
- {id: 2, cat: TV, desc: "TV Shows"}
|
|
- {id: 6, cat: TV, desc: "TS Firehose"}
|
|
- {id: 7, cat: Movies/Other, desc: "Anime Movies"}
|
|
- {id: 9, cat: TV/Anime, desc: "Anime Series"}
|
|
- {id: 8, cat: Audio, desc: "Audio"}
|
|
- {id: 10, cat: Books, desc: "Book"}
|
|
|
|
modes:
|
|
search: [q]
|
|
tv-search: [q, season, ep, imdbid, tvdbid, 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 Token by accessing your <a href=\"https://jptv.club/\" target=\"_blank\">JPTV</a> account <i>My Security</i> page and clicking on the <b>API Token</b> tab."
|
|
- name: freeleech
|
|
type: checkbox
|
|
label: Search freeleech only
|
|
default: false
|
|
- name: sort
|
|
type: select
|
|
label: Sort requested from site
|
|
default: created_at
|
|
options:
|
|
created_at: created
|
|
seeders: seeders
|
|
size: size
|
|
name: title
|
|
- 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: "Your membership requires that you stay active at JPTVclub. In order to not be disabled, you are required to login to the site at least once every 90 days. If your account gets disabled, you will recive an email informing you about it, along with instructions on how to get enabled again."
|
|
|
|
login:
|
|
path: /api/torrents
|
|
method: get
|
|
inputs: {} # TODO: remove in v10
|
|
error:
|
|
- selector: a[href*="/login"]
|
|
message:
|
|
text: "The API key was not accepted by {{ .Config.sitelink }}."
|
|
|
|
search:
|
|
paths:
|
|
# https://github.com/HDInnovations/UNIT3D-Community-Edition/wiki/Torrent-API-(UNIT3D-v8.x.x)
|
|
# https://github.com/HDInnovations/UNIT3D-Community-Edition/blob/master/app/Http/Controllers/API/TorrentController.php#L476
|
|
- path: "/api/torrents/filter"
|
|
response:
|
|
type: json
|
|
|
|
headers:
|
|
Authorization: ["Bearer {{ .Config.apikey }}"]
|
|
|
|
inputs:
|
|
$raw: "{{ range .Categories }}&categories[]={{.}}{{end}}"
|
|
name: "{{ .Keywords }}"
|
|
imdb: "{{ .Query.IMDBIDShort }}"
|
|
tmdb: "{{ .Query.TMDBID }}"
|
|
tvdb: "{{ .Query.TVDBID }}"
|
|
freeleech: "{{ if .Config.freeleech }}1{{ else }}{{ end }}"
|
|
sorting: "{{ .Config.sort }}"
|
|
direction: "{{ .Config.type }}"
|
|
qty: 100
|
|
|
|
keywordsfilters:
|
|
- name: re_replace
|
|
args: ["\\.", " "]
|
|
|
|
rows:
|
|
selector: data
|
|
attribute: attributes
|
|
|
|
fields:
|
|
categorydesc:
|
|
selector: category
|
|
title:
|
|
selector: name
|
|
details:
|
|
selector: details_link
|
|
download:
|
|
selector: download_link
|
|
imdbid:
|
|
selector: imdb_id
|
|
tmdbid:
|
|
selector: tmdb_id
|
|
tvdbid:
|
|
selector: tvdb_id
|
|
files:
|
|
selector: num_file
|
|
seeders:
|
|
selector: seeders
|
|
leechers:
|
|
selector: leechers
|
|
grabs:
|
|
selector: times_completed
|
|
date:
|
|
# "created_at": "2021-10-18T00:34:50.000000Z" is returned by Newtonsoft.Json.Linq as 18/10/2021 00:34:50
|
|
selector: created_at
|
|
filters:
|
|
- name: append
|
|
args: " +00:00" # GMT
|
|
- name: dateparse
|
|
args: "MM/dd/yyyy HH:mm:ss zzz"
|
|
size:
|
|
selector: size
|
|
downloadvolumefactor:
|
|
# api returns 0=false, 1=true
|
|
selector: freeleech
|
|
case:
|
|
0: 1 # not free
|
|
1: 0 # freeleech
|
|
uploadvolumefactor:
|
|
# api returns 0=false, 1=true
|
|
selector: double_upload
|
|
case:
|
|
0: 1 # normal
|
|
1: 2 # double
|
|
# global MR is 0.4 but torrents must be seeded for 7 days regardless of ratio
|
|
# minimumratio:
|
|
# text: 0.4
|
|
minimumseedtime:
|
|
# 7 days (as seconds = 7 x 24 x 60 x 60)
|
|
text: 604800
|
|
# json UNIT3D 5.2.0
|