v1

latestOpenAPI 3.0.3Apache 2.02026-07-13121230447.8 KB
Usage Meters

Create an usage meter

Create an usage meter and associate with an event schema

post/usage_meters

Request body

namestring required

Name of the usage meter. Must be unique for an organization.

billableNamestring

Billable name of usage meter. Billable name takes precedence over name to display in invoice.

descriptionstring

Description of the usage meter

type'COUNTER' required

Type of usage meter

aggregation'COUNT' | 'SUM' required

Aggregation to be applied on usage meter result

  • COUNT - Counts number of events matching the usage meter
  • SUM - Sums up results of computation of all events matching usage meter
eventSchemaNamestring

Event Schema Identifier

Example request

{
  "computations": [
    {
      "matcher": "{\n  \"and\": [\n    {\"in\": [{\"var\": \"dimension.city\"}, \"chennai\", \"mumbai\"]},\n    \"or\": [\n      {\">\": [{\"var\": \"attribute.distance\"}, 100]},\n      {\"<\": [{\"var\": \"attribute.distance\"}, 20]}\n    ]\n  ]\n}\n"
    }
  ]
}

Response

Response for Create and Get usage event requests

idstring required

Identifier of the usage meter

namestring required

Name of the usage meter

billableNamestring

Billable name of addon. Billable name takes precedence over name to display in invoice.

displayNamestring required

Display name of usage meter. This is an auto-generated field which contains billableName of usage meter. If billableName is not provided, name will be used as display name.

descriptionstring
type'COUNTER' required

Type of usage meter

status'DRAFT' | 'ACTIVE' | 'INACTIVE' | 'ARCHIVED'

Status of usage meter

aggregation'COUNT' | 'SUM' required

Aggregation to be applied on usage meter result

  • COUNT - Counts number of events matching the usage meter
  • SUM - Sums up results of computation of all events matching usage meter
createdAtstring date-time
lastActivatedAtstring date-time
updatedAtstring date-time

Example response

{
  "name": "rides-usage",
  "billableName": "Rides Usage",
  "description": "Meter to track cab rides",
  "type": "COUNTER",
  "status": "DRAFT",
  "computations": [
    {
      "matcher": "{\n  \"and\": [\n    {\"in\": [{\"var\": \"dimension.city\"}, \"chennai\", \"mumbai\"]},\n    \"or\": [\n      {\">\": [{\"var\": \"attribute.distance\"}, 100]},\n      {\"<\": [{\"var\": \"attribute.distance\"}, 20]}\n    ]\n  ]\n}\n"
    }
  ]
}