Finding the information
Although that’s a bit of a challenge, finding that information. I found it when I was looking through the data that the Dutch Department of Motor Vehicles (RDW) offers. They have a database of vehicles with a license in the Netherlands. Using the license plate number, you can get information about a vehicle like brand and model. This is already a business model for the RDW since they offer a paid service to customers who want to retrieve that information using an API. For the end consumer, they offer a form on their website where you can simply type the license plate and retrieve the information about the car. This includes information about brand, model, when the registration was done, if it is stolen and if the last known mileage on the odometer is logical. So, there is information that would be of value to prospective car buyers to know what they’re buying. This database is updated every day and can simply be downloaded as open data, for instance as a CSV file. This is however a database with 16 million+ records and almost 7.5 GB download.
What do you need?
What do you need when you want to make an API out of this collection of vehicle data? There are multiple ways to do this but really the simplest way is to put the CSV file in a database, create some keys and indexes on that and simply make an API interface. This API interface can be created for instance by using ballerina the new programming language from WSO2 or using the WSO2 Enterprise Integrator’s data services functionality. I don’t want to go into much details, but you can believe me when I say that this is actually quite simple. We now have information that people might want to pay for, we created an API that allows us to retrieve information from the database only what it’s missing the functionality that will make sure that only those people who pay get access to database and then also for the number of invocations they paid for. API business models are often low price-high volume setups where you pay for that say 10,000 invocations per month. In the next paragraph, I will focus on what happens when APIs become business models.
Managed APIs
When an API becomes a business model, the world changes a bit. Since people are paying for it they demand availability, SLA’s and correct and up-to-date information to name but a few. This functionality is offered by the WSO2 API manager, rated by Forrester as a leader, out-of-the-box. Making sure the data is up to date is a task that lies outside of the API Manager since the data comes from a third-party provider but it is your task to load the updates into the system. The only thing that is really missing is the connection to the payment provider but all the other elements like aggregation of the number of invocations per user, monitoring and throttling are supported by default. An experienced WSO2 consultant can set up a simple proof of concept in a day or so. This, of course, excludes making the connection to the payment provider. But the downloading of the data, loading it into the database, enabling the API to access the data and making that API available as a managed API, is included in the WSO2 API manager.
What is holding you back?
The purpose of this article is to show you that creating APIs doesn’t have to be rocket science. Using this simple example, we created an API (on paper, I know) that can be made available to your users. The magic of course is done using the products from WSO2 like the API Manager. If you’re not sure if you’re current API manager is up for the task, you can take a look at our API Manager selection guides that will help you select a future proof and agile solution.
{{cta(‘32316960-e9a3-4fd2-b463-9b158e3f4ff4’)}}