Instead use GraphQL which is a thin layer, and hide all the business logic behind it. Way more manageable.