There are interfaces in the Web API. What are interfaces?
In a interface you define certain functionality that an object that implements this interface MUST have. It is important to note that you don’t use any logic in an interface.
Every object that implements an interface promises that it has the function that has been defined in the interface.
here is a very nice example i pulled from stackoverflow:
Suppose you want to hire a plumber to fix some things on your house, you don’t know (and you don’t care much) who you may end up hiring but you know what the plumber must be able to do. So, you define a set of tasks that anyone that claims to be a plumber must know how to do. Of course everybody might have its own way of carrying out each task, but in the end, the person you are hiring is a plumber because they know how to do each task.
So what you want to use an interface for is to define what an object should be capable of(i.e. fix leak) without defining how this object should do it (because you don’t care as long as its done).