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

Retrieve

Get a billable metric
client.V1.BillableMetrics.Get(ctx, query) (*DataV1BillableMetricGetResponseDataV1BillableMetricGetResponse, error)
get/v1/billable-metrics/{billable_metric_id}

Get a billable metric.

Parameters
queryBillableMetricIDfieldV1BillableMetricGetParams
Hide ParametersShow Parameters
BillableMetricIDfield
param.Field[string]
formatuuid
Returns
V1BillableMetricGetResponsestruct
Hide ParametersShow Parameters
DataIDstringNamestringAggregationKeystringAggregationTypeV1BillableMetricGetResponseDataAggregationTypeArchivedAtTimeCustomFieldsmapEventTypeFilterEventTypeFilterGroupKeysarrayPropertyFiltersarraySqlstringV1BillableMetricGetResponseData
Hide ParametersShow Parameters
IDstring

ID of the billable metric

formatuuid
Namestring

The display name of the billable metric.

AggregationKeystring
optional

A key that specifies which property of the event is used to aggregate data. This key must be one of the property filter names and is not applicable when the aggregation type is 'count'.

AggregationTypeV1BillableMetricGetResponseDataAggregationTypeCountV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeLatestV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeMaxV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeSumV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeUniqueV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationType
optional

Specifies the type of aggregation performed on matching events.

Hide ParametersShow Parameters
V1BillableMetricGetResponseDataAggregationTypeCountconst
V1BillableMetricGetResponseDataAggregationTypeCountV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeLatestV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeMaxV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeSumV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeUniqueV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationType
"COUNT"
V1BillableMetricGetResponseDataAggregationTypeLatestconst
V1BillableMetricGetResponseDataAggregationTypeCountV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeLatestV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeMaxV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeSumV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeUniqueV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationType
"LATEST"
V1BillableMetricGetResponseDataAggregationTypeMaxconst
V1BillableMetricGetResponseDataAggregationTypeCountV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeLatestV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeMaxV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeSumV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeUniqueV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationType
"MAX"
V1BillableMetricGetResponseDataAggregationTypeSumconst
V1BillableMetricGetResponseDataAggregationTypeCountV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeLatestV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeMaxV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeSumV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeUniqueV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationType
"SUM"
V1BillableMetricGetResponseDataAggregationTypeUniqueconst
V1BillableMetricGetResponseDataAggregationTypeCountV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeLatestV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeMaxV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeSumV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationTypeUniqueV1BillableMetricGetResponseDataAggregationTypeV1BillableMetricGetResponseDataAggregationType
"UNIQUE"
ArchivedAtTime
optional

RFC 3339 timestamp indicating when the billable metric was archived. If not provided, the billable metric is not archived.

formatdate-time
CustomFieldsmap
optional
map[string, string]
EventTypeFilterInValuesarrayNotInValuesarrayEventTypeFilter
optional

An optional filtering rule to match the 'event_type' property of an event.

GroupKeysarray
optional
[][]string

Property names that are used to group usage costs on an invoice. Each entry represents a set of properties used to slice events into distinct buckets.

PropertyFiltersarray
optional
[]NamestringExistsboolInValuesarrayNotInValuesarrayPropertyFilter

A list of filters to match events to this billable metric. Each filter defines a rule on an event property. All rules must pass for the event to match the billable metric.

Hide ParametersShow Parameters
Namestring

The name of the event property.

Existsbool
optional

Determines whether the property must exist in the event. If true, only events with this property will pass the filter. If false, only events without this property will pass the filter. If null or omitted, the existence of the property is optional.

InValuesarray
optional
[]string

Specifies the allowed values for the property to match an event. An event will pass the filter only if its property value is included in this list. If undefined, all property values will pass the filter. Must be non-empty if present.

NotInValuesarray
optional
[]string

Specifies the values that prevent an event from matching the filter. An event will not pass the filter if its property value is included in this list. If null or empty, all property values will pass the filter. Must be non-empty if present.

Sqlstring
optional

The SQL query associated with the billable metric

package main

import (
  "context"
  "fmt"

  "github.com/Metronome-Industries/metronome-go"
  "github.com/Metronome-Industries/metronome-go/option"
)

func main() {
  client := metronome.NewClient(
    option.WithBearerToken("My Bearer Token"),
  )
  billableMetric, err := client.V1.BillableMetrics.Get(context.TODO(), metronome.V1BillableMetricGetParams{
    BillableMetricID: metronome.F("13117714-3f05-48e5-a6e9-a66093f13b4d"),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", billableMetric.Data)
}
200 Example
{
  "data": {
    "id": "182bd5e5-6e1a-4fe4-a799-aa6d9a6ab26e",
    "name": "name",
    "aggregation_key": "aggregation_key",
    "aggregation_type": "COUNT",
    "archived_at": "2019-12-27T18:11:19.117Z",
    "custom_fields": {
      "foo": "string"
    },
    "event_type_filter": {
      "in_values": [
        "string"
      ],
      "not_in_values": [
        "string"
      ]
    },
    "group_keys": [
      [
        "string"
      ]
    ],
    "property_filters": [
      {
        "name": "name",
        "exists": true,
        "in_values": [
          "string"
        ],
        "not_in_values": [
          "string"
        ]
      }
    ],
    "sql": "sql"
  }
}