Telligent Community provides a robust set of in-process APIs that allow developers to interact with its data. These APIs are accessed through an API service that is similar to dependency injection but will only return the first instance of a class or interface that implements or extends the IAPI interface. As a developer you can also create your own APIs and expose them to the API service.
Why should I Create My Own API
APIs are a contract we have with developers creating integrations with our platform. It is our agreement that we will not change an API in a way that would break an existing integration or customization without providing ample notice. There are also many vendors, independent software developers and partners who create various custom components for the platform that may want to expose similar API contracts for their products. For that reason subscribing an API to the API service makes sense as it will allow developers to access the custom API the exact same way as all other APIs. In previous versions all community APIs were handled via a sealed static class so third party developers had to create their own version of this or an equivalent method in their own code. This made for a disjointed experience.
If you are creating a small customization not meant for redistribution, or a distributable component that has not public facing API then you don't need to do this. This feature mainly targets distributable components and community APIs, however you can use this anytime you want to expose an API.