| Events | | | | Track usage by ingesting events |
| Events | Create | openmeter.events.ingest(events) | Ingest a single event or batch of events |
| Events | Read | openmeter.events.list(params?) | List ingested events with advanced filtering |
| Events | Read | openmeter.events.listV2(params?) | List ingested events with advanced filtering (V2) |
| Meters | | | | Track and aggregate usage data from events |
| Meters | Create | openmeter.meters.create(meter) | Create a new meter |
| Meters | Read | openmeter.meters.get(idOrSlug) | Get a meter by ID or slug |
| Meters | Read | openmeter.meters.list() | List all meters |
| Meters | Read | openmeter.meters.query(idOrSlug, query?) | Query usage data |
| Meters | Update | openmeter.meters.update(idOrSlug, meter) | Update a meter by ID or slug |
| Meters | Delete | openmeter.meters.delete(idOrSlug) | Delete a meter by ID or slug |
| Subjects | | | | Manage entities that consume resources |
| Subjects | Create | openmeter.subjects.upsert(subjects) | Create or update one or multiple subjects |
| Subjects | Read | openmeter.subjects.get(idOrKey) | Get a subject by ID or key |
| Subjects | Read | openmeter.subjects.list() | List all subjects |
| Subjects | Delete | openmeter.subjects.delete(idOrKey) | Delete a subject by ID or key |
| Customers | | | | Manage customer subscription lifecycles and plan assignments |
| Customers | Create | openmeter.customers.create(customer) | Create a new customer |
| Customers | Read | openmeter.customers.get(customerIdOrKey) | Get a customer by ID or key |
| Customers | Read | openmeter.customers.list(query?) | List all customers |
| Customers | Read | openmeter.customers.getAccess(customerIdOrKey) | Get customer access information |
| Customers | Read | openmeter.customers.listSubscriptions(customerIdOrKey, query?) | List customer subscriptions |
| Customers | Update | openmeter.customers.update(customerIdOrKey, customer) | Update a customer |
| Customers | Delete | openmeter.customers.delete(customerIdOrKey) | Delete a customer |
| Apps | Update | openmeter.customers.apps.upsert(customerIdOrKey, appData) | Upsert app data |
| Apps | Read | openmeter.customers.apps.list(customerIdOrKey) | List app data |
| Apps | Delete | openmeter.customers.apps.delete(customerIdOrKey, appId) | Delete app data |
| Stripe | Update | openmeter.customers.stripe.upsert(customerIdOrKey, appDataBase) | Upsert Stripe app data |
| Stripe | Read | openmeter.customers.stripe.get(customerIdOrKey) | Get Stripe app data |
| Stripe | Create | openmeter.customers.stripe.createPortalSession(customerIdOrKey, params) | Create a Stripe customer portal session |
| Entitlements V1 | Read | openmeter.customers.entitlementsV1.value(customerIdOrKey, featureKey) | Get entitlement value (V1 API) |
| Entitlements | Read | openmeter.customers.entitlements.list(customerIdOrKey) | List entitlements |
| Entitlements | Create | openmeter.customers.entitlements.create(customerIdOrKey, entitlement) | Create an entitlement |
| Entitlements | Read | openmeter.customers.entitlements.get(customerIdOrKey, featureKeyOrId) | Get an entitlement |
| Entitlements | Delete | openmeter.customers.entitlements.delete(customerIdOrKey, entitlementId) | Delete an entitlement |
| Entitlements | Update | openmeter.customers.entitlements.override(customerIdOrKey, featureKeyOrId, entitlement) | Override an entitlement |
| Entitlements | Read | openmeter.customers.entitlements.value(customerIdOrKey, featureKeyOrId, query?) | Get entitlement value |
| Entitlements | Read | openmeter.customers.entitlements.history(customerIdOrKey, featureKeyOrId, query?) | Get entitlement history |
| Entitlements | Update | openmeter.customers.entitlements.resetUsage(customerIdOrKey, entitlementId, body?) | Reset usage |
| Entitlements | Read | openmeter.customers.entitlements.listGrants(customerIdOrKey, featureKeyOrId, query?) | List grants |
| Entitlements | Create | openmeter.customers.entitlements.createGrant(customerIdOrKey, featureKeyOrId, grant) | Create a grant |
| Features | | | | Define application capabilities and services |
| Features | Create | openmeter.features.create(feature) | Create a new feature |
| Features | Read | openmeter.features.get(featureIdOrKey) | Get a feature by ID |
| Features | Read | openmeter.features.list(params?) | List all features |
| Features | Delete | openmeter.features.delete(featureIdOrKey) | Delete a feature by ID |
| Entitlements (V1) | | | | Subject-based usage limits and access controls |
| Entitlements | Create | openmeter.entitlementsV1.create(subjectIdOrKey, entitlement) | Create an entitlement for a subject |
| Entitlements | Read | openmeter.entitlementsV1.get(entitlementId) | Get an entitlement by ID |
| Entitlements | Read | openmeter.entitlementsV1.list(query?) | List all entitlements |
| Entitlements | Read | openmeter.entitlementsV1.value(subjectIdOrKey, featureIdOrKey, query?) | Get the value of an entitlement |
| Entitlements | Read | openmeter.entitlementsV1.history(subjectIdOrKey, entitlementIdOrFeatureKey, query?) | Get the history of an entitlement |
| Entitlements | Update | openmeter.entitlementsV1.override(subjectIdOrKey, entitlementIdOrFeatureKey, override) | Override an entitlement |
| Entitlements | Update | openmeter.entitlementsV1.reset(subjectIdOrKey, entitlementIdOrFeatureKey, reset?) | Reset entitlement usage |
| Entitlements | Delete | openmeter.entitlementsV1.delete(subjectIdOrKey, entitlementId) | Delete an entitlement |
| Grants | Create | openmeter.entitlementsV1.grants.create(subjectIdOrKey, entitlementIdOrFeatureKey, grant) | Create a grant for an entitlement |
| Grants | Read | openmeter.entitlementsV1.grants.list(subjectIdOrKey, entitlementIdOrFeatureKey, query?) | List grants for an entitlement |
| Grants | Read | openmeter.entitlementsV1.grants.listAll(query?) | List all grants |
| Grants | Delete | openmeter.entitlementsV1.grants.void(entitlementId, grantId) | Void a grant |
| Entitlements | | | | Customer-based entitlements and access controls |
| Entitlements | Read | openmeter.entitlements.list(query?) | List all entitlements (admin purposes) |
| Entitlements | Read | openmeter.entitlements.get(entitlementId) | Get an entitlement by ID |
| Grants | Read | openmeter.entitlements.grants.list(query?) | List all grants (admin purposes) |
| Grants | Delete | openmeter.entitlements.grants.void(grantId) | Void a grant |
| Plans | | | | Manage subscription plans and pricing |
| Plans | Create | openmeter.plans.create(plan) | Create a new plan |
| Plans | Read | openmeter.plans.get(planId) | Get a plan by ID |
| Plans | Read | openmeter.plans.list(query?) | List all plans |
| Plans | Update | openmeter.plans.update(planId, plan) | Update a plan |
| Plans | Delete | openmeter.plans.delete(planId) | Delete a plan by ID |
| Plans | Other | openmeter.plans.archive(planId) | Archive a plan |
| Plans | Other | openmeter.plans.publish(planId) | Publish a plan |
| Addons | Read | openmeter.plans.addons.list(planId) | List addons |
| Addons | Create | openmeter.plans.addons.create(planId, addon) | Create an addon |
| Addons | Read | openmeter.plans.addons.get(planId, planAddonId) | Get an addon by ID |
| Addons | Update | openmeter.plans.addons.update(planId, planAddonId, addon) | Update an addon |
| Addons | Delete | openmeter.plans.addons.delete(planId, planAddonId) | Delete an addon by ID |
| Addons | | | | Manage standalone addons available across plans |
| Addons | Create | openmeter.addons.create(addon) | Create a new addon |
| Addons | Read | openmeter.addons.get(addonId) | Get an addon by ID |
| Addons | Read | openmeter.addons.list(query?) | List all addons |
| Addons | Update | openmeter.addons.update(addonId, addon) | Update an addon |
| Addons | Delete | openmeter.addons.delete(addonId) | Delete an addon by ID |
| Addons | Other | openmeter.addons.publish(addonId) | Publish an addon |
| Addons | Other | openmeter.addons.archive(addonId) | Archive an addon |
| Subscriptions | | | | Manage customer subscriptions |
| Subscriptions | Create | openmeter.subscriptions.create(body) | Create a new subscription |
| Subscriptions | Read | openmeter.subscriptions.get(subscriptionId) | Get a subscription by ID |
| Subscriptions | Update | openmeter.subscriptions.edit(subscriptionId, body) | Edit a subscription |
| Subscriptions | Delete | openmeter.subscriptions.delete(subscriptionId) | Delete a subscription (only scheduled) |
| Subscriptions | Other | openmeter.subscriptions.cancel(subscriptionId, body?) | Cancel a subscription |
| Subscriptions | Other | openmeter.subscriptions.change(subscriptionId, body) | Change a subscription (upgrade/downgrade) |
| Subscriptions | Other | openmeter.subscriptions.migrate(subscriptionId, body) | Migrate to a new plan version |
| Subscriptions | Other | openmeter.subscriptions.unscheduleCancelation(subscriptionId) | Unschedule a subscription cancelation |
| Subscription Addons | | | | Manage addons attached to specific subscriptions |
| Subscription Addons | Create | openmeter.subscriptionAddons.create(subscriptionId, body) | Create a new subscription addon |
| Subscription Addons | Read | openmeter.subscriptionAddons.get(subscriptionId, subscriptionAddonId) | Get a subscription addon by ID |
| Subscription Addons | Read | openmeter.subscriptionAddons.list(subscriptionId) | List all addons of a subscription |
| Subscription Addons | Update | openmeter.subscriptionAddons.update(subscriptionId, subscriptionAddonId, body) | Update a subscription addon |
| Billing | | | | Comprehensive billing management (profiles, invoices, overrides) |
| Profiles | Create | openmeter.billing.profiles.create(profile) | Create a billing profile |
| Profiles | Read | openmeter.billing.profiles.get(id) | Get a billing profile by ID |
| Profiles | Read | openmeter.billing.profiles.list(query?) | List billing profiles |
| Profiles | Update | openmeter.billing.profiles.update(id, profile) | Update a billing profile |
| Profiles | Delete | openmeter.billing.profiles.delete(id) | Delete a billing profile |
| Invoices | Read | openmeter.billing.invoices.list(query?) | List invoices |
| Invoices | Read | openmeter.billing.invoices.get(id, query?) | Get an invoice by ID |
| Invoices | Update | openmeter.billing.invoices.update(id, invoice) | Update an invoice (draft or earlier) |
| Invoices | Delete | openmeter.billing.invoices.delete(id) | Delete an invoice (draft or earlier) |
| Invoices | Other | openmeter.billing.invoices.advance(id) | Advance invoice to next status |
| Invoices | Other | openmeter.billing.invoices.approve(id) | Approve an invoice (sends to customer) |
| Invoices | Other | openmeter.billing.invoices.retry(id, body?) | Retry advancing after failure |
| Invoices | Other | openmeter.billing.invoices.void(id) | Void an invoice |
| Invoices | Other | openmeter.billing.invoices.recalculateTax(id) | Recalculate invoice tax amounts |
| Invoices | Other | openmeter.billing.invoices.simulate(customerId, query?) | Simulate an invoice for a customer |
| Invoices | Create | openmeter.billing.invoices.createLineItems(customerId, body) | Create pending line items |
| Invoices | Create | openmeter.billing.invoices.invoicePendingLines(customerId) | Invoice pending lines |
| Customers | Create | openmeter.billing.customers.createOverride(customerId, body) | Create or update a customer override |
| Customers | Read | openmeter.billing.customers.getOverride(customerId, id) | Get a customer override |
| Customers | Read | openmeter.billing.customers.listOverrides(customerId) | List customer overrides |
| Customers | Delete | openmeter.billing.customers.deleteOverride(customerId, id) | Delete a customer override |
| Apps | | | | Manage integrations and app marketplace |
| Apps | Read | openmeter.apps.list(query?) | List installed apps |
| Apps | Read | openmeter.apps.get(id) | Get an app by ID |
| Apps | Update | openmeter.apps.update(id, body) | Update an app |
| Apps | Delete | openmeter.apps.uninstall(id) | Uninstall an app |
| Marketplace | Read | openmeter.apps.marketplace.list(query?) | List available marketplace apps |
| Marketplace | Read | openmeter.apps.marketplace.get(id) | Get marketplace listing details |
| Marketplace | Read | openmeter.apps.marketplace.getOauth2InstallUrl(id, redirectUrl) | Get OAuth2 install URL |
| Marketplace | Other | openmeter.apps.marketplace.authorizeOauth2(id, body) | Authorize OAuth2 code |
| Marketplace | Create | openmeter.apps.marketplace.installWithAPIKey(id, body) | Install app with API key |
| Stripe | Create | openmeter.apps.stripe.createCheckoutSession(body) | Create a Stripe checkout session |
| Stripe | Update | openmeter.apps.stripe.updateApiKey(body) | Update Stripe API key |
| Custom Invoicing | Other | openmeter.apps.customInvoicing.draftSynchronized(body) | Submit draft synchronization results |
| Custom Invoicing | Other | openmeter.apps.customInvoicing.issuingSynchronized(body) | Submit issuing synchronization results |
| Custom Invoicing | Update | openmeter.apps.customInvoicing.updatePaymentStatus(invoiceId, body) | Update payment status |
| Notifications | | | | Set up automated notifications for usage thresholds |
| Channels | Create | openmeter.notifications.channels.create(channel) | Create a notification channel |
| Channels | Read | openmeter.notifications.channels.get(channelId) | Get a notification channel by ID |
| Channels | Update | openmeter.notifications.channels.update(channelId, channel) | Update a notification channel |
| Channels | Read | openmeter.notifications.channels.list(query?) | List notification channels |
| Channels | Delete | openmeter.notifications.channels.delete(channelId) | Delete a notification channel |
| Rules | Create | openmeter.notifications.rules.create(rule) | Create a notification rule |
| Rules | Read | openmeter.notifications.rules.get(ruleId) | Get a notification rule by ID |
| Rules | Update | openmeter.notifications.rules.update(ruleId, rule) | Update a notification rule |
| Rules | Read | openmeter.notifications.rules.list(query?) | List notification rules |
| Rules | Delete | openmeter.notifications.rules.delete(ruleId) | Delete a notification rule |
| Events | Read | openmeter.notifications.events.get(eventId) | Get a notification event by ID |
| Events | Read | openmeter.notifications.events.list(query?) | List notification events |
| Portal | | | | Manage consumer portal tokens for customer-facing interfaces |
| Portal | Create | openmeter.portal.create(body) | Create a consumer portal token |
| Portal | Read | openmeter.portal.list(query?) | List consumer portal tokens |
| Portal | Other | openmeter.portal.invalidate(query?) | Invalidate consumer portal tokens |
| Info | | | | Utility endpoints for system information |
| Info | Read | openmeter.info.listCurrencies() | List all supported currencies |
| Info | Read | openmeter.info.getProgress(id) | Get progress of a long-running operation |
| Debug | | | | Debug utilities for monitoring and troubleshooting |
| Debug | Read | openmeter.debug.getMetrics() | Get event ingestion metrics (OpenMetrics format) |