В философии RestFramework get-параметры чаще всего используются как аргументы для фильтров в API списка объектов. Если Вам подойдет вариант, когда по ссылке
/user/?email=email@example.com
возвращается массив из 0 или 1 элемента (для уникальных email), то добавляйте в UserViewSet
filter_backend, либо просто используйте напрямую request.query_params в filter_queryset.
Если же Вам жизненно необходимо, чтобы API списка объектов иногда возвращало массив, а иногда словарь - тут ни я ни rest framework вам не помощники, пишите ручками.