27 lines
921 B
Markdown
27 lines
921 B
Markdown
|
# Ideation
|
||
|
|
||
|
This file just serves as a central point for all the ideas I have for this
|
||
|
project.
|
||
|
|
||
|
## Used software/services
|
||
|
|
||
|
* Spotify API to look up album information
|
||
|
* YouTubeDL to download the videos
|
||
|
* Something to set the mp3 tags, not sure about this one yet
|
||
|
|
||
|
## API Design
|
||
|
|
||
|
### Endpoints
|
||
|
|
||
|
* `GET /search?q=`
|
||
|
* search for albums & tracks, given a search query
|
||
|
* returns a list of albums/tracks (basically the same as the API, just
|
||
|
cleaned up a bit)
|
||
|
* `GET /albums?ids=`: get detailed information about an album/a list of albums.
|
||
|
I'm not actually sure if I need this one.
|
||
|
* `GET /tracks?ids=`: get detailed information about a track/a list of tracks.
|
||
|
* `GET /tracks/videos?id=`: given a track, search YouTube for videos about the
|
||
|
track. Returns a list of youtube ids
|
||
|
* `POST /tracks/download`: download a track. The data should contain the wanted
|
||
|
metadata in the file & the id of the youtube video
|