Data sharing is a hot topic. Multiple analysts and consultancies have been featuring data sharing as one of the key enablers to successful business partnerships and accelerated growth. Both Gartner and McKinsey have good articles; indeed, Gartner boldly claims that “data and analytics leaders who share data externally generate three times more measurable economic benefit than those who do not.”
Many organizations are either not sharing data because of cultural issues, technical hurdles, or simply the fear of doing something wrong. They are missing out on opportunities to get ahead of their competition and strengthen their bonds both within and beyond company walls.
APIs (application programming interfaces) are a modern and secure approach to data sharing, and the API market is expected to grow 28% YoY (that’s fast).
Are You Sharing Your Data?
If so, here are 12 reasons why APIs might be for you. Some are user-centric, others developer-centric:
1. Data is live and on-demand: No more waiting for the next file, which is out of date immediately, or contacting the provider to send again. With an API you can go get the data, whenever you need. You, the consumer, are in control, and the provider wins too – with better engaged and happier clients.
2. Users can get data they want, not just what’s sent: Different users often want different cuts of the data. With an API you can serve many customers with a single API, using either permissions or parameters to dictate what they get back. A simple example would be your bank statements, which you typically want per month, but sometimes you might want a whole year.
3. Data can easily be served in different formats: Some users may want data in a tabular CSV output, while others might want nested values, such as data in XML or JSON. Large datasets can be served as compressed ZIP formats. With an API you can keep your consumers happy by providing them flexibility.
4. An API can be versioned as it matures: When your data adds a new field or changes output shape, or you need to change the way it’s accessed, you can version an API. This is normal and natural, and indeed there are well-trodden paths for doing this, for instance: /v1/api and /v2/api, document them both and then give your users time to upgrade before removing v1.
5. Both users and computers can consume APIs easily: APIs are all about automation, i.e., computer-to-computer interaction, however, it’s simple to use for a human too; either from a link in a web browser, a web form, or inside an Excel spreadsheet with PowerQuery. All the business intelligence tools can read data from APIs too.
6. Standards for APIs give interoperability and tooling options: Fortunately, there are some great standards and support from a large ecosystem of tools. Whether you are using REST API, GraphQL API, or another type, you can use many tools and share details about APIs easily. Standards are your friend – they help you learn from others and reuse prior code and best practice techniques.
7. Avoid managing messy files: Creating hundreds or thousands of data files? Lost in a file system or run out of space (and paying for file storage!)? Using aging file transfer software? And teams to manage the operations of them? Stop the file culture and convert to API delivery. Remove the hassle and most of the cost too.
8. API access is easily measured, metered, and audited: You can know exactly who is reading your APIs, when, how, and where from. You have granular control over who gets what content and can measure how much data was returned. You can even create access windows, metered access or whatever model suits your business.
9. An API can reflect your business: A well-designed API can represent real-world things in your business: orders, invoices, products, sales, or anything else that makes sense. Want sales per client? Create an API for that. The API-first approach (e.g., designing the interface up-front) can help to define or align with a model of your business.
10. APIs are database-independent: Sharing data via a SQL connection? You’re locked in already. In addition to having to know SQL to access the data, every database vendor is using a different variation of SQL, so the more you use a “database-centric” sharing technique, the harder it will be to change later. APIs are open and standards-based, and their use is not tied to a vendor.
11. An API is a contract: APIs are defined interfaces, with behaviors and documented responses. They set out the terms via which two parties can communicate electronically. Hence, there should be no surprises via a well-designed API. Fewer operational problems mean greater business productivity.
12. APIs are testable: Testing on both sides of a data contract is important within partner ecosystems. Having an API between groups enables both sides to test using the API specification, build automated tests, develop using test-drive development techniques, and run DataOps (DevOps for data), which means greater automation, faster delivery, and ultimately better quality.
How many of these reasons resonated with you?