# Search rolled-up data
**POST /{index}/_rollup_search**
**All methods and paths for this operation:**
GET
/{index}/_rollup_search
POST
/{index}/_rollup_search
The rollup search endpoint is needed because, internally, rolled-up documents utilize a different document structure than the original data.
It rewrites standard Query DSL into a format that matches the rollup documents then takes the response and rewrites it back to what a client would expect given the original query.
The request body supports a subset of features from the regular search API.
The following functionality is not available:
`size`: Because rollups work on pre-aggregated data, no search hits can be returned and so size must be set to zero or omitted entirely.
`highlighter`, `suggestors`, `post_filter`, `profile`, `explain`: These are similarly disallowed.
For more detailed examples of using the rollup search API, including querying rolled-up data only or combining rolled-up and live data, refer to the External documentation.
[External documentation](https://www.elastic.co/docs/manage-data/lifecycle/rollup/getting-started-api#historical-only-search-example)
## Servers
- http://api.example.com: http://api.example.com ()
## Authentication methods
- Api key auth
- Basic auth
- Bearer auth
## Parameters
#### Path parameters
- **index** (string | array[string])
A comma-separated list of data streams and indices used to limit the request.
This parameter has the following rules:
* At least one data stream, index, or wildcard expression must be specified. This target can include a rollup or non-rollup index. For data streams, the stream's backing indices can only serve as non-rollup indices. Omitting the parameter or using `_all` are not permitted.
* Multiple non-rollup indices may be specified.
* Only one rollup index may be specified. If more than one are supplied, an exception occurs.
* Wildcard expressions (`*`) may be used. If they match more than one rollup index, an exception occurs. However, you can use an expression to match multiple non-rollup indices or data streams.
#### Query parameters
- **rest_total_hits_as_int** (boolean)
Indicates whether hits.total should be rendered as an integer or an object in the rest search response
- **typed_keys** (boolean)
Specify whether aggregation and suggester names should be prefixed by their respective types in the response
## Body parameters
Content-type: application/json
- **aggregations** (object)
Specifies aggregations.
- **query** (object)
Specifies a DSL query that is subject to some limitations.
- **size** (number)
Must be zero if set, as rollups work on pre-aggregated data.
## Responses
### 200:
#### Body Parameters: application/json (object)
- **took** (number)
- **timed_out** (boolean)
- **terminated_early** (boolean)
- **_shards** (object)
- **hits** (object)
- **aggregations** (object)
[Powered by Bump.sh](https://bump.sh)