Skip to content

Create or update a metric definition

PUT
/v1/metric-alerts/definitions
curl --request PUT \
--url https://shareout.site/v1/metric-alerts/definitions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "artifact_id": "example", "metric_id": "example", "label": "example", "format": "example", "source": { "type": "json_path", "key": "example", "path": "example", "table": "example", "field": "example", "fn": "sum", "where": {} } }'

Upserts by (artifact_id, metric_id). Up to 10 metrics per artifact.

Media type application/json
object
artifact_id
required
string
metric_id
required

Stable key referenced by rules. Letters, digits, _, -.

string
label
required
string
format

Display hint: currency:USD, number, percent.

string
source
required

Where a metric value is read from.

object
type
required
string
Allowed values: json_path table_count table_aggregate
key

Json_path: the sdk.json key to read.

string
path

Json_path: e.g. $.revenue, $.totals.mrr.

string
table
string
field
string
fn
string
Allowed values: sum avg min max
where

Filter using the same operators as sdk.table().query().

object

Saved

Invalid request

Media type application/json
object
success
required
boolean
error
required

Human-readable message.

string
code
required

Machine-readable error code.

string
Example
{
"success": false
}