API catalog

The hand-curated Metronome endpoint catalog metro knows.

View .md

The Metronome endpoints metro knows, hand-curated with request and response contracts, permission scopes and gates. Metronome's docs at docs.metronome.com are the source of truth. For every documented endpoint and whether metro wraps it, see Metronome API coverage.

Source

Generated from metro docs api-reference --markdown in metrocli/metro @f7c4a76. Source schemaVersion: metro.docs.api-reference.v1.

  • schemaVersion: metro.docs.api-reference.v1
  • apiAccess: none

Endpoints

idfamilymethodpathsupportStatusapiAccess
usage.ingestusagePOST/v1/ingestworkflow-preview-supportednone
usage.groupsusagePOST/v1/usage/groupscataloged-local-onlynone
usage.batchusagePOST/v1/usagecataloged-local-onlynone
events.searchusagePOST/v1/events/searchcataloged-local-onlynone
billableMetrics.getbillable-metricsGET/v1/billable-metrics/{billable_metric_id}cataloged-local-onlynone
billableMetrics.listbillable-metricsGET/v1/billable-metricscataloged-local-onlynone
billableMetrics.createbillable-metricsPOST/v1/billable-metrics/createcataloged-local-onlynone
billableMetrics.updatebillable-metricsPUT/v1/billable-metrics/{billable_metric_id}cataloged-local-onlynone
billableMetrics.archivebillable-metricsPOST/v1/billable-metrics/archivecataloged-local-onlynone
packages.createpackagesPOST/v1/packages/createworkflow-preview-supportednone
packages.getpackagesPOST/v1/packages/getinspect-plan-supportednone
packages.listpackagesPOST/v1/packages/listinspect-plan-supportednone
packages.listContractsOnPackagepackagesPOST/v1/packages/listContractsOnPackagecataloged-local-onlynone
packages.archivepackagesPOST/v1/packages/archiveworkflow-preview-supportednone
contracts.createcontractsPOST/v1/contracts/createworkflow-preview-supportednone
contracts.updateEndDatecontractsPOST/v1/contracts/updateEndDateworkflow-preview-supportednone
contracts.get.v2contractsPOST/v2/contracts/getinspect-plan-supportednone
contracts.list.v2contractsPOST/v2/contracts/listinspect-plan-supportednone
contracts.getRateSchedulecontractsPOST/v1/contracts/getContractRateSchedulecataloged-local-onlynone
contracts.getEditHistorycontractsPOST/v2/contracts/getEditHistorycataloged-local-onlynone
contracts.getSubscriptionQuantityHistorycontractsPOST/v1/contracts/getSubscriptionQuantityHistorycataloged-local-onlynone
contracts.getSubscriptionSeatsHistorycontractsPOST/v1/contracts/getSubscriptionSeatsHistorycataloged-local-onlynone
contracts.edit.v2contractsPOST/v2/contracts/editworkflow-preview-supportednone
contracts.updateInvoiceIssueDatecontractsPOST/v1/contracts/updateInvoiceIssueDateworkflow-preview-supportednone
commits.listcreditsPOST/v1/contracts/customerCommits/listinspect-plan-supportednone
credits.listcreditsPOST/v1/contracts/customerCredits/listinspect-plan-supportednone
customerBalances.listcreditsPOST/v1/contracts/customerBalances/listinspect-plan-supportednone
seatBalances.listcreditsPOST/v1/contracts/seatBalances/listcataloged-local-onlynone
invoices.previewinvoicesPOST/v1/customers/{customer_id}/previewEventsworkflow-preview-supportednone
customers.getcustomersGET/v1/customers/{customer_id}inspect-plan-supportednone
customers.listcustomersGET/v1/customerslocal-read-plan-supportednone
customers.createcustomersPOST/v1/customersworkflow-preview-supportednone
customers.archivecustomersPOST/v1/customers/archivecataloged-local-onlynone
customers.updateConfigcustomersPOST/v1/customers/{customer_id}/updateConfigworkflow-preview-supportednone
customers.updateNamecustomersPOST/v1/customers/{customer_id}/updateNamecataloged-local-onlynone
customers.setIngestAliasescustomersPOST/v1/customers/{customer_id}/setIngestAliasescataloged-local-onlynone
invoices.listForCustomerinvoicesGET/v1/customers/{customer_id}/invoicesinspect-plan-supportednone
invoices.listBreakdownsinvoicesGET/v1/customers/{customer_id}/invoices/breakdownscataloged-local-onlynone
invoices.getinvoicesPOST/v1/invoices/getinspect-plan-supportednone
invoices.voidinvoicesPOST/v1/invoices/voidcataloged-local-onlynone
invoices.regenerateinvoicesPOST/v1/invoices/regeneratecataloged-local-onlynone
payments.listForInvoicepaymentsPOST/v1/invoices/payments/listcataloged-local-onlynone
payments.attemptpaymentsPOST/v1/invoices/payments/attemptcataloged-local-onlynone
payments.cancelpaymentsPOST/v1/invoices/payments/cancelcataloged-local-onlynone
billingProvider.setCustomerConfigurationsbilling-providerPOST/v1/setCustomerBillingProviderConfigurationsworkflow-preview-supportednone
billingProvider.getCustomerConfigurationsbilling-providerPOST/v1/getCustomerBillingProviderConfigurationsinspect-plan-supportednone
billingProvider.listConfiguredProvidersbilling-providerPOST/v1/listConfiguredBillingProviderscataloged-local-onlynone
customFields.addKeycustom-fieldsPOST/v1/customFields/addKeycataloged-local-onlynone
customFields.removeKeycustom-fieldsPOST/v1/customFields/removeKeycataloged-local-onlynone
customFields.setValuescustom-fieldsPOST/v1/customFields/setValuescataloged-local-onlynone
customFields.deleteValuescustom-fieldsPOST/v1/customFields/deleteValuescataloged-local-onlynone
customFields.listKeyscustom-fieldsPOST/v1/customFields/listKeyscataloged-local-onlynone
settings.listPricingUnitssettingsGET/v1/credit-types/listcataloged-local-onlynone
security.getServicessecurityGET/v1/servicescataloged-local-onlynone
security.getAuditLogssecurityGET/v1/auditLogscataloged-local-onlynone
products.getproductsPOST/v1/contract-pricing/products/getinspect-plan-supportednone
products.listproductsPOST/v1/contract-pricing/products/listcataloged-local-onlynone
products.createproductsPOST/v1/contract-pricing/products/createworkflow-preview-supportednone
products.updateproductsPOST/v1/contract-pricing/products/updateworkflow-preview-supportednone
products.archiveproductsPOST/v1/contract-pricing/products/archiveworkflow-preview-supportednone
rateCards.createrate-cardsPOST/v1/contract-pricing/rate-cards/createworkflow-preview-supportednone
rateCards.updaterate-cardsPOST/v1/contract-pricing/rate-cards/updateworkflow-preview-supportednone
rateCards.archiverate-cardsPOST/v1/contract-pricing/rate-cards/archiveworkflow-preview-supportednone
rateCards.setProductOrderrate-cardsPOST/v1/contract-pricing/rate-cards/setRateCardProductsOrderworkflow-preview-supportednone
rateCards.getrate-cardsPOST/v1/contract-pricing/rate-cards/getcataloged-local-onlynone
rateCards.listrate-cardsPOST/v1/contract-pricing/rate-cards/listcataloged-local-onlynone
rateCards.getRatesrate-cardsPOST/v1/contract-pricing/rate-cards/getRatescataloged-local-onlynone
rateCards.addRatesrate-cardsPOST/v1/contract-pricing/rate-cards/addRatesworkflow-preview-supportednone
rateCards.getRateSchedulerate-cardsPOST/v1/contract-pricing/rate-cards/getRateScheduleinspect-plan-supportednone
billableMetrics.listForCustomerbillable-metricsGET/v1/customers/{customer_id}/billable-metricscataloged-local-onlynone
invoices.getForCustomerinvoicesGET/v1/customers/{customer_id}/invoices/{invoice_id}cataloged-local-onlynone
invoices.getPdfinvoicesGET/v1/customers/{customer_id}/invoices/{invoice_id}/pdfcataloged-local-onlynone
contracts.get.v1contractsPOST/v1/contracts/getcataloged-local-onlynone
contracts.list.v1contractsPOST/v1/contracts/listcataloged-local-onlynone
customerBalances.getNetBalancecreditsPOST/v1/contracts/customerBalances/getNetBalancecataloged-local-onlynone
alerts.getForCustomeralertsPOST/v1/customer-alerts/getcataloged-local-onlynone
alerts.listForCustomeralertsPOST/v1/customer-alerts/listcataloged-local-onlynone
notifications.getnotificationsPOST/v2/notifications/getcataloged-local-onlynone
notifications.listOffsetnotificationsPOST/v2/notifications/offset/listcataloged-local-onlynone
notifications.listSystemnotificationsPOST/v2/notifications/system/listcataloged-local-onlynone
webhooks.listTriggeredNotificationswebhooksPOST/v1/webhooks/{webhook_id}/triggered_notificationscataloged-local-onlynone
webhooks.getTriggeredNotificationwebhooksGET/v1/webhooks/{webhook_id}/triggered_notifications/{triggered_notification_id}cataloged-local-onlynone

families

familyendpointCountoperationTypessupportStatuses
alerts2{"read":2}{"cataloged-local-only":2}
billable-metrics6{"read":3,"write":3}{"cataloged-local-only":6}
billing-provider3{"write":1,"read":2}{"workflow-preview-supported":1,"inspect-plan-supported":1,"cataloged-local-only":1}
contracts12{"write":4,"read":8}{"workflow-preview-supported":4,"inspect-plan-supported":2,"cataloged-local-only":6}
credits5{"read":5}{"inspect-plan-supported":3,"cataloged-local-only":2}
custom-fields5{"write":4,"read":1}{"cataloged-local-only":5}
customers7{"read":2,"write":5}{"inspect-plan-supported":1,"local-read-plan-supported":1,"workflow-preview-supported":2,"cataloged-local-only":3}
invoices8{"preview":1,"read":5,"write":2}{"workflow-preview-supported":1,"inspect-plan-supported":2,"cataloged-local-only":5}
notifications3{"read":3}{"cataloged-local-only":3}
packages5{"write":2,"read":3}{"workflow-preview-supported":2,"inspect-plan-supported":2,"cataloged-local-only":1}
payments3{"read":1,"write":2}{"cataloged-local-only":3}
products5{"read":2,"write":3}{"inspect-plan-supported":1,"cataloged-local-only":1,"workflow-preview-supported":3}
rate-cards9{"write":5,"read":4}{"workflow-preview-supported":5,"cataloged-local-only":3,"inspect-plan-supported":1}
security2{"read":2}{"cataloged-local-only":2}
settings1{"read":1}{"cataloged-local-only":1}
usage4{"write":1,"read":3}{"workflow-preview-supported":1,"cataloged-local-only":3}
webhooks2{"read":2}{"cataloged-local-only":2}

writeProofLadder

orderidreadinessFieldcommandprovesunlocksapiAccessliveExecutionEnabledInCurrentCli
1request-validationrequestValidatormetro api validate <endpoint-id> --file <request.json|yaml> [--json]Request body, path parameters, query placement, tenant-independent endpoint shape, and secret-free input are locally valid for the reviewed endpoint ID.local-api-previewnonefalse
2local-api-previewlocalPreviewmetro api preview <endpoint-id> --file <request.json|yaml> (--sandbox|--prod) [--json]The reviewed request can be normalized into a deterministic local preview with request hash, payload hash, permission scope, side-effect profile, and no live execution.api-preflightnonefalse
3api-preflightapiPreflightmetro api preflight template --preview <api-preview.json> [--profile-resolution <profile-resolution.json>] [--approval-id <id>] [--json]The preview has reviewed tenant/profile binding, idempotency, audit destination, read-back plan, rollback or remediation planning, and required approval context.api-sandbox-proofnonefalse
4api-sandbox-proofapiSandboxProofmetro api sandbox-proof template --preview <api-preview.json> --preflight <api-preflight.json> [--reviewed-by <reviewer>] [--owner <owner>] [--json]Sandbox canary, read-back, invoice behavior, rollback, and remediation evidence can be bound to the exact preview request hash before any production gate.api-apply-gatenonefalse
5api-apply-gateapiApplyGatemetro api apply-gate template --preview <api-preview.json> --preflight <api-preflight.json> [--sandbox-proof <sandbox-proof.json>] [--profile-resolution <profile-resolution.json>] [--json]Reviewed preview, preflight, sandbox proof, tenant profile, key fingerprint, audit destination, read-back plan, rollback or remediation plan, and idempotency review are hash-bound.api-approval-recordnonefalse
6api-approval-recordapiApprovalRecordmetro api approval-record template --apply-gate <api-apply-gate.json> [--approval-id <id>] [--requested-by <id>] [--approved-by <name>] [--owner <owner>] [--business-purpose <text>] [--expires-at <ISO>] [--json]A durable approval record can bind owner approval to the validated apply gate while still requiring exact current-turn authorization for any future live execution.api-apply-auditnonefalse
7api-apply-auditapiApplyAuditmetro api apply-audit write --approval-record <api-approval-record.json> --out <api-apply-audit.jsonl> --actor <id> (--dry-run|--write) [--timestamp <ISO>] [--json]A planned audit row can bind approval, tenant profile, request hash, payload hash, rollback, read-back, and idempotency evidence without capturing reusable live authorization.api-apply-readbacknonefalse
8api-apply-readbackapiApplyReadbackmetro api apply-readback verify --apply-audit <api-apply-audit.jsonl> --read-result <api-read-result.json> [--row <n>] [--json]Read-back evidence is compatible with the planned write endpoint, tenant, and audit row before any apply-result record claims semantic success.api-apply-resultnonefalse
9api-apply-resultapiApplyResultmetro api apply-result template --apply-audit <api-apply-audit.jsonl> --apply-readback <api-apply-readback.json> [--row <n>] [--json]A future guarded runner result can record current-turn authorization capture, response hash, response object IDs, live audit row hash, semantic read-back success, rollback/remediation, idempotency review, and secret-free evidence.future-guarded-apply-runner-onlynonefalse

Agent notes

  • Prefer --json when scripting parsers; use --markdown when loading context into an agent.
  • Never treat HTML as the source of truth, regenerate from metro docs <ref> --markdown.
  • Live reads/writes still require tenant flags + confirmation tokens.

On this page