You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
1293 lines
31 KiB
YAML
1293 lines
31 KiB
YAML
openapi: 3.0.0
|
|
info:
|
|
title: YoutubeDL-Material API Docs - Official
|
|
version: '1.0'
|
|
description: |-
|
|
Welcome to the official docs for YoutubeDL-Material.
|
|
|
|
You can check out all the available endpoints. Remember to authenticate with your API key using the "Authorization" header with your requests.
|
|
|
|
To do so, simply add this header to your API calls:
|
|
|
|
`Authorization: API_KEY`
|
|
|
|
Note the space between 'Authorization:' and the API_KEY. This is required.
|
|
|
|
Replce API_KEY with the API key in the settings menu. If one doesn't exist, click generate to create one.
|
|
servers:
|
|
- url: 'http://localhost:17442'
|
|
paths:
|
|
/api/tomp3:
|
|
post:
|
|
tags:
|
|
- downloader
|
|
summary: Download audio file
|
|
description: |-
|
|
Downloads an audio file with the given URL. Will include global args if they exist.
|
|
|
|
HTTP requests will return once the audio file download completes. In the future, it will (by default) return once the download starts, and a separate API call will be used for checking the download status.
|
|
operationId: post-tomp3
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200'
|
|
security:
|
|
- Authenticate: []
|
|
/api/tomp4:
|
|
post:
|
|
tags:
|
|
- downloader
|
|
summary: Download video file
|
|
description: |-
|
|
Downloads a video file with the given URL. Will include global args if they exist.
|
|
|
|
HTTP requests will return once the video file download completes. In the future, it will (by default) return once the download starts, and a separate API call will be used for checking the download status.
|
|
operationId: post-tomp4
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_1'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_1'
|
|
security:
|
|
- Authenticate: []
|
|
/api/getMp3s:
|
|
get:
|
|
tags:
|
|
- files
|
|
summary: Get all mp3 files
|
|
description: Gets all mp3 files and audio playlists stored in the db
|
|
operationId: get-getMp3s
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_2'
|
|
requestBody: {}
|
|
security:
|
|
- Authenticate: []
|
|
/api/getMp4s:
|
|
get:
|
|
tags:
|
|
- files
|
|
summary: Get all mp4 files
|
|
description: Gets all mp4 files and video playlists stored in the db
|
|
operationId: get-getMp4s
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_3'
|
|
security:
|
|
- Authenticate: []
|
|
/api/getFile:
|
|
post:
|
|
tags:
|
|
- files
|
|
summary: Get file database object
|
|
description: Gets a file db object by its uid and type. Type will be found if not provided
|
|
operationId: post-getFile
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_2'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_4'
|
|
security:
|
|
- Authenticate: []
|
|
/api/enableSharing:
|
|
post:
|
|
tags:
|
|
- files
|
|
- playlists
|
|
summary: Enable sharing
|
|
description: Enables sharing for a video or playlist
|
|
operationId: post-enableSharing
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_3'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_5'
|
|
security:
|
|
- Authenticate: []
|
|
/api/disableSharing:
|
|
post:
|
|
tags:
|
|
- files
|
|
- playlists
|
|
summary: Disable sharing
|
|
description: Disables sharing for a video or playlist
|
|
operationId: post-disableSharing
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_4'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_5'
|
|
security:
|
|
- Authenticate: []
|
|
/api/subscribe:
|
|
post:
|
|
tags:
|
|
- subscriptions
|
|
summary: Subscribe to channel or playlist
|
|
description: Allows you to subscribe to channels and playlists. Name is optional (will use the channel/playlist name)
|
|
operationId: post-api-subscribe
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_5'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_6'
|
|
security:
|
|
- Authenticate: []
|
|
/api/unsubscribe:
|
|
post:
|
|
tags:
|
|
- subscriptions
|
|
summary: Unsubscribe from channel or playlist
|
|
description: Unsubscribes from a subscription
|
|
operationId: post-api-unsubscribe
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_6'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_7'
|
|
security:
|
|
- Authenticate: []
|
|
/api/deleteSubscriptionFile:
|
|
post:
|
|
tags:
|
|
- subscriptions
|
|
summary: Delete video from subscription
|
|
description: Deletes a file from a subscription
|
|
operationId: post-api-deleteSubscriptionFile
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_7'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_8'
|
|
'500':
|
|
description: Internal Server Error
|
|
security:
|
|
- Authenticate: []
|
|
/api/getSubscription:
|
|
post:
|
|
tags:
|
|
- subscriptions
|
|
summary: Get subscription
|
|
description: Gets a subscription from its ID
|
|
operationId: post-api-getSubscription
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_8'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_9'
|
|
security:
|
|
- Authenticate: []
|
|
/api/downloadVideosForSubscription:
|
|
post:
|
|
tags:
|
|
- subscriptions
|
|
summary: Download videos for subscription
|
|
description: 'Manually check the subscription for new videos. When used on newly created subscriptions, it will grab all possible videos'
|
|
operationId: post-api-downloadVideosForSubscription
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_9'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_10'
|
|
security:
|
|
- Authenticate: []
|
|
/api/getAllSubscriptions:
|
|
post:
|
|
tags:
|
|
- subscriptions
|
|
summary: Get all subscriptions
|
|
operationId: post-api-getAllSubscriptions
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_11'
|
|
security:
|
|
- Authenticate: []
|
|
/api/createPlaylist:
|
|
post:
|
|
tags:
|
|
- playlists
|
|
summary: Create a playlist
|
|
description: Creates a playlist from existing downloaded videos
|
|
operationId: post-api-createPlaylist
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_10'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_12'
|
|
security:
|
|
- Authenticate: []
|
|
/api/getPlaylist:
|
|
post:
|
|
tags:
|
|
- playlists
|
|
summary: Get playlist
|
|
description: Gets a playlist object from the database from its ID
|
|
operationId: post-api-getPlaylist
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_11'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_13'
|
|
security:
|
|
- Authenticate: []
|
|
/api/updatePlaylist:
|
|
post:
|
|
tags:
|
|
- playlists
|
|
summary: Update playlist files
|
|
description: Updates the list of filenames in the playlist object
|
|
operationId: post-api-updatePlaylist
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_12'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_5'
|
|
security:
|
|
- Authenticate: []
|
|
/api/deletePlaylist:
|
|
post:
|
|
tags:
|
|
- playlists
|
|
summary: Delete playlist
|
|
description: Deletes a playlist from the database by its ID
|
|
operationId: post-api-deletePlaylist
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_13'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_5'
|
|
security:
|
|
- Authenticate: []
|
|
/api/deleteMp4:
|
|
post:
|
|
tags:
|
|
- files
|
|
summary: Delete mp4 file
|
|
description: Deletes an mp4 file by its uid
|
|
operationId: post-api-deleteMp4
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_14'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: boolean
|
|
description: Whether the operation succeeded
|
|
security:
|
|
- Authenticate: []
|
|
/api/downloadFile:
|
|
post:
|
|
tags:
|
|
- files
|
|
summary: Download downloaded file from server
|
|
operationId: post-api-downloadFile
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: object
|
|
properties: {}
|
|
application/xml:
|
|
schema:
|
|
$ref: '#/components/schemas/body_15'
|
|
responses:
|
|
'200':
|
|
description: 'The file itself is in the response, as well as an options object.'
|
|
security:
|
|
- Authenticate: []
|
|
/api/deleteFile:
|
|
post:
|
|
tags:
|
|
- files
|
|
summary: Delete downloaded file (unused)
|
|
operationId: post-api-deleteFile
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_16'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
security:
|
|
- Authenticate: []
|
|
/api/downloadArchive:
|
|
post:
|
|
tags:
|
|
- subscriptions
|
|
summary: Download subscription archive
|
|
description: Downloads the archive file of a subscription
|
|
operationId: post-api-downloadArchive
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_17'
|
|
responses:
|
|
'200':
|
|
description: The archive text file is sent as a response
|
|
security:
|
|
- Authenticate: []
|
|
/api/updaterStatus:
|
|
get:
|
|
tags:
|
|
- updating
|
|
summary: Get updater status
|
|
description: Gets the status of an update that is in progress
|
|
operationId: get-api-updaterStatus
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_14'
|
|
security:
|
|
- Authenticate: []
|
|
/api/updateServer:
|
|
post:
|
|
tags:
|
|
- updating
|
|
summary: Update server
|
|
description: 'Updates the server. If no tag is provided, the latest version will be used.'
|
|
operationId: post-api-updateServer
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_18'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_5'
|
|
security:
|
|
- Authenticate: []
|
|
/api/isPinSet:
|
|
post:
|
|
tags:
|
|
- security
|
|
summary: Check if pin is set
|
|
description: Checks if the pin is set for settings
|
|
operationId: post-api-isPinSet
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_15'
|
|
security:
|
|
- Authenticate: []
|
|
/api/checkPin:
|
|
post:
|
|
tags:
|
|
- security
|
|
summary: Check if pin is correct
|
|
description: Checks the pin against an inputted one. Will return true if they match
|
|
operationId: post-api-checkPin
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_19'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_5'
|
|
security:
|
|
- Authenticate: []
|
|
/api/setPin:
|
|
post:
|
|
tags:
|
|
- security
|
|
summary: Set pin
|
|
operationId: post-api-setPin
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_20'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_5'
|
|
security:
|
|
- Authenticate: []
|
|
/api/generateNewAPIKey:
|
|
post:
|
|
tags:
|
|
- security
|
|
summary: Generate new API key
|
|
description: Generates and sets a new API key
|
|
operationId: post-genapikey
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_16'
|
|
security:
|
|
- Authenticate: []
|
|
/api/deleteMp3:
|
|
post:
|
|
tags:
|
|
- files
|
|
summary: Delete mp3 file
|
|
description: Deletes an mp3 file by its uid
|
|
operationId: post-api-deleteMp3
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_21'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
type: boolean
|
|
description: Whether the operation succeeded
|
|
security:
|
|
- Authenticate: []
|
|
/api/config:
|
|
get:
|
|
tags: []
|
|
summary: Get config
|
|
description: "Gets the config file stored in 'default.json'"
|
|
operationId: get-config
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_17'
|
|
security:
|
|
- Authenticate: []
|
|
/api/setConfig:
|
|
post:
|
|
summary: Set config
|
|
description: "Sets the 'default.json' config file to the 'new_config_file' object"
|
|
operationId: post-api-setConfig
|
|
requestBody:
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/body_22'
|
|
responses:
|
|
'200':
|
|
description: OK
|
|
content:
|
|
application/json:
|
|
schema:
|
|
$ref: '#/components/schemas/inline_response_200_5'
|
|
security:
|
|
- Authenticate: []
|
|
components:
|
|
schemas:
|
|
body:
|
|
required:
|
|
- url
|
|
type: object
|
|
properties:
|
|
url:
|
|
type: string
|
|
customQualityConfiguration:
|
|
type: string
|
|
example: '251'
|
|
maxBitrate:
|
|
type: string
|
|
example: '160'
|
|
customArgs:
|
|
type: string
|
|
customOutput:
|
|
type: string
|
|
youtubeUsername:
|
|
type: string
|
|
youtubePassword:
|
|
type: string
|
|
inline_response_200:
|
|
required:
|
|
- audiopathEncoded
|
|
- uid
|
|
type: object
|
|
properties:
|
|
uid:
|
|
type: string
|
|
file_names:
|
|
type: string
|
|
audiopathEncoded:
|
|
type: string
|
|
body_1:
|
|
required:
|
|
- url
|
|
type: object
|
|
properties:
|
|
url:
|
|
type: string
|
|
customQualityConfiguration:
|
|
type: string
|
|
example: 242+251
|
|
selectedHeight:
|
|
type: string
|
|
example: '1080'
|
|
customArgs:
|
|
type: string
|
|
customOutput:
|
|
type: string
|
|
youtubeUsername:
|
|
type: string
|
|
youtubePassword:
|
|
type: string
|
|
inline_response_200_1:
|
|
required:
|
|
- uid
|
|
- videopathEncoded
|
|
type: object
|
|
properties:
|
|
uid:
|
|
type: string
|
|
file_names:
|
|
type: string
|
|
videopathEncoded:
|
|
type: string
|
|
inline_response_200_2:
|
|
required:
|
|
- mp3s
|
|
- playlists
|
|
type: object
|
|
properties:
|
|
mp3s:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/inline_response_200_2_mp3s'
|
|
playlists:
|
|
type: array
|
|
description: All audio playlists
|
|
items:
|
|
$ref: '#/components/schemas/inline_response_200_2_playlists'
|
|
inline_response_200_3:
|
|
required:
|
|
- mp4s
|
|
type: object
|
|
properties:
|
|
mp4s:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/inline_response_200_3_mp4s'
|
|
playlists:
|
|
type: array
|
|
description: All video playlists
|
|
items:
|
|
type: object
|
|
body_2:
|
|
required:
|
|
- uid
|
|
type: object
|
|
properties:
|
|
uid:
|
|
type: string
|
|
type:
|
|
type: string
|
|
inline_response_200_4:
|
|
required:
|
|
- file
|
|
- success
|
|
type: object
|
|
properties:
|
|
success:
|
|
type: string
|
|
file:
|
|
$ref: '#/components/schemas/inline_response_200_2_mp3s'
|
|
body_3:
|
|
required:
|
|
- is_playlist
|
|
- type
|
|
- uid
|
|
type: object
|
|
properties:
|
|
uid:
|
|
type: string
|
|
type:
|
|
type: string
|
|
is_playlist:
|
|
type: boolean
|
|
inline_response_200_5:
|
|
required:
|
|
- success
|
|
type: object
|
|
properties:
|
|
success:
|
|
type: boolean
|
|
body_4:
|
|
required:
|
|
- type
|
|
- uid
|
|
type: object
|
|
properties:
|
|
type:
|
|
type: string
|
|
uid:
|
|
type: string
|
|
description: uid is either the video uid or the playlist ID
|
|
is_playlist:
|
|
type: boolean
|
|
body_5:
|
|
required:
|
|
- url
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
url:
|
|
type: string
|
|
timerange:
|
|
type: string
|
|
streamingOnly:
|
|
type: boolean
|
|
inline_response_200_6:
|
|
required:
|
|
- new_sub
|
|
type: object
|
|
properties:
|
|
new_sub:
|
|
$ref: '#/components/schemas/inline_response_200_6_new_sub'
|
|
error:
|
|
type: string
|
|
apiunsubscribe_sub:
|
|
required:
|
|
- id
|
|
- name
|
|
- url
|
|
- videos
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
url:
|
|
type: string
|
|
id:
|
|
type: string
|
|
streamingOnly:
|
|
type: boolean
|
|
videos:
|
|
type: array
|
|
items:
|
|
type: object
|
|
body_6:
|
|
required:
|
|
- sub
|
|
type: object
|
|
properties:
|
|
sub:
|
|
$ref: '#/components/schemas/apiunsubscribe_sub'
|
|
deleteMode:
|
|
type: boolean
|
|
description: Defaults to false
|
|
inline_response_200_7:
|
|
required:
|
|
- success
|
|
type: object
|
|
properties:
|
|
success:
|
|
type: boolean
|
|
error:
|
|
type: string
|
|
apideleteSubscriptionFile_sub:
|
|
required:
|
|
- id
|
|
- isPlaylist
|
|
- name
|
|
- url
|
|
- videos
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
url:
|
|
type: string
|
|
id:
|
|
type: string
|
|
streamingOnly:
|
|
type: boolean
|
|
isPlaylist:
|
|
type: boolean
|
|
videos:
|
|
type: array
|
|
items:
|
|
type: object
|
|
body_7:
|
|
required:
|
|
- file
|
|
- sub
|
|
type: object
|
|
properties:
|
|
file:
|
|
type: string
|
|
sub:
|
|
$ref: '#/components/schemas/apideleteSubscriptionFile_sub'
|
|
deleteForever:
|
|
type: boolean
|
|
description: 'If true, does not remove id from archive. Only valid if youtube-dl archive is enabled in settings.'
|
|
inline_response_200_8:
|
|
type: object
|
|
properties:
|
|
success:
|
|
type: boolean
|
|
body_8:
|
|
required:
|
|
- subID
|
|
type: object
|
|
properties:
|
|
subID:
|
|
type: string
|
|
inline_response_200_9:
|
|
required:
|
|
- files
|
|
- subscription
|
|
type: object
|
|
properties:
|
|
subscription:
|
|
$ref: '#/components/schemas/inline_response_200_9_subscription'
|
|
files:
|
|
type: array
|
|
items:
|
|
type: object
|
|
body_9:
|
|
required:
|
|
- subID
|
|
type: object
|
|
properties:
|
|
subID:
|
|
type: string
|
|
inline_response_200_10:
|
|
required:
|
|
- success
|
|
type: object
|
|
properties:
|
|
success:
|
|
type: number
|
|
inline_response_200_11:
|
|
required:
|
|
- subscriptions
|
|
type: object
|
|
properties:
|
|
subscriptions:
|
|
type: array
|
|
items:
|
|
$ref: '#/components/schemas/inline_response_200_11_subscriptions'
|
|
body_10:
|
|
required:
|
|
- fileNames
|
|
- playlistName
|
|
- thumbnailURL
|
|
- type
|
|
type: object
|
|
properties:
|
|
playlistName:
|
|
type: string
|
|
fileNames:
|
|
type: array
|
|
items:
|
|
type: string
|
|
type:
|
|
type: string
|
|
thumbnailURL:
|
|
type: string
|
|
inline_response_200_12:
|
|
required:
|
|
- new_playlist
|
|
- success
|
|
type: object
|
|
properties:
|
|
new_playlist:
|
|
$ref: '#/components/schemas/inline_response_200_12_new_playlist'
|
|
success:
|
|
type: boolean
|
|
body_11:
|
|
required:
|
|
- playlistID
|
|
- type
|
|
type: object
|
|
properties:
|
|
playlistID:
|
|
type: string
|
|
type:
|
|
type: string
|
|
inline_response_200_13:
|
|
required:
|
|
- playlist
|
|
- success
|
|
- type
|
|
type: object
|
|
properties:
|
|
playlist:
|
|
$ref: '#/components/schemas/inline_response_200_2_playlists'
|
|
type:
|
|
type: string
|
|
success:
|
|
type: boolean
|
|
body_12:
|
|
required:
|
|
- fileNames
|
|
- playlistID
|
|
- type
|
|
type: object
|
|
properties:
|
|
playlistID:
|
|
type: string
|
|
fileNames:
|
|
type: array
|
|
items:
|
|
type: string
|
|
type:
|
|
type: string
|
|
body_13:
|
|
required:
|
|
- playlistID
|
|
- type
|
|
type: object
|
|
properties:
|
|
playlistID:
|
|
type: string
|
|
type:
|
|
type: string
|
|
body_14:
|
|
required:
|
|
- uid
|
|
type: object
|
|
properties:
|
|
uid:
|
|
type: string
|
|
body_15:
|
|
required:
|
|
- fileNames
|
|
- type
|
|
type: object
|
|
properties:
|
|
fileNames:
|
|
type: array
|
|
description: Array of 1 or more files to download
|
|
items:
|
|
type: string
|
|
zip_mode:
|
|
type: boolean
|
|
type:
|
|
type: string
|
|
outputName:
|
|
type: string
|
|
fullPathProvided:
|
|
type: string
|
|
subscriptionName:
|
|
type: boolean
|
|
description: Only used for subscriptions
|
|
subscriptionPlaylist:
|
|
type: boolean
|
|
description: Only used for subscriptions
|
|
body_16:
|
|
required:
|
|
- fileName
|
|
- type
|
|
type: object
|
|
properties:
|
|
fileName:
|
|
type: string
|
|
type:
|
|
type: string
|
|
apidownloadArchive_sub:
|
|
required:
|
|
- archive_dir
|
|
type: object
|
|
properties:
|
|
archive_dir:
|
|
type: string
|
|
body_17:
|
|
required:
|
|
- sub
|
|
type: object
|
|
properties:
|
|
sub:
|
|
$ref: '#/components/schemas/apidownloadArchive_sub'
|
|
inline_response_200_14:
|
|
required:
|
|
- details
|
|
- updating
|
|
type: object
|
|
properties:
|
|
updating:
|
|
type: boolean
|
|
details:
|
|
type: string
|
|
body_18:
|
|
type: object
|
|
properties:
|
|
tag:
|
|
type: string
|
|
inline_response_200_15:
|
|
required:
|
|
- is_set
|
|
type: object
|
|
properties:
|
|
is_set:
|
|
type: boolean
|
|
body_19:
|
|
required:
|
|
- input_pin
|
|
type: object
|
|
properties:
|
|
input_pin:
|
|
type: string
|
|
body_20:
|
|
required:
|
|
- unhashed_pin
|
|
type: object
|
|
properties:
|
|
unhashed_pin:
|
|
type: string
|
|
inline_response_200_16:
|
|
required:
|
|
- new_api_key
|
|
type: object
|
|
properties:
|
|
new_api_key:
|
|
type: string
|
|
example: 4241b401-7236-493e-92b5-b72696b9d853
|
|
body_21:
|
|
required:
|
|
- uid
|
|
type: object
|
|
properties:
|
|
uid:
|
|
type: string
|
|
inline_response_200_17:
|
|
required:
|
|
- config_file
|
|
- success
|
|
type: object
|
|
properties:
|
|
config_file:
|
|
type: object
|
|
success:
|
|
type: boolean
|
|
body_22:
|
|
required:
|
|
- new_config_file
|
|
type: object
|
|
properties:
|
|
new_config_file:
|
|
type: object
|
|
inline_response_200_2_mp3s:
|
|
required:
|
|
- duration
|
|
- id
|
|
- isAudio
|
|
- path
|
|
- size
|
|
- thumbnailURL
|
|
- title
|
|
- uid
|
|
- upload_date
|
|
- uploader
|
|
- url
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
title:
|
|
type: string
|
|
thumbnailURL:
|
|
type: string
|
|
isAudio:
|
|
type: boolean
|
|
duration:
|
|
type: number
|
|
description: In seconds
|
|
url:
|
|
type: string
|
|
uploader:
|
|
type: string
|
|
size:
|
|
type: number
|
|
path:
|
|
type: string
|
|
upload_date:
|
|
type: string
|
|
uid:
|
|
type: string
|
|
sharingEnabled:
|
|
type: boolean
|
|
inline_response_200_2_playlists:
|
|
required:
|
|
- fileNames
|
|
- id
|
|
- name
|
|
- thumbnailURL
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
fileNames:
|
|
type: array
|
|
items:
|
|
type: string
|
|
id:
|
|
type: string
|
|
thumbnailURL:
|
|
type: string
|
|
inline_response_200_3_mp4s:
|
|
required:
|
|
- duration
|
|
- id
|
|
- isAudio
|
|
- path
|
|
- size
|
|
- thumbnailURL
|
|
- title
|
|
- uid
|
|
- upload_date
|
|
- uploader
|
|
- url
|
|
type: object
|
|
properties:
|
|
id:
|
|
type: string
|
|
title:
|
|
type: string
|
|
thumbnailURL:
|
|
type: string
|
|
isAudio:
|
|
type: boolean
|
|
duration:
|
|
type: number
|
|
url:
|
|
type: string
|
|
uploader:
|
|
type: string
|
|
size:
|
|
type: number
|
|
path:
|
|
type: string
|
|
upload_date:
|
|
type: string
|
|
uid:
|
|
type: string
|
|
sharingEnabled:
|
|
type: boolean
|
|
inline_response_200_6_new_sub:
|
|
required:
|
|
- id
|
|
- name
|
|
- url
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
url:
|
|
type: string
|
|
id:
|
|
type: string
|
|
streamingOnly:
|
|
type: boolean
|
|
timerange:
|
|
type: string
|
|
inline_response_200_9_subscription:
|
|
required:
|
|
- archive
|
|
- id
|
|
- isPlaylist
|
|
- name
|
|
- url
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
url:
|
|
type: string
|
|
id:
|
|
type: string
|
|
streamingOnly:
|
|
type: boolean
|
|
isPlaylist:
|
|
type: boolean
|
|
archive:
|
|
type: string
|
|
inline_response_200_11_subscriptions:
|
|
required:
|
|
- archive
|
|
- id
|
|
- isPlaylist
|
|
- name
|
|
- streamingOnly
|
|
- url
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
url:
|
|
type: string
|
|
id:
|
|
type: string
|
|
streamingOnly:
|
|
type: boolean
|
|
isPlaylist:
|
|
type: boolean
|
|
archive:
|
|
type: string
|
|
inline_response_200_12_new_playlist:
|
|
required:
|
|
- fileNames
|
|
- id
|
|
- name
|
|
- thumbnailURL
|
|
- type
|
|
type: object
|
|
properties:
|
|
name:
|
|
type: string
|
|
fileNames:
|
|
type: string
|
|
id:
|
|
type: string
|
|
thumbnailURL:
|
|
type: string
|
|
type:
|
|
type: string
|
|
securitySchemes:
|
|
Authenticate:
|
|
name: Authorization
|
|
type: apiKey
|
|
in: header
|
|
description: Use your public API key generated from the settings menu
|