Overview of Moesif

What is Moesif?

Moesif is an API analytics and monetization platform that helps product-led teams grow their API products.

At its core, Moesif is a data platform to track and meter customer usage. Use it to better understand your customers and the value they get from your APIs. Through Moesif’s workflow modules, you can set up usage-based billinga, quotas and governanceand behavioral emails in a few clicks.

What does Moesif support?

Moesif supports any API, REST, GraphQL, XML/SOAP, RPC, etc and can monitor both incoming API calls hitting your services and outgoing API calls to 3rd party services.

For non-API traffic, Moesif also supports custom metrics via our action tracking API.

Moesif has integrations with most API gateway vendors such as Kong and Amazon API Gateway as well as server middleware if you’re not using an off-the-shelf gateway solution. Both APIs hosted on-premises and in the cloud are supported along with serverless platforms such as AWS Lambda, Heroku, and Cloudflare Workers.

How does Moesif work?

Moesif is a fully managed SaaS service running on AWS and Azure. Use one of the server integrations for popular API gateways and frameworks to automatically monitor your API traffic. You can also leverage a client integration to track user behavior and website activity outside of your API which provides visibility into your end-to-end customer journey from a customer’s sign-up to making their first API call.

Diagram of Moesif Analytics and Monetization

Moesif data structure

Moesif tracks two types of events (API Calls and Actions) and three type of entities Users, Companies, and Subscriptions. A full diagram is below.

Moesif Data Model

API calls

Moesif monitors your API calls using one of the server SDKs or API gateways plugins. This enables you to inspect the payloads, understand latency timing, etc. You can append event metadata to API calls such as deployment id or API version.

Custom actions

Not every customers interactions happens over your APIs. Website visitors will view doc pages and sign in to your developer portal. In addition, there might be certain events that you may want to meter for usage-based billing that are outside of the API. This is where custom actions can be used. You can use a client integration such as moesif-browser-js or use the API directly to track custom events.

Users

A user is an individual person using your API and identified via your application-specific user_id. Users in Moesif can be associated with various properties like the user’s email, first and last name, employment title, and other person demographics.

You can enrich users in Moesif with any custom metadata via our API libs or use one of our extensions like Zapier, Salesforce, Hubspot, Clearbit, etc.

Companies

Companies in Moesif are a group of related users. If your business model includes B2B, you may be interested in tracking API usage at the company level in addition to the user level. You can decide to track users only, companies only, or track both users and companies depending on your business model. Companies in Moesif can track custom company properties such as company name, website domain, revenue, and other company demographics.

Subscriptions

If you decided to leverage the monetization features of Moesif, you can leverage this feature. A companies can be associated with one or more subscription. The subscription connects a customer record to product/service/plans.

Plans

Plans define a set of prices, currency, and billing cycle for a set of products/services. Some billing providers may call this “Products”.

Prices

Prices define the unit cost, currency, and for a single usage based metric or service. A plan may be associated with multiple prices. (Some billing providers may call prices addons).

An example of relationship between Plans and Prices this: For one plan, you may have a price for number API calls and a price for the size of data bandwidth used.

Billing Providers

Billing providers are services like Stripe, Chargebee, Recurly, or Custom Billing solution that process payment and manage the Subscription, Plans, and Prices. The Subscriptions, Plans and Prices objects can be synced with Moesif. As part of the API monetizations features, Moesif can report usage metrics to these billing providers.

Updated: