[role="xpack"]
[[get-global-checkpoints]]
=== Get global checkpoints API
++++
<titleabbrev>Get global checkpoints</titleabbrev>
++++

The purpose of the get global checkpoints api is to return the current global
checkpoints for an index. This API allows users to know the what sequence numbers
have been safely persisted in Elasticsearch.

The API has an optional polling mode enabled by the `wait_for_advance` query
parameter. In polling mode, the API will only return after the global checkpoints
advance past the provided `checkpoints`. By default, `checkpoints` is an empty
array, which will lead to the API returning immediately.

If a timeout occurs before the global checkpoints advance past the provided
`checkpoints`, Elasticsearch will return the current global checkpoints and a
boolean indicating that the request timed out.

Currently the `wait_for_advance` parameter is only supported for one shard indices.

[[get-global-checkpoints-api-request]]
==== {api-request-title}

`GET /<index>/_fleet/global_checkpoints`

[[get-global-checkpoints-api-path-params]]
==== {api-path-parms-title}

`<index>`::
(Required, string)
A single index or index alias that resolves to a single index.

[role="child_attributes"]
[[get-global-checkpoints-api-query-parms]]
==== {api-query-parms-title}

`wait_for_advance`::
(Optional, Boolean) A boolean value which controls whether to wait (until the
`timeout`) for the global checkpoints to advance past the provided
`checkpoints`.

`checkpoints`::
(Optional, list) A comma separated list of previous global checkpoints.
When used in combination with `wait_for_advance`, the API will only return once
the global checkpoints advances past the `checkpoints`. Defaults to an empty list
which will cause Elasticsearch to immediately return the current global
checkpoints.

`timeout`::
(Optional, <<time-units, time units>>)
Period to wait for a global checkpoints to advance past `checkpoints`.
Defaults to `30s`.

[role="child_attributes"]
[[get-global-checkpoints-api-response-body]]
==== {api-response-body-title}

`global_checkpoints`::
(array of integers) The global checkpoints for the index.

`timed_out`::
(Boolean) If `false` the global checkpoints did not advance past the
`checkpoints` within the specified `timeout`.
