This one is my favorite Microservice design principle and it helps a lot during actually designing Microservices. As per this principle, Microservices should be designed around APIs, with each service exposing a well-defined set of APIs for communication with other services.
For example, a Microservice could expose an API for retrieving customer information, which other microservices could use to access that information.
This principle also goes along with the previous design principle which advocate that Microservices should not share databases. You must create APIs for other services which need access to the data and this will then drive your own Microservice design.