PATCH
/
usage_meters
/
{usage_meter_id}
curl --request PATCH \
  --url https://api.togai.com/usage_meters/{usage_meter_id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "name": "<string>",
  "billableName": "<string>",
  "description": "<string>",
  "eventSchemaName": "<string>",
  "type": "COUNTER",
  "aggregation": "COUNT",
  "computations": [
    {
      "id": "<string>",
      "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",
      "computation": {
        "*": [
          {
            "var": "attributes.distance"
          },
          0.4
        ]
      },
      "order": 123
    }
  ]
}'
{
  "id": "um.1zlQTBWlkeO.lB7fh",
  "name": "Rides",
  "displayName": "Rides",
  "description": "Cab rides",
  "type": "COUNTER",
  "aggregation": "COUNT",
  "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",
      "order": 1,
      "computation": "1"
    }
  ]
}

Authorizations

Authorization
string
headerrequired

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

usage_meter_id
string
required

Body

application/json
name
string

Name of usage meter.

billableName
string

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

description
string

Description of the usage meter

eventSchemaName
string

Event Schema Identifier

type
enum<string>

Type of usage meter

  • COUNTER - Count usage
Available options:
COUNTER
aggregation
enum<string>

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
Available options:
COUNT,
SUM
computations
object[]

Response

200 - application/json
id
string
required

Identifier of the usage meter

name
string
required

Name of the usage meter

billableName
string

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

displayName
string
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.

description
string
type
enum<string>
required

Type of usage meter

Available options:
COUNTER
status
enum<string>

Status of usage meter

Available options:
DRAFT,
ACTIVE,
INACTIVE,
ARCHIVED
aggregation
enum<string>
required

Aggregation to be applied on usage meter result

Available options:
COUNT,
SUM
computations
object[]
createdAt
string
lastActivatedAt
string
updatedAt
string