Guides
Pricing and Billing

API Monetization

10min

We see the emergence of data-as-a-service and even companies creating new revenue channels by exposing their APIs as-a-service to developers online.

As this motion becomes more prevalent, API monetization is the name of the game. Amberflo allows you to easily track API usage and interaction, and then build custom usage-based pricing plans to monetize these interactions in the most fair, transparent, and customer-friendly way.

Step 1 - Usage instrumenting the API

In this example, we will create a meter to track the number of records processed for a sample API called "AwesomeIntergationApi". The user calls the API to run integration jobs that process records from source to target.

We will create a meter called ApiCalls with the SUM aggregation.

When creating the meter, note that the checkbox for 'This Meter will be used for Billing' is selected. This automatically creates a Product Item that is linked to this meter which can be used for billing in the next step.



Document image


We will instrument the AwesomeIntergationApi code to send the meter records for the number of processed records and the number of API calls received for each job. Each meter record will have the customerId and the event timestamp.

The most efficient way to instrument the API is using an Amberflo SDK. Select the SDK in your language of choice and deploy it in your code where the events are being generated. For an example, see the screenshots below and our Python SDK here: https://amberflo.readme.io/recipes/python-sdk.

Document image


Step 2 - View and expose real-time usage to customers

We can view usage for each customer, and expose this data back to the customer by using the Ambeflo Customer Portal (hosted by Amberflo), or by embedding our UI components in your own customer-facing application.



Document image


An example of the Customer Portal view:

Document image


Step 3 - Create a usage-based pricing plan for the API

The next step is to create a pricing plan that will monetize usage of the API.

The product item attached to our meter 'API Calls' was automatically created in the step above. So now we only have to create a pricing plan and add this product item to it.

After creating the pricing plan called 'AwesomeIntegrationApi', select 'Add Product Item from the main plan view.

Choose the rate model - Amberflo supports a number of options depending on how you want to price and package the API calls. In this example, we will choose block pricing and set the rate at $5 per 1000 API calls. We will also include a free tier of 5000 API calls; this means that the customer won't start being billed until their 5001st API call each month.

Document image


From here, activate the pricing plan by selecting the toggle from the main plan view. Assign the plan to users (or configure a workflow that automatically assigns the plan when users sign up with your service). From the moment the customer is created, usage will begin being tracked and the real-time metered invoice will be generated and kept up-to-date.