torapi
Version:
Unofficial API (backend) for RuTracker, Kinozal, RuTor and NoNameClub for receiving torrent files and detailed information about distribution by movie title, TV series or id, and also provides RSS news feed for all providers.
1,499 lines (1,498 loc) • 42.3 kB
YAML
openapi: 3.0.0
info:
title: TorAPI
version: 0.5.2
description: Unofficial API (backend) for RuTracker, Kinozal, RuTor and NoNameClub
contact:
name: © Lifailon (Alex Kup)
url: https://github.com/Lifailon/TorAPI
license:
name: License MIT
url: https://github.com/Lifailon/TorAPI/blob/main/LICENSE
servers:
- url: https://torapi.vercel.app
description: Production server (main)
- url: https://toruapi.vercel.app
description: Production server (mirror)
- url: https://rutorapi.vercel.app
description: Production server (mirror)
paths:
/api/provider/list:
get:
tags:
- Providers
description: Get a list of providers
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
Provider:
type: string
Urls:
type: array
items:
type: string
'400':
description: No data
'404':
description: Endpoint not found
/api/provider/check:
get:
tags:
- Providers
description: Quickly check availability for all providers by searching by name
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
RuTracker:
type: boolean
Kinozal:
type: boolean
RuTor:
type: boolean
NoNameClub:
type: boolean
'400':
description: No data
'404':
description: Endpoint not found
/api/provider/test:
get:
tags:
- Providers
description: Testing all endpoints
parameters:
- name: query
in: query
required: true
description: Query parameter
schema:
type: string
example: The Rookie
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
RSS:
type: object
properties:
RuTracker:
type: boolean
Kinozal:
type: boolean
RuTor:
type: boolean
NoNameClub:
type: boolean
Title:
type: object
properties:
Status:
type: object
properties:
RuTracker:
type: boolean
Kinozal:
type: boolean
RuTor:
type: boolean
NoNameClub:
type: boolean
Id:
type: object
properties:
RuTracker:
type: integer
Kinozal:
type: integer
RuTor:
type: integer
NoNameClub:
type: integer
RunTime:
type: object
properties:
RuTracker:
type: number
Kinozal:
type: number
RuTor:
type: number
NoNameClub:
type: number
Id:
type: object
properties:
Status:
type: object
properties:
RuTracker:
type: boolean
Kinozal:
type: boolean
RuTor:
type: boolean
NoNameClub:
type: boolean
Files:
type: object
properties:
RuTracker:
type: boolean
Kinozal:
type: boolean
RuTor:
type: boolean
NoNameClub:
type: boolean
RunTime:
type: object
properties:
RuTracker:
type: number
Kinozal:
type: number
RuTor:
type: number
NoNameClub:
type: number
'400':
description: No data
'404':
description: Endpoint not found
/api/get/category/rutracker:
get:
tags:
- Category
description: >-
Get a static list of categories for content filtering for the RuTracker
provider
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
num:
type: string
'404':
description: Provider not found
/api/get/category/kinozal:
get:
tags:
- Category
description: >-
Get a static list of categories for content filtering for the Kinozal
provider
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
num:
type: string
'404':
description: Provider not found
/api/get/category/rutor:
get:
tags:
- Category
description: >-
Get a static list of categories for content filtering for the RuTor
provider
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
num:
type: string
'404':
description: Provider not found
/api/get/category/nonameclub:
get:
tags:
- Category
description: >-
Get a static list of categories for content filtering for the NoNameClub
provider
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
num:
type: string
'404':
description: Provider not found
/api/get/rss/rutracker:
get:
tags:
- RSS
description: >-
Get native RSS news feed from RuTracker provider in XML or JSON format.
To get the answer in the required format, use the parameter in the
answer block.
parameters:
- name: category
in: query
required: false
description: Parameter to filter by category
schema:
type: integer
example: 0
default: 0
responses:
'200':
description: Successful response
content:
application/xml:
schema:
type: array
items:
type: object
properties:
rss:
type: string
application/json:
schema:
type: array
items:
type: object
properties:
id:
type: string
link:
type: string
updated:
type: string
title:
type: string
author:
type: string
category:
type: string
categoryLable:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/get/rss/kinozal:
get:
tags:
- RSS
description: >-
Get native RSS news feed from Kinozal provider in XML or JSON format. To
get the answer in the required format, use the parameter in the answer
block.
parameters:
- name: category
in: query
required: false
description: Parameter to filter by category
schema:
type: integer
enum:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 20
- 21
- 22
- 23
- 24
- 32
- 35
- 37
- 38
- 39
- 40
- 41
- 42
- 45
- 46
- 47
- 48
- 49
- 50
- 1001
- 1002
- 1003
- 1004
- 1006
default: 0
minimum: 0
- name: year
in: query
required: false
description: Release year for filtering
schema:
type: integer
default: 0
minimum: 0
- name: format
in: query
required: false
description: Quality resolution format for filtering
schema:
type: integer
enum:
- 0
- 720
- 1080
- 2160
default: 0
minimum: 0
responses:
'200':
description: Successful response
content:
application/xml:
schema:
type: array
items:
type: object
properties:
rss:
type: string
application/json:
schema:
type: array
items:
type: object
properties:
date:
type: string
title:
type: string
category:
type: string
link:
type: string
downloadLink:
type: string
size:
type: string
comments:
type: string
seeds:
type: string
peers:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/get/rss/rutor:
get:
tags:
- RSS
description: >-
Get custom RSS news feed from RuTor provider in XML or JSON format. To
get the answer in the required format, use the parameter in the answer
block.
parameters:
- name: category
in: query
required: false
description: Parameter to filter by category
schema:
type: integer
enum:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
default: 0
minimum: 0
responses:
'200':
description: Successful response
content:
application/xml:
schema:
type: array
items:
type: object
properties:
rss:
type: string
application/json:
schema:
type: array
items:
type: object
properties:
date:
type: string
title:
type: string
link:
type: string
downloadLink:
type: string
magnet:
type: string
size:
type: string
comments:
type: integer
seeds:
type: integer
peers:
type: integer
'400':
description: No data
'404':
description: Provider not found
/api/get/rss/nonameclub:
get:
tags:
- RSS
description: >-
Get native RSS news feed from NoNameClub provider in XML or JSON format.
To get the answer in the required format, use the parameter in the
answer block.
parameters:
- name: category
in: query
required: false
description: Parameter to filter by category
schema:
type: integer
example: 0
default: 0
responses:
'200':
description: Successful response
content:
application/xml:
schema:
type: array
items:
type: object
properties:
rss:
type: string
application/json:
schema:
type: array
items:
type: object
properties:
turbo:
type: string
title:
type: string
link:
type: string
pubDate:
type: string
description:
type: string
content:
type: string
creator:
type: string
commentRss:
type: string
comments:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/search/title/rutracker:
get:
tags:
- Search by Title
description: Search for a movie or TV series in torrent tracker RuTracker
parameters:
- name: query
in: query
required: false
description: Query parameter
schema:
type: string
example: The Rookie
- name: category
in: query
required: false
description: Parameter to filter by category
schema:
type: integer
example: 0
default: 0
- name: page
in: query
required: false
description: Page number (10 max) or all
schema:
type: string
enum:
- '0'
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
- all
default: '0'
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
Name:
type: string
Id:
type: string
Url:
type: string
Torrent:
type: string
Size:
type: string
Download_Count:
type: string
Checked:
type: string
Category:
type: string
Seeds:
type: string
Peers:
type: string
Date:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/search/title/kinozal:
get:
tags:
- Search by Title
description: Search for a movie or TV series in torrent tracker Kinozal
parameters:
- name: query
in: query
required: false
description: Query parameter
schema:
type: string
example: The Rookie
- name: category
in: query
required: false
description: Parameter to filter by category
schema:
type: integer
enum:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 20
- 21
- 22
- 23
- 24
- 32
- 35
- 37
- 38
- 39
- 40
- 41
- 42
- 45
- 46
- 47
- 48
- 49
- 50
- 1001
- 1002
- 1003
- 1004
- 1006
default: 0
minimum: 0
- name: page
in: query
required: false
description: Page number (100 max) or all
schema:
type: string
enum:
- '0'
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
- '10'
- '11'
- '12'
- '13'
- '14'
- '15'
- '16'
- '17'
- '18'
- '19'
- all
default: '0'
- name: year
in: query
required: false
description: Release year for filtering
schema:
type: integer
default: 0
minimum: 0
- name: format
in: query
required: false
description: Quality resolution format for filtering
schema:
type: integer
enum:
- 0
- 720
- 1080
- 2160
default: 0
minimum: 0
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
Name:
type: string
Title:
type: string
Id:
type: string
Original_Name:
type: string
Year:
type: string
Language:
type: string
Format:
type: string
Url:
type: string
Torrent:
type: string
Size:
type: string
Comments:
type: string
Category:
type: string
Seeds:
type: string
Peers:
type: string
Time:
type: string
Date:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/search/title/rutor:
get:
tags:
- Search by Title
description: Search for a movie or TV series in torrent tracker RuTor
parameters:
- name: query
in: query
required: false
description: Query parameter
schema:
type: string
example: The Rookie
- name: category
in: query
required: false
description: Parameter to filter by category
schema:
type: integer
enum:
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
default: 0
minimum: 0
- name: page
in: query
required: false
description: Page number (20 max) or all
schema:
type: string
enum:
- '0'
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
- '10'
- '11'
- '12'
- '13'
- '14'
- '15'
- '16'
- '17'
- '18'
- '19'
- all
default: '0'
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
Name:
type: string
Id:
type: string
Url:
type: string
Torrent:
type: string
Hash:
type: string
Size:
type: string
Comments:
type: string
Seeds:
type: string
Peers:
type: string
Date:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/search/title/nonameclub:
get:
tags:
- Search by Title
description: Search for a movie or TV series in torrent tracker NoNameClub
parameters:
- name: query
in: query
required: false
description: Query parameter
schema:
type: string
example: The Rookie
- name: category
in: query
required: false
description: Parameter to filter by category
schema:
type: integer
example: 0
default: 0
- name: page
in: query
required: false
description: Page number (4 max) or all
schema:
type: string
enum:
- '0'
- '1'
- '2'
- '3'
- all
default: '0'
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
Name:
type: string
Id:
type: string
Url:
type: string
Torrent:
type: string
Size:
type: string
Comments:
type: string
Category:
type: string
Seeds:
type: string
Peers:
type: string
Time:
type: string
Date:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/search/title/all:
get:
tags:
- Search by Title
description: Search for a movie or TV series in all torrent trackers
parameters:
- name: query
in: query
required: false
description: Query parameter
schema:
type: string
example: The Rookie
- name: page
in: query
required: false
description: Page number or all
schema:
type: string
enum:
- '0'
- '1'
- '2'
- '3'
- '4'
- '5'
- '6'
- '7'
- '8'
- '9'
- all
default: '0'
- name: year
in: query
required: false
description: Release year for filtering
schema:
type: integer
default: 0
minimum: 0
- name: format
in: query
required: false
description: Quality resolution format for filtering
schema:
type: integer
enum:
- 0
- 720
- 1080
- 2160
default: 0
minimum: 0
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: object
properties:
RuTracker:
type: array
items:
type: object
properties:
Name:
type: string
Id:
type: string
Url:
type: string
Torrent:
type: string
Size:
type: string
Download_Count:
type: string
Checked:
type: string
Category:
type: string
Seeds:
type: string
Peers:
type: string
Date:
type: string
Kinozal:
type: array
items:
type: object
properties:
Name:
type: string
Title:
type: string
Id:
type: string
Original_Name:
type: string
Year:
type: string
Language:
type: string
Format:
type: string
Url:
type: string
Torrent:
type: string
Size:
type: string
Comments:
type: string
Category:
type: string
Seeds:
type: string
Peers:
type: string
Date:
type: string
RuTor:
type: array
items:
type: object
properties:
Name:
type: string
Id:
type: string
Url:
type: string
Torrent:
type: string
Hash:
type: string
Size:
type: string
Comments:
type: string
Seeds:
type: string
Peers:
type: string
Date:
type: string
NoNameClub:
type: array
items:
type: object
properties:
Name:
type: string
Id:
type: string
Url:
type: string
Torrent:
type: string
Size:
type: string
Comments:
type: string
Category:
type: string
Seeds:
type: string
Peers:
type: string
Date:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/search/id/rutracker:
get:
tags:
- Search by ID
description: Search by id in the torrent tracker RuTracker
parameters:
- name: query
in: query
required: true
description: ID parameter
schema:
type: integer
example: 6489937
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
Name:
type: string
Url:
type: string
Hash:
type: string
Magnet:
type: string
Torrent:
type: string
IMDb_link:
type: string
Kinopoisk_link:
type: string
IMDb_id:
type: string
Kinopoisk_id:
type: string
Year:
type: string
Release:
type: string
Type:
type: string
Duration:
type: string
Audio:
type: string
Directer:
type: string
Actors:
type: string
Description:
type: string
Quality:
type: string
Video:
type: string
Poster:
type: string
Files:
type: array
items:
type: object
properties:
Name:
type: string
Size:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/search/id/kinozal:
get:
tags:
- Search by ID
description: Search by id in the torrent tracker Kinozal
parameters:
- name: query
in: query
required: true
description: ID parameter
schema:
type: integer
example: 2022944
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
Name:
type: string
Original_Name:
type: string
Url:
type: string
Hash:
type: string
Magnet:
type: string
Torrent:
type: string
IMDb_link:
type: string
Kinopoisk_link:
type: string
IMDb_id:
type: string
Kinopoisk_id:
type: string
Year:
type: string
Type:
type: string
Release:
type: string
Directer:
type: string
Actors:
type: string
Description:
type: string
Quality:
type: string
Video:
type: string
Audio:
type: string
Size:
type: string
Duration:
type: string
Transcript:
type: string
Seeds:
type: string
Peers:
type: string
Download_Count:
type: string
Files_Count:
type: string
Comments:
type: string
IMDb_Rating:
type: string
Kinopoisk_Rating:
type: string
Kinozal_Rating:
type: string
Votes:
type: string
Added_Date:
type: string
Update_Date:
type: string
Poster:
type: string
Posters:
type: array
items:
type: string
Files:
type: array
items:
type: object
properties:
Name:
type: string
Size:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/search/id/rutor:
get:
tags:
- Search by ID
description: Search by id in the torrent tracker RuTor
parameters:
- name: query
in: query
required: true
description: ID parameter
schema:
type: integer
example: 986185
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
Name:
type: string
Url:
type: string
Hash:
type: string
Magnet:
type: string
Torrent:
type: string
IMDb_link:
type: string
Kinopoisk_link:
type: string
IMDb_id:
type: string
Kinopoisk_id:
type: string
Rating:
type: string
Category:
type: string
Seeds:
type: string
Peers:
type: string
Seed_Date:
type: string
Add_Date:
type: string
Size:
type: string
Poster:
type: string
Files:
type: array
items:
type: object
properties:
Name:
type: string
Size:
type: string
'400':
description: No data
'404':
description: Provider not found
/api/search/id/nonameclub:
get:
tags:
- Search by ID
description: Search by id in the torrent tracker NoNameClub
parameters:
- name: query
in: query
required: true
description: ID parameter
schema:
type: integer
example: 1259608
responses:
'200':
description: Successful response
content:
application/json:
schema:
type: array
items:
type: object
properties:
Name:
type: string
Url:
type: string
Hash:
type: string
Magnet:
type: string
Torrent:
type: string
IMDb_link:
type: string
Kinopoisk_link:
type: string
IMDb_id:
type: string
Kinopoisk_id:
type: string
Release:
type: string
Type:
type: string
Directer:
type: string
Actors:
type: string
Description:
type: string
Duration:
type: string
Quality:
type: string
Video:
type: string
Audio:
type: string
Registration:
type: string
Rating:
type: string
Votes:
type: string
Size:
type: string
Poster:
type: string
Files:
type: array
items:
type: object
properties:
Name:
type: string
Size:
type: string
'400':
description: No data
'404':
description: Provider not found
components: {}
tags: []