When a case is started, it is a running process in the SOA infrastructure. The main component is Oracle Business Rules which governs (among other things) the availability of activities and when certain process milestones are achieved. The case API allows you to query the case events and milestones (how you can expose the API as a service is described here and here by Roger Goossens).
Sometimes people want to obtain information about cases such as;
- in how many cases has a certain activity been executed?
- in which cases has a certain milestone been reached?