# Downsample an index **POST /{index}/_downsample/{target_index}** Downsamples a time series (TSDS) index and reduces its size by keeping the last value or by pre-aggregating metrics: - When running in `aggregate` mode, it pre-calculates and stores statistical summaries (`min`, `max`, `sum`, `value_count` and `avg`) for each metric field grouped by a configured time interval and their dimensions. - When running in `last_value` mode, it keeps the last value for each metric in the configured interval and their dimensions. For example, a TSDS index that contains metrics sampled every 10 seconds can be downsampled to an hourly index. All documents within an hour interval are summarized and stored as a single document in the downsample index. NOTE: Only indices in a time series data stream are supported. Neither field nor document level security can be defined on the source index. The source index must be read-only (`index.blocks.write: true`). ## Servers - http://api.example.com: http://api.example.com () ## Authentication methods - Api key auth - Basic auth - Bearer auth ## Parameters ### Path parameters - **index** (string) Name of the time series index to downsample. - **target_index** (string) Name of the index to create. ### Body: application/json (object) - **fixed_interval** (string) The interval at which to aggregate the original time series index. - **sampling_method** (string) The sampling method used to reduce the documents; it can be either `aggregate` or `last_value`. Defaults to `aggregate`. ## Responses ### 200 #### Body: application/json (object) object [Powered by Bump.sh](https://bump.sh)