Recently we have seen building internal API community and providing an API catalog that others in the company can benefit from as essential to gaining true advantages for your digital channels. API development and usage is increasing in a massive way, and enterprises and consumers alike are realizing the vast reach of application functionality that is driven by APIs. Most of the prominent examples of APIs are coming from consumer apps; ecommerce and mobile capabilities are leveraging APIs to put the ability to shop, communicate and engage wherever consumers are and however they choose to interact.
These consumer examples are great because they demonstrate the efficiency and simplicity with which APIs do so many things. Without much thought or effort, a mobile app user can get traffic updates, weather information, and purchase airline tickets. The APIs behind the scenes are pulling an overwhelming amount of data from databases, LDAP directories and other apps all in an effort to provide a useful, meaningful experience.
The same actions transpire with enterprise apps, although we don’t know as much about them because they are proprietary and don’t need to engage external users. But we see that some of the most innovative software development is happening within the enterprise, and it’s being done not just for its own sake, but because companies are demanding better margins from their products and reductions in corporate expenses. Executives are discovering that the best and easiest way to make this happen is with APIs.
Some organizations look to a traditional in-house development team to create APIs as needed and they use a product development model to do so: build requirements, prototype, develop, test, launch. That’s all fine to get API efforts off the ground, but in order to truly benefit from APIs, an enterprise will do well to foster the same type of engagement, support and sharing that exists in other developer communities. That’s why building an internal API community and providing an API catalog that others in the company can benefit from is essential to gaining true advantages for your digital channels. Doing so provides validation and support of digital initiatives, helps increase the rate at which the company can build digital channels, provides a repository of in-house reusable assets, and helps with controlled use of cloud services. When you have capabilities that are created by APIs that already exist, the community enables you to exploit them for other purposes.
The first step to creating a sustainable, usable internal community is to use a framework that has content, community and communications functionality. Developers should be able to easily publish their APIs, but also include relevant documentation and the ability for others to share information and resources that enhance the API. So, the structure is really important, and thought needs to be given to what your developers will be doing with the assets you will make available to them.
Additionally, the internal community should have the ability to provide assets and resources that encourage development, not hinder it. Consider these as important parts of your community:
- Consuming the APIs : Make it easy for developers to find internal services and APIs. The community should index discussions, documents, and published metadata. Results should be able to be filtered.
- Group support for security and community management: The ability to share API and service visibility with appropriate groups and develop communities of interest around particular areas.
- Establish governance procedures to ensure that the RIGHT APIs get published: Your developers don’t have a lot of time to do needless experimentation. Create guidelines so that contributors provide usable APIs and necessary documentation. Assets should be reusable and easy to work with.
- Governance: The APIs that are contributed should not be “projects”, but rather, should be reliable, secure, reusable pieces whose purpose is understood and made relevant to other community members.
Your community should be modeled on regular, open developer communities, and you should bring to it the same level of commitment that you would for third-party developers. It can act as something like a skunk works, but on a scale that allows for agile and continuous improvement, all in the name of demonstrable value. It is important to bring to your community the same level of engagement, enthusiasm and evangelism as you would to any developer efforts.
SOA Software recently unveiled Enterprise API Catalog to drive API Adoption inside the enterprise. The API catalog combines the collaborative, open practices of external API Portals with search, controlled visibility, selective provisioning, and integration with enterprise security that are required for internal development. This public-private fusion offers enterprises a refreshing and productive way to harness the potential of APIs for software reuse and business value creation.