SpotiFetch API Docs
Panduan integrasi lengkap untuk layanan SpotiFetch API. Didesain untuk bot WhatsApp, Telegram, aplikasi web, dan integrasi backend. Menggunakan Spotify Web API resmi untuk pencarian katalog serta mesin konversi MP3 320 kbps dengan cover art beresolusi tinggi.
🔑 Autentikasi & Password Protection
Sistem proteksi password dikonfigurasi melalui variabel SITE_PASSWORD di file .env. Bila dikosongkan, seluruh endpoint dapat diakses secara terbuka (publik).
Jika password diaktifkan, Anda dapat mengirim token melalui salah satu metode berikut:
- Query string:
?apikey=YOUR_KEYatau?password=YOUR_KEY - HTTP Header:
x-auth-token: YOUR_KEY - HTTP Header:
Authorization: Bearer YOUR_KEY
Mencari lagu di katalog resmi Spotify. Mengembalikan daftar track dengan judul resmi, artis resmi, durasi, cover album asli Spotify (i.scdn.co), dan link track Spotify asli.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| q | string | Wajib | Kata kunci judul lagu / artis | Bruno Mars Risk It All |
| limit | number | Opsional | Jumlah hasil (default: 10, max: 10) | 5 |
curl -X GET "http://localhost:8000/search/track?q=Bruno+Mars+Risk+It+All&limit=2"
Mencari album musik di Spotify. Mengembalikan judul album, artis, tanggal rilis, total track, dan cover album.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| q | string | Wajib | Nama album yang dicari | The Romantic |
| limit | number | Opsional | Maksimal album dikembalikan (default: 10) | 3 |
Mencari profil artis di katalog Spotify dengan rincian jumlah followers, popularitas, genre, dan foto avatar.
Mencari playlist publik di Spotify dengan rincian nama pemilik playlist, total lagu, sampul, dan external URL.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| q | string | Wajib | Kata kunci nama playlist | Feby Putri |
| limit | number | Opsional | Maksimal playlist dikembalikan (default: 10) | 3 |
Mengambil metadata resmi lagu Spotify dan menghasilkan link download audio MP3 kualitas tinggi (320 kbps). File MP3 secara otomatis disematkan tag ID3 resmi (Judul, Artis, Album, Tahun) serta gambar cover resolusi tinggi.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| url / id | string | Wajib | URL track Spotify atau ID 22 karakter | https://open.spotify.com/track/5y2ijHECwFYWqcAHKTZgzD |
| download | boolean | Opsional | Jika true, langsung mengalirkan binary file MP3 |
false |
| apikey | string | Opsional | Password akses jika proteksi aktif | YOUR_KEY |
curl -X GET "http://localhost:8000/download/track?url=https://open.spotify.com/track/5y2ijHECwFYWqcAHKTZgzD"
Mengunduh seluruh lagu dalam suatu album Spotify sekaligus dan mengemasnya ke dalam sebuah berkas ZIP rapi. Semua file MP3 di dalam ZIP telah diberi nomor urut dan metadata resmi.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| url / id | string | Wajib | URL album Spotify atau ID Album |
| download | boolean | Opsional | Bila true, langsung mengalirkan binary ZIP |
# Mengambil link unduh berkas ZIP Album curl -X GET "http://localhost:8000/download/album?id=4m2880jivSbbyEGAKfITCa"
Mengunduh seluruh lagu dalam suatu playlist Spotify secara otomatis dan mengemasnya ke dalam sebuah berkas ZIP rapi beresolusi 320 kbps dengan tag ID3 resmi.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| url / id | string | Wajib | URL playlist Spotify atau ID 22 karakter | 3MPY6XJg5AUiLRaABByYn6 |
| download | boolean | Opsional | Bila true, langsung mengalirkan binary ZIP |
false |
curl -X GET "http://localhost:8000/download/playlist?id=3MPY6XJg5AUiLRaABByYn6"
Mencari lagu di Spotify berdasarkan kata kunci q dan langsung menyiapkan link download/stream MP3. Sangat praktis untuk bot musik yang ingin mencari dan memutar lagu hanya dalam satu kali request.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| q | string | Wajib | Judul lagu yang dicari | Sheila On 7 Dan |
| download | boolean | Opsional | Bila true, server langsung streaming binary MP3 |
false |
Resolver universal untuk tautan Spotify apapun. Sistem akan secara otomatis mendeteksi apakah tautan bertipe track, album, artist, atau playlist dan mengembalikan metadata lengkapnya.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| url | string | Wajib | Tautan Spotify apapun |
Endpoint streaming audio dengan dukungan HTTP 206 Partial Content (Range requests). Memungkinkan browser atau aplikasi pemutar audio melakukan pemutaran instan tanpa lag dan melakukan seeking (maju/mundur) durasi secara mulus.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| :filename | string | Wajib | Nama file MP3 hasil convert di server (URL Encoded) |
Endpoint pengunduhan berkas langsung (Direct Download) untuk file MP3 atau arsip ZIP dengan header Content-Disposition: attachment.
| Parameter | Tipe | Wajib | Keterangan |
|---|---|---|---|
| :filename | string | Wajib | Nama file target yang telah di-generate di server |
Mengambil rincian metadata resmi lagu dari katalog Spotify berdasarkan Spotify Track ID (22 karakter) atau URL lagu.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| :id | string | Wajib | Spotify Track ID 22 karakter | 5y2ijHECwFYWqcAHKTZgzD |
Mengambil informasi lengkap album musik Spotify beserta seluruh daftar lagu (tracklist) di dalamnya.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| :id | string | Wajib | Spotify Album ID 22 karakter | 4m2880jivSbbyEGAKfITCa |
Mengambil rincian profil artis Spotify beserta 10 lagu terpopuler (Top Tracks) artis tersebut.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| :id | string | Wajib | Spotify Artist ID 22 karakter | 0du5rR1Q6CdtNm0TrPWioY |
Mengambil rincian playlist Spotify beserta seluruh daftar lagu (tracklist) di dalamnya.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| :id | string | Wajib | Spotify Playlist ID 22 karakter | 3MPY6XJg5AUiLRaABByYn6 |
Mengambil lirik lagu lengkap baik dalam format teks biasa maupun lirik tersinkronisasi (synced / karaoke) dengan timestamp detik. Mendukung query via Spotify Track ID atau langsung judul lagu & nama artis.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| id | string | Opsional* | Spotify Track ID atau URL lagu Spotify | 3w3y8KPTfNeOKPiqUTakBh |
| title | string | Opsional* | Judul lagu (wajib jika tanpa ID) | Locked out of Heaven |
| artist | string | Opsional | Nama artis / penyanyi | Bruno Mars |
| format | string | Opsional | json (default), lrc, atau txt |
json |
curl -X GET "http://localhost:8000/lyrics?title=Locked+out+of+Heaven&artist=Bruno+Mars"
Mengunduh berkas lirik lagu langsung sebagai file .lrc (synced karaoke) atau berkas .txt (plain text) dengan header download otomatis.
| Parameter | Tipe | Wajib | Keterangan | Contoh |
|---|---|---|---|---|
| title | string | Opsional* | Judul lagu | Locked out of Heaven |
| artist | string | Opsional | Nama artis | Bruno Mars |
| format | string | Opsional | lrc (default) atau txt |
lrc |