first(); $userAssetLinks = UserAssetLink::with(['user', 'asset.devices']) ->withCount([ 'asset as active_devices_count' => function ($query) { $query->whereHas('devices', function ($q) { $q->where('active', 1); }); }, 'asset as inactive_devices_count' => function ($query) { $query->whereHas('devices', function ($q) { $q->where('active', 0); }); } ]) ->get(); return response()->json($userAssetLinks); } }