tree d497625b1eece2e0e0b9ac42ade0f79304f08891
parent 24a08f22707901f7641e48f0c26e54b05c0e03c3
author Francisco Guerrero <francisco.guerrero@apple.com> 1656519028 -0700
committer Yifan Cai <yifan_cai@apple.com> 1657316431 -0700

CASSANDRASC-38 Add endpoint to list snapshot files

This commit adds two new endpoints to allow listing snapshot files.

The first endpoint takes a snapshot name as a path parameter, and searches for
all the snapshots matching the provided name. The result lists all the snapshot
files for all matching snapshots. Additionally, secondary index files can be
included in the response by providing the query param
`includeSecondaryIndexFiles=true`.

```
/api/v1/snapshots/:snapshot
```

The second endpoint takes a keyspace, table name, and snapshot name and searches
for a unique snapshot matching the provided snapshot name in the given keyspace
and table name. The results lists the snapshot files matching the given keyspace,
table name, and snapshot name. Similarly to the first endpoint, secondary index
files can be included in the response by providing the query param
`includeSecondaryIndexFiles=true`.

```
/api/v1/keyspace/:keyspace/table/:table/snapshots/:snapshot
```
