Skip to main content
Version: Next


The application layer sits between the system edge (different APIs), and the domain model. It is responsible for handling commands coming from the edge.


In general, the command handling flow can be described like this:

  1. The edge receives a command via its API (HTTP, gRPC, SignalR, messaging, etc).
  2. It passes the command over to the command service. As the edge is responsible for authentication and some authorization, it can enrich commands with user credentials.
  3. The command service, which is agnostic to the API itself, handles the command and gives a response to the edge (positive or negative).
  4. The API layer then returns the response to the calling party.

Eventuous provides several ways to implement the application layer, described in this section.