It really depends .... Architecture vs Performance .... This is what I usually do. For most of my API implementations, i write function based API - specially it's a part of a large project where there are multiple endpoints. I have experienced performance issues using DRF class based views at multiple occation.
However, if I am using factory design pattern for my model architecture, I usually choose class based views. That's when I find it extremely useful to use DRF CBV as you can use reusable serializers.