describeSnapshots method

Future<DescribeSnapshotsListMessage> describeSnapshots({
  1. String? cacheClusterId,
  2. String? marker,
  3. int? maxRecords,
  4. String? replicationGroupId,
  5. bool? showNodeGroupConfig,
  6. String? snapshotName,
  7. String? snapshotSource,
})

Returns information about cluster or replication group snapshots. By default, DescribeSnapshots lists all of your snapshots; it can optionally describe a single snapshot, or just the snapshots associated with a particular cache cluster.

May throw CacheClusterNotFoundFault. May throw SnapshotNotFoundFault. May throw InvalidParameterValueException. May throw InvalidParameterCombinationException.

Parameter cacheClusterId : A user-supplied cluster identifier. If this parameter is specified, only snapshots associated with that specific cluster are described.

Parameter marker : An optional marker returned from a prior request. Use this marker for pagination of results from this operation. If this parameter is specified, the response includes only records beyond the marker, up to the value specified by MaxRecords.

Parameter maxRecords : The maximum number of records to include in the response. If more records exist than the specified MaxRecords value, a marker is included in the response so that the remaining results can be retrieved.

Default: 50

Constraints: minimum 20; maximum 50.

Parameter replicationGroupId : A user-supplied replication group identifier. If this parameter is specified, only snapshots associated with that specific replication group are described.

Parameter showNodeGroupConfig : A Boolean value which if true, the node group (shard) configuration is included in the snapshot description.

Parameter snapshotName : A user-supplied name of the snapshot. If this parameter is specified, only this snapshot are described.

Parameter snapshotSource : If set to system, the output shows snapshots that were automatically created by ElastiCache. If set to user the output shows snapshots that were manually created. If omitted, the output shows both automatically and manually created snapshots.

Implementation

Future<DescribeSnapshotsListMessage> describeSnapshots({
  String? cacheClusterId,
  String? marker,
  int? maxRecords,
  String? replicationGroupId,
  bool? showNodeGroupConfig,
  String? snapshotName,
  String? snapshotSource,
}) async {
  final $request = <String, dynamic>{};
  cacheClusterId?.also((arg) => $request['CacheClusterId'] = arg);
  marker?.also((arg) => $request['Marker'] = arg);
  maxRecords?.also((arg) => $request['MaxRecords'] = arg);
  replicationGroupId?.also((arg) => $request['ReplicationGroupId'] = arg);
  showNodeGroupConfig?.also((arg) => $request['ShowNodeGroupConfig'] = arg);
  snapshotName?.also((arg) => $request['SnapshotName'] = arg);
  snapshotSource?.also((arg) => $request['SnapshotSource'] = arg);
  final $result = await _protocol.send(
    $request,
    action: 'DescribeSnapshots',
    version: '2015-02-02',
    method: 'POST',
    requestUri: '/',
    exceptionFnMap: _exceptionFns,
    shape: shapes['DescribeSnapshotsMessage'],
    shapes: shapes,
    resultWrapper: 'DescribeSnapshotsResult',
  );
  return DescribeSnapshotsListMessage.fromXml($result);
}