I disagree with this. In fact, my conclusion is the opposite. It's a good pattern to limit the complexity of communication between different layers and have strong encapsulation of state. The simpler an interface is, the easier it is to integrate with other components and the less likely it is to run into integration issues and expose vulnerabilities.
The simpler the interface (with fewer, simpler endpoints), the fewer e2e scenarios you need to account for, this allows you to build more stable, more secure software which is easier to test. Modules which expose a large number of endpoints tend to encourage micromanagement of that module's internal state and this leads to issues.
You need to have clear separation of concerns between layers and components in order to be able to come up with the simplest interface possible which allows different components to interact.