The CloudZero Allocation Telemetry API allows you to send allocation data related to your system's operations. You can read more about this data in the Split Shared Costs Using Allocation Dimensions section of the documentation.

👍

CloudZero Allocation Endpoint

https://api.cloudzero.com/unit-cost/v1/allocation/{stream_name}

{stream_name}: is the user defined name to associate with this Allocation stream.

Please Note: The legacy allocation endpoint of https://api.cloudzero.com/unit-cost/v1/telemetry continues to be supported, but has been deprecated. Please use the new endpoint whenever possible.

General Telemetry API information and limitations can be found on the Telemetry section of this documentation.

Example

For example, the following allocation telemetry record describes some possible system activity by your customer, Hooli, where your production billing feature processed 250M records for this customer throughout the day of January 25th, 2020.

{
  "records": [
    {
    	"timestamp": "2020-01-25T00:00:00Z",
    	"granularity": "DAILY",
    	"filter": {
      	"custom:feature": [
        	"billing"
      	],
      	"tag:environment": [
          "prod"
        ],
        "tag:owner": [
          "frank",
          "sandy"
        ]
    	},
    	"element-name": "<HOOLI-CUSTOMER-ID>",
    	"value": "250000000"
    }
  ]
}

Limits

  • You may only associate 5 filter dimensions in a single stream.
  • All records within a given telemetry stream must filter on the same set of dimensions.
  • Filtering can specify multiple values for a dimension; a given telemetry record can specify at most 20 values for each filtered dimension.
  • Filtering on multiple dimensions combine via a logical "and"; filtering on multiple values for a given dimension combine via a logical "or"
    • For example: { "account": ["1", "2"], "service": ["A"] } will match those cost records having service = "A" AND either account = "1" OR account = "2"