Metrics and errors
This section covers pipeline metrics and errors, including import and export operations and event delivery.
The metrics endpoints return pipeline metrics as grouped time series. Each request must include exactly one non-empty grouping parameter:
pipelinesreturns one series for each specified pipeline.connectionsreturns one series for each specified connection.workspacesreturns one series for each specified workspace.
If the request includes the Krenalis-Workspace header, or if the API key is restricted to a workspace, the request is scoped to that workspace. Otherwise, the request is scoped to the entire organization.
Identifiers that do not exist or fall outside this scope are ignored. If no identifiers match, metrics is returned as an empty array.
Get metrics per dates
Retrieves daily pipeline metrics for the date range from start, inclusive, to end, exclusive.
The number of requested days × the number of selected workspaces, connections, or pipelines must not exceed 60,000.
Request
-
:start
date RequiredThe starting date (inclusive) in ISO 8601
YYYY-MM-DDformat, interpreted as UTC. It must be earlier than the end date.The date must be no earlier than 1970-01-01 and no later than 2262-04-11.
-
:end
date RequiredThe ending date (exclusive) in ISO 8601
YYYY-MM-DDformat, interpreted as UTC. It must be later than the start date.The date must be no earlier than 1970-01-01 and no later than 2262-04-11.
-
workspaces
array of string Conditionally RequiredAn array of workspace identifiers. Filters the metrics to the specified workspaces and returns a separate series for each matching workspace.
Cannot be combined with
pipelinesorconnections. Workspaces that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
connections
array of string Conditionally RequiredAn array of connection identifiers. Filters the metrics to the specified connections and returns a separate series for each matching connection.
Cannot be combined with
pipelinesorworkspaces. Connections that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
pipelines
array of string Conditionally RequiredAn array of pipeline identifiers. Filters the metrics to the specified pipelines and returns a separate series for each matching pipeline.
Cannot be combined with
connectionsorworkspaces. Pipelines that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
target
string Conditionally RequiredLimits the metrics to pipelines with the specified target. It is required when selecting workspaces or connections and optional when selecting pipelines.
Possible values:"User"or"Event".
Response
-
start
datetimeThe starting date (inclusive), returned as an ISO 8601 UTC timestamp in the format
YYYY-MM-DDT00:00:00Z. -
end
datetimeThe ending date (exclusive), returned as an ISO 8601 UTC timestamp in the format
YYYY-MM-DDT00:00:00Z. -
metrics
array of objectThe metric series returned by the request.
The list contains one series for each matching pipeline, connection, or workspace, depending on the grouping parameter used in the request. Each series includes the field that identifies the group:
pipeline,connection, orworkspace.-
workspace
stringThe workspace represented by this series. It is present only when the request is grouped with
workspaces. -
connection
stringThe connection represented by this series. It is present only when the request is grouped with
connections. -
pipeline
stringThe pipeline represented by this series. It is present only when the request is grouped with
pipelines. -
passed
array of array of intThe number of users, profiles or events that successfully passed each pipeline step. Each item represents one daily time bucket.
-
failed
array of array of intThe number of users, profiles or events that failed at each pipeline step. Each item represents one daily time bucket.
-
curl -G https://example.com/v1/pipelines/metrics/dates/2026-07-24/2026-08-24 \ -H "Authorization: Bearer api_xxxxxxx" \ -d "connections=5FbK8mR3nT6w,2nT6w5FbK8mR" \ -d "target=Event" {
"start": "2026-07-24T00:00:00Z",
"end": "2026-08-24T00:00:00Z",
"metrics": [
{
"connection": "5FbK8mR3nT6w",
"passed": [
[
6029,
6029,
5974,
5974,
5974,
5974
]
],
"failed": [
[
0,
0,
55,
0,
0,
0
]
]
},
{
"connection": "2nT6w5FbK8mR",
"passed": [
[
4180,
4180,
4180,
4142,
4142,
4142
]
],
"failed": [
[
0,
0,
0,
38,
0,
0
]
]
}
]
}Get metrics per day
Retrieves pipeline metrics aggregated by day for the specified number of days up to the current time.
Request
-
:days
int RequiredThe number of days.
It must be between 1 and 30. -
workspaces
array of string Conditionally RequiredAn array of workspace identifiers. Filters the metrics to the specified workspaces and returns a separate series for each matching workspace.
Cannot be combined with
pipelinesorconnections. Workspaces that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
connections
array of string Conditionally RequiredAn array of connection identifiers. Filters the metrics to the specified connections and returns a separate series for each matching connection.
Cannot be combined with
pipelinesorworkspaces. Connections that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
pipelines
array of string Conditionally RequiredAn array of pipeline identifiers. Filters the metrics to the specified pipelines and returns a separate series for each matching pipeline.
Cannot be combined with
connectionsorworkspaces. Pipelines that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
target
string Conditionally RequiredLimits the metrics to pipelines with the specified target. It is required when selecting workspaces or connections and optional when selecting pipelines.
Possible values:"User"or"Event".
Response
-
start
datetimeThe starting date (inclusive), returned as an ISO 8601 UTC timestamp in the format
YYYY-MM-DDT00:00:00Z. -
end
datetimeThe ending date (exclusive), returned as an ISO 8601 UTC timestamp in the format
YYYY-MM-DDT00:00:00Z. -
metrics
array of objectThe metric series returned by the request.
The list contains one series for each matching pipeline, connection, or workspace, depending on the grouping parameter used in the request. Each series includes the field that identifies the group:
pipeline,connection, orworkspace.-
workspace
stringThe workspace represented by this series. It is present only when the request is grouped with
workspaces. -
connection
stringThe connection represented by this series. It is present only when the request is grouped with
connections. -
pipeline
stringThe pipeline represented by this series. It is present only when the request is grouped with
pipelines. -
passed
array of array of intThe number of users, profiles or events that successfully passed each pipeline step. Each item represents one daily time bucket.
-
failed
array of array of intThe number of users, profiles or events that failed at each pipeline step. Each item represents one daily time bucket.
-
curl -G https://example.com/v1/pipelines/metrics/days/7 \ -H "Authorization: Bearer api_xxxxxxx" \ -d "pipelines=7XcP4mZ9aQ2r,9aQ2r7XcP4mZ,8QaT3mN7KxP5" \ -d "target=Event" {
"start": "2026-07-24T00:00:00Z",
"end": "2026-07-31T00:00:00Z",
"metrics": [
{
"pipeline": "7XcP4mZ9aQ2r",
"passed": [
[
6029,
6029,
5974,
5974,
5974,
5974
]
],
"failed": [
[
0,
0,
55,
0,
0,
0
]
]
},
{
"pipeline": "9aQ2r7XcP4mZ",
"passed": [
[
4180,
4180,
4180,
4142,
4142,
4142
]
],
"failed": [
[
0,
0,
0,
38,
0,
0
]
]
},
{
"pipeline": "8QaT3mN7KxP5",
"passed": [
[
3150,
3150,
3150,
3150,
3118,
3118
]
],
"failed": [
[
0,
0,
0,
0,
32,
0
]
]
}
]
}Get metrics per hour
Retrieves hourly pipeline metrics for the specified number of hours up to the current time.
Request
-
:hours
int RequiredThe number of hours.
It must be between 1 and 48. -
workspaces
array of string Conditionally RequiredAn array of workspace identifiers. Filters the metrics to the specified workspaces and returns a separate series for each matching workspace.
Cannot be combined with
pipelinesorconnections. Workspaces that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
connections
array of string Conditionally RequiredAn array of connection identifiers. Filters the metrics to the specified connections and returns a separate series for each matching connection.
Cannot be combined with
pipelinesorworkspaces. Connections that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
pipelines
array of string Conditionally RequiredAn array of pipeline identifiers. Filters the metrics to the specified pipelines and returns a separate series for each matching pipeline.
Cannot be combined with
connectionsorworkspaces. Pipelines that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
target
string Conditionally RequiredLimits the metrics to pipelines with the specified target. It is required when selecting workspaces or connections and optional when selecting pipelines.
Possible values:"User"or"Event".
Response
-
start
datetimeThe starting time (inclusive), returned as an ISO 8601 UTC timestamp in the format
YYYY-MM-DDTHH:00:00Z. -
end
datetimeThe ending time (exclusive), returned as an ISO 8601 UTC timestamp in the format
YYYY-MM-DDTHH:00:00Z. -
metrics
array of objectThe metric series returned by the request.
The list contains one series for each matching pipeline, connection, or workspace, depending on the grouping parameter used in the request. Each series includes the field that identifies the group:
pipeline,connection, orworkspace.-
workspace
stringThe workspace represented by this series. It is present only when the request is grouped with
workspaces. -
connection
stringThe connection represented by this series. It is present only when the request is grouped with
connections. -
pipeline
stringThe pipeline represented by this series. It is present only when the request is grouped with
pipelines. -
passed
array of array of intThe number of users, profiles or events that successfully passed each pipeline step. Each item represents one hourly time bucket.
-
failed
array of array of intThe number of users, profiles or events that failed at each pipeline step. Each item represents one hourly time bucket.
-
curl -G https://example.com/v1/pipelines/metrics/hours/12 \ -H "Authorization: Bearer api_xxxxxxx" \ -d "workspaces=4RkP7tL2vX9c,9c4RkP7tL2vX" \ -d "target=Event" {
"start": "2026-07-24T09:00:00Z",
"end": "2026-07-24T21:00:00Z",
"metrics": [
{
"workspace": "4RkP7tL2vX9c",
"passed": [
[
6029,
6029,
5974,
5974,
5974,
5974
]
],
"failed": [
[
0,
0,
55,
0,
0,
0
]
]
},
{
"workspace": "9c4RkP7tL2vX",
"passed": [
[
4180,
4180,
4180,
4142,
4142,
4142
]
],
"failed": [
[
0,
0,
0,
38,
0,
0
]
]
}
]
}Get metrics per minute
Retrieves minute-by-minute pipeline metrics for the specified number of minutes up to the current time.
Request
-
:minutes
int RequiredThe number of minutes. By default, it is 60.
It must be between 1 and 60. -
workspaces
array of string Conditionally RequiredAn array of workspace identifiers. Filters the metrics to the specified workspaces and returns a separate series for each matching workspace.
Cannot be combined with
pipelinesorconnections. Workspaces that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
connections
array of string Conditionally RequiredAn array of connection identifiers. Filters the metrics to the specified connections and returns a separate series for each matching connection.
Cannot be combined with
pipelinesorworkspaces. Connections that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
pipelines
array of string Conditionally RequiredAn array of pipeline identifiers. Filters the metrics to the specified pipelines and returns a separate series for each matching pipeline.
Cannot be combined with
connectionsorworkspaces. Pipelines that do not exist or are outside the request scope are ignored.If present, it must contain from 1 to 1,000 identifiers.
-
target
string Conditionally RequiredLimits the metrics to pipelines with the specified target. It is required when selecting workspaces or connections and optional when selecting pipelines.
Possible values:"User"or"Event".
Response
-
start
datetimeThe starting time (inclusive), returned as an ISO 8601 UTC timestamp in the format
YYYY-MM-DDTHH:mm:00Z. -
end
datetimeThe ending time (exclusive), returned as an ISO 8601 UTC timestamp in the format
YYYY-MM-DDTHH:mm:00Z. -
metrics
array of objectThe metric series returned by the request.
The list contains one series for each matching pipeline, connection, or workspace, depending on the grouping parameter used in the request. Each series includes the field that identifies the group:
pipeline,connection, orworkspace.-
workspace
stringThe workspace represented by this series. It is present only when the request is grouped with
workspaces. -
connection
stringThe connection represented by this series. It is present only when the request is grouped with
connections. -
pipeline
stringThe pipeline represented by this series. It is present only when the request is grouped with
pipelines. -
passed
array of array of intThe number of users, profiles or events that successfully passed each pipeline step. Each item represents one one-minute time bucket.
-
failed
array of array of intThe number of users, profiles or events that failed at each pipeline step. Each item represents one one-minute time bucket.
-
curl -G https://example.com/v1/pipelines/metrics/minutes/15 \ -H "Authorization: Bearer api_xxxxxxx" \ -d "connections=5FbK8mR3nT6w,2nT6w5FbK8mR,4fr7Kp9ZaQ2m" \ -d "target=Event" {
"start": "2026-07-11T09:49:00Z",
"end": "2026-07-11T10:04:00Z",
"metrics": [
{
"connection": "5FbK8mR3nT6w",
"passed": [
[
6029,
6029,
5974,
5974,
5974,
5974
]
],
"failed": [
[
0,
0,
55,
0,
0,
0
]
]
},
{
"connection": "2nT6w5FbK8mR",
"passed": [
[
4180,
4180,
4180,
4142,
4142,
4142
]
],
"failed": [
[
0,
0,
0,
38,
0,
0
]
]
},
{
"connection": "4fr7Kp9ZaQ2m",
"passed": [
[
3150,
3150,
3150,
3150,
3118,
3118
]
],
"failed": [
[
0,
0,
0,
0,
32,
0
]
]
}
]
}Get errors
Retrieves errors for pipelines for a time interval between specified start and end dates.
Request
-
:start
datetime RequiredThe starting time (inclusive) in ISO 8601
YYYY-MM-DDTHH:mm:ssformat, interpreted as UTC. It must be earlier than the end time.The time must be no earlier than 1970-01-01 00:00:00 and no later than 2262-04-11 23:47:00.
-
:end
datetime RequiredThe ending time (exclusive) in ISO 8601
YYYY-MM-DDTHH:mm:ssformat, interpreted as UTC. It must be later than the start time.The time must be no earlier than 1970-01-01 00:00:00 and no later than 2262-04-11 23:47:00.
-
pipelines
array of int RequiredThe IDs of the pipelines for which errors should be returned. At least one pipeline must be provided. The request does not fail if a pipeline does not exist within the workspace.
The pipelines can be specified in the query string in this way:
pipelines=7XcP4mZ9aQ2r&pipelines=9aQ2r7XcP4mZ -
step
stringThe pipeline step for which errors should be returned. If no step is specified, errors will be returned for all steps.
Possible values:"Receive","InputValidation","Filter","Transformation","OutputValidation"or"Finalize". -
first
intThe number of errors to skip before starting to return errors. The default value is 0.
It must be between 0 and 9,999. -
limit
intThe maximum number of errors to return. The default value is 100.
It must be between 1 and 100.
Response
-
errors
array of objectThe errors that occurred during the specified period for the provided pipelines.
-
pipeline
stringThe pipeline in which the error occurred.
-
step
stringThe step where the error occurred.
Possible values:"Receive","InputValidation","Filter","Transformation","OutputValidation"or"Finalize". -
count
intThe number of occurrences of the error within the specified period.
-
message
stringThe error message.
-
lastOccurred
datetimeThe time of the last occurrence of the error within the specified period, returned as an ISO 8601 UTC timestamp in the format
YYYY-MM-DDTHH:mm:00Z.
-
curl -G https://example.com/v1/pipelines/errors/2026-07-11T09%3A49%3A12/2026-07-11T12%3A30%3A00 \ -H "Authorization: Bearer api_xxxxxxx" \ -d "pipelines=7XcP4mZ9aQ2r,9aQ2r7XcP4mZ" {
"errors": [
{
"pipeline": "7XcP4mZ9aQ2r",
"step": "Transformation",
"count": 2,
"message": "property «email» has a value that is not of type «string»",
"lastOccurred": "2026-07-11T10:25:00Z"
}
]
}