I'm not sure what you're getting at here. You don't have an activity feed model that I'm aware of, so `Post.for_activity_feed` seems reasonable. It's more reasonable than changing your controller code if the data you're returning changes.

The idea is here to build an api that is the language of the domain model. The Api::PostsController returns posts in the way that the api needs them to be returned. We can call it something else if you prefer, but we shouldn't have the controller making the decisions about what it needs to return. There should be one unambiguous endpoint that returns what the feed needs. That's what's meant by Don't Repeat Yourself. 'If you want "this", go "here". Don't try to come up with the solution yourself.' Modular APIs are great, but they should be used to build more expressive APIs and domains on top of them.