Skip to content
Snippets Groups Projects
Forked from funkwhale / funkwhale
6970 commits behind the upstream repository.
224.enhancement 1.41 KiB
Retructured music API to increase performance and remove useless endpoints (#224)

Music API changes
^^^^^^^^^^^^^^^^^

This release includes an API break. Even though the API is advertised
as unstable, and not documented, here is a brief explanation of the change in
case you are using the API in a client or in a script. Summary of the changes:

- ``/api/v1/artists`` does not includes a list of tracks anymore. It was to heavy
  to return all of this data all the time. You can get all tracks for an
  artist using ``/api/v1/tracks?artist=artist_id``
- Additionally, ``/api/v1/tracks`` now support an ``album`` filter to filter
  tracks matching an album
- ``/api/v1/artists/search``, ``/api/v1/albums/search`` and ``/api/v1/tracks/search``
  endpoints are removed. Use ``/api/v1/{artists|albums|tracks}/?q=yourquery``
  instead. It's also more powerful, since you can combine search with other
  filters and ordering options.
- ``/api/v1/requests/import-requests/search`` endpoint is removed as well.
  Use ``/api/v1/requests/import-requests/?q=yourquery``
  instead. It's also more powerful, since you can combine search with other
  filters and ordering options.

Of course, the front-end was updated to work with the new API, so this should
not impact end-users in any way, apart from slight performance gains.

.. note::

    The API is still not stable and may evolve again in the future. API freeze
    will come at a later point.