Разрабатываю REST API медиа сервиса. Медиа - это аудио (музыкальные группы, альбомы, треки ...) и видео (фильмы, сериалы, сезоны, эпизоды ...). Все медиа в БД хранятся в одной таблице - Media. В API для каждого типа медиа я решил использовать несколько endpoint'ов:
/movies/
/music-groups/{id}/albums/{id}/tracks/{id}
и т.д.
Мне этот вариант показался удобным, т.к. каждый тип медиа может содержать какие-то специфичные поля + поисковые фильтры для каждого типа могут быть разными.
У пользователей должна быть возможность добавить медиа в список понравившихся и после этот список посмотреть.
Список понравившихся медиа будет находиться в другой БД (приложение разбито на небольшие модули, каждый из которых отвечает за какую-то фичу + каждый модуль может использовать только свою БД).
Вопрос: как вернуть информацию о понравившихся медиа, если модуль не знает о типе медиа, а знает лишь идентификатор?
Нормально ли иметь endpoint /media/{id}, который будет определять тип медиа и редиректить пользователя по нужному пути (напр. пользователю понравился музыкальный трек, он переходит по ссылке /media/{track_id}, а его редиректит на /music-groups/{mg_id}/albums/{a_id}/tracks/{track_id})?