Dan’s Data Notes — APIs

Daniel Fernandez
4 min readJun 17, 2020

--

Data is the lifeblood of a software application. Data has evolved in formats over time and so has where we store it. From relational to No SQL databases, streaming events, in-memory caches, and beyond handling all this data in a consistent way became increasingly complex. APIs are often referred to as an intermediary that allows applications to talk to each other and ultimately a solution to this problem, but much more than integration technology it’s the most efficient way to rapidly build and enhance software products in the digital age. In other words, if data is as vital as blood, APIs are as vital as the body’s circulatory system.

APIs as a driver for business growth

  • Improves time to Market: Having predictable data interfaces that can be re-purposed and that evolve over time to allow for the fast creation of new digital products. If used effectively they can also increase potential integration opportunities and channels.
  • Enables fast iterations: Having standardized ways to interact with data, it’s possible to remove a lot of the integration work previously needed. More importantly, it reduces the complexity of the integration code allowing for better and faster iterations in the future.
  • Potential for Monetization: According to a whitepaper by apigee and Google Cloud “The API Product Mindset” “In recent years, Salesforce has generated half its revenue through APIs. For eBay, the figure has been 60 percent — and for Expedia.com, an astonishing 90 percent.”

APIs should be handled like a product, not a one-time integration project

  • The need for a product life-cycle: Like any product, it’s important to manage an API’s complexity by understanding the minimum viable features. As the product evolves it’s even more important to closely track usage to develop enhancements and know which interfaces to deprecate.
  • The need for product evangelism: Whether internal or external, the needs of the users of an API need to be understood. The right resources such as documentation and software development kits need to be available and constantly enhanced to drive adoption. Being able to process feedback from these users is the key to building and extending the right functionality.
  • Earning a place in the boardroom: As stated earlier, there is substantial business potential for monetizing APIs. Changing the perspective of business executives from a cost center to a revenue generator changes the dynamics of budget allocation to maintain, and grow the API and the team behind it.

Implications for Analytics

  • Data Standardization: Any analytics effort is as good as the quality of the data it uses. Standardizing data interfaces can help improve data availability, traceability, and quality.
  • Historical Analysis: API versioning allows for better predictability when evaluating historical data. Developing features for analytics models can be tracked more efficiently when the data interfaces are transparent.
  • Accelerate Analytics Products: one of the overlooked advantages of analytics APIs is allowing the ability to build a service instead of having to build a full-fledged application. Multiple cloud services like translation, voice to text, and text analytics products are now available. Using and combining the outputs of these analytics APIs or creating your own and exposing it directly can accelerate your product development lifecycle.

Implications for Security

  • Confidentiality: By default, multiple architecture patterns of APIs have authentication and segregation of data at the core. The division of API interfaces by functionality and datasets allow for better segregation of data assets which significantly can help simplify the process of securing application data.
  • Integrity: One of the more time consuming and dangerous operations a developer has to write is database queries. They power the retrieval and writing of data for said application but building them, maintaining them, and extending them can be both complex and risky for the organization and the integrity of its data. Being able to interface with APIs application developers are able to avoid the pitfalls of having to refactor SQL queries and help transformation by eventually reducing legacy code.
  • Availability: An API allows for better scaling data resources to internal and external users. More importantly, if the right metrics exist it’s possible to track the resource utilization and log the data access at the same time.

Conclusion

Enterprises should be developing more APIs to help their businesses transform and quickly adapt to evolving business needs. Careful consideration of business value is needed when developing APIs and that’s why they should be considered a product and be managed like one. The long term effects of building APIs can also improve a firm’s ability to build analytics applications faster and secure data better.

--

--

Daniel Fernandez
Daniel Fernandez

Written by Daniel Fernandez

Product Manager in Infosec. Cybersecurity Graduate Student. https://linktr.ee/dnlfdz

No responses yet