| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165 | [role="xpack"][testenv="basic"][[get-data-frame-transform-stats]]=== Get {dataframe-transform} statistics API[subs="attributes"]++++<titleabbrev>Get {dataframe-transform} statistics</titleabbrev>++++beta[]Retrieves usage information for {dataframe-transforms}.[discrete][[get-data-frame-transform-stats-request]]==== {api-request-title}`GET _data_frame/transforms/<data_frame_transform_id>/_stats``GET _data_frame/transforms/<data_frame_transform_id>,<data_frame_transform_id>/_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}You can get statistics for multiple {dataframe-transforms} in a single APIrequest by using a comma-separated list of identifiers or a wildcard expression.You can get statistics for all {dataframe-transforms} by using `_all`, byspecifying `*` as the `<data_frame_transform_id>`, or by omitting the`<data_frame_transform_id>`.[discrete][[get-data-frame-transform-stats-path-parms]]==== {api-path-parms-title}`<data_frame_transform_id>` (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) Specifies what to do when the request:+--* Contains wildcard expressions and there are no {dataframe-transforms} that match.* Contains the `_all` string or no identifiers and there are no matches.* Contains wildcard expressions and there are only partial matches. The default value is `true`, which returns an empty `transforms` array whenthere are no matches and the subset of results when there are partial matches.If this parameter is `false`, the request returns a `404` status code when thereare no matches or only partial matches.--`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.  [[get-data-frame-transform-stats-response-codes]]==== {api-response-codes-title}`404` (Missing resources)::  If `allow_no_match` is `false`, this code indicates that there are no  resources that match the request or only partial matches for the request. [discrete][[get-data-frame-transform-stats-example]]==== ExamplesThe following example skips for the first five {dataframe-transforms} andgets 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
 |