Skip to content
  • Auto
  • Light
  • Dark
Talk to an expert

List Charges

List plan charges
client.v1.plans.listCharges(PlanListChargesParamsparams, RequestOptionsoptions?): CursorPage<idstringcharge_typeunioncredit_typeCreditTypeDatacustom_fieldsRecord<string, string>namestringpricesarrayproduct_idstringproduct_namestringquantitynumberstart_periodnumbertier_reset_frequencynumberunit_conversionUnitConversionPlanListChargesResponse>
get/v1/planDetails/{plan_id}/charges

Fetches a list of charges of a specific plan.

Parameters
paramsplan_idstringlimitnumbernext_pagestringPlanListChargesParams
Hide ParametersShow Parameters
plan_idstring

Path param:

formatuuid
limitnumber
optional

Query param: Max number of results that should be returned

minimum1
maximum100
next_pagestring
optional

Query param: Cursor that indicates where the next page of results should start.

Returns
PlanListChargesResponse
Hide ParametersShow Parameters
idstring
formatuuid
charge_typeunion
"usage" | "fixed" | "composite" | 2 more
Hide ParametersShow Parameters
"usage"
"fixed"
"composite"
"minimum"
"seat"
credit_typeidstringnamestringCreditTypeData
custom_fieldsRecord<string, string>
namestring
pricesarray
Array<Price>
Hide ParametersShow Parameters
tiernumber

Used in pricing tiers. Indicates at what metric value the price applies.

valuenumber
collection_intervalnumber
optional
collection_schedulestring
optional
quantitynumber
optional
product_idstring
product_namestring
quantitynumber
optional
start_periodnumber
optional

Used in price ramps. Indicates how many billing periods pass before the charge applies.

tier_reset_frequencynumber
optional

Used in pricing tiers. Indicates how often the tier resets. Default is 1 - the tier count resets every billing period.

unit_conversiondivision_factornumberrounding_behaviorunionUnitConversion
optional

Specifies how quantities for usage based charges will be converted.

Hide ParametersShow Parameters
division_factornumber

The conversion factor

rounding_behaviorunion
optional
"floor" | "ceiling"

Whether usage should be rounded down or up to the nearest whole number. If null, quantity will be rounded to 20 decimal places.

Hide ParametersShow Parameters
"floor"
"ceiling"
import Metronome from '@metronome/sdk';

const client = new Metronome({
  bearerToken: 'My Bearer Token',
});

// Automatically fetches more pages as needed.
for await (const planListChargesResponse of client.v1.plans.listCharges({
  plan_id: 'd7abd0cd-4ae9-4db7-8676-e986a4ebd8dc',
})) {
  console.log(planListChargesResponse.id);
}
200 Example
{
  "data": [
    {
      "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
      "charge_type": "usage",
      "credit_type": {
        "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
        "name": "name"
      },
      "custom_fields": {
        "foo": "string"
      },
      "name": "name",
      "prices": [
        {
          "tier": 0,
          "value": 0,
          "collection_interval": 0,
          "collection_schedule": "collection_schedule",
          "quantity": 0
        }
      ],
      "product_id": "product_id",
      "product_name": "product_name",
      "quantity": 0,
      "start_period": 0,
      "tier_reset_frequency": 0,
      "unit_conversion": {
        "division_factor": 0,
        "rounding_behavior": "floor"
      }
    }
  ],
  "next_page": "next_page"
}