@metronome/mcp 0.2.0 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1045 -75
- package/code-tool-paths.cjs +6 -0
- package/code-tool-paths.cjs.map +1 -0
- package/code-tool-paths.d.cts +2 -0
- package/code-tool-paths.d.cts.map +1 -0
- package/code-tool-types.d.mts +14 -0
- package/code-tool-types.d.mts.map +1 -0
- package/code-tool-types.d.ts +14 -0
- package/code-tool-types.d.ts.map +1 -0
- package/code-tool-types.js +4 -0
- package/code-tool-types.js.map +1 -0
- package/code-tool-types.mjs +3 -0
- package/code-tool-types.mjs.map +1 -0
- package/code-tool-worker.d.mts +5 -0
- package/code-tool-worker.d.mts.map +1 -0
- package/code-tool-worker.d.ts +5 -0
- package/code-tool-worker.d.ts.map +1 -0
- package/code-tool-worker.js +45 -0
- package/code-tool-worker.js.map +1 -0
- package/code-tool-worker.mjs +40 -0
- package/code-tool-worker.mjs.map +1 -0
- package/code-tool.d.mts +12 -0
- package/code-tool.d.mts.map +1 -0
- package/code-tool.d.ts +12 -0
- package/code-tool.d.ts.map +1 -0
- package/code-tool.js +158 -0
- package/code-tool.js.map +1 -0
- package/code-tool.mjs +122 -0
- package/code-tool.mjs.map +1 -0
- package/compat.d.mts +4 -2
- package/compat.d.mts.map +1 -1
- package/compat.d.ts +4 -2
- package/compat.d.ts.map +1 -1
- package/compat.js +3 -1
- package/compat.js.map +1 -1
- package/compat.mjs +2 -0
- package/compat.mjs.map +1 -1
- package/dynamic-tools.js +3 -3
- package/dynamic-tools.js.map +1 -1
- package/dynamic-tools.mjs +3 -3
- package/dynamic-tools.mjs.map +1 -1
- package/filtering.d.mts +1 -1
- package/filtering.d.mts.map +1 -1
- package/filtering.d.ts +1 -1
- package/filtering.d.ts.map +1 -1
- package/filtering.js +1 -2
- package/filtering.js.map +1 -1
- package/filtering.mjs +1 -2
- package/filtering.mjs.map +1 -1
- package/headers.d.mts +4 -0
- package/headers.d.mts.map +1 -0
- package/headers.d.ts +4 -0
- package/headers.d.ts.map +1 -0
- package/headers.js +22 -0
- package/headers.js.map +1 -0
- package/headers.mjs +18 -0
- package/headers.mjs.map +1 -0
- package/http.d.mts +9 -0
- package/http.d.mts.map +1 -0
- package/http.d.ts +9 -0
- package/http.d.ts.map +1 -0
- package/http.js +108 -0
- package/http.js.map +1 -0
- package/http.mjs +100 -0
- package/http.mjs.map +1 -0
- package/index.js +15 -10
- package/index.js.map +1 -1
- package/index.mjs +17 -12
- package/index.mjs.map +1 -1
- package/options.d.mts +11 -6
- package/options.d.mts.map +1 -1
- package/options.d.ts +11 -6
- package/options.d.ts.map +1 -1
- package/options.js +136 -15
- package/options.js.map +1 -1
- package/options.mjs +135 -15
- package/options.mjs.map +1 -1
- package/package.json +163 -11
- package/server.d.mts +4 -16
- package/server.d.mts.map +1 -1
- package/server.d.ts +4 -16
- package/server.d.ts.map +1 -1
- package/server.js +85 -25
- package/server.js.map +1 -1
- package/server.mjs +83 -24
- package/server.mjs.map +1 -1
- package/src/code-tool-paths.cts +3 -0
- package/src/code-tool-types.ts +14 -0
- package/src/code-tool-worker.ts +46 -0
- package/src/code-tool.ts +147 -0
- package/src/compat.ts +4 -2
- package/src/dynamic-tools.ts +3 -3
- package/src/filtering.ts +1 -2
- package/src/headers.ts +23 -0
- package/src/http.ts +127 -0
- package/src/index.ts +18 -14
- package/src/options.ts +158 -21
- package/src/server.ts +101 -38
- package/src/stdio.ts +13 -0
- package/src/tools/index.ts +4 -0
- package/src/tools/v1/alerts/archive-v1-alerts.ts +1 -1
- package/src/tools/v1/alerts/create-v1-alerts.ts +2 -2
- package/src/tools/v1/audit-logs/list-v1-audit-logs.ts +1 -1
- package/src/tools/v1/billable-metrics/archive-v1-billable-metrics.ts +1 -1
- package/src/tools/v1/billable-metrics/create-v1-billable-metrics.ts +2 -1
- package/src/tools/v1/billable-metrics/list-v1-billable-metrics.ts +1 -1
- package/src/tools/v1/billable-metrics/retrieve-v1-billable-metrics.ts +1 -1
- package/src/tools/v1/contracts/add-manual-balance-entry-v1-contracts.ts +2 -1
- package/src/tools/v1/contracts/amend-v1-contracts.ts +118 -138
- package/src/tools/v1/contracts/archive-v1-contracts.ts +1 -1
- package/src/tools/v1/contracts/create-historical-invoices-v1-contracts.ts +6 -1
- package/src/tools/v1/contracts/create-v1-contracts.ts +271 -505
- package/src/tools/v1/contracts/list-balances-v1-contracts.ts +4 -2
- package/src/tools/v1/contracts/list-v1-contracts.ts +1 -1
- package/src/tools/v1/contracts/named-schedules/retrieve-contracts-v1-named-schedules.ts +1 -1
- package/src/tools/v1/contracts/named-schedules/update-contracts-v1-named-schedules.ts +1 -0
- package/src/tools/v1/contracts/products/archive-contracts-v1-products.ts +1 -1
- package/src/tools/v1/contracts/products/create-contracts-v1-products.ts +6 -1
- package/src/tools/v1/contracts/products/list-contracts-v1-products.ts +1 -1
- package/src/tools/v1/contracts/products/retrieve-contracts-v1-products.ts +1 -1
- package/src/tools/v1/contracts/products/update-contracts-v1-products.ts +1 -1
- package/src/tools/v1/contracts/rate-cards/archive-contracts-v1-rate-cards.ts +1 -1
- package/src/tools/v1/contracts/rate-cards/create-contracts-v1-rate-cards.ts +3 -1
- package/src/tools/v1/contracts/rate-cards/list-contracts-v1-rate-cards.ts +2 -1
- package/src/tools/v1/contracts/rate-cards/named-schedules/retrieve-rate-cards-contracts-v1-named-schedules.ts +1 -1
- package/src/tools/v1/contracts/rate-cards/named-schedules/update-rate-cards-contracts-v1-named-schedules.ts +1 -0
- package/src/tools/v1/contracts/rate-cards/product-orders/set-rate-cards-contracts-v1-product-orders.ts +1 -1
- package/src/tools/v1/contracts/rate-cards/product-orders/update-rate-cards-contracts-v1-product-orders.ts +1 -1
- package/src/tools/v1/contracts/rate-cards/rates/add-many-rate-cards-contracts-v1-rates.ts +26 -21
- package/src/tools/v1/contracts/rate-cards/rates/add-rate-cards-contracts-v1-rates.ts +27 -22
- package/src/tools/v1/contracts/rate-cards/rates/list-rate-cards-contracts-v1-rates.ts +3 -1
- package/src/tools/v1/contracts/rate-cards/retrieve-contracts-v1-rate-cards.ts +1 -1
- package/src/tools/v1/contracts/rate-cards/retrieve-rate-schedule-contracts-v1-rate-cards.ts +3 -1
- package/src/tools/v1/contracts/rate-cards/update-contracts-v1-rate-cards.ts +1 -1
- package/src/tools/v1/contracts/retrieve-rate-schedule-v1-contracts.ts +3 -1
- package/src/tools/v1/contracts/retrieve-subscription-quantity-history-v1-contracts.ts +1 -1
- package/src/tools/v1/contracts/set-usage-filter-v1-contracts.ts +2 -1
- package/src/tools/v1/contracts/update-end-date-v1-contracts.ts +1 -1
- package/src/tools/v1/credit-grants/create-v1-credit-grants.ts +1 -0
- package/src/tools/v1/credit-grants/list-entries-v1-credit-grants.ts +2 -1
- package/src/tools/v1/credit-grants/list-v1-credit-grants.ts +1 -1
- package/src/tools/v1/custom-fields/add-key-v1-custom-fields.ts +1 -1
- package/src/tools/v1/custom-fields/delete-values-v1-custom-fields.ts +2 -1
- package/src/tools/v1/custom-fields/list-keys-v1-custom-fields.ts +3 -2
- package/src/tools/v1/custom-fields/remove-key-v1-custom-fields.ts +2 -1
- package/src/tools/v1/custom-fields/set-values-v1-custom-fields.ts +3 -1
- package/src/tools/v1/customers/alerts/list-customers-v1-alerts.ts +3 -2
- package/src/tools/v1/customers/alerts/reset-customers-v1-alerts.ts +2 -1
- package/src/tools/v1/customers/alerts/retrieve-customers-v1-alerts.ts +20 -1
- package/src/tools/v1/customers/archive-v1-customers.ts +1 -1
- package/src/tools/v1/customers/billing-config/create-customers-v1-billing-config.ts +6 -1
- package/src/tools/v1/customers/billing-config/retrieve-customers-v1-billing-config.ts +1 -1
- package/src/tools/v1/customers/commits/create-customers-v1-commits.ts +38 -31
- package/src/tools/v1/customers/commits/list-customers-v1-commits.ts +4 -2
- package/src/tools/v1/customers/commits/update-end-date-customers-v1-commits.ts +1 -1
- package/src/tools/v1/customers/create-v1-customers.ts +16 -2
- package/src/tools/v1/customers/credits/create-customers-v1-credits.ts +31 -22
- package/src/tools/v1/customers/credits/list-customers-v1-credits.ts +4 -2
- package/src/tools/v1/customers/credits/update-end-date-customers-v1-credits.ts +1 -1
- package/src/tools/v1/customers/invoices/list-breakdowns-customers-v1-invoices.ts +1 -1
- package/src/tools/v1/customers/invoices/list-customers-v1-invoices.ts +1 -1
- package/src/tools/v1/customers/invoices/retrieve-customers-v1-invoices.ts +2 -1
- package/src/tools/v1/customers/list-billable-metrics-v1-customers.ts +1 -1
- package/src/tools/v1/customers/list-costs-v1-customers.ts +1 -1
- package/src/tools/v1/customers/list-v1-customers.ts +1 -1
- package/src/tools/v1/customers/named-schedules/retrieve-customers-v1-named-schedules.ts +1 -1
- package/src/tools/v1/customers/named-schedules/update-customers-v1-named-schedules.ts +1 -0
- package/src/tools/v1/customers/plans/list-customers-v1-plans.ts +1 -1
- package/src/tools/v1/customers/preview-events-v1-customers.ts +1 -0
- package/src/tools/v1/customers/retrieve-billing-configurations-v1-customers.ts +50 -0
- package/src/tools/v1/customers/retrieve-v1-customers.ts +1 -1
- package/src/tools/v1/customers/set-billing-configurations-v1-customers.ts +85 -0
- package/src/tools/v1/customers/set-ingest-aliases-v1-customers.ts +1 -1
- package/src/tools/v1/customers/set-name-v1-customers.ts +1 -1
- package/src/tools/v1/customers/update-config-v1-customers.ts +2 -1
- package/src/tools/v1/dashboards/get-embeddable-url-v1-dashboards.ts +2 -1
- package/src/tools/v1/invoices/regenerate-v1-invoices.ts +1 -1
- package/src/tools/v1/invoices/void-v1-invoices.ts +1 -1
- package/src/tools/v1/plans/get-details-v1-plans.ts +1 -1
- package/src/tools/v1/plans/list-charges-v1-plans.ts +1 -1
- package/src/tools/v1/plans/list-customers-v1-plans.ts +1 -1
- package/src/tools/v1/plans/list-v1-plans.ts +1 -1
- package/src/tools/v1/pricing-units/list-v1-pricing-units.ts +1 -1
- package/src/tools/v1/services/list-v1-services.ts +1 -1
- package/src/tools/v1/usage/ingest-v1-usage.ts +3 -2
- package/src/tools/v1/usage/list-v1-usage.ts +3 -2
- package/src/tools/v1/usage/list-with-groups-v1-usage.ts +1 -1
- package/src/tools/v1/usage/search-v1-usage.ts +1 -1
- package/src/tools/v2/contracts/edit-commit-v2-contracts.ts +39 -22
- package/src/tools/v2/contracts/edit-credit-v2-contracts.ts +39 -22
- package/src/tools/v2/contracts/edit-v2-contracts.ts +298 -769
- package/src/tools/v2/contracts/get-edit-history-v2-contracts.ts +1 -1
- package/src/tools/v2/contracts/list-v2-contracts.ts +1 -1
- package/src/tools/v2/contracts/retrieve-v2-contracts.ts +2 -1
- package/stdio.d.mts +3 -0
- package/stdio.d.mts.map +1 -0
- package/stdio.d.ts +3 -0
- package/stdio.d.ts.map +1 -0
- package/stdio.js +14 -0
- package/stdio.js.map +1 -0
- package/stdio.mjs +10 -0
- package/stdio.mjs.map +1 -0
- package/tools/index.d.mts.map +1 -1
- package/tools/index.d.ts.map +1 -1
- package/tools/index.js +4 -0
- package/tools/index.js.map +1 -1
- package/tools/index.mjs +4 -0
- package/tools/index.mjs.map +1 -1
- package/tools/v1/alerts/archive-v1-alerts.js +1 -1
- package/tools/v1/alerts/archive-v1-alerts.js.map +1 -1
- package/tools/v1/alerts/archive-v1-alerts.mjs +1 -1
- package/tools/v1/alerts/archive-v1-alerts.mjs.map +1 -1
- package/tools/v1/alerts/create-v1-alerts.js +2 -2
- package/tools/v1/alerts/create-v1-alerts.js.map +1 -1
- package/tools/v1/alerts/create-v1-alerts.mjs +2 -2
- package/tools/v1/alerts/create-v1-alerts.mjs.map +1 -1
- package/tools/v1/audit-logs/list-v1-audit-logs.js +1 -1
- package/tools/v1/audit-logs/list-v1-audit-logs.js.map +1 -1
- package/tools/v1/audit-logs/list-v1-audit-logs.mjs +1 -1
- package/tools/v1/audit-logs/list-v1-audit-logs.mjs.map +1 -1
- package/tools/v1/billable-metrics/archive-v1-billable-metrics.js +1 -1
- package/tools/v1/billable-metrics/archive-v1-billable-metrics.js.map +1 -1
- package/tools/v1/billable-metrics/archive-v1-billable-metrics.mjs +1 -1
- package/tools/v1/billable-metrics/archive-v1-billable-metrics.mjs.map +1 -1
- package/tools/v1/billable-metrics/create-v1-billable-metrics.d.mts.map +1 -1
- package/tools/v1/billable-metrics/create-v1-billable-metrics.d.ts.map +1 -1
- package/tools/v1/billable-metrics/create-v1-billable-metrics.js +2 -1
- package/tools/v1/billable-metrics/create-v1-billable-metrics.js.map +1 -1
- package/tools/v1/billable-metrics/create-v1-billable-metrics.mjs +2 -1
- package/tools/v1/billable-metrics/create-v1-billable-metrics.mjs.map +1 -1
- package/tools/v1/billable-metrics/list-v1-billable-metrics.js +1 -1
- package/tools/v1/billable-metrics/list-v1-billable-metrics.js.map +1 -1
- package/tools/v1/billable-metrics/list-v1-billable-metrics.mjs +1 -1
- package/tools/v1/billable-metrics/list-v1-billable-metrics.mjs.map +1 -1
- package/tools/v1/billable-metrics/retrieve-v1-billable-metrics.js +1 -1
- package/tools/v1/billable-metrics/retrieve-v1-billable-metrics.js.map +1 -1
- package/tools/v1/billable-metrics/retrieve-v1-billable-metrics.mjs +1 -1
- package/tools/v1/billable-metrics/retrieve-v1-billable-metrics.mjs.map +1 -1
- package/tools/v1/contracts/add-manual-balance-entry-v1-contracts.d.mts.map +1 -1
- package/tools/v1/contracts/add-manual-balance-entry-v1-contracts.d.ts.map +1 -1
- package/tools/v1/contracts/add-manual-balance-entry-v1-contracts.js +1 -1
- package/tools/v1/contracts/add-manual-balance-entry-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/add-manual-balance-entry-v1-contracts.mjs +1 -1
- package/tools/v1/contracts/add-manual-balance-entry-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/amend-v1-contracts.d.mts.map +1 -1
- package/tools/v1/contracts/amend-v1-contracts.d.ts.map +1 -1
- package/tools/v1/contracts/amend-v1-contracts.js +113 -134
- package/tools/v1/contracts/amend-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/amend-v1-contracts.mjs +113 -134
- package/tools/v1/contracts/amend-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/archive-v1-contracts.js +1 -1
- package/tools/v1/contracts/archive-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/archive-v1-contracts.mjs +1 -1
- package/tools/v1/contracts/archive-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/create-historical-invoices-v1-contracts.d.mts.map +1 -1
- package/tools/v1/contracts/create-historical-invoices-v1-contracts.d.ts.map +1 -1
- package/tools/v1/contracts/create-historical-invoices-v1-contracts.js +5 -1
- package/tools/v1/contracts/create-historical-invoices-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/create-historical-invoices-v1-contracts.mjs +5 -1
- package/tools/v1/contracts/create-historical-invoices-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/create-v1-contracts.d.mts.map +1 -1
- package/tools/v1/contracts/create-v1-contracts.d.ts.map +1 -1
- package/tools/v1/contracts/create-v1-contracts.js +252 -473
- package/tools/v1/contracts/create-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/create-v1-contracts.mjs +252 -473
- package/tools/v1/contracts/create-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/list-balances-v1-contracts.d.mts.map +1 -1
- package/tools/v1/contracts/list-balances-v1-contracts.d.ts.map +1 -1
- package/tools/v1/contracts/list-balances-v1-contracts.js +3 -2
- package/tools/v1/contracts/list-balances-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/list-balances-v1-contracts.mjs +3 -2
- package/tools/v1/contracts/list-balances-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/list-v1-contracts.js +1 -1
- package/tools/v1/contracts/list-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/list-v1-contracts.mjs +1 -1
- package/tools/v1/contracts/list-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/named-schedules/retrieve-contracts-v1-named-schedules.js +1 -1
- package/tools/v1/contracts/named-schedules/retrieve-contracts-v1-named-schedules.js.map +1 -1
- package/tools/v1/contracts/named-schedules/retrieve-contracts-v1-named-schedules.mjs +1 -1
- package/tools/v1/contracts/named-schedules/retrieve-contracts-v1-named-schedules.mjs.map +1 -1
- package/tools/v1/contracts/named-schedules/update-contracts-v1-named-schedules.d.mts.map +1 -1
- package/tools/v1/contracts/named-schedules/update-contracts-v1-named-schedules.d.ts.map +1 -1
- package/tools/v1/contracts/named-schedules/update-contracts-v1-named-schedules.js +1 -0
- package/tools/v1/contracts/named-schedules/update-contracts-v1-named-schedules.js.map +1 -1
- package/tools/v1/contracts/named-schedules/update-contracts-v1-named-schedules.mjs +1 -0
- package/tools/v1/contracts/named-schedules/update-contracts-v1-named-schedules.mjs.map +1 -1
- package/tools/v1/contracts/products/archive-contracts-v1-products.js +1 -1
- package/tools/v1/contracts/products/archive-contracts-v1-products.js.map +1 -1
- package/tools/v1/contracts/products/archive-contracts-v1-products.mjs +1 -1
- package/tools/v1/contracts/products/archive-contracts-v1-products.mjs.map +1 -1
- package/tools/v1/contracts/products/create-contracts-v1-products.d.mts.map +1 -1
- package/tools/v1/contracts/products/create-contracts-v1-products.d.ts.map +1 -1
- package/tools/v1/contracts/products/create-contracts-v1-products.js +6 -1
- package/tools/v1/contracts/products/create-contracts-v1-products.js.map +1 -1
- package/tools/v1/contracts/products/create-contracts-v1-products.mjs +6 -1
- package/tools/v1/contracts/products/create-contracts-v1-products.mjs.map +1 -1
- package/tools/v1/contracts/products/list-contracts-v1-products.js +1 -1
- package/tools/v1/contracts/products/list-contracts-v1-products.js.map +1 -1
- package/tools/v1/contracts/products/list-contracts-v1-products.mjs +1 -1
- package/tools/v1/contracts/products/list-contracts-v1-products.mjs.map +1 -1
- package/tools/v1/contracts/products/retrieve-contracts-v1-products.js +1 -1
- package/tools/v1/contracts/products/retrieve-contracts-v1-products.js.map +1 -1
- package/tools/v1/contracts/products/retrieve-contracts-v1-products.mjs +1 -1
- package/tools/v1/contracts/products/retrieve-contracts-v1-products.mjs.map +1 -1
- package/tools/v1/contracts/products/update-contracts-v1-products.js +1 -1
- package/tools/v1/contracts/products/update-contracts-v1-products.js.map +1 -1
- package/tools/v1/contracts/products/update-contracts-v1-products.mjs +1 -1
- package/tools/v1/contracts/products/update-contracts-v1-products.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/archive-contracts-v1-rate-cards.js +1 -1
- package/tools/v1/contracts/rate-cards/archive-contracts-v1-rate-cards.js.map +1 -1
- package/tools/v1/contracts/rate-cards/archive-contracts-v1-rate-cards.mjs +1 -1
- package/tools/v1/contracts/rate-cards/archive-contracts-v1-rate-cards.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/create-contracts-v1-rate-cards.d.mts.map +1 -1
- package/tools/v1/contracts/rate-cards/create-contracts-v1-rate-cards.d.ts.map +1 -1
- package/tools/v1/contracts/rate-cards/create-contracts-v1-rate-cards.js +3 -1
- package/tools/v1/contracts/rate-cards/create-contracts-v1-rate-cards.js.map +1 -1
- package/tools/v1/contracts/rate-cards/create-contracts-v1-rate-cards.mjs +3 -1
- package/tools/v1/contracts/rate-cards/create-contracts-v1-rate-cards.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/list-contracts-v1-rate-cards.d.mts.map +1 -1
- package/tools/v1/contracts/rate-cards/list-contracts-v1-rate-cards.d.ts.map +1 -1
- package/tools/v1/contracts/rate-cards/list-contracts-v1-rate-cards.js +2 -1
- package/tools/v1/contracts/rate-cards/list-contracts-v1-rate-cards.js.map +1 -1
- package/tools/v1/contracts/rate-cards/list-contracts-v1-rate-cards.mjs +2 -1
- package/tools/v1/contracts/rate-cards/list-contracts-v1-rate-cards.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/named-schedules/retrieve-rate-cards-contracts-v1-named-schedules.js +1 -1
- package/tools/v1/contracts/rate-cards/named-schedules/retrieve-rate-cards-contracts-v1-named-schedules.js.map +1 -1
- package/tools/v1/contracts/rate-cards/named-schedules/retrieve-rate-cards-contracts-v1-named-schedules.mjs +1 -1
- package/tools/v1/contracts/rate-cards/named-schedules/retrieve-rate-cards-contracts-v1-named-schedules.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/named-schedules/update-rate-cards-contracts-v1-named-schedules.d.mts.map +1 -1
- package/tools/v1/contracts/rate-cards/named-schedules/update-rate-cards-contracts-v1-named-schedules.d.ts.map +1 -1
- package/tools/v1/contracts/rate-cards/named-schedules/update-rate-cards-contracts-v1-named-schedules.js +1 -0
- package/tools/v1/contracts/rate-cards/named-schedules/update-rate-cards-contracts-v1-named-schedules.js.map +1 -1
- package/tools/v1/contracts/rate-cards/named-schedules/update-rate-cards-contracts-v1-named-schedules.mjs +1 -0
- package/tools/v1/contracts/rate-cards/named-schedules/update-rate-cards-contracts-v1-named-schedules.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/product-orders/set-rate-cards-contracts-v1-product-orders.js +1 -1
- package/tools/v1/contracts/rate-cards/product-orders/set-rate-cards-contracts-v1-product-orders.js.map +1 -1
- package/tools/v1/contracts/rate-cards/product-orders/set-rate-cards-contracts-v1-product-orders.mjs +1 -1
- package/tools/v1/contracts/rate-cards/product-orders/set-rate-cards-contracts-v1-product-orders.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/product-orders/update-rate-cards-contracts-v1-product-orders.js +1 -1
- package/tools/v1/contracts/rate-cards/product-orders/update-rate-cards-contracts-v1-product-orders.js.map +1 -1
- package/tools/v1/contracts/rate-cards/product-orders/update-rate-cards-contracts-v1-product-orders.mjs +1 -1
- package/tools/v1/contracts/rate-cards/product-orders/update-rate-cards-contracts-v1-product-orders.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/add-many-rate-cards-contracts-v1-rates.d.mts.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/add-many-rate-cards-contracts-v1-rates.d.ts.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/add-many-rate-cards-contracts-v1-rates.js +25 -20
- package/tools/v1/contracts/rate-cards/rates/add-many-rate-cards-contracts-v1-rates.js.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/add-many-rate-cards-contracts-v1-rates.mjs +25 -20
- package/tools/v1/contracts/rate-cards/rates/add-many-rate-cards-contracts-v1-rates.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/add-rate-cards-contracts-v1-rates.d.mts.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/add-rate-cards-contracts-v1-rates.d.ts.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/add-rate-cards-contracts-v1-rates.js +26 -21
- package/tools/v1/contracts/rate-cards/rates/add-rate-cards-contracts-v1-rates.js.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/add-rate-cards-contracts-v1-rates.mjs +26 -21
- package/tools/v1/contracts/rate-cards/rates/add-rate-cards-contracts-v1-rates.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/list-rate-cards-contracts-v1-rates.d.mts.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/list-rate-cards-contracts-v1-rates.d.ts.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/list-rate-cards-contracts-v1-rates.js +3 -1
- package/tools/v1/contracts/rate-cards/rates/list-rate-cards-contracts-v1-rates.js.map +1 -1
- package/tools/v1/contracts/rate-cards/rates/list-rate-cards-contracts-v1-rates.mjs +3 -1
- package/tools/v1/contracts/rate-cards/rates/list-rate-cards-contracts-v1-rates.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/retrieve-contracts-v1-rate-cards.js +1 -1
- package/tools/v1/contracts/rate-cards/retrieve-contracts-v1-rate-cards.js.map +1 -1
- package/tools/v1/contracts/rate-cards/retrieve-contracts-v1-rate-cards.mjs +1 -1
- package/tools/v1/contracts/rate-cards/retrieve-contracts-v1-rate-cards.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/retrieve-rate-schedule-contracts-v1-rate-cards.d.mts.map +1 -1
- package/tools/v1/contracts/rate-cards/retrieve-rate-schedule-contracts-v1-rate-cards.d.ts.map +1 -1
- package/tools/v1/contracts/rate-cards/retrieve-rate-schedule-contracts-v1-rate-cards.js +3 -1
- package/tools/v1/contracts/rate-cards/retrieve-rate-schedule-contracts-v1-rate-cards.js.map +1 -1
- package/tools/v1/contracts/rate-cards/retrieve-rate-schedule-contracts-v1-rate-cards.mjs +3 -1
- package/tools/v1/contracts/rate-cards/retrieve-rate-schedule-contracts-v1-rate-cards.mjs.map +1 -1
- package/tools/v1/contracts/rate-cards/update-contracts-v1-rate-cards.js +1 -1
- package/tools/v1/contracts/rate-cards/update-contracts-v1-rate-cards.js.map +1 -1
- package/tools/v1/contracts/rate-cards/update-contracts-v1-rate-cards.mjs +1 -1
- package/tools/v1/contracts/rate-cards/update-contracts-v1-rate-cards.mjs.map +1 -1
- package/tools/v1/contracts/retrieve-rate-schedule-v1-contracts.d.mts.map +1 -1
- package/tools/v1/contracts/retrieve-rate-schedule-v1-contracts.d.ts.map +1 -1
- package/tools/v1/contracts/retrieve-rate-schedule-v1-contracts.js +3 -1
- package/tools/v1/contracts/retrieve-rate-schedule-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/retrieve-rate-schedule-v1-contracts.mjs +3 -1
- package/tools/v1/contracts/retrieve-rate-schedule-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/retrieve-subscription-quantity-history-v1-contracts.js +1 -1
- package/tools/v1/contracts/retrieve-subscription-quantity-history-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/retrieve-subscription-quantity-history-v1-contracts.mjs +1 -1
- package/tools/v1/contracts/retrieve-subscription-quantity-history-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/set-usage-filter-v1-contracts.d.mts.map +1 -1
- package/tools/v1/contracts/set-usage-filter-v1-contracts.d.ts.map +1 -1
- package/tools/v1/contracts/set-usage-filter-v1-contracts.js +1 -1
- package/tools/v1/contracts/set-usage-filter-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/set-usage-filter-v1-contracts.mjs +1 -1
- package/tools/v1/contracts/set-usage-filter-v1-contracts.mjs.map +1 -1
- package/tools/v1/contracts/update-end-date-v1-contracts.js +1 -1
- package/tools/v1/contracts/update-end-date-v1-contracts.js.map +1 -1
- package/tools/v1/contracts/update-end-date-v1-contracts.mjs +1 -1
- package/tools/v1/contracts/update-end-date-v1-contracts.mjs.map +1 -1
- package/tools/v1/credit-grants/create-v1-credit-grants.d.mts.map +1 -1
- package/tools/v1/credit-grants/create-v1-credit-grants.d.ts.map +1 -1
- package/tools/v1/credit-grants/create-v1-credit-grants.js +1 -0
- package/tools/v1/credit-grants/create-v1-credit-grants.js.map +1 -1
- package/tools/v1/credit-grants/create-v1-credit-grants.mjs +1 -0
- package/tools/v1/credit-grants/create-v1-credit-grants.mjs.map +1 -1
- package/tools/v1/credit-grants/list-entries-v1-credit-grants.d.mts.map +1 -1
- package/tools/v1/credit-grants/list-entries-v1-credit-grants.d.ts.map +1 -1
- package/tools/v1/credit-grants/list-entries-v1-credit-grants.js +2 -1
- package/tools/v1/credit-grants/list-entries-v1-credit-grants.js.map +1 -1
- package/tools/v1/credit-grants/list-entries-v1-credit-grants.mjs +2 -1
- package/tools/v1/credit-grants/list-entries-v1-credit-grants.mjs.map +1 -1
- package/tools/v1/credit-grants/list-v1-credit-grants.js +1 -1
- package/tools/v1/credit-grants/list-v1-credit-grants.js.map +1 -1
- package/tools/v1/credit-grants/list-v1-credit-grants.mjs +1 -1
- package/tools/v1/credit-grants/list-v1-credit-grants.mjs.map +1 -1
- package/tools/v1/custom-fields/add-key-v1-custom-fields.js +1 -1
- package/tools/v1/custom-fields/add-key-v1-custom-fields.js.map +1 -1
- package/tools/v1/custom-fields/add-key-v1-custom-fields.mjs +1 -1
- package/tools/v1/custom-fields/add-key-v1-custom-fields.mjs.map +1 -1
- package/tools/v1/custom-fields/delete-values-v1-custom-fields.d.mts.map +1 -1
- package/tools/v1/custom-fields/delete-values-v1-custom-fields.d.ts.map +1 -1
- package/tools/v1/custom-fields/delete-values-v1-custom-fields.js +1 -1
- package/tools/v1/custom-fields/delete-values-v1-custom-fields.js.map +1 -1
- package/tools/v1/custom-fields/delete-values-v1-custom-fields.mjs +1 -1
- package/tools/v1/custom-fields/delete-values-v1-custom-fields.mjs.map +1 -1
- package/tools/v1/custom-fields/list-keys-v1-custom-fields.d.mts.map +1 -1
- package/tools/v1/custom-fields/list-keys-v1-custom-fields.d.ts.map +1 -1
- package/tools/v1/custom-fields/list-keys-v1-custom-fields.js +3 -2
- package/tools/v1/custom-fields/list-keys-v1-custom-fields.js.map +1 -1
- package/tools/v1/custom-fields/list-keys-v1-custom-fields.mjs +3 -2
- package/tools/v1/custom-fields/list-keys-v1-custom-fields.mjs.map +1 -1
- package/tools/v1/custom-fields/remove-key-v1-custom-fields.d.mts.map +1 -1
- package/tools/v1/custom-fields/remove-key-v1-custom-fields.d.ts.map +1 -1
- package/tools/v1/custom-fields/remove-key-v1-custom-fields.js +1 -1
- package/tools/v1/custom-fields/remove-key-v1-custom-fields.js.map +1 -1
- package/tools/v1/custom-fields/remove-key-v1-custom-fields.mjs +1 -1
- package/tools/v1/custom-fields/remove-key-v1-custom-fields.mjs.map +1 -1
- package/tools/v1/custom-fields/set-values-v1-custom-fields.d.mts.map +1 -1
- package/tools/v1/custom-fields/set-values-v1-custom-fields.d.ts.map +1 -1
- package/tools/v1/custom-fields/set-values-v1-custom-fields.js +3 -1
- package/tools/v1/custom-fields/set-values-v1-custom-fields.js.map +1 -1
- package/tools/v1/custom-fields/set-values-v1-custom-fields.mjs +3 -1
- package/tools/v1/custom-fields/set-values-v1-custom-fields.mjs.map +1 -1
- package/tools/v1/customers/alerts/list-customers-v1-alerts.d.mts.map +1 -1
- package/tools/v1/customers/alerts/list-customers-v1-alerts.d.ts.map +1 -1
- package/tools/v1/customers/alerts/list-customers-v1-alerts.js +3 -2
- package/tools/v1/customers/alerts/list-customers-v1-alerts.js.map +1 -1
- package/tools/v1/customers/alerts/list-customers-v1-alerts.mjs +3 -2
- package/tools/v1/customers/alerts/list-customers-v1-alerts.mjs.map +1 -1
- package/tools/v1/customers/alerts/reset-customers-v1-alerts.d.mts.map +1 -1
- package/tools/v1/customers/alerts/reset-customers-v1-alerts.d.ts.map +1 -1
- package/tools/v1/customers/alerts/reset-customers-v1-alerts.js +1 -1
- package/tools/v1/customers/alerts/reset-customers-v1-alerts.js.map +1 -1
- package/tools/v1/customers/alerts/reset-customers-v1-alerts.mjs +1 -1
- package/tools/v1/customers/alerts/reset-customers-v1-alerts.mjs.map +1 -1
- package/tools/v1/customers/alerts/retrieve-customers-v1-alerts.d.mts.map +1 -1
- package/tools/v1/customers/alerts/retrieve-customers-v1-alerts.d.ts.map +1 -1
- package/tools/v1/customers/alerts/retrieve-customers-v1-alerts.js +18 -1
- package/tools/v1/customers/alerts/retrieve-customers-v1-alerts.js.map +1 -1
- package/tools/v1/customers/alerts/retrieve-customers-v1-alerts.mjs +18 -1
- package/tools/v1/customers/alerts/retrieve-customers-v1-alerts.mjs.map +1 -1
- package/tools/v1/customers/archive-v1-customers.js +1 -1
- package/tools/v1/customers/archive-v1-customers.js.map +1 -1
- package/tools/v1/customers/archive-v1-customers.mjs +1 -1
- package/tools/v1/customers/archive-v1-customers.mjs.map +1 -1
- package/tools/v1/customers/billing-config/create-customers-v1-billing-config.d.mts.map +1 -1
- package/tools/v1/customers/billing-config/create-customers-v1-billing-config.d.ts.map +1 -1
- package/tools/v1/customers/billing-config/create-customers-v1-billing-config.js +6 -1
- package/tools/v1/customers/billing-config/create-customers-v1-billing-config.js.map +1 -1
- package/tools/v1/customers/billing-config/create-customers-v1-billing-config.mjs +6 -1
- package/tools/v1/customers/billing-config/create-customers-v1-billing-config.mjs.map +1 -1
- package/tools/v1/customers/billing-config/retrieve-customers-v1-billing-config.js +1 -1
- package/tools/v1/customers/billing-config/retrieve-customers-v1-billing-config.js.map +1 -1
- package/tools/v1/customers/billing-config/retrieve-customers-v1-billing-config.mjs +1 -1
- package/tools/v1/customers/billing-config/retrieve-customers-v1-billing-config.mjs.map +1 -1
- package/tools/v1/customers/commits/create-customers-v1-commits.d.mts.map +1 -1
- package/tools/v1/customers/commits/create-customers-v1-commits.d.ts.map +1 -1
- package/tools/v1/customers/commits/create-customers-v1-commits.js +36 -29
- package/tools/v1/customers/commits/create-customers-v1-commits.js.map +1 -1
- package/tools/v1/customers/commits/create-customers-v1-commits.mjs +36 -29
- package/tools/v1/customers/commits/create-customers-v1-commits.mjs.map +1 -1
- package/tools/v1/customers/commits/list-customers-v1-commits.d.mts.map +1 -1
- package/tools/v1/customers/commits/list-customers-v1-commits.d.ts.map +1 -1
- package/tools/v1/customers/commits/list-customers-v1-commits.js +3 -2
- package/tools/v1/customers/commits/list-customers-v1-commits.js.map +1 -1
- package/tools/v1/customers/commits/list-customers-v1-commits.mjs +3 -2
- package/tools/v1/customers/commits/list-customers-v1-commits.mjs.map +1 -1
- package/tools/v1/customers/commits/update-end-date-customers-v1-commits.js +1 -1
- package/tools/v1/customers/commits/update-end-date-customers-v1-commits.js.map +1 -1
- package/tools/v1/customers/commits/update-end-date-customers-v1-commits.mjs +1 -1
- package/tools/v1/customers/commits/update-end-date-customers-v1-commits.mjs.map +1 -1
- package/tools/v1/customers/create-v1-customers.d.mts.map +1 -1
- package/tools/v1/customers/create-v1-customers.d.ts.map +1 -1
- package/tools/v1/customers/create-v1-customers.js +15 -2
- package/tools/v1/customers/create-v1-customers.js.map +1 -1
- package/tools/v1/customers/create-v1-customers.mjs +15 -2
- package/tools/v1/customers/create-v1-customers.mjs.map +1 -1
- package/tools/v1/customers/credits/create-customers-v1-credits.d.mts.map +1 -1
- package/tools/v1/customers/credits/create-customers-v1-credits.d.ts.map +1 -1
- package/tools/v1/customers/credits/create-customers-v1-credits.js +30 -21
- package/tools/v1/customers/credits/create-customers-v1-credits.js.map +1 -1
- package/tools/v1/customers/credits/create-customers-v1-credits.mjs +30 -21
- package/tools/v1/customers/credits/create-customers-v1-credits.mjs.map +1 -1
- package/tools/v1/customers/credits/list-customers-v1-credits.d.mts.map +1 -1
- package/tools/v1/customers/credits/list-customers-v1-credits.d.ts.map +1 -1
- package/tools/v1/customers/credits/list-customers-v1-credits.js +3 -2
- package/tools/v1/customers/credits/list-customers-v1-credits.js.map +1 -1
- package/tools/v1/customers/credits/list-customers-v1-credits.mjs +3 -2
- package/tools/v1/customers/credits/list-customers-v1-credits.mjs.map +1 -1
- package/tools/v1/customers/credits/update-end-date-customers-v1-credits.js +1 -1
- package/tools/v1/customers/credits/update-end-date-customers-v1-credits.js.map +1 -1
- package/tools/v1/customers/credits/update-end-date-customers-v1-credits.mjs +1 -1
- package/tools/v1/customers/credits/update-end-date-customers-v1-credits.mjs.map +1 -1
- package/tools/v1/customers/invoices/list-breakdowns-customers-v1-invoices.js +1 -1
- package/tools/v1/customers/invoices/list-breakdowns-customers-v1-invoices.js.map +1 -1
- package/tools/v1/customers/invoices/list-breakdowns-customers-v1-invoices.mjs +1 -1
- package/tools/v1/customers/invoices/list-breakdowns-customers-v1-invoices.mjs.map +1 -1
- package/tools/v1/customers/invoices/list-customers-v1-invoices.js +1 -1
- package/tools/v1/customers/invoices/list-customers-v1-invoices.js.map +1 -1
- package/tools/v1/customers/invoices/list-customers-v1-invoices.mjs +1 -1
- package/tools/v1/customers/invoices/list-customers-v1-invoices.mjs.map +1 -1
- package/tools/v1/customers/invoices/retrieve-customers-v1-invoices.d.mts.map +1 -1
- package/tools/v1/customers/invoices/retrieve-customers-v1-invoices.d.ts.map +1 -1
- package/tools/v1/customers/invoices/retrieve-customers-v1-invoices.js +1 -1
- package/tools/v1/customers/invoices/retrieve-customers-v1-invoices.js.map +1 -1
- package/tools/v1/customers/invoices/retrieve-customers-v1-invoices.mjs +1 -1
- package/tools/v1/customers/invoices/retrieve-customers-v1-invoices.mjs.map +1 -1
- package/tools/v1/customers/list-billable-metrics-v1-customers.js +1 -1
- package/tools/v1/customers/list-billable-metrics-v1-customers.js.map +1 -1
- package/tools/v1/customers/list-billable-metrics-v1-customers.mjs +1 -1
- package/tools/v1/customers/list-billable-metrics-v1-customers.mjs.map +1 -1
- package/tools/v1/customers/list-costs-v1-customers.js +1 -1
- package/tools/v1/customers/list-costs-v1-customers.js.map +1 -1
- package/tools/v1/customers/list-costs-v1-customers.mjs +1 -1
- package/tools/v1/customers/list-costs-v1-customers.mjs.map +1 -1
- package/tools/v1/customers/list-v1-customers.js +1 -1
- package/tools/v1/customers/list-v1-customers.js.map +1 -1
- package/tools/v1/customers/list-v1-customers.mjs +1 -1
- package/tools/v1/customers/list-v1-customers.mjs.map +1 -1
- package/tools/v1/customers/named-schedules/retrieve-customers-v1-named-schedules.js +1 -1
- package/tools/v1/customers/named-schedules/retrieve-customers-v1-named-schedules.js.map +1 -1
- package/tools/v1/customers/named-schedules/retrieve-customers-v1-named-schedules.mjs +1 -1
- package/tools/v1/customers/named-schedules/retrieve-customers-v1-named-schedules.mjs.map +1 -1
- package/tools/v1/customers/named-schedules/update-customers-v1-named-schedules.d.mts.map +1 -1
- package/tools/v1/customers/named-schedules/update-customers-v1-named-schedules.d.ts.map +1 -1
- package/tools/v1/customers/named-schedules/update-customers-v1-named-schedules.js +1 -0
- package/tools/v1/customers/named-schedules/update-customers-v1-named-schedules.js.map +1 -1
- package/tools/v1/customers/named-schedules/update-customers-v1-named-schedules.mjs +1 -0
- package/tools/v1/customers/named-schedules/update-customers-v1-named-schedules.mjs.map +1 -1
- package/tools/v1/customers/plans/list-customers-v1-plans.js +1 -1
- package/tools/v1/customers/plans/list-customers-v1-plans.js.map +1 -1
- package/tools/v1/customers/plans/list-customers-v1-plans.mjs +1 -1
- package/tools/v1/customers/plans/list-customers-v1-plans.mjs.map +1 -1
- package/tools/v1/customers/preview-events-v1-customers.d.mts.map +1 -1
- package/tools/v1/customers/preview-events-v1-customers.d.ts.map +1 -1
- package/tools/v1/customers/preview-events-v1-customers.js +1 -0
- package/tools/v1/customers/preview-events-v1-customers.js.map +1 -1
- package/tools/v1/customers/preview-events-v1-customers.mjs +1 -0
- package/tools/v1/customers/preview-events-v1-customers.mjs.map +1 -1
- package/tools/v1/customers/retrieve-billing-configurations-v1-customers.d.mts +45 -0
- package/tools/v1/customers/retrieve-billing-configurations-v1-customers.d.mts.map +1 -0
- package/tools/v1/customers/retrieve-billing-configurations-v1-customers.d.ts +45 -0
- package/tools/v1/customers/retrieve-billing-configurations-v1-customers.d.ts.map +1 -0
- package/tools/v1/customers/retrieve-billing-configurations-v1-customers.js +43 -0
- package/tools/v1/customers/retrieve-billing-configurations-v1-customers.js.map +1 -0
- package/tools/v1/customers/retrieve-billing-configurations-v1-customers.mjs +39 -0
- package/tools/v1/customers/retrieve-billing-configurations-v1-customers.mjs.map +1 -0
- package/tools/v1/customers/retrieve-v1-customers.js +1 -1
- package/tools/v1/customers/retrieve-v1-customers.js.map +1 -1
- package/tools/v1/customers/retrieve-v1-customers.mjs +1 -1
- package/tools/v1/customers/retrieve-v1-customers.mjs.map +1 -1
- package/tools/v1/customers/set-billing-configurations-v1-customers.d.mts +45 -0
- package/tools/v1/customers/set-billing-configurations-v1-customers.d.mts.map +1 -0
- package/tools/v1/customers/set-billing-configurations-v1-customers.d.ts +45 -0
- package/tools/v1/customers/set-billing-configurations-v1-customers.d.ts.map +1 -0
- package/tools/v1/customers/set-billing-configurations-v1-customers.js +77 -0
- package/tools/v1/customers/set-billing-configurations-v1-customers.js.map +1 -0
- package/tools/v1/customers/set-billing-configurations-v1-customers.mjs +73 -0
- package/tools/v1/customers/set-billing-configurations-v1-customers.mjs.map +1 -0
- package/tools/v1/customers/set-ingest-aliases-v1-customers.js +1 -1
- package/tools/v1/customers/set-ingest-aliases-v1-customers.js.map +1 -1
- package/tools/v1/customers/set-ingest-aliases-v1-customers.mjs +1 -1
- package/tools/v1/customers/set-ingest-aliases-v1-customers.mjs.map +1 -1
- package/tools/v1/customers/set-name-v1-customers.js +1 -1
- package/tools/v1/customers/set-name-v1-customers.js.map +1 -1
- package/tools/v1/customers/set-name-v1-customers.mjs +1 -1
- package/tools/v1/customers/set-name-v1-customers.mjs.map +1 -1
- package/tools/v1/customers/update-config-v1-customers.d.mts.map +1 -1
- package/tools/v1/customers/update-config-v1-customers.d.ts.map +1 -1
- package/tools/v1/customers/update-config-v1-customers.js +1 -1
- package/tools/v1/customers/update-config-v1-customers.js.map +1 -1
- package/tools/v1/customers/update-config-v1-customers.mjs +1 -1
- package/tools/v1/customers/update-config-v1-customers.mjs.map +1 -1
- package/tools/v1/dashboards/get-embeddable-url-v1-dashboards.d.mts.map +1 -1
- package/tools/v1/dashboards/get-embeddable-url-v1-dashboards.d.ts.map +1 -1
- package/tools/v1/dashboards/get-embeddable-url-v1-dashboards.js +2 -1
- package/tools/v1/dashboards/get-embeddable-url-v1-dashboards.js.map +1 -1
- package/tools/v1/dashboards/get-embeddable-url-v1-dashboards.mjs +2 -1
- package/tools/v1/dashboards/get-embeddable-url-v1-dashboards.mjs.map +1 -1
- package/tools/v1/invoices/regenerate-v1-invoices.js +1 -1
- package/tools/v1/invoices/regenerate-v1-invoices.js.map +1 -1
- package/tools/v1/invoices/regenerate-v1-invoices.mjs +1 -1
- package/tools/v1/invoices/regenerate-v1-invoices.mjs.map +1 -1
- package/tools/v1/invoices/void-v1-invoices.js +1 -1
- package/tools/v1/invoices/void-v1-invoices.js.map +1 -1
- package/tools/v1/invoices/void-v1-invoices.mjs +1 -1
- package/tools/v1/invoices/void-v1-invoices.mjs.map +1 -1
- package/tools/v1/plans/get-details-v1-plans.js +1 -1
- package/tools/v1/plans/get-details-v1-plans.js.map +1 -1
- package/tools/v1/plans/get-details-v1-plans.mjs +1 -1
- package/tools/v1/plans/get-details-v1-plans.mjs.map +1 -1
- package/tools/v1/plans/list-charges-v1-plans.js +1 -1
- package/tools/v1/plans/list-charges-v1-plans.js.map +1 -1
- package/tools/v1/plans/list-charges-v1-plans.mjs +1 -1
- package/tools/v1/plans/list-charges-v1-plans.mjs.map +1 -1
- package/tools/v1/plans/list-customers-v1-plans.js +1 -1
- package/tools/v1/plans/list-customers-v1-plans.js.map +1 -1
- package/tools/v1/plans/list-customers-v1-plans.mjs +1 -1
- package/tools/v1/plans/list-customers-v1-plans.mjs.map +1 -1
- package/tools/v1/plans/list-v1-plans.js +1 -1
- package/tools/v1/plans/list-v1-plans.js.map +1 -1
- package/tools/v1/plans/list-v1-plans.mjs +1 -1
- package/tools/v1/plans/list-v1-plans.mjs.map +1 -1
- package/tools/v1/pricing-units/list-v1-pricing-units.js +1 -1
- package/tools/v1/pricing-units/list-v1-pricing-units.js.map +1 -1
- package/tools/v1/pricing-units/list-v1-pricing-units.mjs +1 -1
- package/tools/v1/pricing-units/list-v1-pricing-units.mjs.map +1 -1
- package/tools/v1/services/list-v1-services.js +1 -1
- package/tools/v1/services/list-v1-services.js.map +1 -1
- package/tools/v1/services/list-v1-services.mjs +1 -1
- package/tools/v1/services/list-v1-services.mjs.map +1 -1
- package/tools/v1/usage/ingest-v1-usage.d.mts.map +1 -1
- package/tools/v1/usage/ingest-v1-usage.d.ts.map +1 -1
- package/tools/v1/usage/ingest-v1-usage.js +3 -2
- package/tools/v1/usage/ingest-v1-usage.js.map +1 -1
- package/tools/v1/usage/ingest-v1-usage.mjs +3 -2
- package/tools/v1/usage/ingest-v1-usage.mjs.map +1 -1
- package/tools/v1/usage/list-v1-usage.d.mts.map +1 -1
- package/tools/v1/usage/list-v1-usage.d.ts.map +1 -1
- package/tools/v1/usage/list-v1-usage.js +3 -2
- package/tools/v1/usage/list-v1-usage.js.map +1 -1
- package/tools/v1/usage/list-v1-usage.mjs +3 -2
- package/tools/v1/usage/list-v1-usage.mjs.map +1 -1
- package/tools/v1/usage/list-with-groups-v1-usage.js +1 -1
- package/tools/v1/usage/list-with-groups-v1-usage.js.map +1 -1
- package/tools/v1/usage/list-with-groups-v1-usage.mjs +1 -1
- package/tools/v1/usage/list-with-groups-v1-usage.mjs.map +1 -1
- package/tools/v1/usage/search-v1-usage.js +1 -1
- package/tools/v1/usage/search-v1-usage.js.map +1 -1
- package/tools/v1/usage/search-v1-usage.mjs +1 -1
- package/tools/v1/usage/search-v1-usage.mjs.map +1 -1
- package/tools/v2/contracts/edit-commit-v2-contracts.d.mts.map +1 -1
- package/tools/v2/contracts/edit-commit-v2-contracts.d.ts.map +1 -1
- package/tools/v2/contracts/edit-commit-v2-contracts.js +37 -21
- package/tools/v2/contracts/edit-commit-v2-contracts.js.map +1 -1
- package/tools/v2/contracts/edit-commit-v2-contracts.mjs +37 -21
- package/tools/v2/contracts/edit-commit-v2-contracts.mjs.map +1 -1
- package/tools/v2/contracts/edit-credit-v2-contracts.d.mts.map +1 -1
- package/tools/v2/contracts/edit-credit-v2-contracts.d.ts.map +1 -1
- package/tools/v2/contracts/edit-credit-v2-contracts.js +37 -21
- package/tools/v2/contracts/edit-credit-v2-contracts.js.map +1 -1
- package/tools/v2/contracts/edit-credit-v2-contracts.mjs +37 -21
- package/tools/v2/contracts/edit-credit-v2-contracts.mjs.map +1 -1
- package/tools/v2/contracts/edit-v2-contracts.d.mts.map +1 -1
- package/tools/v2/contracts/edit-v2-contracts.d.ts.map +1 -1
- package/tools/v2/contracts/edit-v2-contracts.js +277 -718
- package/tools/v2/contracts/edit-v2-contracts.js.map +1 -1
- package/tools/v2/contracts/edit-v2-contracts.mjs +277 -718
- package/tools/v2/contracts/edit-v2-contracts.mjs.map +1 -1
- package/tools/v2/contracts/get-edit-history-v2-contracts.js +1 -1
- package/tools/v2/contracts/get-edit-history-v2-contracts.js.map +1 -1
- package/tools/v2/contracts/get-edit-history-v2-contracts.mjs +1 -1
- package/tools/v2/contracts/get-edit-history-v2-contracts.mjs.map +1 -1
- package/tools/v2/contracts/list-v2-contracts.js +1 -1
- package/tools/v2/contracts/list-v2-contracts.js.map +1 -1
- package/tools/v2/contracts/list-v2-contracts.mjs +1 -1
- package/tools/v2/contracts/list-v2-contracts.mjs.map +1 -1
- package/tools/v2/contracts/retrieve-v2-contracts.d.mts.map +1 -1
- package/tools/v2/contracts/retrieve-v2-contracts.d.ts.map +1 -1
- package/tools/v2/contracts/retrieve-v2-contracts.js +1 -1
- package/tools/v2/contracts/retrieve-v2-contracts.js.map +1 -1
- package/tools/v2/contracts/retrieve-v2-contracts.mjs +1 -1
- package/tools/v2/contracts/retrieve-v2-contracts.mjs.map +1 -1
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# Metronome
|
|
1
|
+
# Metronome TypeScript MCP Server
|
|
2
2
|
|
|
3
3
|
It is generated with [Stainless](https://www.stainless.com/).
|
|
4
4
|
|
|
@@ -128,6 +128,45 @@ over time, you can manually enable or disable certain capabilities:
|
|
|
128
128
|
--resource=cards,accounts --operation=read --tag=kyc --no-tool=create_cards
|
|
129
129
|
```
|
|
130
130
|
|
|
131
|
+
## Running remotely
|
|
132
|
+
|
|
133
|
+
Launching the client with `--transport=http` launches the server as a remote server using Streamable HTTP transport. The `--port` setting can choose the port it will run on, and the `--socket` setting allows it to run on a Unix socket.
|
|
134
|
+
|
|
135
|
+
Authorization can be provided via the `Authorization` header using the Bearer scheme.
|
|
136
|
+
|
|
137
|
+
Additionally, authorization can be provided via the following headers:
|
|
138
|
+
| Header | Equivalent client option | Security scheme |
|
|
139
|
+
| -------------------------- | ------------------------ | --------------- |
|
|
140
|
+
| `x-metronome-bearer-token` | `bearerToken` | bearerAuth |
|
|
141
|
+
|
|
142
|
+
A configuration JSON for this server might look like this, assuming the server is hosted at `http://localhost:3000`:
|
|
143
|
+
|
|
144
|
+
```json
|
|
145
|
+
{
|
|
146
|
+
"mcpServers": {
|
|
147
|
+
"metronome_sdk_api": {
|
|
148
|
+
"url": "http://localhost:3000",
|
|
149
|
+
"headers": {
|
|
150
|
+
"Authorization": "Bearer <auth value>"
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
The command-line arguments for filtering tools and specifying clients can also be used as query parameters in the URL.
|
|
158
|
+
For example, to exclude specific tools while including others, use the URL:
|
|
159
|
+
|
|
160
|
+
```
|
|
161
|
+
http://localhost:3000?resource=cards&resource=accounts&no_tool=create_cards
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
Or, to configure for the Cursor client, with a custom max tool name length, use the URL:
|
|
165
|
+
|
|
166
|
+
```
|
|
167
|
+
http://localhost:3000?client=cursor&capability=tool-name-length%3D40
|
|
168
|
+
```
|
|
169
|
+
|
|
131
170
|
## Importing the tools and server individually
|
|
132
171
|
|
|
133
172
|
```js
|
|
@@ -169,17 +208,130 @@ The following tools are available in this MCP server.
|
|
|
169
208
|
|
|
170
209
|
### Resource `v2.contracts`:
|
|
171
210
|
|
|
172
|
-
- `retrieve_v2_contracts` (`write`):
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
-
|
|
177
|
-
-
|
|
211
|
+
- `retrieve_v2_contracts` (`write`): Gets the details for a specific contract, including contract term, rate card information, credits and commits, and more.
|
|
212
|
+
|
|
213
|
+
### Use this endpoint to:
|
|
214
|
+
|
|
215
|
+
- Check the duration of a customer's current contract
|
|
216
|
+
- Get details on contract terms, including access schedule amounts for commitments and credits
|
|
217
|
+
- Understand the state of a contract at a past time. As you can evolve the terms of a contract over time through editing, use the `as_of_date` parameter to view the full contract configuration as of that point in time.
|
|
218
|
+
|
|
219
|
+
### Usage guidelines:
|
|
220
|
+
|
|
221
|
+
- Optionally, use the `include_balance` and `include_ledger` fields to include balances and ledgers in the credit and commit responses. Using these fields will cause the query to be slower.
|
|
222
|
+
|
|
223
|
+
- `list_v2_contracts` (`write`): For a given customer, lists all of their contracts in chronological order.
|
|
224
|
+
|
|
225
|
+
### Use this endpoint to:
|
|
226
|
+
|
|
227
|
+
- Check if a customer is provisioned with any contract, and at which tier
|
|
228
|
+
- Check the duration and terms of a customer's current contract
|
|
229
|
+
- Power a page in your end customer experience that shows the customer's history of tiers (e.g. this customer started out on the Pro Plan, then downgraded to the Starter plan).
|
|
230
|
+
|
|
231
|
+
### Usage guidelines:
|
|
232
|
+
|
|
233
|
+
Use the `starting_at`, `covering_date`, and `include_archived` parameters to filter the list of returned contracts. For example, to list only currently active contracts, pass `covering_date` equal to the current time.
|
|
234
|
+
|
|
235
|
+
- `edit_v2_contracts` (`write`): The ability to edit a contract helps you react quickly to the needs of your customers and your business.
|
|
236
|
+
|
|
237
|
+
### Use this endpoint to:
|
|
238
|
+
|
|
239
|
+
- Encode mid-term commitment and discount changes
|
|
240
|
+
- Fix configuration mistakes and easily roll back packaging changes
|
|
241
|
+
|
|
242
|
+
### Key response fields:
|
|
243
|
+
|
|
244
|
+
- The `id` of the edit
|
|
245
|
+
- Complete edit details. For example, if you edited the contract to add new overrides and credits, you will receive the IDs of those overrides and credits in the response.
|
|
246
|
+
|
|
247
|
+
### Usage guidelines:
|
|
248
|
+
|
|
249
|
+
- When you edit a contract, any draft invoices update immediately to reflect that edit. Finalized invoices remain unchanged - you must void and regenerate them in the UI or API to reflect the edit.
|
|
250
|
+
- Contract editing must be enabled to use this endpoint. Reach out to your Metronome representative to learn more.
|
|
251
|
+
|
|
252
|
+
- `edit_commit_v2_contracts` (`write`): Edit specific details for a contract-level or customer-level commit. Use this endpoint to modify individual commit access schedules, invoice schedules, applicable products, invoicing contracts, or other fields.
|
|
253
|
+
|
|
254
|
+
### Usage guidelines:
|
|
255
|
+
|
|
256
|
+
- As with all edits in Metronome, draft invoices will reflect the edit immediately, while finalized invoices are untouched unless voided and regenerated.
|
|
257
|
+
- If a commit's invoice schedule item is associated with a finalized invoice, you cannot remove or update the invoice schedule item.
|
|
258
|
+
- If a commit's invoice schedule item is associated with a voided invoice, you cannot remove the invoice schedule item.
|
|
259
|
+
- You cannot remove an commit access schedule segment that was applied to a finalized invoice. You can void the invoice beforehand and then remove the access schedule segment.
|
|
260
|
+
|
|
261
|
+
- `edit_credit_v2_contracts` (`write`): Edit details for a contract-level or customer-level credit.
|
|
262
|
+
|
|
263
|
+
### Use this endpoint to:
|
|
264
|
+
|
|
265
|
+
- Extend the duration or the amount of an existing free credit like a trial
|
|
266
|
+
- Modify individual credit access schedules, applicable products, priority, or other fields.
|
|
267
|
+
|
|
268
|
+
### Usage guidelines:
|
|
269
|
+
|
|
270
|
+
- As with all edits in Metronome, draft invoices will reflect the edit immediately, while finalized invoices are untouched unless voided and regenerated.
|
|
271
|
+
- You cannot remove an access schedule segment that was applied to a finalized invoice. You can void the invoice beforehand and then remove the access schedule segment.
|
|
272
|
+
|
|
273
|
+
- `get_edit_history_v2_contracts` (`write`): List all the edits made to a contract over time. In Metronome, you can edit a contract at any point after it's created to fix mistakes or reflect changes in terms. Metronome stores a full history of all edits that were ever made to a contract, whether through the UI, `editContract` endpoint, or other endpoints like `updateContractEndDate`.
|
|
274
|
+
|
|
275
|
+
### Use this endpoint to:
|
|
276
|
+
|
|
277
|
+
- Understand what changes were made to a contract, when, and by who
|
|
278
|
+
|
|
279
|
+
### Key response fields:
|
|
280
|
+
|
|
281
|
+
- An array of every edit ever made to the contract
|
|
282
|
+
- Details on each individual edit - for example showing that in one edit, a user added two discounts and incremented a subscription quantity.
|
|
178
283
|
|
|
179
284
|
### Resource `v1.alerts`:
|
|
180
285
|
|
|
181
|
-
- `create_v1_alerts` (`write`): Create a new alert
|
|
182
|
-
|
|
286
|
+
- `create_v1_alerts` (`write`): Create a new alert to monitor customer spending, balances, and billing metrics in real-time. Metronome's alert system provides industry-leading speed with immediate evaluation capabilities, enabling you to proactively manage customer accounts and prevent revenue leakage.
|
|
287
|
+
|
|
288
|
+
This endpoint creates configurable alerts that continuously monitor various billing thresholds including spend limits, credit balances, commitment utilization, and invoice totals. Alerts can be configured globally for all customers or targeted to specific customer accounts. Custom fields can be used on certain alert types to further target alerts to groups of customers.
|
|
289
|
+
|
|
290
|
+
### Use this endpoint to:
|
|
291
|
+
|
|
292
|
+
- Proactively monitor customer spending patterns to prevent unexpected overages or credit exhaustion
|
|
293
|
+
- Automate notifications when customers approach commitment limits or credit thresholds
|
|
294
|
+
- Enable real-time intervention for accounts at risk of churn or payment issues
|
|
295
|
+
- Scale billing operations by automating threshold-based workflows and notifications
|
|
296
|
+
|
|
297
|
+
### Key response fields:
|
|
298
|
+
|
|
299
|
+
A successful response returns a CustomerAlert object containing:
|
|
300
|
+
|
|
301
|
+
- The alert configuration with its unique ID and current status
|
|
302
|
+
- The customer's evaluation status (ok, in_alarm, or evaluating)
|
|
303
|
+
- Alert metadata including type, threshold values, and update timestamps
|
|
304
|
+
|
|
305
|
+
### Usage guidelines:
|
|
306
|
+
|
|
307
|
+
- Immediate evaluation: Set `evaluate_on_create` : `true` (default) for instant evaluation against existing customers
|
|
308
|
+
- Uniqueness constraints: Each alert must have a unique `uniqueness_key` within your organization. Use `release_uniqueness_key` : `true` when archiving to reuse keys
|
|
309
|
+
- Alert type requirements: Different alert types require specific fields (e.g., `billable_metric_id` for usage alerts, `credit_type_id` for credit-based alerts)
|
|
310
|
+
- Webhook delivery: Alerts trigger webhook notifications for real-time integration with your systems. Configure webhook endpoints before creating alerts
|
|
311
|
+
- Performance at scale: Metronome's event-driven architecture processes alert evaluations in real-time as usage events stream in, unlike competitors who rely on periodic polling or batch evaluation cycles
|
|
312
|
+
|
|
313
|
+
- `archive_v1_alerts` (`write`): Permanently disable an alert and remove it from active monitoring across all customers. Archived alerts stop evaluating immediately and can optionally release their uniqueness key for reuse in future alert configurations.
|
|
314
|
+
|
|
315
|
+
### Use this endpoint to:
|
|
316
|
+
|
|
317
|
+
- Decommission alerts that are no longer needed
|
|
318
|
+
- Clean up test or deprecated alert configurations
|
|
319
|
+
- Free up uniqueness keys for reuse with new alerts
|
|
320
|
+
- Stop alert evaluations without losing historical configuration data
|
|
321
|
+
- Disable outdated monitoring rules during pricing model transitions
|
|
322
|
+
|
|
323
|
+
### Key response fields:
|
|
324
|
+
|
|
325
|
+
- data: Object containing the archived alert's ID
|
|
326
|
+
- Alert evaluation stops immediately for all affected customers
|
|
327
|
+
- Historical alert data and configurations remain accessible for audit purposes
|
|
328
|
+
|
|
329
|
+
### Usage guidelines:
|
|
330
|
+
|
|
331
|
+
- Irreversible for evaluation: Archived alerts cannot be re-enabled; create a new alert to resume monitoring
|
|
332
|
+
- Uniqueness key handling: Set `release_uniqueness_key` : `true` to reuse the key in future alerts
|
|
333
|
+
- Immediate effect: Alert evaluation stops instantly across all customers
|
|
334
|
+
- Historical preservation: Archive operation maintains alert history and configuration for compliance and auditing
|
|
183
335
|
|
|
184
336
|
### Resource `v1.plans`:
|
|
185
337
|
|
|
@@ -198,26 +350,161 @@ The following tools are available in this MCP server.
|
|
|
198
350
|
|
|
199
351
|
### Resource `v1.pricing_units`:
|
|
200
352
|
|
|
201
|
-
- `list_v1_pricing_units` (`read`): List all pricing units (
|
|
353
|
+
- `list_v1_pricing_units` (`read`): List all pricing units. All fiat currency types (for example, USD or GBP) will be included, as well as any custom pricing units that were configured. Custom pricing units can be used to charge for usage in a non-fiat pricing unit, for example AI credits.
|
|
354
|
+
|
|
355
|
+
Note: The USD (cents) pricing unit is 2714e483-4ff1-48e4-9e25-ac732e8f24f2.
|
|
202
356
|
|
|
203
357
|
### Resource `v1.customers`:
|
|
204
358
|
|
|
205
|
-
- `create_v1_customers` (`write`): Create a new customer
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
359
|
+
- `create_v1_customers` (`write`): Create a new customer in Metronome and optionally the billing configuration (recommended) which dictates where invoices for the customer will be sent or where payment will be collected.
|
|
360
|
+
|
|
361
|
+
### Use this endpoint to:
|
|
362
|
+
|
|
363
|
+
Execute your customer provisioning workflows for either PLG motions, where customers originate in your platform, or SLG motions, where customers originate in your sales system.
|
|
364
|
+
|
|
365
|
+
### Key response fields:
|
|
366
|
+
|
|
367
|
+
This end-point returns the `customer_id` created by the request. This id can be used to fetch relevant billing configurations and create contracts.
|
|
368
|
+
|
|
369
|
+
### Example workflow:
|
|
370
|
+
|
|
371
|
+
- Generally, Metronome recommends first creating the customer in the downstream payment / ERP system when payment method is collected and then creating the customer in Metronome using the response (i.e. `customer_id`) from the downstream system. If you do not create a billing configuration on customer creation, you can add it later.
|
|
372
|
+
- Once a customer is created, you can then create a contract for the customer. In the contract creation process, you will need to add the customer billing configuration to the contract to ensure Metronome invoices the customer correctly. This is because a customer can have multiple configurations.
|
|
373
|
+
- As part of the customer creation process, set the ingest alias for the customer which will ensure usage is accurately mapped to the customer. Ingest aliases can be added or changed after the creation process as well.
|
|
374
|
+
|
|
375
|
+
### Usage guidelines:
|
|
376
|
+
|
|
377
|
+
For details on different billing configurations for different systems, review the `/setCustomerBillingConfiguration` end-point.
|
|
378
|
+
|
|
379
|
+
- `retrieve_v1_customers` (`read`): Get detailed information for a specific customer by their Metronome ID. Returns customer profile data including name, creation date, ingest aliases, configuration settings, and custom fields. Use this endpoint to fetch complete customer details for billing operations or account management.
|
|
380
|
+
|
|
381
|
+
Note: If searching for a customer billing configuration, use the `/getCustomerBillingConfigurations` endpoint.
|
|
382
|
+
|
|
383
|
+
- `list_v1_customers` (`read`): Gets a paginated list of all customers in your Metronome account. Use this endpoint to browse your customer base, implement customer search functionality, or sync customer data with external systems. Returns customer details including IDs, names, and configuration settings. Supports filtering and pagination parameters for efficient data retrieval.
|
|
384
|
+
- `archive_v1_customers` (`write`): Use this endpoint to archive a customer while preserving auditability. Archiving a customer will automatically archive all contracts as of the current date and void all corresponding invoices. Use this endpoint if a customer is onboarded by mistake.
|
|
385
|
+
|
|
386
|
+
### Usage guidelines:
|
|
387
|
+
|
|
388
|
+
- Once a customer is archived, it cannot be unarchived.
|
|
389
|
+
- Archived customers can still be viewed through the API or the UI for audit purposes.
|
|
390
|
+
- Ingest aliases remain idempotent for archived customers. In order to reuse an ingest alias, first remove the ingest alias from the customer prior to archiving.
|
|
391
|
+
- Any alerts associated with the customer will no longer be triggered.
|
|
392
|
+
|
|
393
|
+
- `list_billable_metrics_v1_customers` (`read`): Get all billable metrics available for a specific customer. Supports pagination and filtering by current plan status or archived metrics. Use this endpoint to see which metrics are being tracked for billing calculations for a given customer.
|
|
210
394
|
- `list_costs_v1_customers` (`read`): Fetch daily pending costs for the specified customer, broken down by credit type and line items. Note: this is not supported for customers whose plan includes a UNIQUE-type billable metric.
|
|
211
395
|
- `preview_events_v1_customers` (`write`): Preview how a set of events will affect a customer's invoice. Generates a draft invoice for a customer using their current contract configuration and the provided events. This is useful for testing how new events will affect the customer's invoice before they are actually processed.
|
|
212
|
-
- `
|
|
213
|
-
- `
|
|
214
|
-
|
|
396
|
+
- `retrieve_billing_configurations_v1_customers` (`write`): Returns all billing configurations previously set for the customer. Use during the contract provisioning process to fetch the `billing_provider_configuration_id` needed to set the contract billing configuration.
|
|
397
|
+
- `set_billing_configurations_v1_customers` (`write`): Create a billing configuration for a customer. Once created, these configurations are available to associate to a contract and dictates which downstream system to collect payment in or send the invoice to. You can create multiple configurations per customer. The configuration formats are distinct for each downstream provider.
|
|
398
|
+
|
|
399
|
+
### Use this endpoint to:
|
|
400
|
+
|
|
401
|
+
- Add the initial configuration to an existing customer. Once created, the billing configuration can then be associated to the customer's contract.
|
|
402
|
+
- Add a new configuration to an existing customer. This might be used as part of an upgrade or downgrade workflow where the customer was previously billed through system A (e.g. Stripe) but will now be billed through system B (e.g. AWS). Once created, the new configuration can then be associated to the customer's contract.
|
|
403
|
+
|
|
404
|
+
### Delivery method options:
|
|
405
|
+
|
|
406
|
+
- `direct_to_billing_provider`: Use when Metronome should send invoices directly to the billing provider's API (e.g., Stripe, NetSuite). This is the most common method for automated billing workflows.
|
|
407
|
+
- `tackle`: Use specifically for AWS Marketplace transactions that require Tackle's co-selling platform for partner attribution and commission tracking.
|
|
408
|
+
- `aws_sqs`: Use when you want invoice data delivered to an AWS SQS queue for custom processing before sending to your billing system.
|
|
409
|
+
- `aws_sns`: Use when you want invoice notifications published to an AWS SNS topic for event-driven billing workflows.
|
|
410
|
+
|
|
411
|
+
### Key response fields:
|
|
412
|
+
|
|
413
|
+
The id for the customer billing configuration. This id can be used to associate the billing configuration to a contract.
|
|
414
|
+
|
|
415
|
+
### Usage guidelines:
|
|
416
|
+
|
|
417
|
+
Must use the `delivery_method_id` if you have multiple Stripe accounts connected to Metronome.
|
|
418
|
+
|
|
419
|
+
- `set_ingest_aliases_v1_customers` (`write`): Sets the ingest aliases for a customer. Use this endpoint to associate a Metronome customer with an internal ID for easier tracking between systems. Ingest aliases can be used in the `customer_id` field when sending usage events to Metronome.
|
|
420
|
+
|
|
421
|
+
### Usage guidelines:
|
|
422
|
+
|
|
423
|
+
- This call is idempotent and fully replaces the set of ingest aliases for the given customer.
|
|
424
|
+
- Switching an ingest alias from one customer to another will associate all corresponding usage to the new customer.
|
|
425
|
+
- Use multiple ingest aliases to model child organizations within a single Metronome customer.
|
|
426
|
+
|
|
427
|
+
- `set_name_v1_customers` (`write`): Updates the display name for a customer record. Use this to correct customer names, update business names after rebranding, or maintain accurate customer information for invoicing and reporting. Returns the updated customer object with the new name applied immediately across all billing documents and interfaces.
|
|
428
|
+
- `update_config_v1_customers` (`write`): Update configuration settings for a specific customer, such as external system integrations (e.g., Salesforce account ID) and other customer-specific billing parameters. Use this endpoint to modify customer configurations without affecting core customer data like name or ingest aliases.
|
|
215
429
|
|
|
216
430
|
### Resource `v1.customers.alerts`:
|
|
217
431
|
|
|
218
|
-
- `retrieve_customers_v1_alerts` (`write`):
|
|
219
|
-
|
|
220
|
-
|
|
432
|
+
- `retrieve_customers_v1_alerts` (`write`): Retrieve the real-time evaluation status for a specific alert-customer pair. This endpoint provides instant visibility into whether a customer has triggered an alert condition, enabling you to monitor account health and take proactive action based on current alert states.
|
|
433
|
+
|
|
434
|
+
### Use this endpoint to:
|
|
435
|
+
|
|
436
|
+
- Check if a specific customer is currently violating an alert threshold (`in_alarm` status)
|
|
437
|
+
- Verify alert configuration details and threshold values for a customer
|
|
438
|
+
- Integrate alert status checks into customer support tools or admin interfaces
|
|
439
|
+
|
|
440
|
+
### Key response fields:
|
|
441
|
+
|
|
442
|
+
A CustomerAlert object containing:
|
|
443
|
+
|
|
444
|
+
- `customer_status`: The current evaluation state
|
|
445
|
+
|
|
446
|
+
- `ok` - Customer is within acceptable thresholds
|
|
447
|
+
- `in_alarm`- Customer has breached the alert threshold
|
|
448
|
+
- `evaluating` - Alert has yet to be evaluated (typically due to a customer or alert having just been created)
|
|
449
|
+
- `null` - Alert has been archived
|
|
450
|
+
- `triggered_by`: Additional context about what caused the alert to trigger (when applicable)
|
|
451
|
+
- alert: Complete alert configuration including:
|
|
452
|
+
- Alert ID, name, and type
|
|
453
|
+
- Current threshold values and credit type information
|
|
454
|
+
- Alert status (enabled, disabled, or archived)
|
|
455
|
+
- Last update timestamp
|
|
456
|
+
- Any applied filters (credit grant types, custom fields, group values)
|
|
457
|
+
|
|
458
|
+
### Usage guidelines:
|
|
459
|
+
|
|
460
|
+
- Customer status: Returns the current evaluation state, not historical data. For alert history, use webhook notifications or event logs
|
|
461
|
+
- Archived alerts: Returns null for customer_status if the alert has been archived, but still includes the alert configuration details
|
|
462
|
+
- Integration patterns: This endpoint can be used to check a customer's alert status, but shouldn't be scraped. You should instead rely on the webhook notification to understand when customers are moved to IN_ALARM.
|
|
463
|
+
- Error handling: Returns 404 if either the customer or alert ID doesn't exist or isn't accessible to your organization
|
|
464
|
+
|
|
465
|
+
- `list_customers_v1_alerts` (`write`): Retrieve all alert configurations and their current statuses for a specific customer in a single API call. This endpoint provides a comprehensive view of all alerts monitoring a customer account.
|
|
466
|
+
|
|
467
|
+
### Use this endpoint to:
|
|
468
|
+
|
|
469
|
+
- Display all active alerts for a customer in dashboards or admin panels
|
|
470
|
+
- Quickly identify which alerts a customer is currently triggering
|
|
471
|
+
- Audit alert coverage for specific accounts
|
|
472
|
+
- Filter alerts by status (enabled, disabled, or archived)
|
|
473
|
+
|
|
474
|
+
### Key response fields:
|
|
475
|
+
|
|
476
|
+
- data: Array of CustomerAlert objects, each containing:
|
|
477
|
+
- Current evaluation status (`ok`, `in_alarm`, `evaluating`, or `null`)
|
|
478
|
+
- Complete alert configuration and threshold details
|
|
479
|
+
- Alert metadata including type, name, and last update time
|
|
480
|
+
- `next_page`: Pagination cursor for retrieving additional results
|
|
481
|
+
|
|
482
|
+
### Usage guidelines:
|
|
483
|
+
|
|
484
|
+
- Default behavior: Returns only enabled alerts unless alert_statuses filter is specified
|
|
485
|
+
- Pagination: Use the `next_page` cursor to retrieve all results for customers with many alerts
|
|
486
|
+
|
|
487
|
+
- `reset_customers_v1_alerts` (`write`): Force an immediate re-evaluation of a specific alert for a customer, clearing any previous state and triggering a fresh assessment against current thresholds. This endpoint ensures alert accuracy after configuration changes or data corrections.
|
|
488
|
+
|
|
489
|
+
### Use this endpoint to:
|
|
490
|
+
|
|
491
|
+
- Clear false positive alerts after fixing data issues
|
|
492
|
+
- Re-evaluate alerts after adjusting customer balances or credits
|
|
493
|
+
- Test alert behavior during development and debugging
|
|
494
|
+
- Resolve stuck alerts that may be in an incorrect state
|
|
495
|
+
- Trigger immediate evaluation after threshold modifications
|
|
496
|
+
|
|
497
|
+
### Key response fields:
|
|
498
|
+
|
|
499
|
+
- 200 Success: Confirmation that the alert has been reset and re-evaluation initiated
|
|
500
|
+
- No response body is returned - the operation completes asynchronously
|
|
501
|
+
|
|
502
|
+
### Usage guidelines:
|
|
503
|
+
|
|
504
|
+
- Immediate effect: Triggers re-evaluation instantly, which may result in new webhook notifications if thresholds are breached
|
|
505
|
+
- State clearing: Removes any cached evaluation state, ensuring a fresh assessment
|
|
506
|
+
- Use sparingly: Intended for exceptional cases, not routine operations
|
|
507
|
+
- Asynchronous processing: The reset completes immediately, but re-evaluation happens in the background
|
|
221
508
|
|
|
222
509
|
### Resource `v1.customers.plans`:
|
|
223
510
|
|
|
@@ -228,12 +515,100 @@ The following tools are available in this MCP server.
|
|
|
228
515
|
|
|
229
516
|
### Resource `v1.customers.invoices`:
|
|
230
517
|
|
|
231
|
-
- `retrieve_customers_v1_invoices` (`read`):
|
|
232
|
-
|
|
518
|
+
- `retrieve_customers_v1_invoices` (`read`): Retrieve detailed information for a specific invoice by its unique identifier. This endpoint returns comprehensive invoice data including line items, applied credits, totals, and billing period details for both finalized and draft invoices.
|
|
519
|
+
|
|
520
|
+
### Use this endpoint to:
|
|
521
|
+
|
|
522
|
+
- Display historical invoice details in customer-facing dashboards or billing portals.
|
|
523
|
+
- Retrieve current month draft invoices to show customers their month-to-date spend.
|
|
524
|
+
- Access finalized invoices for historical billing records and payment reconciliation.
|
|
525
|
+
- Validate customer pricing and credit applications for customer support queries.
|
|
526
|
+
|
|
527
|
+
### Key response fields:
|
|
528
|
+
|
|
529
|
+
Invoice status (DRAFT, FINALIZED, VOID)
|
|
530
|
+
Billing period start and end dates
|
|
531
|
+
Total amount and amount due after credits
|
|
532
|
+
Detailed line items broken down by:
|
|
533
|
+
|
|
534
|
+
- Customer and contract information
|
|
535
|
+
- Invoice line item type
|
|
536
|
+
- Product/service name and ID
|
|
537
|
+
- Quantity consumed
|
|
538
|
+
- Unit and total price
|
|
539
|
+
- Time period for usage-based charges
|
|
540
|
+
- Applied credits or prepaid commitments
|
|
541
|
+
|
|
542
|
+
### Usage guidelines:
|
|
543
|
+
|
|
544
|
+
- Draft invoices update in real-time as usage is reported and may change before finalization
|
|
545
|
+
- The response includes both usage-based line items (e.g., API calls, data processed) and scheduled charges (e.g., monthly subscriptions, commitment fees)
|
|
546
|
+
- Credit and commitment applications are shown as separate line items with negative amounts
|
|
547
|
+
- For voided invoices, the response will indicate VOID status but retain all original line item details
|
|
548
|
+
|
|
549
|
+
- `list_customers_v1_invoices` (`read`): Retrieves a paginated list of invoices for a specific customer, with flexible filtering options to narrow results by status, date range, credit type, and more. This endpoint provides a comprehensive view of a customer's billing history and current charges, supporting both real-time billing dashboards and historical reporting needs.
|
|
550
|
+
|
|
551
|
+
### Use this endpoint to:
|
|
552
|
+
|
|
553
|
+
- Display historical invoice details in customer-facing dashboards or billing portals.
|
|
554
|
+
- Retrieve current month draft invoices to show customers their month-to-date spend.
|
|
555
|
+
- Access finalized invoices for historical billing records and payment reconciliation.
|
|
556
|
+
- Validate customer pricing and credit applications for customer support queries.
|
|
557
|
+
- Generate financial reports by filtering invoices within specific date ranges
|
|
558
|
+
|
|
559
|
+
### Key response fields:
|
|
560
|
+
|
|
561
|
+
Array of invoice objects containing:
|
|
562
|
+
|
|
563
|
+
- Invoice ID and status (DRAFT, FINALIZED, VOID)
|
|
564
|
+
- Invoice type (USAGE, SCHEDULED)
|
|
565
|
+
- Billing period start and end dates
|
|
566
|
+
- Issue date and due date
|
|
567
|
+
- Total amount, subtotal, and amount due
|
|
568
|
+
- Applied credits summary
|
|
569
|
+
- Contract ID reference
|
|
570
|
+
- External billing provider status (if integrated with Stripe, etc.)
|
|
571
|
+
- Pagination metadata `next_page` cursor
|
|
572
|
+
|
|
573
|
+
### Usage guidelines:
|
|
574
|
+
|
|
575
|
+
- The endpoint returns invoice summaries; use the Get Invoice endpoint for detailed line items
|
|
576
|
+
- Draft invoices are continuously updated as new usage is reported and will show real-time spend
|
|
577
|
+
- Results are ordered by creation date descending by default (newest first)
|
|
578
|
+
- When filtering by date range, the filter applies to the billing period, not the issue date
|
|
579
|
+
- For customers with many invoices, implement pagination to ensure all results are retrieved
|
|
580
|
+
External billing provider statuses (like Stripe payment status) are included when applicable
|
|
581
|
+
- Voided invoices are included in results by default unless filtered out by status
|
|
582
|
+
|
|
233
583
|
- `add_charge_customers_v1_invoices` (`write`): Add a one time charge to the specified invoice
|
|
234
|
-
- `list_breakdowns_customers_v1_invoices` (`read`):
|
|
235
|
-
|
|
236
|
-
|
|
584
|
+
- `list_breakdowns_customers_v1_invoices` (`read`): Retrieve granular time-series breakdowns of invoice data at hourly or daily intervals. This endpoint transforms standard invoices into detailed timelines, enabling you to track usage patterns, identify consumption spikes, and provide customers with transparency into their billing details throughout the billing period.
|
|
585
|
+
|
|
586
|
+
### Use this endpoint to:
|
|
587
|
+
|
|
588
|
+
- Build usage analytics dashboards showing daily or hourly consumption trends
|
|
589
|
+
- Identify peak usage periods for capacity planning and cost optimization
|
|
590
|
+
- Generate detailed billing reports for finance teams and customer success
|
|
591
|
+
- Troubleshoot billing disputes by examining usage patterns at specific times
|
|
592
|
+
- Power real-time cost monitoring and alerting systems
|
|
593
|
+
|
|
594
|
+
### Key response fields:
|
|
595
|
+
|
|
596
|
+
An array of BreakdownInvoice objects, each containing:
|
|
597
|
+
|
|
598
|
+
- All standard invoice fields (ID, customer, commit, line items, totals, status)
|
|
599
|
+
- Line items with quantities and costs for that specific period
|
|
600
|
+
- `breakdown_start_timestamp`: Start of the specific time window
|
|
601
|
+
- `breakdown_end_timestamp`: End of the specific time window
|
|
602
|
+
- `next_page`: Pagination cursor for large result sets
|
|
603
|
+
|
|
604
|
+
### Usage guidelines:
|
|
605
|
+
|
|
606
|
+
- Time granularity: Set `window_size` to hour or day based on your analysis needs
|
|
607
|
+
- Response limits: Daily breakdowns return up to 35 days; hourly breakdowns return up to 24 hours per request
|
|
608
|
+
- Date filtering: Use `starting_on` and `ending_before` to focus on specific periods
|
|
609
|
+
- Performance: For large date ranges, use pagination to retrieve all data efficiently
|
|
610
|
+
- Backdated usage: If usage events arrive after invoice finalization, breakdowns will reflect the updated usage
|
|
611
|
+
- Zero quantity filtering: Use `skip_zero_qty_line_items=true` to exclude periods with no usage
|
|
237
612
|
|
|
238
613
|
### Resource `v1.customers.billing_config`:
|
|
239
614
|
|
|
@@ -243,15 +618,169 @@ The following tools are available in this MCP server.
|
|
|
243
618
|
|
|
244
619
|
### Resource `v1.customers.commits`:
|
|
245
620
|
|
|
246
|
-
- `create_customers_v1_commits` (`write`):
|
|
247
|
-
|
|
248
|
-
|
|
621
|
+
- `create_customers_v1_commits` (`write`): Creates customer-level commits that establish spending commitments for customers across their Metronome usage. Commits represent contracted spending obligations that can be either prepaid (paid upfront) or postpaid (billed later).
|
|
622
|
+
|
|
623
|
+
Note: In most cases, you should add commitments directly to customer contracts using the contract/create or contract/edit APIs.
|
|
624
|
+
|
|
625
|
+
### Use this endpoint to:
|
|
626
|
+
|
|
627
|
+
Use this endpoint when you need to establish customer-level spending commitments that can be applied across multiple contracts or scoped to specific contracts. Customer-level commits are ideal for:
|
|
628
|
+
|
|
629
|
+
- Enterprise-wide minimum spending agreements that span multiple contracts
|
|
630
|
+
- Multi-contract volume commitments with shared spending pools
|
|
631
|
+
- Cross-contract discount tiers based on aggregate usage
|
|
632
|
+
|
|
633
|
+
#### Commit type Requirements:
|
|
634
|
+
|
|
635
|
+
- You must specify either "prepaid" or "postpaid" as the commit type:
|
|
636
|
+
- Prepaid commits: Customer pays upfront; invoice_schedule is optional (if omitted, creates a commit without an invoice)
|
|
637
|
+
- Postpaid commits: Customer pays when the commitment expires (the end of the access_schedule); invoice_schedule is required and must match access_schedule totals.
|
|
638
|
+
|
|
639
|
+
#### Billing configuration:
|
|
640
|
+
|
|
641
|
+
- invoice_contract_id is required for postpaid commits and for prepaid commits with billing (only optional for free prepaid commits)
|
|
642
|
+
- For postpaid commits: access_schedule and invoice_schedule must have matching amounts
|
|
643
|
+
- For postpaid commits: only one schedule item is allowed in both schedules.
|
|
644
|
+
|
|
645
|
+
#### Scoping flexibility:
|
|
646
|
+
|
|
647
|
+
Customer-level commits can be configured in a few ways:
|
|
648
|
+
|
|
649
|
+
- Contract-specific: Use the `applicable_contract_ids` field to limit the commit to specific contracts
|
|
650
|
+
- Cross-contract: Leave `applicable_contract_ids` empty to allow the commit to be used across all of the customer's contracts
|
|
651
|
+
|
|
652
|
+
#### Product targeting:
|
|
653
|
+
|
|
654
|
+
Commits can be scoped to specific products using applicable_product_ids, applicable_product_tags, or specifiers, or left unrestricted to apply to all products.
|
|
655
|
+
|
|
656
|
+
#### Priority considerations:
|
|
657
|
+
|
|
658
|
+
When multiple commits are applicable, the one with the lower priority value will be consumed first. If there is a tie, contract level commits and credits will be applied before customer level commits and credits. Plan your priority scheme carefully to ensure commits are applied in the desired order.
|
|
659
|
+
|
|
660
|
+
### Usage guidelines:
|
|
661
|
+
|
|
662
|
+
⚠️ Preferred Alternative: In most cases, you should add commits directly to contracts using the create contract or edit contract APIs instead of creating customer-level commits. Contract-level commits provide better organization and are the recommended approach for standard use cases.
|
|
663
|
+
|
|
664
|
+
- `list_customers_v1_commits` (`write`): Retrieve all commit agreements for a customer, including both prepaid and postpaid commitments. This endpoint provides comprehensive visibility into contractual spending obligations, enabling you to track commitment utilization and manage customer contracts effectively.
|
|
665
|
+
|
|
666
|
+
### Use this endpoint to:
|
|
667
|
+
|
|
668
|
+
- Display commitment balances and utilization in customer dashboards
|
|
669
|
+
- Track prepaid commitment drawdown and remaining balances
|
|
670
|
+
- Monitor postpaid commitment progress toward minimum thresholds
|
|
671
|
+
- Build commitment tracking and forecasting tools
|
|
672
|
+
- Show commitment history with optional ledger details
|
|
673
|
+
- Manage rollover balances between contract periods
|
|
674
|
+
|
|
675
|
+
### Key response fields:
|
|
676
|
+
|
|
677
|
+
An array of Commit objects containing:
|
|
678
|
+
|
|
679
|
+
- Commit type: PREPAID (pay upfront) or POSTPAID (pay at true-up)
|
|
680
|
+
- Rate type: COMMIT_RATE (discounted) or LIST_RATE (standard pricing)
|
|
681
|
+
- Access schedule: When commitment funds become available
|
|
682
|
+
- Invoice schedule: When the customer is billed
|
|
683
|
+
- Product targeting: Which product(s) usage is eligible to draw from this commit
|
|
684
|
+
- Optional ledger entries: Transaction history (if `include_ledgers=true`)
|
|
685
|
+
- Balance information: Current available amount (if `include_balance=true`)
|
|
686
|
+
- Rollover settings: Fraction of unused amount that carries forward
|
|
687
|
+
|
|
688
|
+
### Usage guidelines:
|
|
689
|
+
|
|
690
|
+
- Pagination: Results limited to 25 commits per page; use 'next_page' for more
|
|
691
|
+
- Date filtering options:
|
|
692
|
+
- `covering_date`: Commits active on a specific date
|
|
693
|
+
- `starting_at`: Commits with access on/after a date
|
|
694
|
+
- `effective_before`: Commits with access before a date (exclusive)
|
|
695
|
+
- Scope options:
|
|
696
|
+
- `include_contract_commits`: Include contract-level commits (not just customer-level)
|
|
697
|
+
- `include_archived`: Include archived commits and commits from archived contracts
|
|
698
|
+
- Performance considerations:
|
|
699
|
+
- include_ledgers: Adds detailed transaction history (slower)
|
|
700
|
+
- include_balance: Adds current balance calculation (slower)
|
|
701
|
+
- Optional filtering: Use commit_id to retrieve a specific commit
|
|
702
|
+
|
|
703
|
+
- `update_end_date_customers_v1_commits` (`write`): Shortens the end date of a prepaid commit to terminate it earlier than originally scheduled. Use this endpoint when you need to cancel or reduce the duration of an existing prepaid commit. Only works with prepaid commit types and can only move the end date forward (earlier), not extend it.
|
|
704
|
+
|
|
705
|
+
### Usage guidelines:
|
|
706
|
+
|
|
707
|
+
To extend commit end dates or make other comprehensive edits, use the 'edit commit' endpoint instead.
|
|
249
708
|
|
|
250
709
|
### Resource `v1.customers.credits`:
|
|
251
710
|
|
|
252
|
-
- `create_customers_v1_credits` (`write`):
|
|
253
|
-
|
|
254
|
-
|
|
711
|
+
- `create_customers_v1_credits` (`write`): Creates customer-level credits that provide spending allowances or free credit balances for customers across their Metronome usage. Note: In most cases, you should add credits directly to customer contracts using the contract/create or contract/edit APIs.
|
|
712
|
+
|
|
713
|
+
### Use this endpoint to:
|
|
714
|
+
|
|
715
|
+
Use this endpoint when you need to provision credits directly at the customer level that can be applied across multiple contracts or scoped to specific contracts. Customer-level credits are ideal for:
|
|
716
|
+
|
|
717
|
+
- Customer onboarding incentives that apply globally
|
|
718
|
+
- Flexible spending allowances that aren't tied to a single contract
|
|
719
|
+
- Migration scenarios where you need to preserve existing customer balances
|
|
720
|
+
|
|
721
|
+
#### Scoping flexibility:
|
|
722
|
+
|
|
723
|
+
Customer-level credits can be configured in two ways:
|
|
724
|
+
|
|
725
|
+
- Contract-specific: Use the applicable_contract_ids field to limit the credit to specific contracts
|
|
726
|
+
- Cross-contract: Leave applicable_contract_ids empty to allow the credit to be used across all of the customer's contracts
|
|
727
|
+
|
|
728
|
+
#### Product Targeting:
|
|
729
|
+
|
|
730
|
+
Credits can be scoped to specific products using `applicable_product_ids` or `applicable_product_tags`, or left unrestricted to apply to all products.
|
|
731
|
+
|
|
732
|
+
#### Priority considerations:
|
|
733
|
+
|
|
734
|
+
When multiple credits are applicable, the one with the lower priority value will be consumed first. If there is a tie, contract level commits and credits will be applied before customer level commits and credits. Plan your priority scheme carefully to ensure credits are applied in the desired order.
|
|
735
|
+
|
|
736
|
+
#### Access Schedule Required:
|
|
737
|
+
|
|
738
|
+
You must provide an `access_schedule` that defines when and how much credit becomes available to the customer over time. This usually is aligned to the contract schedule or starts immediately and is set to expire in the future.
|
|
739
|
+
|
|
740
|
+
### Usage Guidelines:
|
|
741
|
+
|
|
742
|
+
⚠️ Preferred Alternative: In most cases, you should add credits directly to contracts using the contract/create or contract/edit APIs instead of creating customer-level credits. Contract-level credits provide better organization, and are easier for finance teams to recognize revenue, and are the recommended approach for most use cases.
|
|
743
|
+
|
|
744
|
+
- `list_customers_v1_credits` (`write`): Retrieve a detailed list of all credits available to a customer, including promotional credits and contract-specific credits. This endpoint provides comprehensive visibility into credit balances, access schedules, and usage rules, enabling you to build credit management interfaces and track available funding.
|
|
745
|
+
|
|
746
|
+
### Use this endpoint to:
|
|
747
|
+
|
|
748
|
+
- Display all available credits in customer billing dashboards
|
|
749
|
+
- Show credit balances and expiration dates
|
|
750
|
+
- Track credit usage history with optional ledger details
|
|
751
|
+
- Build credit management and reporting tools
|
|
752
|
+
- Monitor promotional credit utilization
|
|
753
|
+
• Support customer inquiries about available credits
|
|
754
|
+
|
|
755
|
+
### Key response fields:
|
|
756
|
+
|
|
757
|
+
An array of Credit objects containing:
|
|
758
|
+
|
|
759
|
+
- Credit details: Name, priority, and which applicable products/tags it applies to
|
|
760
|
+
- Product ID: The `product_id` of the credit. This is for external mapping into your quote-to-cash stack, not the product it applies to.
|
|
761
|
+
- Access schedule: When credits become available and expire
|
|
762
|
+
- Optional ledger entries: Transaction history (if `include_ledgers=true`)
|
|
763
|
+
- Balance information: Current available amount (if `include_balance=true`)
|
|
764
|
+
- Metadata: Custom fields and usage specifiers
|
|
765
|
+
|
|
766
|
+
### Usage guidelines:
|
|
767
|
+
|
|
768
|
+
- Pagination: Results limited to 25 commits per page; use next_page for more
|
|
769
|
+
- Date filtering options:
|
|
770
|
+
- `covering_date`: Credits active on a specific date
|
|
771
|
+
- `starting_at`: Credits with access on/after a date
|
|
772
|
+
- `effective_before`: Credits with access before a date (exclusive)
|
|
773
|
+
- Scope options:
|
|
774
|
+
- `include_contract_credits`: Include contract-level credits (not just customer-level)
|
|
775
|
+
- `include_archived`: Include archived credits and credits from archived contracts
|
|
776
|
+
- Performance considerations:
|
|
777
|
+
- `include_ledgers`: Adds detailed transaction history (slower)
|
|
778
|
+
- `include_balance`: Adds current balance calculation (slower)
|
|
779
|
+
- Optional filtering: Use credit_id to retrieve a specific commit
|
|
780
|
+
|
|
781
|
+
- `update_end_date_customers_v1_credits` (`write`): Shortens the end date of an existing customer credit to terminate it earlier than originally scheduled. Only allows moving end dates forward (earlier), not extending them.
|
|
782
|
+
|
|
783
|
+
Note: To extend credit end dates or make comprehensive edits, use the 'edit credit' endpoint instead.
|
|
255
784
|
|
|
256
785
|
### Resource `v1.customers.named_schedules`:
|
|
257
786
|
|
|
@@ -260,84 +789,525 @@ The following tools are available in this MCP server.
|
|
|
260
789
|
|
|
261
790
|
### Resource `v1.dashboards`:
|
|
262
791
|
|
|
263
|
-
- `get_embeddable_url_v1_dashboards` (`write`):
|
|
792
|
+
- `get_embeddable_url_v1_dashboards` (`write`): Generate secure, embeddable dashboard URLs that allow you to seamlessly integrate Metronome's billing visualizations directly into your application. This endpoint creates authenticated iframe-ready URLs for customer-specific dashboards, providing a white-labeled billing experience without building custom UI.
|
|
793
|
+
|
|
794
|
+
### Use this endpoint to:
|
|
795
|
+
|
|
796
|
+
- Embed billing dashboards directly in your customer portal or admin interface
|
|
797
|
+
- Provide self-service access to invoices, usage data, and credit balances
|
|
798
|
+
- Build white-labeled billing experiences with minimal development effort
|
|
799
|
+
|
|
800
|
+
### Key response fields:
|
|
801
|
+
|
|
802
|
+
- A secure, time-limited URL that can be embedded in an iframe
|
|
803
|
+
- The URL includes authentication tokens and configuration parameters
|
|
804
|
+
- URLs are customer-specific and respect your security settings
|
|
805
|
+
|
|
806
|
+
### Usage guidelines:
|
|
807
|
+
|
|
808
|
+
- Dashboard types: Choose from `invoices`, `usage`, or `commits_and_credits`
|
|
809
|
+
- Customization options:
|
|
810
|
+
- `dashboard_options`: Configure whether you want invoices to show zero usage line items
|
|
811
|
+
- `color_overrides`: Match your brand's color palette
|
|
812
|
+
- `bm_group_key_overrides`: Customize how dimensions are displayed (for the usage embeddable dashboard)
|
|
813
|
+
- Iframe implementation: Embed the returned URL directly in an iframe element
|
|
814
|
+
- Responsive design: Dashboards automatically adapt to container dimensions
|
|
264
815
|
|
|
265
816
|
### Resource `v1.usage`:
|
|
266
817
|
|
|
267
|
-
- `list_v1_usage` (`write`):
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
818
|
+
- `list_v1_usage` (`write`): Retrieve aggregated usage data across multiple customers and billable metrics in a single query. This batch endpoint enables you to fetch usage patterns at scale, broken down by time windows, making it ideal for building analytics dashboards, generating reports, and monitoring platform-wide usage trends.
|
|
819
|
+
|
|
820
|
+
### Use this endpoint to:
|
|
821
|
+
|
|
822
|
+
- Generate platform-wide usage reports for internal teams
|
|
823
|
+
- Monitor aggregate usage trends across your entire customer base
|
|
824
|
+
- Create comparative usage analyses between customers or time periods
|
|
825
|
+
- Support capacity planning with historical usage patterns
|
|
826
|
+
|
|
827
|
+
### Key response fields:
|
|
828
|
+
|
|
829
|
+
An array of `UsageBatchAggregate` objects containing:
|
|
830
|
+
|
|
831
|
+
- `customer_id`: The customer this usage belongs to
|
|
832
|
+
- `billable_metric_id` and `billable_metric_name`: What was measured
|
|
833
|
+
- `start_timestamp` and `end_timestamp`: Time window for this data point
|
|
834
|
+
- `value`: Aggregated usage amount for the period
|
|
835
|
+
- `groups` (optional): Usage broken down by group keys with values
|
|
836
|
+
- `next_page`: Pagination cursor for large result sets
|
|
837
|
+
|
|
838
|
+
### Usage guidelines:
|
|
839
|
+
|
|
840
|
+
- Time windows: Set `window_size` to `hour`, `day`, or `none` (entire period)
|
|
841
|
+
- Required parameters: Must specify `starting_on`, `ending_before`, and `window_size`
|
|
842
|
+
- Filtering options:
|
|
843
|
+
- `customer_ids`: Limit to specific customers (omit for all customers)
|
|
844
|
+
- `billable_metrics`: Limit to specific metrics (omit for all metrics)
|
|
845
|
+
- Pagination: Use `next_page` cursor to retrieve large datasets
|
|
846
|
+
- Null values: Group values may be null when no usage matches that group
|
|
847
|
+
|
|
848
|
+
- `ingest_v1_usage` (`write`): The ingest endpoint is the primary method for sending usage events to Metronome, serving as the foundation for all billing calculations in your usage-based pricing model. This high-throughput endpoint is designed for real-time streaming ingestion, supports backdating 34 days, and is built to handle mission-critical usage data with enterprise-grade reliability. Metronome supports 100,000 events per second without requiring pre-aggregation or rollups and can scale up from there. See [Getting usage into Metronome](https://docs.metronome.com/connect-metronome/) to learn more about usage events.
|
|
849
|
+
|
|
850
|
+
### Use this endpoint to:
|
|
851
|
+
|
|
852
|
+
Create a customer usage pipeline into Metronome that drives billable metrics, credit drawdown, and invoicing. Track customer behavior, resource consumption, and feature usage
|
|
853
|
+
|
|
854
|
+
### What happens when you send events:
|
|
855
|
+
|
|
856
|
+
- Events are validated and processed in real-time
|
|
857
|
+
- Events are matched to customers using customer IDs or customer ingest aliases
|
|
858
|
+
- Events are matched to billable metrics and are immediately available for usage and spend calculations
|
|
859
|
+
|
|
860
|
+
### Usage guidelines:
|
|
861
|
+
|
|
862
|
+
- Historical events can be backdated up to 34 days and will immediately impact live customer spend
|
|
863
|
+
- Duplicate events are automatically detected and ignored (34-day deduplication window)
|
|
864
|
+
|
|
865
|
+
#### Event structure:
|
|
866
|
+
|
|
867
|
+
Usage events are simple JSON objects designed for flexibility and ease of integration:
|
|
868
|
+
|
|
869
|
+
```json
|
|
870
|
+
{
|
|
871
|
+
"transaction_id": "2021-01-01T00:00:00Z_cluster42",
|
|
872
|
+
"customer_id": "team@example.com",
|
|
873
|
+
"event_type": "api_request",
|
|
874
|
+
"timestamp": "2021-01-01T00:00:00Z",
|
|
875
|
+
"properties": {
|
|
876
|
+
"endpoint": "/v1/users",
|
|
877
|
+
"method": "POST",
|
|
878
|
+
"response_time_ms": 45,
|
|
879
|
+
"region": "us-west-2"
|
|
880
|
+
}
|
|
881
|
+
}
|
|
882
|
+
```
|
|
883
|
+
|
|
884
|
+
#### Transaction ID
|
|
885
|
+
|
|
886
|
+
The transaction_id serves as your idempotency key, ensuring events are processed exactly once. Metronome maintains a 34-day deduplication window - significantly longer than typical 12-hour windows - enabling robust backfill scenarios without duplicate billing.
|
|
887
|
+
|
|
888
|
+
- Best Practices:
|
|
889
|
+
- Use UUIDs for one-time events: uuid4()
|
|
890
|
+
- For heartbeat events, use deterministic IDs
|
|
891
|
+
- Include enough context to avoid collisions across different event sources
|
|
892
|
+
|
|
893
|
+
#### Customer ID
|
|
894
|
+
|
|
895
|
+
Identifies which customer should be billed for this usage. Supports two identification methods:
|
|
896
|
+
|
|
897
|
+
- Metronome Customer ID: The UUID returned when creating a customer
|
|
898
|
+
- Ingest Alias: Your system's identifier (email, account number, etc.)
|
|
899
|
+
|
|
900
|
+
Ingest aliases enable seamless integration without requiring ID mapping, and customers can have multiple aliases for flexibility.
|
|
901
|
+
|
|
902
|
+
#### Event Type:
|
|
903
|
+
|
|
904
|
+
Categorizes the event type for billable metric matching. Choose descriptive names that aligns with the product surface area.
|
|
905
|
+
|
|
906
|
+
#### Properties:
|
|
907
|
+
|
|
908
|
+
Flexible metadata also used to match billable metrics or to be used to serve as group keys to create multiple pricing dimensions or breakdown costs by novel properties for end customers or internal finance teams measuring underlying COGs.
|
|
909
|
+
|
|
910
|
+
- `list_with_groups_v1_usage` (`write`): Retrieve granular usage data for a specific customer and billable metric, with the ability to break down usage by custom grouping dimensions. This endpoint enables deep usage analytics by segmenting data across attributes like region, user, model type, or any custom dimension defined in your billable metrics.
|
|
911
|
+
|
|
912
|
+
### Use this endpoint to:
|
|
913
|
+
|
|
914
|
+
- Analyze usage patterns broken down by specific attributes (region, user, department, etc.)
|
|
915
|
+
- Build detailed usage dashboards with dimensional filtering
|
|
916
|
+
- Identify high-usage segments for optimization opportunities
|
|
917
|
+
|
|
918
|
+
### Key response fields:
|
|
919
|
+
|
|
920
|
+
An array of `PagedUsageAggregate` objects containing:
|
|
921
|
+
|
|
922
|
+
- `starting_on` and `ending_before`: Time window boundaries
|
|
923
|
+
- `group_key`: The dimension being grouped by (e.g., "region")
|
|
924
|
+
- `group_value`: The specific value for this group (e.g., "US-East")
|
|
925
|
+
- `value`: Aggregated usage for this group and time window
|
|
926
|
+
- `next_page`: Pagination cursor for large datasets
|
|
927
|
+
|
|
928
|
+
### Usage guidelines:
|
|
929
|
+
|
|
930
|
+
- Required parameters: Must specify `customer_id`, `billable_metric_id`, and `window_size`
|
|
931
|
+
- Time windows: Set `window_size` to hour, day, or none for different granularities
|
|
932
|
+
- Group filtering: Use `group_by` to specify:
|
|
933
|
+
- key: The dimension to group by (must be set on the billable metric as a group key)
|
|
934
|
+
- values: Optional array to filter to specific values only
|
|
935
|
+
- Pagination: Use limit and `next_page` for large result sets
|
|
936
|
+
- Null handling: `group_value` may be null for unmatched data
|
|
937
|
+
|
|
938
|
+
- `search_v1_usage` (`write`): This endpoint retrieves events by transaction ID for events that occurred within the last 34 days. It is specifically designed for sampling-based testing workflows to detect revenue leakage. The Event Search API provides a critical observability tool that validates the integrity of your usage pipeline by allowing you to sample raw events and verify their matching against active billable metrics.
|
|
939
|
+
|
|
940
|
+
Why event observability matters for revenue leakage:
|
|
941
|
+
Silent revenue loss occurs when events are dropped, delayed, or fail to match billable metrics due to:
|
|
942
|
+
|
|
943
|
+
- Upstream system failures
|
|
944
|
+
- Event format changes
|
|
945
|
+
- Misconfigured billable metrics
|
|
946
|
+
|
|
947
|
+
### Use this endpoint to:
|
|
948
|
+
|
|
949
|
+
- Sample raw events and validate they match the expected billable metrics
|
|
950
|
+
- Build custom leakage detection alerts to prevent silent revenue loss
|
|
951
|
+
- Verify event processing accuracy during system changes or metric updates
|
|
952
|
+
- Debug event matching issues in real-time
|
|
953
|
+
|
|
954
|
+
### Key response fields:
|
|
955
|
+
|
|
956
|
+
- Complete event details including transaction ID, customer ID, and properties
|
|
957
|
+
- Matched Metronome customer (if any)
|
|
958
|
+
- Matched billable metric information (if any)
|
|
959
|
+
- Processing status and duplicate detection flags
|
|
960
|
+
|
|
961
|
+
### Usage guidelines:
|
|
962
|
+
|
|
963
|
+
⚠️ Important: This endpoint is heavily rate limited and designed for sampling workflows only. Do not use this endpoint to check every event in your system. Instead, implement a sampling strategy to randomly validate a subset of events for observability purposes.
|
|
271
964
|
|
|
272
965
|
### Resource `v1.audit_logs`:
|
|
273
966
|
|
|
274
|
-
- `list_v1_audit_logs` (`read`):
|
|
967
|
+
- `list_v1_audit_logs` (`read`): Get a comprehensive audit trail of all operations performed in your Metronome account, whether initiated through the API, web interface, or automated processes. This endpoint provides detailed logs of who did what and when, enabling compliance reporting, security monitoring, and operational troubleshooting across all interaction channels.
|
|
968
|
+
|
|
969
|
+
### Use this endpoint to:
|
|
970
|
+
|
|
971
|
+
- Monitor all account activity for security and compliance purposes
|
|
972
|
+
- Track configuration changes regardless of source (API, UI, or system)
|
|
973
|
+
- Investigate issues by reviewing historical operations
|
|
974
|
+
|
|
975
|
+
### Key response fields:
|
|
976
|
+
|
|
977
|
+
An array of AuditLog objects containing:
|
|
978
|
+
|
|
979
|
+
- id: Unique identifier for the audit log entry
|
|
980
|
+
- timestamp: When the action occurred (RFC 3339 format)
|
|
981
|
+
- actor: Information about who performed the action
|
|
982
|
+
- request: Details including request ID, IP address, and user agent
|
|
983
|
+
- `resource_type`: The type of resource affected (e.g., customer, contract, invoice)
|
|
984
|
+
- `resource_id`: The specific resource identifier
|
|
985
|
+
- `action`: The operation performed
|
|
986
|
+
- `next_page`: Cursor for continuous log retrieval
|
|
987
|
+
|
|
988
|
+
### Usage guidelines:
|
|
989
|
+
|
|
990
|
+
- Continuous retrieval: The next_page token enables uninterrupted log streaming—save it between requests to ensure no logs are missed
|
|
991
|
+
- Empty responses: An empty data array means no new logs yet; continue polling with the same next_page token
|
|
992
|
+
- Date filtering:
|
|
993
|
+
- `starting_on`: Earliest logs to return (inclusive)
|
|
994
|
+
- `ending_before`: Latest logs to return (exclusive)
|
|
995
|
+
- Cannot be used with `next_page`
|
|
996
|
+
- Resource filtering: Must specify both `resource_type` and `resource_id` together
|
|
997
|
+
- Sort order: Default is `date_asc`; use `date_desc` for newest first
|
|
275
998
|
|
|
276
999
|
### Resource `v1.custom_fields`:
|
|
277
1000
|
|
|
278
|
-
- `add_key_v1_custom_fields` (`write`):
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
1001
|
+
- `add_key_v1_custom_fields` (`write`): Creates a new custom field key for a given entity (e.g. billable metric, contract, alert).
|
|
1002
|
+
|
|
1003
|
+
Custom fields are properties that you can add to Metronome objects to store metadata like foreign keys or other descriptors. This metadata can get transferred to or accessed by other systems to contextualize Metronome data and power business processes. For example, to service workflows like revenue recognition, reconciliation, and invoicing, custom fields help Metronome know the relationship between entities in the platform and third-party systems.
|
|
1004
|
+
|
|
1005
|
+
### Use this endpoint to:
|
|
1006
|
+
|
|
1007
|
+
- Create a new custom field key for Customer objects in Metronome. You can then use the Set Custom Field Values endpoint to set the value of this key for a specific customer.
|
|
1008
|
+
- Specify whether the key should enforce uniqueness. If the key is set to enforce uniqueness and you attempt to set a custom field value for the key that already exists, it will fail.
|
|
1009
|
+
|
|
1010
|
+
### Usage guidelines:
|
|
1011
|
+
|
|
1012
|
+
- Custom fields set on commits, credits, and contracts can be used to scope alert evaluation. For example, you can create a spend threshold alert that only considers spend associated with contracts with custom field key `contract_type` and value `paygo`
|
|
1013
|
+
- Custom fields set on products can be used in the Stripe integration to set metadata on invoices.
|
|
1014
|
+
- Custom fields for customers, contracts, invoices, products, commits, scheduled charges, and subscriptions are passed down to the invoice.
|
|
1015
|
+
|
|
1016
|
+
- `delete_values_v1_custom_fields` (`write`): Remove specific custom field values from a Metronome entity instance by specifying the field keys to delete. Use this endpoint to clean up unwanted custom field data while preserving other fields on the same entity. Requires the entity type, entity ID, and array of keys to remove.
|
|
1017
|
+
- `list_keys_v1_custom_fields` (`write`): Retrieve all your active custom field keys, with optional filtering by entity type (customer, contract, product, etc.). Use this endpoint to discover what custom field keys are available before setting values on entities or to audit your custom field configuration across different entity types.
|
|
1018
|
+
- `remove_key_v1_custom_fields` (`write`): Removes a custom field key from the allowlist for a specific entity type, preventing future use of that key across all instances of the entity. Existing values for this key on entity instances will no longer be accessible once the key is removed.
|
|
1019
|
+
- `set_values_v1_custom_fields` (`write`): Sets custom field values on a specific Metronome entity instance. Overwrites existing values for matching keys while preserving other fields. All updates are transactional—either all values are set or none are. Custom field values are limited to 200 characters each.
|
|
283
1020
|
|
|
284
1021
|
### Resource `v1.billable_metrics`:
|
|
285
1022
|
|
|
286
|
-
- `create_v1_billable_metrics` (`write`):
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
1023
|
+
- `create_v1_billable_metrics` (`write`): Create billable metrics programmatically with this endpoint—an essential step in configuring your pricing and packaging in Metronome.
|
|
1024
|
+
|
|
1025
|
+
A billable metric is a customizable query that filters and aggregates events from your event stream. These metrics are continuously tracked as usage data enters Metronome through the ingestion pipeline. The ingestion process transforms raw usage data into actionable pricing metrics, enabling accurate metering and billing for your products.
|
|
1026
|
+
|
|
1027
|
+
### Use this endpoint to:
|
|
1028
|
+
|
|
1029
|
+
- Create individual or multiple billable metrics as part of a setup workflow.
|
|
1030
|
+
- Automate the entire pricing configuration process, from metric creation to customer contract setup.
|
|
1031
|
+
- Define metrics using either standard filtering/aggregation or a custom SQL query.
|
|
1032
|
+
|
|
1033
|
+
### Key response fields:
|
|
1034
|
+
|
|
1035
|
+
- The ID of the billable metric that was created
|
|
1036
|
+
- The created billable metric will be available to be used in Products, usage endpoints, and alerts.
|
|
1037
|
+
|
|
1038
|
+
### Usage guidelines:
|
|
1039
|
+
|
|
1040
|
+
- Metrics defined using standard filtering and aggregation are Streaming billable metrics, which have been optimized for ultra low latency and high throughput workflows.
|
|
1041
|
+
- Use SQL billable metrics if you require more flexible aggregation options.
|
|
1042
|
+
|
|
1043
|
+
- `retrieve_v1_billable_metrics` (`read`): Retrieves the complete configuration for a specific billable metric by its ID. Use this to review billable metric setup before associating it with products. Returns the metric's `name`, `event_type_filter`, `property_filters`, `aggregation_type`, `aggregation_key`, `group_keys`, `custom fields`, and `SQL query` (if it's a SQL billable metric).
|
|
1044
|
+
|
|
1045
|
+
Important:
|
|
1046
|
+
|
|
1047
|
+
- Archived billable metrics will include an `archived_at` timestamp; they no longer process new usage events but remain accessible for historical reference.
|
|
1048
|
+
|
|
1049
|
+
- `list_v1_billable_metrics` (`read`): Retrieves all billable metrics with their complete configurations. Use this for programmatic discovery and management of billable metrics, such as associating metrics to products and auditing for orphaned or archived metrics.
|
|
1050
|
+
Important: Archived metrics are excluded by default; use `include_archived`=`true` parameter to include them.
|
|
1051
|
+
- `archive_v1_billable_metrics` (`write`): Use this endpoint to retire billable metrics that are no longer used. After a billable metric is archived, that billable metric can no longer be used in any new Products to define how that product should be metered. If you archive a billable metric that is already associated with a Product, the Product will continue to function as usual, metering based on the definition of the archived billable metric.
|
|
1052
|
+
|
|
1053
|
+
Archived billable metrics will be returned on the `getBillableMetric` and `listBillableMetrics` endpoints with a populated `archived_at` field.
|
|
290
1054
|
|
|
291
1055
|
### Resource `v1.services`:
|
|
292
1056
|
|
|
293
|
-
- `list_v1_services` (`read`):
|
|
1057
|
+
- `list_v1_services` (`read`): Gets Metronome's service registry with associated IP addresses for security allowlisting and firewall configuration. Use this endpoint to maintain an up-to-date list of IPs that your systems should trust for Metronome communications. Returns service names and their current IP ranges, with new IPs typically appearing 30+ days before first use to ensure smooth allowlist updates.
|
|
294
1058
|
|
|
295
1059
|
### Resource `v1.invoices`:
|
|
296
1060
|
|
|
297
|
-
- `regenerate_v1_invoices` (`write`):
|
|
298
|
-
|
|
1061
|
+
- `regenerate_v1_invoices` (`write`): This endpoint regenerates a voided invoice and recalculates the invoice based on up-to-date rates, available balances, and other fees regardless of the billing period.
|
|
1062
|
+
|
|
1063
|
+
### Use this endpoint to:
|
|
1064
|
+
|
|
1065
|
+
Recalculate an invoice with updated rate terms, available balance, and fees to correct billing disputes or discrepancies
|
|
1066
|
+
|
|
1067
|
+
### Key response fields:
|
|
1068
|
+
|
|
1069
|
+
The regenerated invoice id, which is distinct from the previously voided invoice.
|
|
1070
|
+
|
|
1071
|
+
### Usage guidelines:
|
|
1072
|
+
|
|
1073
|
+
If an invoice is attached to a contract with a billing provider on it, the regenerated invoice will be distributed based on the configuration.
|
|
1074
|
+
|
|
1075
|
+
- `void_v1_invoices` (`write`): Permanently cancels an invoice by setting its status to voided, preventing collection and removing it from customer billing. Use this to correct billing errors, cancel incorrect charges, or handle disputed invoices that should not be collected. Returns the voided invoice ID with the status change applied immediately to stop any payment processing.
|
|
299
1076
|
|
|
300
1077
|
### Resource `v1.contracts`:
|
|
301
1078
|
|
|
302
|
-
- `create_v1_contracts` (`write`):
|
|
1079
|
+
- `create_v1_contracts` (`write`): Contracts define a customer's products, pricing, discounts, access duration, and billing configuration. Contracts serve as the central billing agreement for both PLG and Enterprise customers, you can automatically customers access to your products and services directly from your product or CRM.
|
|
1080
|
+
|
|
1081
|
+
### Use this endpoint to:
|
|
1082
|
+
|
|
1083
|
+
- PLG onboarding: Automatically provision new self-serve customers with contracts when they sign up.
|
|
1084
|
+
- Enterprise sales: Push negotiated contracts from Salesforce with custom pricing and commitments
|
|
1085
|
+
- Promotional pricing: Implement time-limited discounts and free trials through overrides
|
|
1086
|
+
|
|
1087
|
+
### Key components:
|
|
1088
|
+
|
|
1089
|
+
#### Contract Term and Billing Schedule
|
|
1090
|
+
|
|
1091
|
+
- Set contract duration using `starting_at` and `ending_before` fields. PLG contracts typically use perpetual agreements (no end date), while Enterprise contracts have fixed end dates which can be edited over time in the case of co-term upsells.
|
|
1092
|
+
|
|
1093
|
+
#### Rate Card
|
|
1094
|
+
|
|
1095
|
+
If you are offering usage based pricing, you can set a rate card for the contract to reference through `rate_card_id` or `rate_card_alias`. The rate card is a store of all of your usage based products and their centralized pricing. Any new products or price changes on the rate card can be set to automatically propagate to all associated contracts - this ensures consistent pricing and product launches flow to contracts without manual updates and migrations. The `usage_statement_schedule` determines the cadence on which Metronome will finalize a usage invoice for the customer. This defaults to monthly on the 1st, with options for custom dates, quarterly, or annual cadences. Note: Most usage based billing companies align usage statements to be evaluated aligned to the first of the month.
|
|
1096
|
+
Read more about [Rate Cards](https://docs.metronome.com/pricing-packaging/create-manage-rate-cards/).
|
|
1097
|
+
|
|
1098
|
+
#### Overrides and discounts
|
|
1099
|
+
|
|
1100
|
+
Customize pricing on the contract through time-bounded overrides that can target specific products, product families, or complex usage scenarios. Overrides enable two key capabilities:
|
|
1101
|
+
|
|
1102
|
+
- Discounts: Apply percentage discounts, fixed rate reductions, or quantity-based pricing tiers
|
|
1103
|
+
- Entitlements: Provide special pricing or access to specific products for negotiated deals
|
|
1104
|
+
|
|
1105
|
+
Read more about [Contract Overrides](https://docs.metronome.com/manage-product-access/add-contract-override/).
|
|
1106
|
+
|
|
1107
|
+
#### Commits and Credits
|
|
1108
|
+
|
|
1109
|
+
Using commits, configure prepaid or postpaid spending commitments where customers promise to spend a certain amount over the contract period paid in advance or in arrears. Use credits to provide free spending allowances. Under the hood these are the same mechanisms, however, credits are typically offered for free (SLA or promotional) or as a part of an allotment associated with a Subscription.
|
|
1110
|
+
|
|
1111
|
+
In Metronome, you can set commits and credits to only be applicable for a subset of usage. Use `applicable_product_ids` or `applicable_product_tags` to create product or product-family specific commits or credits, or you can build complex boolean logic specifiers to target usage based on pricing and presentation group values using `override_specifiers`.
|
|
1112
|
+
|
|
1113
|
+
These objects can also also be configured to have a recurrence schedule to easily model customer packaging which includes recurring monthly or quarterly allotments.
|
|
1114
|
+
|
|
1115
|
+
Commits support rollover settings (`rollover_fraction`) to transfer unused balances between contract periods, either entirely or as a percentage.
|
|
1116
|
+
|
|
1117
|
+
Read more about [Credits and Commits](https://docs.metronome.com/pricing-packaging/apply-credits-commits/).
|
|
1118
|
+
|
|
1119
|
+
#### Subscriptions
|
|
1120
|
+
|
|
1121
|
+
You can add a fixed recurring charge to a contract, like monthly licenses or seat-based fees, using the subscription charge. Subscription charges are defined on your rate card and you can select which subscription is applicable to add to each contract. When you add a subscription to a contract you need to:
|
|
1122
|
+
|
|
1123
|
+
- Define whether the subscription is paid for in-advance or in-arrears (`collection_schedule`)
|
|
1124
|
+
- Define the proration behavior (`proration`)
|
|
1125
|
+
- Specify an initial quantity (`initial_quantity`)
|
|
1126
|
+
- Define which subscription rate on the rate card should be used (`subscription_rate`)
|
|
1127
|
+
|
|
1128
|
+
Read more about [Subscriptions](https://docs.metronome.com/manage-product-access/create-subscription/).
|
|
1129
|
+
|
|
1130
|
+
#### Scheduled Charges
|
|
1131
|
+
|
|
1132
|
+
Set up one-time, recurring, or entirely custom charges that occur on specific dates, separate from usage-based billing or commitments. These can be used to model non-recurring platform charges or professional services.
|
|
1133
|
+
|
|
1134
|
+
#### Threshold Billing
|
|
1135
|
+
|
|
1136
|
+
Metronome allows you to configure automatic billing triggers when customers reach spending thresholds to prevent fraud and manage risk. You can use `spend_threshold_configuration` to trigger an invoice to cover current charges whenever the threshold is reached or you can ensure the customer maintains a minimum prepaid balance using the `prepaid_balance_configuration`.
|
|
1137
|
+
|
|
1138
|
+
Read more about [Spend Threshold](https://docs.metronome.com/manage-product-access/spend-thresholds/) and [Prepaid Balance Thresholds](https://docs.metronome.com/manage-product-access/prepaid-balance-thresholds/).
|
|
1139
|
+
|
|
1140
|
+
### Usage guidelines:
|
|
1141
|
+
|
|
1142
|
+
- You can always [Edit Contracts](https://docs.metronome.com/manage-product-access/edit-contract/) after it has been created, using the `editContract` endpoint. Metronome keeps track of all edits, both in the audit log and over the `getEditHistory` endpoint.
|
|
1143
|
+
- Customers in Metronome can have multiple concurrent contracts at one time. Use `usage_filters` to route the correct usage to each contract. [Read more about usage filters](https://docs.metronome.com/manage-product-access/provision-customer/#create-a-usage-filter).
|
|
1144
|
+
|
|
303
1145
|
- `retrieve_v1_contracts` (`write`): This is the v1 endpoint to get a contract. New clients should implement using the v2 endpoint.
|
|
304
|
-
- `list_v1_contracts` (`write`):
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
- `
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
1146
|
+
- `list_v1_contracts` (`write`): Retrieves all contracts for a specific customer, including pricing, terms, credits, and commitments. Use this to view a customer's contract history and current agreements for billing management. Returns contract details with optional ledgers and balance information.
|
|
1147
|
+
|
|
1148
|
+
⚠️ Note: This is the legacy v1 endpoint - new integrations should use the v2 endpoint for enhanced features.
|
|
1149
|
+
|
|
1150
|
+
- `add_manual_balance_entry_v1_contracts` (`write`): Manually adjust the available balance on a commit or credit. This entry is appended to the commit ledger as a new event. Optionally include a description that provides the reasoning for the entry.
|
|
1151
|
+
|
|
1152
|
+
### Use this endpoint to:
|
|
1153
|
+
|
|
1154
|
+
- Address incorrect usage burn-down caused by malformed usage or invalid config
|
|
1155
|
+
- Decrease available balance to account for outages where usage may have not been tracked or sent to Metronome
|
|
1156
|
+
- Issue credits to customers in the form of increased balance on existing commit or credit
|
|
1157
|
+
|
|
1158
|
+
### Usage guidelines:
|
|
1159
|
+
|
|
1160
|
+
Manual ledger entries can be extremely useful for resolving discrepancies in Metronome. However, most corrections to inaccurate billings can be modified upstream of the commit, whether that is via contract editing, rate editing, or other actions that cause an invoice to be recalculated.
|
|
1161
|
+
|
|
1162
|
+
- `amend_v1_contracts` (`write`): Amendments will be replaced by Contract editing. New clients should implement using the `editContract` endpoint. Read more about the migration to contract editing [here](https://docs.metronome.com/migrate-amendments-to-edits/) and reach out to your Metronome representative for more details. Once contract editing is enabled, access to this endpoint will be removed.
|
|
1163
|
+
- `archive_v1_contracts` (`write`): Permanently end and archive a contract along with all its terms. Any draft invoices will be canceled, and all upcoming scheduled invoices will be voided–also all finalized invoices can optionally be voided. Use this in the event a contract was incorrectly created and needed to be removed from a customer.
|
|
1164
|
+
|
|
1165
|
+
#### Impact on commits and credits:
|
|
1166
|
+
|
|
1167
|
+
When archiving a contract, all associated commits and credits are also archived. For prepaid commits with active segments, Metronome automatically generates expiration ledger entries to close out any remaining balances, ensuring accurate accounting of unused prepaid amounts. These ledger entries will appear in the commit's transaction history with type `PREPAID_COMMIT_EXPIRATION`.
|
|
1168
|
+
|
|
1169
|
+
#### Archived contract visibility:
|
|
1170
|
+
|
|
1171
|
+
Archived contracts remain accessible for historical reporting and audit purposes. They can be retrieved using the `ListContracts` endpoint by setting the `include_archived` parameter to `true` or in the Metronome UI when the "Show archived" option is enabled.
|
|
1172
|
+
|
|
1173
|
+
- `create_historical_invoices_v1_contracts` (`write`): Create historical usage invoices for past billing periods on specific contracts. Use this endpoint to generate retroactive invoices with custom usage line items, quantities, and date ranges. Supports preview mode to validate invoice data before creation. Ideal for billing migrations or correcting past billing periods.
|
|
1174
|
+
- `list_balances_v1_contracts` (`write`): Retrieve a comprehensive view of all available balances (commits and credits) for a customer. This endpoint provides real-time visibility into prepaid funds, postpaid commitments, promotional credits, and other balance types that can offset usage charges, helping you build transparent billing experiences.
|
|
1175
|
+
|
|
1176
|
+
### Use this endpoint to:
|
|
1177
|
+
|
|
1178
|
+
- Display current available balances in customer dashboards
|
|
1179
|
+
- Verify available funds before approving high-usage operations
|
|
1180
|
+
- Generate balance reports for finance teams
|
|
1181
|
+
- Filter balances by contract or date ranges
|
|
1182
|
+
|
|
1183
|
+
### Key response fields:
|
|
1184
|
+
|
|
1185
|
+
An array of balance objects (all credits and commits) containing:
|
|
1186
|
+
|
|
1187
|
+
- Balance details: Current available amount for each commit or credit
|
|
1188
|
+
- Metadata: Product associations, priorities, applicable date ranges
|
|
1189
|
+
- Optional ledger entries: Detailed transaction history (if `include_ledgers=true`)
|
|
1190
|
+
- Balance calculations: Including pending transactions and future-dated entries
|
|
1191
|
+
- Custom fields: Any additional metadata attached to balances
|
|
1192
|
+
|
|
1193
|
+
### Usage guidelines:
|
|
1194
|
+
|
|
1195
|
+
- Date filtering: Use `effective_before` to include only balances with access before a specific date (exclusive)
|
|
1196
|
+
- Set `include_balance=true` for calculated balance amounts on each commit or credit
|
|
1197
|
+
- Set `include_ledgers=true` for full transaction history
|
|
1198
|
+
- Set `include_contract_balances = true` to see contract level balances
|
|
1199
|
+
- Balance logic: Reflects currently accessible amounts, excluding expired/future segments
|
|
1200
|
+
- Manual adjustments: Includes all manual ledger entries, even future-dated ones
|
|
1201
|
+
|
|
1202
|
+
- `retrieve_rate_schedule_v1_contracts` (`write`): For a specific customer and contract, get the rates at a specific point in time. This endpoint takes the contract's rate card into consideration, including scheduled changes. It also takes into account overrides on the contract.
|
|
1203
|
+
|
|
1204
|
+
For example, if you want to show your customer a summary of the prices they are paying, inclusive of any negotiated discounts or promotions, use this endpoint. This endpoint only returns rates that are entitled.
|
|
1205
|
+
|
|
1206
|
+
- `retrieve_subscription_quantity_history_v1_contracts` (`write`): Get the history of subscription quantities and prices over time for a given `subscription_id`. This endpoint can be used to power an in-product experience where you show a customer their historical changes to seat count. Future changes are not included in this endpoint - use the `getContract` endpoint to view the future scheduled changes to a subscription's quantity.
|
|
1207
|
+
|
|
1208
|
+
Subscriptions are used to model fixed recurring fees as well as seat-based recurring fees. To model changes to the number of seats in Metronome, you can increment or decrement the quantity on a subscription at any point in the past or future.
|
|
1209
|
+
|
|
312
1210
|
- `schedule_pro_services_invoice_v1_contracts` (`write`): Create a new scheduled invoice for Professional Services terms on a contract. This endpoint's availability is dependent on your client's configuration.
|
|
313
|
-
- `set_usage_filter_v1_contracts` (`write`):
|
|
314
|
-
|
|
1211
|
+
- `set_usage_filter_v1_contracts` (`write`): If a customer has multiple contracts with overlapping rates, the usage filter routes usage to the appropriate contract based on a predefined group key.
|
|
1212
|
+
|
|
1213
|
+
As an example, imagine you have a customer associated with two projects. Each project is associated with its own contract. You can create a usage filter with group key `project_id`
|
|
1214
|
+
on each contract, and route usage for `project_1` to the first contract and `project_2` to the second contract.
|
|
1215
|
+
|
|
1216
|
+
### Use this endpoint to:
|
|
1217
|
+
|
|
1218
|
+
- Support enterprise contracting scenarios where multiple contracts are associated to the same customer with the same rates.
|
|
1219
|
+
- Update the usage filter associated with the contract over time.
|
|
1220
|
+
|
|
1221
|
+
### Usage guidelines:
|
|
1222
|
+
|
|
1223
|
+
To use usage filters, the `group_key` must be defined on the billable metrics underlying the rate card on the contracts.
|
|
1224
|
+
|
|
1225
|
+
- `update_end_date_v1_contracts` (`write`): Update or and an end date to a contract. Ending a contract early will impact draft usage statements, truncate any terms, and remove upcoming scheduled invoices. Moving the date into the future will only extend the contract length. Terms and scheduled invoices are not extended. Use this if a contract's end date has changed or if a perpetual contract ends.
|
|
315
1226
|
|
|
316
1227
|
### Resource `v1.contracts.products`:
|
|
317
1228
|
|
|
318
|
-
- `create_contracts_v1_products` (`write`): Create a new product
|
|
319
|
-
- `retrieve_contracts_v1_products` (`write`):
|
|
320
|
-
- `update_contracts_v1_products` (`write`):
|
|
321
|
-
|
|
322
|
-
|
|
1229
|
+
- `create_contracts_v1_products` (`write`): Create a new product object. Products in Metronome represent your company's individual product or service offerings. A Product can be thought of as the basic unit of a line item on the invoice. This is analogous to SKUs or items in an ERP system. Give the product a meaningful name as they will appear on customer invoices.
|
|
1230
|
+
- `retrieve_contracts_v1_products` (`write`): Retrieve a product by its ID, including all metadata and historical changes.
|
|
1231
|
+
- `update_contracts_v1_products` (`write`): Updates a product's configuration while maintaining billing continuity for active customers. Use this endpoint to modify product names, metrics, pricing rules, and composite settings without disrupting ongoing billing cycles. Changes are scheduled using the starting_at timestamp, which must be on an hour boundary—set future dates to schedule updates ahead of time, or past dates for retroactive changes. Returns the updated product ID upon success.
|
|
1232
|
+
|
|
1233
|
+
### Usage guidance:
|
|
1234
|
+
|
|
1235
|
+
- Product type cannot be changed after creation. For incorrect product types, create a new product and archive the original instead.
|
|
1236
|
+
|
|
1237
|
+
- `list_contracts_v1_products` (`write`): Get a paginated list of all products in your organization with their complete configuration, version history, and metadata. By default excludes archived products unless explicitly requested via the `archive_filter` parameter.
|
|
1238
|
+
- `archive_contracts_v1_products` (`write`): Archive a product. Any current rate cards associated with this product will continue to function as normal. However, it will no longer be available as an option for newly created rates. Once you archive a product, you can still retrieve it in the UI and API, but you cannot unarchive it.
|
|
323
1239
|
|
|
324
1240
|
### Resource `v1.contracts.rateCards`:
|
|
325
1241
|
|
|
326
|
-
- `create_contracts_v1_rate_cards` (`write`):
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
-
|
|
331
|
-
-
|
|
1242
|
+
- `create_contracts_v1_rate_cards` (`write`): In Metronome, the rate card is the central location for your pricing. Rate cards were built with new product launches and pricing changes in mind - you can update your products and pricing in one place, and that change will be automatically propagated across your customer cohorts. Most clients need only maintain one or a few rate cards within Metronome.
|
|
1243
|
+
|
|
1244
|
+
### Use this endpoint to:
|
|
1245
|
+
|
|
1246
|
+
- Create a rate card with a name and description
|
|
1247
|
+
- Define the rate card's single underlying fiat currency, and any number of conversion rates between that fiat currency and custom pricing units. You can then add products and associated rates in the fiat currency or custom pricing unit for which you have defined a conversion rate.
|
|
1248
|
+
- Set aliases for the rate card. Aliases are human-readable names that you can use in the place of the id of the rate card when provisioning a customer's contract. By using an alias, you can easily create a contract and provision a customer by choosing the paygo rate card, without storing the rate card id in your internal systems. This is helpful when launching a new rate card for paygo customers, you can update the alias for paygo to be scheduled to be assigned to the new rate card without updating your code.
|
|
1249
|
+
|
|
1250
|
+
### Key response fields:
|
|
1251
|
+
|
|
1252
|
+
- The ID of the rate card you just created
|
|
1253
|
+
|
|
1254
|
+
### Usage guidelines:
|
|
1255
|
+
|
|
1256
|
+
- After creating a rate card, you can now use the addRate or addRates endpoints to add products and their prices to it
|
|
1257
|
+
- A rate card alias can only be used by one rate card at a time. If you create a contract with a rate card alias that is already in use by another rate card, the original rate card's alias schedule will be updated. The alias will reference the rate card to which it was most recently assigned.
|
|
1258
|
+
|
|
1259
|
+
- `retrieve_contracts_v1_rate_cards` (`write`): Return details for a specific rate card including name, description, and aliases. This endpoint does not return rates - use the dedicated getRates or getRateSchedule endpoints to understand the rates on a rate card.
|
|
1260
|
+
- `update_contracts_v1_rate_cards` (`write`): Update the metadata properties of an existing rate card, including its name, description, and aliases. This endpoint is designed for managing rate card identity and reference aliases rather than modifying pricing rates.
|
|
1261
|
+
|
|
1262
|
+
Modifies the descriptive properties and alias configuration of a rate card without affecting the underlying pricing rates or schedules. This allows you to update how a rate card is identified and referenced throughout your system.
|
|
1263
|
+
|
|
1264
|
+
### Use this endpoint to:
|
|
1265
|
+
|
|
1266
|
+
- Rate card renaming: Update display names or descriptions for organizational clarity
|
|
1267
|
+
- Alias management: Add, modify, or schedule alias transitions for seamless rate card migrations
|
|
1268
|
+
- Documentation updates: Keep rate card descriptions current with business context
|
|
1269
|
+
- Self-serve provisioning setup: Configure aliases to enable code-free rate card transitions
|
|
1270
|
+
|
|
1271
|
+
#### Active contract impact:
|
|
1272
|
+
|
|
1273
|
+
- Alias changes: Already-created contracts continue using their originally assigned rate cards.
|
|
1274
|
+
- Other changes made using this endpoint will only impact the Metronome UI.
|
|
1275
|
+
|
|
1276
|
+
#### Grandfathering existing PLG customer pricing:
|
|
1277
|
+
|
|
1278
|
+
- Rate card aliases support scheduled transitions, enabling seamless rate card migrations for new customers, allowing existing customers to be grandfathered into their existing prices without code. Note that there are multiple mechanisms to support grandfathering in Metronome.
|
|
1279
|
+
|
|
1280
|
+
#### How scheduled aliases work for PLG grandfathering:
|
|
1281
|
+
|
|
1282
|
+
Initial setup:
|
|
1283
|
+
|
|
1284
|
+
- Add alias to current rate card: Assign a stable alias (e.g., "standard-pricing") to your active rate card
|
|
1285
|
+
- Reference alias during contract creation: Configure your self-serve workflow to create contracts using `rate_card_alias` instead of direct `rate_card_id`
|
|
1286
|
+
- Automatic resolution: New contracts referencing the alias automatically resolve to the rate card associated with the alias at the point in time of provisioning
|
|
1287
|
+
|
|
1288
|
+
#### Grandfathering process:
|
|
1289
|
+
|
|
1290
|
+
- Create new rate card: Build your new rate card with updated pricing structure
|
|
1291
|
+
- Schedule alias transition: Add the same alias to the new rate card with a `starting_at` timestamp
|
|
1292
|
+
- Automatic cutover: Starting at the scheduled time, new contracts created in your PLG workflow using that alias will automatically reference the new rate card
|
|
1293
|
+
|
|
1294
|
+
- `list_contracts_v1_rate_cards` (`write`): List all rate cards. Returns rate card IDs, names, descriptions, aliases, and other details. To view the rates associated with a given rate card, use the getRates or getRateSchedule endpoints.
|
|
1295
|
+
- `archive_contracts_v1_rate_cards` (`write`): Permanently disable a rate card by archiving it, preventing use in new contracts while preserving existing contract pricing. Use this when retiring old pricing models, consolidating rate cards, or removing outdated pricing structures. Returns the archived rate card ID and stops the rate card from appearing in contract creation workflows.
|
|
1296
|
+
- `retrieve_rate_schedule_contracts_v1_rate_cards` (`write`): A rate card defines the prices that you charge for your products. Rate cards support scheduled changes over time, to allow you to easily roll out pricing changes and new product launches across your customer base. Use this endpoint to understand the rate schedule `starting_at` a given date, optionally filtering the list of rates returned based on product id or pricing group values. For example, you may want to display a schedule of upcoming price changes for a given product in your product experience - use this endpoint to fetch that information from its source of truth in Metronome.
|
|
1297
|
+
|
|
1298
|
+
If you want to understand the rates for a specific customer's contract, inclusive of contract-level overrides, use the `getContractRateSchedule` endpoint.
|
|
332
1299
|
|
|
333
1300
|
### Resource `v1.contracts.rateCards.product_orders`:
|
|
334
1301
|
|
|
335
|
-
- `update_rate_cards_contracts_v1_product_orders` (`write`):
|
|
336
|
-
- `set_rate_cards_contracts_v1_product_orders` (`write`):
|
|
1302
|
+
- `update_rate_cards_contracts_v1_product_orders` (`write`): The ordering of products on a rate card determines the order in which the products will appear on customers' invoices. Use this endpoint to set the order of specific products on the rate card by moving them relative to their current location.
|
|
1303
|
+
- `set_rate_cards_contracts_v1_product_orders` (`write`): The ordering of products on a rate card determines the order in which the products will appear on customers' invoices. Use this endpoint to set the order of products on the rate card.
|
|
337
1304
|
|
|
338
1305
|
### Resource `v1.contracts.rateCards.rates`:
|
|
339
1306
|
|
|
340
|
-
- `list_rate_cards_contracts_v1_rates` (`write`):
|
|
1307
|
+
- `list_rate_cards_contracts_v1_rates` (`write`): Understand the rate schedule at a given timestamp, optionally filtering the list of rates returned based on properties such as `product_id` and `pricing_group_values`. For example, you may want to display the current price for a given product in your product experience - use this endpoint to fetch that information from its source of truth in Metronome.
|
|
1308
|
+
|
|
1309
|
+
If you want to understand the rates for a specific customer's contract, inclusive of contract-level overrides, use the `getContractRateSchedule` endpoint.
|
|
1310
|
+
|
|
341
1311
|
- `add_rate_cards_contracts_v1_rates` (`write`): Add a new rate
|
|
342
1312
|
- `add_many_rate_cards_contracts_v1_rates` (`write`): Add new rates
|
|
343
1313
|
|