[role="xpack"]
[testenv="basic"]
[[get-data-frame-transform-stats]]
=== Get {dataframe-transform} statistics API
[subs="attributes"]
++++
Get {dataframe-transform} statistics
++++
beta[]
Retrieves usage information for {dataframe-transforms}.
[discrete]
[[get-data-frame-transform-stats-request]]
==== {api-request-title}
`GET _data_frame/transforms//_stats`
`GET _data_frame/transforms/,/_stats` +
`GET _data_frame/transforms/_stats` +
`GET _data_frame/transforms/_all/_stats` +
`GET _data_frame/transforms/*/_stats` +
[discrete]
[[get-data-frame-transform-stats-prereqs]]
==== {api-prereq-title}
If the {es} {security-features} are enabled, you must have
`monitor_data_frame_transforms` cluster privileges to use this API. The built-in
`data_frame_transforms_user` role has these privileges. For more information,
see {stack-ov}/security-privileges.html[Security privileges] and
{stack-ov}/built-in-roles.html[Built-in roles].
//[discrete]
//[[get-data-frame-transform-stats-desc]]
//===== {api-description-title}
[discrete]
[[get-data-frame-transform-stats-path-parms]]
==== {api-path-parms-title}
`` (Optional)::
(string) Identifier for the {dataframe-transform}. It can be a
{dataframe-transform} identifier or a wildcard expression. If you do not
specify one of these options, the API returns information for all
{dataframe-transforms}.
[discrete]
[[get-data-frame-transform-stats-query-parms]]
==== {api-query-parms-title}
`allow_no_match` (Optional)::
(boolean) Whether to ignore if a wildcard expression matches no
{dataframe-transforms}. This includes `_all` string or when no transforms have
been specified. The default is `true`.
`from` (Optional)::
(integer) Skips the specified number of {dataframe-transforms}. The
default value is `0`.
`size` (Optional)::
(integer) Specifies the maximum number of {dataframe-transforms} to obtain.
The default value is `100`.
[discrete]
[[get-data-frame-transform-stats-response]]
==== {api-response-body-title}
`transforms`::
(array) An array of statistics objects for {dataframe-transforms}, which are
sorted by the `id` value in ascending order.
[discrete]
[[get-data-frame-transform-stats-example]]
==== Examples
The following example skips for the first five {dataframe-transforms} and
gets usage information for a maximum of ten results:
[source,js]
--------------------------------------------------
GET _data_frame/transforms/_stats?from=5&size=10
--------------------------------------------------
// CONSOLE
// TEST[skip:todo]
The following example gets usage information for the `ecommerce_transform`
{dataframe-transform}:
[source,js]
--------------------------------------------------
GET _data_frame/transforms/ecommerce_transform/_stats
--------------------------------------------------
// CONSOLE
// TEST[skip:todo]
The API returns the following results:
[source,js]
----
{
"count" : 1,
"transforms" : [
{
"id" : "ecommerce_transform",
"state" : {
"task_state" : "started",
"indexer_state" : "started",
"checkpoint" : 1,
"progress" : {
"total_docs" : 1220,
"docs_remaining" : 0,
"percent_complete" : 100.0
}
},
"stats" : {
"pages_processed" : 2,
"documents_processed" : 1220,
"documents_indexed" : 13,
"trigger_count" : 1,
"index_time_in_ms" : 19,
"index_total" : 1,
"index_failures" : 0,
"search_time_in_ms" : 52,
"search_total" : 2,
"search_failures" : 0
},
"checkpointing" : {
"current" : {
"timestamp_millis" : 1557474786393
},
"operations_behind" : 0
}
}
]
}
----
// TESTRESPONSE