Я как-то писал для одного проекта REST API (get,post,put,delete методы) и получение данных из модели делал с помощью свойств protected $hidden и protected $appends, ну а получение делал с помощью функций getAttrNameAttribute($value).
Недавно я узнал о такой функциональности Laravel, как apiResource и я чето ни в какую не могу принять это, или я привык к тому, что нашел, сейчас надо для одного проекта сделать REST API и я опять хочу применить начальную заготовку (может просто потому, что я к ней привык)
Апи ресурсы не отменяют методов работы с моделью. Использовать Ларавел и юзать вместо ларавел-инструментов какие-то свои полу-велосипеды (например response json с моделями) не запрещается, но непрофессионально, нелогично (зачем тогда нужен фреймворк), некрасиво и делает качество кода хуже (читаемость, поддержка итд). Поэтому только - да, использовать, без вариантов) В ресурсах можно юзать геттеры или не юзать геттеры, а формировать параметры прямо в ресурсе, связями с другими ресурсами и т.д. В том числе и для коллекций. Сложностей там никаких нет. Перечисляешь нужные параметры в ресурсе и вызываешь в контроллере одной строчкой кода. Обычно 2 минуты на весь процесс.