🎵 YukiYTAPI — Python SDK
Official, ultra-fast Python SDK for the Yuki YouTube Media & Streaming Engine (https://music.yukiapi.site).
Designed for Telegram Music Bots (Yukki, AnonX, Fallen), Discord Bots, PyTgCalls, GroupCall streaming, and high-speed audio/video downloading.
⚡ Key Features
- 🏎️ Ultra-Fast 3-Way Async Search Race: Sub-second search & metadata resolution.
- 🎧 Instant Streaming & Token Auth: Direct stream URLs ready for PyTgCalls / FFmpeg.
- 📥 Atomic Disk Downloads: High-speed chunked MP3 & 720p MP4 downloads.
- 🔄 1-Line Drop-in Compatibility: Replace 1300+ lines of custom
Youtube.pyin Yukki / AnonX / Fallen bots with 1 line. - 🪶 Lightweight: Zero heavy scrapers on client machines (pure
aiohttp). - 💻 CLI Utility: Comes with
yuki-dlterminal tool.
📦 Installation
pip install yukiytapi
🚀 Quickstart
1. Modern Async API (Pyrogram, Telethon, discord.py, aiogram)
import asyncio
from yukiytapi import YukiAPI
async def main():
async with YukiAPI() as yuki:
# 1. Search tracks
results = await yuki.search("Kesariya", limit=5)
for t in results:
print(f"{t.title} ({t.duration}) - {t.link}")
# 2. Get track details (supports tuple unpacking!)
title, dur_min, dur_sec, thumb, vidid = await yuki.details("Kesariya")
print(f"Playing: {title} [{dur_min}]")
# 3. Get direct streamable URL for PyTgCalls / GroupCall
stream_url = await yuki.get_stream("Kesariya", type="audio")
print(f"Stream URL: {stream_url}")
# 4. Download file to local disk (MP3 or MP4)
file_path = await yuki.download("Kesariya", type="audio", output_dir="downloads")
print(f"Downloaded to: {file_path}")
asyncio.run(main())
🤖 1-Line Drop-in Migration for Telegram Music Bots
If you run a Telegram Music Bot (YukkiMusic, AnonXMusic, FallenMusic, etc.), you can delete your entire 1300+ line platforms/Youtube.py and replace it with:
# In your bot's platforms/Youtube.py:
from yukiytapi.compat import YouTubeAPI
YouTube = YouTubeAPI()
That's literally it! All your bot commands (track, details, title, duration, thumbnail, search, download, formats, playlist) will work seamlessly out of the box with zero server load.
🖥️ Command Line Interface (CLI)
# Download audio (MP3)
yuki-dl "Kesariya"
# Download video (MP4)
yuki-dl "Kesariya" --video
# Search tracks
yuki-dl --search "Arijit Singh" --limit 5
# Print direct stream URL
yuki-dl --url "Kesariya"
📄 License
MIT © SUDEEPBOTS
Metadata
Release files for yukiytapi 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| yukiytapi-1.0.0.tar.gz | 10.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| yukiytapi-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 20.6 kB
Release files / yukiytapi-1.0.0.tar.gz
| Download URL | yukiytapi-1.0.0.tar.gz |
|---|---|
| Size | 10.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c277dc477bcd28b638a4888d059a45a98b0da5b59ce4eda82053f56ef170be3f
|
|
BLAKE2b-256 checksum How to use checksums |
629d5d5f7341c59fbf1dcc70a18b3c5d95d343ba92fee6ba0e29b2ef7356c167
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.15
|
Release files / yukiytapi-1.0.0-py3-none-any.whl
| Download URL | yukiytapi-1.0.0-py3-none-any.whl |
|---|---|
| Size | 10.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
fdaf1fb6819358623f141aa4ef211c732d4b7add5a910008d0492bf465291068
|
|
BLAKE2b-256 checksum How to use checksums |
eecfbc48e958e72edb666e739411f0e5178966dcdba172fcf3354b3b95142ff2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.11.15
|