Metric
The Metric API provides access to a variety of metrics that are recorded in the Lytics platform. With this API, you can access segment-size metrics, events received per-hour, as well as many workflow specific metrics.
Dimensions
Dimension | Description | Dimension ID | Updated |
---|---|---|---|
experience | Get metrics tied to a specific Lytics Experience. | Experience ID | Every hour |
experiencegroup | Get metrics tied to a Lytics Experience-Group. | Experience-Group ID | Every hour |
attribution | Get metrics tied to a specific Lytics Experience for stage conversion attribution. | Conversion attribution model and Experience ID* | Every week |
segment | Get metrics tied to a Lytics Segment. | Segment ID | Every 2 hours |
stream | Get metrics tied to a data stream. | Stream name | Every hour |
*One of the supported stage Conversion attribution model types (i.e. “timedecay”, “lasttouch”, “linear”) and the Experience ID (ie. “timedecay_experienceID”).
Dimension Types
Dimension-Type | Description |
---|---|
size | Returns the raw value of the metric |
potentialreach | Returns the potential of an experience (only supported for metrics where Dimension = experience or experiencegroup ) |
actualreach | Returns the conversion of an experience (only supported for metrics where Dimension = experience or experiencegroup ) |
conversionrate | value resulting from Actual/Potential reach (only supported for metrics where Dimension = experience or experiencegroup ) |
converted | Total count of entities who have completed the desired action or actions associated with an Experience, Stage, etc. |
success | Returns the attributed successes for a stage conversion (only supported for metrics where Dimension = attribution ) |
total | Returns the attributed totals for a stage conversion (only supported for metrics where Dimension = attribution ) |
attribconversionrate | value resulting from success/total (only supported for metrics where Dimension = attribution |
Aggregations
Aggregation | Description |
---|---|
sum | Returns the sum of values in an interval |
max | Returns the max value in an interval |
min | Returns the min value in an interval |
Metric
/api/metric
The Metric API provides access to a variety of metrics collected in the Lytics backend.
GET
Metric
/api/metric/{?dimension,dimension_id,dimension_type,start_date,end_date,aggregation,interval,name,smooth,range,include_empty_rows}
Fetch metrics by providing the arguments in the query-parameters
curl "$LIOAPI/api/metric?keyspace=segsize&metric=web&name=my-metric" -s -H "Authorization: $LIOKEY" | jq '.'
Parameters | ||
---|---|---|
name | string (optional) Ex: my-metric | Name of the metric to return |
dimension | string (required) Ex: segment | Value of supported dimension (segment, experience, stream, etc) |
dimension_id | string (required) Ex: abc123 | ID for the specific item within dimension (segment-id) |
dimension_type | string (required) Ex: size | Type of metric to be returned (size, converted, etc) |
aggregation | string (optional) Ex: sum | Aggregation to apply to metrics (sum, max, min) |
interval | string (optional) Ex: 2h | Duration to roll-up metrics (2h for roll-up into two-hour buckets). Intervals smaller than two hours are not recommended. |
include_empty_rows | boolean (optional) Ex: false | Passing true will include zero values in the response for every interval whether metrics were logged during that period or not. |
smooth | boolean (optional) Ex: true | Smooth metrics using a moving-average function |
start_date | time (optional) Ex: now-5w | Fetch metrics after this date; both dates and relative-dates are supported |
end_date | time (optional) Ex: now-1w | Fetch metrics before this date; both dates and relative-dates are supported |
range | string (optional) Ex: 2h | Time string used to calculate range from now (e.g "2h" will return the last 2 hours). This parameter cannot be used in conjunction with `start_date` and/or `end_date)` |
Response 200
Headers
Content-Type: application/json
Body
{
"data": [{
"name": "sample-request",
"dimension": "segsize",
"dimension_id": "abc123",
"dimension_type": "size",
"range": "2d",
"aggregation": "max",
"interval": "2h",
"is_cached": true,
"values": [{
"value": 0,
"ts": "1525231674371"
},
{
"value": 100,
"ts": "1525238874371"
},
{
"value": 200,
"ts": "1525246074371"
},
{
"value": 300,
"ts": "1525253274371"
},
{
"value": 400,
"ts": "1525260474371"
},
{
"value": 500,
"ts": "1525267674371"
},
{
"value": 600,
"ts": "1525274874371"
},
{
"value": 700,
"ts": "1525282074371"
},
{
"value": 800,
"ts": "1525289274371"
},
{
"value": 900,
"ts": "1525296474371"
}
]
}
],
"message": "success",
"status": 200
}
POST
Metric
/api/metric
Fetch metrics by providing the arguments in the request body
# Example of segment-size metrics
curl -s -XPOST "$LIOAPI/api/metric" \
-H 'Content-type: application/json' \
-H "Authorization: $LIOKEY" \
-d '{
"dimension": "segsize",
"dimension_id": "abc123",
"dimension_type": "size",
"interval": "2h",
"aggregation": "max",
"start_date": "now-5d",
"end_date": "now",
"smooth": true
}' | jq '.'
# Example request of data collected from the default and email stream
curl -s -XPOST "$LIOAPI/api/metric" \
-H "Content-type: application/json" \
-H "Authorization: $LIOKEY" \
-d '[{
"dimension": "stream",
"dimension_id": "default",
"dimension_type": "size",
"interval": "1h",
"aggregation": "sum",
"start_date": "now-1w",
"end_date": "now"
},
{
"dimension": "stream",
"dimension_id": "email",
"dimension_type": "size",
"interval": "1h",
"aggregation": "sum",
"start_date": "now-2w",
"end_date": "now"
}]' | jq '.'
Request
Headers
Content-Type: application/json
Body
{
"dimension": "segsize",
"dimension_id": "abc123",
"dimension_type": "size",
"interval": "2h",
"aggregation": "max",
"start_date": "now-2w",
"end_date": "now"
}
Response 200
Headers
Content-Type: application/json
Body
{
"data": [{
"name": "sample-request",
"dimension": "segsize",
"dimension_id": "abc123",
"dimension_type": "size",
"range": "2d",
"aggregation": "max",
"interval": "2h",
"is_cached": true,
"values": [{
"value": 0,
"ts": "1525231674371"
},
{
"value": 100,
"ts": "1525238874371"
},
{
"value": 200,
"ts": "1525246074371"
},
{
"value": 300,
"ts": "1525253274371"
},
{
"value": 400,
"ts": "1525260474371"
},
{
"value": 500,
"ts": "1525267674371"
},
{
"value": 600,
"ts": "1525274874371"
},
{
"value": 700,
"ts": "1525282074371"
},
{
"value": 800,
"ts": "1525289274371"
},
{
"value": 900,
"ts": "1525296474371"
}
]
}
],
"message": "success",
"status": 200
}