Create or update a metric definition
PUT
/v1/metric-alerts/definitions
const url = 'https://shareout.site/v1/metric-alerts/definitions';const options = { method: 'PUT', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"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":{}}}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}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.
Authorizations
Section titled “Authorizations ”Request Body required
Section titled “Request Body required ” 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
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
where
Filter using the same operators as sdk.table().query().
object
Responses
Section titled “ Responses ”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}