Individual APIs this provider publishes, each with its own machine-readable definition.
Endpoints for Account related operations such as creation, update, list and delete. An Account represents one of your end-customer accounts. Accounts do not belong to a Product ...
Endpoints for AccountPlan and AccountPlanGroup related operations such as creation, update, list and delete. **AccountPlans** An Account represents one of your end-customer acco...
Endpoints for listing, creating, updating, retrieving, or deleting Aggregations. An Aggregation links to a Meter and targets a Data Field or Derived Field on the Meter. You defi...
Endpoint for retrieving a JSON Web Token (JWT) bearer token for a ServiceUser using the Client Credentials Grant flow. A ServiceUser represents the automated process you want to...
Endpoints for creating/updating/deleting BalanceChargeSchedules. **NOTE!** The BalanceChargeSchedule feature is available in Beta release version. See [Feature Release Stages](h...
Endpoints for creating/retrieving/updating/deleting Balances on Accounts. When you have created a Balance for an Account, you can create a positive or negative Transaction amoun...
Endpoints for creating/updating/deleting BalanceTransactionSchedules. **NOTE!** The BalanceTransactionSchedule feature is available in Beta release version. See [Feature Release...
Endpoints for billing operations such as creating, updating, listing,downloading, and deleting Bills. Bills are generated for an Account, and are calculated in accordance with t...
Endpoints for updating and retreiving the Bill Configuration for an Organization. The Organization represents your company as a direct customer of the m3ter service. You can use...
Endpoints for Bill Grouping Key operations such as creation, update, list, and delete. Bill Grouping Keys are stored for your Organization, and you can use them to control billi...
Endpoints for creating, retrieving, listing, and cancelling Bill Jobs. Bill Jobs are critical components in billing management, providing asynchronous mechanisms to calculate an...
Endpoints for creating/updating/deleting Charges. Create Charges for your end-customer Accounts to create ad-hoc line items for Account billing. Charges are: * Created for eithe...
Endpoints that manage Commitments *(also known as Prepayments)* in the context of usage-based pricing and billing. A Commitment represents an agreement where the end-customer ha...
Endpoints for Compound Aggregation related operations such as creation, update, list and delete. Use Compound Aggregations to create numerical measures from usage data by applyi...
Endpoints for Contract related operations such as creation, update, list and delete. Contracts are created for Accounts, which are your end-user customers. Contracts can be used...
Endpoints for listing, creating, retrieving, updating, or deleting Counters. You can create Counters for your m3ter Organization, which can then be used as pricing metrics to ap...
Endpoints for listing, creating, updating, retrieving, or deleting CounterAdjustments. If you attach a Plan to an Account which is priced using a Counter to apply unit-based pri...
Endpoints for listing, creating, updating, retrieving, or deleting CounterPricing. Create the CounterPricing for a Plan/PlanTemplate using a Counter, and define a unit-based pri...
Endpoints for CreditReason operations such as creation, update, list, and delete. You can create CreditReasons for your Organization, and then use them when creating a credit li...
Endpoints for Credit line item related operations such as creation, update, list and delete. These are line items on Bills that are specifically related to Credits. You use the ...
Endpoints for Currency operations such as creation, update, list, and delete. Currencies are stored for your Organization, and can then be used to specify currencies on various ...
Endpoints for retrieving and updating Custom Fields at the Organization level for all entities that support them. Custom Fields in m3ter allow you to store custom data in the fo...
Endpoints for querying the Data Explorer and saving query selections. The Data Explorer is a m3ter analytics tool, enabling you to query the Usage, Billing, and Prepayments data...
Endpoints for querying and filtering Usage data collected for your Organization. **IMPORTANT: Request Rate Limits for Data Explorer v2!** As part of the Config API, requests mad...
Endpoints for DebitReason operations such as creation, update, list, and delete. You can create DebitReasons for your Organization, and then use them when creating a debit line ...
Endpoints for Debit line item related operations such as creation, update, list and delete. These are line items on Bills that are specifically related to Debits. You use the De...
This section provides Endpoints for operations that allow you to retrieve detailed information about individual Events, list all Events or specific Event Types, and explore dyna...
Endpoints for triggering one-off, ad-hoc Data Exports. You can set up and run ad-hoc Exports to export two kinds of data from your m3ter Organization: * Usage data. * Operationa...
Endpoints for creating, updating, retrieving, or deleting Data Export Destinations. Before you can configure and run either [Export Schedules](https://www.m3ter.com/docs/api#tag...
Endpoints for retrieving/querying Data Export jobs. **Preview Version!** The Data Export feature is currently available only in Preview release version. See [Feature Release Sta...
Endpoints for creating, updating, retrieving, or deleting Data Export schedules. You can set up an Export Schedule to export one of two types of data from your m3ter Organizatio...
Endpoints for managing External Mapping related operations such as creation, update, list and delete. When you integrate your 3rd-party systems with the m3ter platform, a mappin...
A suite of endpoints for configuring and managing third party integrations within the m3ter platform. The integration endpoints in this section facilitate various operations suc...
Endpoints for creating and retrieving user invitations. Use invitations to invite other people to join your m3ter Organization. An invitation sends an email inviting someone to ...
Endpoint for retrieving a list of line items for Bills in an Organization.
Endpoints for creating/updating/deleting Lookup Tables. Lookup Tables enable you to manage dynamic data mappings that your calculations reference. Use them for currency conversi...
Endpoints for creating/updating/deleting Lookup Table Revisions. Lookup Tables utilize a "Table and Revision" model, which lets you update data cleanly, and extend the schema wi...
Endpoints for creating/updating/deleting Data for specific Lookup Table Revisions. When you've added fields to create a data schema for a Lookup Table Revision, you can use upse...
Endpoints for retrieving reporting data on Marketplace Integration runs
Endpoints for submitting usage data measurements to the m3ter platform: - **Directly:** You can use the **Submit Measurements** call to submit raw data measurements directly usi...
Endpoints for listing, creating, updating, retrieving, or deleting Meters. Use Meters to submit usage data for the consumption of your products and services by end customers. Th...
This section provides endpoints for managing Event Notifications. You can create Notifications based on system Events generated by the platform. When you base a Notification on ...
Endpoints for retrieving or updating the Organization Config. Organization represents your company as a direct customer of m3ter. Use Organization configuration to define *Organ...
This section contains the endpoints for managing users within an Organization *(OrgUsers)*. These endpoints allow you to retrieve, update, and analyze user data, as well as thei...
Endpoints for Permission Policy related operations such as creation, update, add and retrieve. Permission Policies can restrict or grant access to specific resources for both Us...
Endpoints for listing, creating, updating, retrieving, or deleting Plans. A Plan is based on a PlanTemplate and represents a specific pricing plan for one of your products or se...
Endpoints for PlanGroup related operations such as creation, update, retrieve, list and delete. PlanGroups are constructs that group multiple plans together. This enables a unif...
Endpoints for PlanGroupLink related operations such as creation, update, list and delete. PlanGroupLinks are the intersection table between a PlanGroup and its associated Plans....
Endpoints for listing, creating, updating, retrieving, or deleting PlanTemplates. Use PlanTemplates to define default values for Plans. These default values control the billing ...
Endpoints for listing, creating, updating, retrieving, or deleting Pricing. Create the Pricing for a Plan/PlanTemplate with usage data Aggregations, and define a usage-based pri...
Endpoints for listing, creating, updating, retrieving, or deleting Products. A Product represents the products and services you offer to your end customers. Products act as a co...
Endpoints for ResourceGroup related operations such as creation, update, list and delete. ResourceGroups are used in the context of Permission Policies, which controls what a Us...
Endpoints for retrieving and managing scheduled Events' configurations. Scheduled Event Configurations define custom Event types that reference Date/Time fields belonging to con...
Endpoints for listing, creating, updating, retrieving, or deleting Statement Definitions. Bill statements are informative backing sheets to invoices. They provide a breakdown of...
Endpoints for creating, retrieving, listing, and cancelling statement jobs. StatementJobs are tasks to asynchronously calculate and generate a bill statement. Bill statements ar...
Endpoints for requesting support and managing m3ter Support users. For troubleshooting purposes, you can grant m3ter Support access to your Organization. m3ter Support only has ...
Endpoints for TransactionType operations such as creation, update, list, retrieve, and delete. You can create TransactionTypes for your Organization, which can then be used when...
Endpoints for creating/updating Users
Open, tool-agnostic API collections (OpenAPI-derived and Bruno).
Published pricing tiers and plan structures.
Documented rate limits and quota policies.
Cost, billing, and metering signals for API financial operations.
Authentication, domain security, vulnerability disclosure, and trust-center signals.
OAuth scopes governing access to this provider's APIs.
Recommended x-agentic-access execution contracts for AI agents.
aid: m3ter
name: M3ter
description: 'm3ter is a usage-based billing and metering engine providing real-time usage data ingestion, pricing logic,
and billing automation for API and SaaS products. The m3ter platform exposes two HTTP-based REST APIs returning JSON responses:
an Ingest API for submitting raw usage measurements and a Config API for configuration and billing management. Authentication
uses OAuth 2.0 Client Credentials with a Service User Access Key id and Api Secret exchanged for a Bearer Token at https://api.m3ter.com/oauth/token.'
type: Index
accessModel:
pricing: freemium
onboarding: self-serve
trial: false
try_now: true
public: false
label: Freemium · Self-serve signup
confidence: high
source:
- plans
- authentication
generated: '2026-07-22'
method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/m3ter.png
tags:
- FinOps
- Usage-Based Billing
- Metering
- Billing
- Pricing
- SaaS
url: https://raw.githubusercontent.com/api-evangelist/m3ter/refs/heads/main/apis.yml
created: '2026-03-27'
modified: '2026-05-19'
specificationVersion: '0.19'
apis:
- aid: m3ter:m3ter-account-api
name: M3ter Account API
description: "Endpoints for Account related operations such as creation, update, list and delete. \nAn Account represents\
\ one of your end-customer accounts. \n\nAccounts do not belong to a Product to allow for cases where an end customer\
\ takes more than one of your Products, and the charges for these Products differ.\n\nYou typically attach a priced Plan\
\ or Plan Template to an Account before you can generate bills for the Account:\n- If a customer consumes several of your\
\ Products, you can attach a priced Plan or Plan Template to the Account for charging against each Product.\n- If an Account\
\ is charged solely on the basis of an agreed Prepayment/Commitment amount but not all of the Prepayment is prepaid, you\
\ can use a customized billing schedule for outstanding fees without having to attach a Plan to the Account to generate\
\ Bills.\n\nYou can create Child Accounts for end customers who hold multiple Accounts with you. You can then set up billing\
\ for the Parent/Child Account usage to have the end-customer billed once for the Parent Account, instead of having separate\
\ bills issued for usage against each of their multiple Accounts.\n\n**IMPORTANT! - use of PII:** The use of any of your\
\ end-customers' Personally Identifiable Information (PII) in m3ter is restricted to a few fields on the **Account** entity.\
\ Please ensure that only the ``name``, ``address``, or ``emailAddress`` fields contain any end-customer PII data on any\
\ Accounts you create. See the [Introduction section](https://www.m3ter.com/docs/api#section/Introduction) above for more\
\ details."
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- Account
properties:
- type: OpenAPI
url: openapi/m3ter-account-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-accountplan-api
name: M3ter AccountPlan API
description: "Endpoints for AccountPlan and AccountPlanGroup related operations such as creation, update, list and delete.\
\ \n\n**AccountPlans**\nAn Account represents one of your end-customer accounts. To create an AccountPlan, you attach\
\ a Product Plan to an Account. The AccountPlan then determines the charges incurred at billing by your end customer for\
\ consuming the Product the Plan is for:\n* **AccountPlan Active/Inactive**. Set start and end dates to define the period\
\ the AccountPlan is active for the Account.\n* **AccountPlan per Product**. If an end customer consumes multiple Products,\
\ create separate AccountPlans to charge for each Product.\n\n**AccountPlan Constraints:**\n* Only one AccountPlan per\
\ Product can be active at any one time for an Account.\n* If you create a Plan as a custom Plan for a specific Account,\
\ you can only use it to create an AccountPlan for that Account.\n\n**AccountPlanGroups**\nPlan Groups are used when you\
\ want to apply a minimum spend amount at billing across several of your Products each of which are priced separately\
\ - when you create the Plan Group, you define an overall minimum spend and then add any priced Plans you want to include\
\ in the Group. To create an AccounPlanGroup, you can attach a Plan Group to an Account that consumes the separate Products\
\ which are priced using the included Plans. At billing, the minimum spend you've defined for the Plan Group is applied:\n\
* **Active AccountPlanGroup**. Set the start and end dates to define the period for which the Plan Group will be active\
\ for the Account.\n\n**Plan Group Notes:**\n* You can only add *one Plan for the same Product* to a Plan Group. See the\
\ [Plan Group](https://www.m3ter.com/docs/api#tag/PlanGroup) in this API Reference for more details on creating Plan Groups.\n\
* You can create a *custom Plan Group* for an Account, which means the Plan Group can only be attached to that Account\
\ to create an AccountPlanGroup.\n\n**AcountPlanGroup - Notes and Constraints:**\n* **AccountPlanGroup is type of AccountPlan**\
\ When you attach a Plan Group to an Account, this creates an AccountPlanGroup. However, the m3ter data model *does not\
\ support a separate AccountPlanGroup entity*, and an AccountPlanGroup is a type of AccountPlan where a `planGroupId`\
\ is used instead of a `planId` when it's created. See the [Create AccountPlan](https://www.m3ter.com/docs/api#tag/AccountPlan/operation/PostAccountPlan)\
\ call in this section and [Attaching Plan Groups to an Account](https://www.m3ter.com/docs/guides/end-customer-accounts/attaching-plan-groups-to-an-account)\
\ in our main User Documentation.\n* **Multiple AccountPlan Groups:** You can attach more than one Plan Group to an Account\
\ to create multiple AccountPlanGroups, but the rule that *only one attached Plan per Product can be active at any one\
\ time for an Account* is preserved:\n\t* Multiple attached Plan Groups on an Account can have overlapping dates only\
\ if none of the Plan Groups contain a Plan belonging to the same Product. If you try to attach a Plan Group to an Account\
\ with Plan Groups already attached and:\n\t\t* The new Plan Group contains a Product Plan that also belongs to a Plan\
\ Group already attached to the Account.\n\t\t* The dates for these \"matched Plan\" Plan Groups being active for the\
\ Account would overlap.\n\t\t* Then you'll receive an error and the attachment will be blocked."
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- AccountPlan
properties:
- type: OpenAPI
url: openapi/m3ter-accountplan-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-aggregation-api
name: M3ter Aggregation API
description: "Endpoints for listing, creating, updating, retrieving, or deleting Aggregations.\n\nAn Aggregation links to\
\ a Meter and targets a Data Field or Derived Field on the Meter. You define the method of aggregation used to convert\
\ the usage data collected by the targeted Meter field into a numerical unit of measurement. \n\nYou can then use the\
\ unit of measurement an Aggregation yields as a metric for pricing Product Plans and apply usage-based pricing to your\
\ products and services. You might also want to aggregate raw data measures for other purposes, such as to feed into analytical\
\ or business performance tools.\n\n**Notes:**\n* **Contrast with Compound Aggregations**. Standard or simple Aggregations\
\ of this type, which apply an aggregation method directly to Meter usage data fields, are contrasted with [Compound Aggregations](https://www.m3ter.com/docs/api#tag/CompoundAggregation).\
\ A Compound Aggregation typically references one or more simple Aggregations and applies a calculation to them to derive\
\ pricing metrics needed to serve more complex usage-based pricing scenarios.\n* **Segmented Aggregations**. Segmented\
\ Aggregations allow you to segment the usage data collected by a single Meter. This capability is very useful for implementing\
\ some pricing and billing use cases. See [Segmented Aggregations](https://www.m3ter.com/docs/guides/usage-data-aggregations/segmented-aggregations)\
\ in our main documentation for more details."
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- Aggregation
properties:
- type: OpenAPI
url: openapi/m3ter-aggregation-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-auth-api
name: M3ter Auth API
description: "Endpoint for retrieving a JSON Web Token (JWT) bearer token for a ServiceUser using the Client Credentials\
\ Grant flow. \n\nA ServiceUser represents the automated process you want to grant access to your Organization - that\
\ is, as an API user."
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- Auth
properties:
- type: OpenAPI
url: openapi/m3ter-auth-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-balancechargeschedule-api
name: M3ter BalanceChargeSchedule API
description: 'Endpoints for creating/updating/deleting BalanceChargeSchedules.
**NOTE!** The BalanceChargeSchedule feature is available in Beta release version. See [Feature Release Stages](https://www.m3ter.com/docs/guides/getting-started/feature-release-stages)
for Beta release definition.'
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- BalanceChargeSchedule
properties:
- type: OpenAPI
url: openapi/m3ter-balancechargeschedule-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-balances-api
name: M3ter Balances API
description: "Endpoints for creating/retrieving/updating/deleting Balances on Accounts.\n\nWhen you have created a Balance\
\ for an Account, you can create a positive or negative Transaction amounts for the Balance. To do this, you must first\
\ define Transaction Types for your Organization, and then use one of these Transaction Types when you add a specific\
\ Transaction to a Balance - see the [Create TransactionType](https://www.m3ter.com/docs/api#tag/TransactionType/operation/CreateTransactionType)\
\ call in the Transaction Type section in this API Reference for more details.\n\nBalances are typically used when a customer\
\ prepays an amount to add a credit to their Account, which can then be draw-down against charges due for product or service\
\ consumption. You can include options to top-up the original Balance.\n\nExamples of how Balances for end customer Accounts\
\ can be used:\n\n* Onboarding Balance/Free Trials. Offering an onboarding incentive to new customers as an initial free\
\ credit Balance on their Account. \n\n* Balance as initial commitment. Add a Balance amount to a new customer Account.\
\ This acts as an initial commitment, which allows them to use the service and gain an accurate insight into their usage\
\ level. \n\n* Managing Customer Satisfaction. Use Balance as credits that will be applied to subsequent Bills as compensation\
\ for acknowledged service delivery issues.\n\n* Facilitating Balance Adjustments:\n\t* Apply negative amounts to immediately\
\ write-off outstanding Balances.\n\n#### What is the difference between Balances and Commitments/Prepayments?\n\nTo manage\
\ credit amounts for your end-customer Accounts, you can use Balances or Commitments/Prepayments. However, these two kinds\
\ of credits for Accounts serve different purposes.\n\nCommitments - also referred to as Prepayments - are used for amounts\
\ end-customers have agreed to pay for consuming your product or services across a full contract term. A customer might\
\ pay the entire or only part of the agreed amount upfront, but ***the commitment or prepayment amount is payable regardless\
\ of the actual usage by the customer of your service or product.***\n\nIn contrast, a Balance - often referred to as\
\ a Top-Up or Prepaid draw-down - is used when a customer wants to add a credit amount to their Account at any time during\
\ the service period or when you as service provider want to add a credit to a customer Account. This Balance credit can\
\ then be drawn-down against for billing the Account for usage, minimum spend, standing charges, or recurring charges\
\ due. Balances therefore serve payment use cases in a more flexible way, for example to be used for a \"Free Credit\"\
\ sign-up scheme you offer to encourage sales or to enhance customer satisfaction by adding credit to an Account to compensate\
\ for service delivery issues.\n\nYou can use Commitments/Prepayments and Balances together on Account, and define at\
\ Organization or individual Account level the order in which any Balance/Commitment credit on an Account is drawn-down\
\ - Balance amounts first or Commitment/Prepayment amounts first."
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- Balances
properties:
- type: OpenAPI
url: openapi/m3ter-balances-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-balancetransactionschedule-api
name: M3ter BalanceTransactionSchedule API
description: 'Endpoints for creating/updating/deleting BalanceTransactionSchedules.
**NOTE!** The BalanceTransactionSchedule feature is available in Beta release version. See [Feature Release Stages](https://www.m3ter.com/docs/guides/getting-started/feature-release-stages)
for Beta release definition.'
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- BalanceTransactionSchedule
properties:
- type: OpenAPI
url: openapi/m3ter-balancetransactionschedule-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-bill-api
name: M3ter Bill API
description: 'Endpoints for billing operations such as creating, updating, listing,downloading, and deleting Bills.
Bills are generated for an Account, and are calculated in accordance with the usage-based pricing Plans applied for the
Products the Account consumes. These endpoints enable interaction with the billing system, allowing you to obtain billing
details and insights into the consumption patterns and charges of your end-customer Accounts.'
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- Bill
properties:
- type: OpenAPI
url: openapi/m3ter-bill-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-billconfig-api
name: M3ter BillConfig API
description: "Endpoints for updating and retreiving the Bill Configuration for an Organization. \nThe Organization represents\
\ your company as a direct customer of the m3ter service.\n\nYou can use the **Update BillConfig** endpoint to set a global\
\ lock date for **all** Bills - any Bill with a service period end date on or before the set date will be locked and cannot\
\ be updated.\n\n**Warning: Ensure all Bills are Approved!** If you try to set a global lock date when there remains Bills\
\ in a *Pending* state whose service period end date is on or before the specified lock date, then you'll receive an error."
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- BillConfig
properties:
- type: OpenAPI
url: openapi/m3ter-billconfig-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-billgroupingkey-api
name: M3ter BillGroupingKey API
description: 'Endpoints for Bill Grouping Key operations such as creation, update, list, and delete.
Bill Grouping Keys are stored for your Organization, and you can use them to control billing operations. For example,
use Bill Grouping Keys to control how Bills for Contracts linked to an Account are generated:
* Have charges linked to an Account Contract billed exclusively on a separate Bill.
* Have charges linked to multiple Account Contracts billed collectively on a single Bill.'
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- BillGroupingKey
properties:
- type: OpenAPI
url: openapi/m3ter-billgroupingkey-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-billjob-api
name: M3ter BillJob API
description: 'Endpoints for creating, retrieving, listing, and cancelling Bill Jobs.
Bill Jobs are critical components in billing management, providing asynchronous mechanisms to calculate and handle bills.
Bill Jobs give you the flexibiity to run Bills manually for Accounts to suit different billing management purposes. For
example, some historical usage data has come in for an Account and you want to run a Bill for a specific date on that
Account to check that the Bill is showing correctly for the charges due on the new usage data.'
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- BillJob
properties:
- type: OpenAPI
url: openapi/m3ter-billjob-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-charge-api
name: M3ter Charge API
description: 'Endpoints for creating/updating/deleting Charges.
Create Charges for your end-customer Accounts to create ad-hoc line items for Account billing. Charges are:
* Created for either debit or credit amounts.
* Linked to a Product for accounting purposes.
* Optionally linked to a Contract.
* Given a specific date for billing. When a bill job has run for the specified Charge bill date, a Charge appears as an
Ad-hoc line item on the Bill.
* Assigned a service period.
* Available in any currency defined for your Organization.
See [Creating Charges for Accounts](https://www.m3ter.com/docs/guides/end-customer-accounts/creating-charges-for-accounts)
in our main user documentation for more details.
Alternatively, you can create a Charge for a Balance on an end-customer Account to create balance fee line items for Account
billing. See [Creating Charges for Balances](https://www.m3ter.com/docs/guides/end-customer-accounts/creating-balances-for-accounts/creating-charges-for-balances)
in our main user documentation for more details.'
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- Charge
properties:
- type: OpenAPI
url: openapi/m3ter-charge-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-commitments-api
name: M3ter Commitments API
description: "Endpoints that manage Commitments *(also known as Prepayments)* in the context of usage-based pricing and\
\ billing. A Commitment represents an agreement where the end-customer has agreed to pay a fixed minimum amount throughout\
\ the contract period. ***The commitment amount is payable regardless of the actual usage by the customer of your service\
\ or product.***\n\nThese endpoints enable the creation, updating, retrieval, and deletion of Commitments. Use them to\
\ manage your customer's Commitments and ensure optimal revenue recognition:\n* Specify which type of charges can draw-down\
\ against a Commitment amount on an Account at billing: usage, minimum spend, standing charges, or recurring charges.\n\
* Define overage surcharge percentages, which are applied when the usage charges exceed the agreed Commitment amount within\
\ the contract duration.\n\n#### What is the difference between Balances and Commitments/Prepayments?\n\nTo manage credit\
\ amounts for your end-customer Accounts, you can use Balances or Commitments/Prepayments. However, these two kinds of\
\ credits for Accounts serve different purposes.\n\nCommitments/Prepayments are used for amounts end-customers have agreed\
\ to pay for consuming your product or services across a full contract term. A customer might pay the entire or only part\
\ of the agreed amount upfront, but ***the prepayment amount is payable regardless of the actual usage by the customer\
\ of your service or product.***\n\nIn contrast, a Balance - often referred to as a Top-Up or Prepaid draw-down - is used\
\ when a customer wants to add a credit amount to their Account at any time during the service period or when you as service\
\ provider want to add a credit to a customer Account. This Balance credit can then be drawn-down against for billing\
\ the Account for usage, minimum spend, standing charges, or recurring charges due. Balances therefore serve payment use\
\ cases in a more flexible way, for example to be used for a \"Free Credit\" sign-up scheme you offer to encourage sales\
\ or to enhance customer satisfaction by adding credit to an Account to compensate for service delivery issues.\n\nYou\
\ can use Prepayments/Commitments and Balances together on Account, and define at Organization or individual Account level\
\ the order in which any Balance/Prepayment credit on an Account is drawn-down - Balance amounts first or Prepayment amounts\
\ first.\n\n#### Billing for Commitments \n\nIf not all of an agreed Commitment amount is paid at the start of an end-customer\
\ contract period, you can choose one of two options for billing the outstanding fees due on the customer Account:\n-\
\ Select a Product *Plan to bill with*.\n- Define a *schedule of billing dates*."
humanURL: https://www.m3ter.com/
baseURL: https://api.m3ter.com
tags:
- Commitments
properties:
- type: OpenAPI
url: openapi/m3ter-commitments-api-openapi.yml
- type: Documentation
url: https://docs.m3ter.com/
- type: APIReference
url: https://docs.m3ter.com/api
- type: Authentication
url: https://docs.m3ter.com/api/authentication
- type: GettingStarted
url: https://www.m3ter.com/docs/guides/m3ter-apis/getting-started-with-api-calls
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-python
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-node
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-java
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-go
- type: SDKs
url: https://github.com/m3ter-com/m3ter-sdk-typescript
- type: TerraformProvider
url: https://github.com/m3ter-com/terraform-provider-m3ter
- aid: m3ter:m3ter-compoundaggregation-api
name: M3ter CompoundAggregation API
description: "Endpoints for Compound Aggregation related operations such as creation, update, list and delete.\n\nUse Compound\
\ Aggregations to create numerical measures from usage data by applying a calculation to one or more simple Aggregations\
\ or Custom Fields. These numerical measures can then be used as pricing metrics to price your Product Plans, enabling\
\ you to implement a wide range of usage-based pricing use cases.\n\nYou can create two types of Compound Aggregation:\n\
\n**Global**\n- Pricing: Not tied to any specific product and can be used to price Plans belonging to any Product.\n-\
\ Calculation: can reference all simple Aggregations - both Global simple Aggregations and any product-specific simple\
\ Aggregations.\n\n**Product-specific**\n- Pricing: belong to a specific Product and can only be used to price Plans belonging\
\ to the same Product.\n- Calculation: can reference any simple Aggregations belonging to the same Product and any Global\
\ simple Aggregations.\n\n**IMPORTANT!** If a simple Aggregation referenced by a Compound Aggregation has a **Quantity\
\ per unit** defined or a **Rounding** defined, these will not be factored into the value used by the calculation. For\
\ example, if the simple Aggregation referenced has a base value of 100 and has **Quantity per unit** set at 10, the Compound\
\ Aggregation calculation *will use the base value of 100 not 10*. \n\nTo better understand and use Compound Aggregations,\
\ refer to the example [Compound Aggregation Use Case](https://www.m3ter.com/docs/guides/setting-up-usage-data-meters-and-aggregations/compound-aggregations#example-use-case)\
\ in the m
# --- truncated at 32 KB (114 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/m3ter/refs/heads/main/apis.yml