ydl_api_ng
Simple youtube-dl REST API to launch downloads on a distant server.
Simple youtube-dl REST API to launch downloads on a distant server.
# What is ydl_api_ng ?
`ydl_api_ng` is a webserver you can interact with via a `REST API` to perform downloads directly on your server
using [yt-dlp](https://github.com/yt-dlp/yt-dlp)
The application is meant to cover a large variety of use cases.
# Features
- Suitable for power users of `yt-dlp` but easy to use for beginners
- Easy to setup : the default configuration will allow you to use `ydl_api_ng` without further modification
- A userscript to easily launch downloads from your browser
- An iOS shortcut to send a download order from your device
- Download from any website supported by yt-dlp ([list](https://github.com/yt-dlp/yt-dlp/blob/master/supportedsites.md))
- Hooks you can customize to extend features to use downloaded videos in your workflow
## For container version only :
- A full installation of `yt-dlp` with all addons needed to make it work at full potential
- Mostly no need to maintain manually this app to keep up with `yt-dlp` updates
- A programmation function to schedule downloads
- Queue management to monitor and control your downloads
- Multiple queues to manage your ressources

# Engagements
- I'll always do my best to not introduce breaking changes and maintain compatibility
- I built `ydl_api_ng` for my usage and I use it a lot so I try to always test extensively changes I make
# Documentation
All documentation can be found in the [doc](docs/) folder
Quick start :
- Installation [with docker](doc/000_Installation_docker.md) or [without docker](doc/001_Installation_without_docker.md)
- User script [installation](doc/002_Installation_userscript.md) or iOS shortcut [usage](doc/003_IOS_shortcut.md)
- Configuration [guide](doc/100_Configuration.md)
- Features API usage :
- [download](doc/200_API_download.md)
- [queue management](doc/210_API_queue_management.md)
- [programmation](doc/220_API_programmation.md)
- [misc](doc/230_API_utils.md)
- A lot of [requests examples](requests.http)
- A [params.ini](params/params.sample.ini) example file with every option explained
# 🤖 AI usage disclaimer
No AI has been harmed during the development and I don't plan to start using AI. AI contributions are **not** welcome.
# Contributing
- Found a bug ? Need an improvement ? Need help ? Need a feature ? Open a ticket !
- Found a typo in documentation ? That's normal ! I'm French (sorry about that). Don't hesitate to contact me if you
don't understand a sentence or if there are mistakes. Automated music downloader for NZB and Torrent, written in Python. It supports SABnzbd, NZBget, Transmission, µTorrent, Deluge and Blackhole.
Automatic Video library manager for TV Shows. It watches for new episodes of your favorite shows, and when they are posted it does its magic.
Automatically download music from YouTube add metadata from Spotify, Deezer or Musicbrainz.
Automate downloading Movies and TV Shows.