Package org.wso2.am.monetization.api
Interface MoesifConnector
-
public interface MoesifConnectorHandles integration with Moesif APIs for product catalog, billing meters, and usage data.
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description List<Map<String,Object>>createBillingMeters(String organization, String env, String apiId, List<Map<String,Object>> plans, String billingProvider)Create billing meters for multiple API plansvoidcreateUser(Customer customer, String organization, String env)voiddeleteBillingMeters(String organization, String env, List<String> meterIds)Delete billing meters for an APIStringgetCollectorAppId(String organization)Map<String,String>getTotalRevenue(String apiIdentifier, List<MoesifPlanInfo> moesifPlanList, String usageFrom, String usageTo, String organization, String env)Retrieves total revenue aggregated for a given API.List<Map<String,Object>>provisionCommercialPlans(String organization, String env, List<Map<String,Object>> plans, String billingEngine, String action)Provision commercial plans and assigned pricesvoidsyncBillingUser(String billingCustomerId, String userEmail, String organization, String env)Sync a billing user to Moesif.
-
-
-
Method Detail
-
getTotalRevenue
Map<String,String> getTotalRevenue(String apiIdentifier, List<MoesifPlanInfo> moesifPlanList, String usageFrom, String usageTo, String organization, String env) throws MonetizationException
Retrieves total revenue aggregated for a given API.- Parameters:
apiIdentifier- Unique API identifier (UUID or name-version).moesifPlanList- List of Moesif plan informationusageFrom- Start date for usage periodusageTo- End date for usage periodorganization- Tenant organization.env- environment- Returns:
- Map containing total revenue and related metadata.
- Throws:
MonetizationException- if revenue retrieval fails
-
createUser
void createUser(Customer customer, String organization, String env) throws MonetizationException
- Parameters:
customer- customerorganization- organizationenv- environment- Throws:
MonetizationException- MonetizationException
-
syncBillingUser
void syncBillingUser(String billingCustomerId, String userEmail, String organization, String env) throws MonetizationException
Sync a billing user to Moesif.- Parameters:
billingCustomerId- billing customer ID (e.g., Stripe customer ID)userEmail- user email for Moesif user metadataorganization- organizationenv- environment- Throws:
MonetizationException- if sync fails
-
provisionCommercialPlans
List<Map<String,Object>> provisionCommercialPlans(String organization, String env, List<Map<String,Object>> plans, String billingEngine, String action) throws MonetizationException
Provision commercial plans and assigned prices- Parameters:
organization- organizationenv- environmentplans- list of plans to provisionbillingEngine- billing engine (stripe, etc)action- action to perform (add, update, delete)- Returns:
- updated list of plans with productId/priceId populated
- Throws:
MonetizationException- if provisioning fails
-
createBillingMeters
List<Map<String,Object>> createBillingMeters(String organization, String env, String apiId, List<Map<String,Object>> plans, String billingProvider) throws MonetizationException
Create billing meters for multiple API plans- Parameters:
organization- organizationenv- environmentapiId- API identifierplans- list of plans to create meters forbillingProvider- billing provider- Returns:
- list of plans with billingMeterId populated
- Throws:
MonetizationException- if meter creation fails
-
deleteBillingMeters
void deleteBillingMeters(String organization, String env, List<String> meterIds) throws MonetizationException
Delete billing meters for an API- Parameters:
organization- organizationenv- environmentmeterIds- list of meter IDs to delete- Throws:
MonetizationException- if meter deletion fails
-
-