Table of contents
Today, APIs are are opening up ventures for new business opportunities. With this trend, organizations are realizing the value of those shared data and services and are pushing to bill for those capabilities. In this process, it’s important to come up with the right monetization model that will generate maximum revenue via the published API. WSO2 API Cloud helps to build this monetization strategy in an effective manner.
Why Use API monetization?
API monetization allows publishers of APIs to put a value to their APIs listed on their API store by billing subscribers who consume those APIs. This is an important mechanism that allows APIs to generate revenue. API monetization models are generally categorized into the models explained below.
- Freemium model: Subscribers can access the APIs for free until a threshold is hit.
- Paid model: Subscribers pay for accessing the APIs.
- Free model: Subscribers access the APIs for free.
API monetization benefits are not just limited to been revenue generators, but also in terms of identifying the subscribers and subscriber API usage statistics, which will help the publisher to decide which APIs are in demand and which APIs will bring value to monetization.
How complicated is API monetization?
A typical API monetization process can be tedious with steps that will lead to
- Collecting and storing payment information
- Ensuring PCI compliance
- Creating subscription and billing workflows
- Integrating workflows with a statistics system
- Performing customer invoicing and self-service billing information access
- Implementing freemium models
- Providing usage and overage calculation
- Enabling alerts and notifications for expired credit cards, etc.
API monetization with WSO2 API Cloud
WSO2 API Cloud is an enterprise-ready, self-service platform that enables you to expose business capabilities as managed APIs and leverage off-the-shelf potential for advertising and selling business APIs. The API Cloud is based on WSO2 API Manager, WSO2's complete solution for designing and publishing APIs and managing a developer community. Following is the publisher flow on how API monetization is enabled and applied to APIs in the API Cloud.
Publisher - WSO2 API Cloud pricing plans
An API publisher first creates an account in WSO2 API Cloud and once the user selects the ‘Monetization’ option from the top menu, it will check the pricing plan the user has. To enable monetization, the publisher needs to have at least ‘getting traction’ or a higher plan from the list depicted in Figure 1.
This is the pricing plan that will be between WSO2 API Cloud and API publisher. For example, ‘Getting Traction’ plan starts off with $250 and allows 700,000 API calls per day; every 10000 calls afterward will cost $5. This is the cost billed for the API publisher to use the monetization feature in API Cloud. Moreover, if the publisher needs a customized pricing plan, this could also be achieved. Pricing plans can be found here1.
Once the publisher selects the above pricing plan, a billing account will be created for that particular tenant. This billing account will handle all the invoicing and payment details for the publisher.
Creating tiers with billing plans
Once the pricing plan is set up and monetization is enabled, the next step is to create/update a subscription tier to be applied to APIs. Gold, silver, and bronze tiers will be available by default in the admin dashboard shown in Figure 2.
If required, the publisher can update one of these existing tiers or he/she can create a new tier. This tier will specify the rate plans you want to include for your API invocations. Figure 3 is a sample screenshot of the fields available in a tier.
Under the ‘General Details’ section, the fields listed contain the following meanings:
- Name: Tier name
- Unit Time (Seconds): Number of unit time in seconds
- Request Count: Number of API calls allowed for a given unit time
- Description: A description about the tier
- Stop on Quote Reach: The API will be blocked once the above quota (request count/unit time) is reached
According to the above screenshot, since the Request Count is 100 and Unit Time is 6000, it will throttle the API if more than 100 API calls are made within 6000 seconds.
Assuming you created a new tier called ‘Platinum’ under the ‘Policy flags’ section, you need to select the billing plan as ‘Commercial’. By doing so, the publisher will be able to add the billing plan details as required to the newly created tier.
Publisher-subscriber billing plan
In order to add the billing plan information for the created tier, the publisher needs to click on the ‘Monetization’ option and select ‘Plans’ which will list down all the created tiers. This is where the publisher can initialize their billing options for subscribers.
Above ‘Platinum’ plan (Figure 4) will bill $100 each month from subscribers. The maximum daily usage value means that for the first 1000 API calls per day there will be no additional charges. However, for every proceeding overage unit limit (1000 API calls in this case) it will bill $5. These amounts will be charged from subscribers who will be calling the APIs that are included in the platinum tier.
It is important to note that the rate plan values added here need to be within the limit of the pricing plan the publisher selects. For example, if the ‘Getting Traction’ pricing plan was selected, the publisher needs to make sure that the ‘Max Daily Usage’ value is less than 700,000, which is the call limit of the ‘Getting Traction’ pricing plan. If this limit is overrated, the publisher will have to pay $5 for every 1000 API calls regardless of the revenue earned from billing the subscriber.
Apply the tier to APIs
The final step of monetization is to apply this created billing plan that is the newly created ‘Platinum’ tier to the APIs of the publisher’s choice. Here the publisher can apply a number of tiers to an API including commercial ones like ‘Platinum’ and free tiers such as ‘Gold’. Depending on the tiers you apply to the API, a label will be attached to them as follows:
- Free: API has only free tiers
- Paid: API has only commercial tiers
- Freemium: API has both free and commercial tiers
Monetization in action
Following is the subscriber flow when subscribing to APIs with commercial tiers after the monetization feature is enabled.
Once a subscriber logs into the API Store and subscribes to an API with a commercial tier (Platinum), he will be prompted with billing information as shown in Figure 5.
Once billing information is added and the user clicks on the ‘Proceed’ button, he will be directed to the ‘Contact Information’ page where the subscriber’s user details need to be included (Figure 6).
Once both these information pages are filled and you proceed, the user will be prompted with an ‘Order Summary’ as illustrated in Figure 7, and the subscribed user will receive an email to the above-mentioned email address (contact information) with the invoice details.
What more can subscribers do?
A subscriber can view various details ranging from payment and invoice details to pricing plans under ‘Account Summary’ and ‘Pricing’ tabs, which are available in the API Store (Figure 8).
Under ‘Account Summary’ following details can be viewed.
Under ‘Account Summary’ the user can toggle and view data under each section. For example, under ‘Payment Method’ the following information (Figure 9) can be viewed.
If you click on ‘Payment Methods’ it will list down currently used payment card details as shown in Figure 10. From ‘New Payment Method’ the user can add new payment cards and their details as well.
Under ‘Pricing’ tab, the user can view the pricing plans that are available with the commercial tiers as shown in Figure 11.
What more can publishers do?
Publisher users of API Cloud have the capability to view information regarding the subscribers who access their published APIs and also allows them to view statistics per API. The following section discusses these capabilities in detail.
Making smart decisions with API monetization
It is not just revenue that WSO2 API Cloud provides, but also statistical details that will be important in making billing decisions. From the admin dashboard, the publisher can view the subscribers of the APIs and also Subscriber API Usage details that will enable the publisher to make better decisions on which APIs will bring value with monetization (Figure 12).
Information on subscribers
Once you select monetization in the API Cloud account and select ‘Subscribers’ of the above view, it will list down all the subscribers who have subscribed to your published APIs.
From the subscribers list, the user can select the subscriber’s name and it will display the following information (Figure 14) regarding the selected subscriber.
Under ‘Account Summary’ it will display details such account name, balance, and when it was last invoiced (Figure 15).
Under ‘Account Type’ the publisher has the option to make a specific ‘subscriber’ account be a complementary account, which allows that subscriber to access all the APIs for free (Figure 16). This option is useful if you only need to bill subscribers who are not from your organization.
Under ‘Subscription Information’ it will list down the APIs the subscriber has accessed and details regarding those APIs.
Finally, the ‘Invoices’ and ‘Payments’ section will provide information regarding the invoices and payments made by that subscriber (Figures 17 and 18). Under ‘Invoices’ list, the user can further look into details of each invoice.
In the API Cloud account of the publisher user, statistical information can be reviewed by going to API Cloud -> Statistics (Figure 19).
Once you go to ‘Statistics’ view, you can filter based on subscriber name, subscribed API, and application, respectively. You could also select the time period (day/month/year) to filter the statistics from the right top options (Figure 20).
Now that you have gained a good understanding on API monetization with WSO2 API Cloud, you could follow the steps described here2 to enable the API monetization feature.
This article discussed the importance of API monetization to unlock value on your data and described how you can achieve this with WSO2 API Cloud. Regardless of the value of monetization, it discussed the complexity of the process and how you can easily address it with the WSO2 API Cloud API monetization feature.