listThemes method

Future<ListThemesResponse> listThemes({
  1. required String awsAccountId,
  2. int? maxResults,
  3. String? nextToken,
  4. ThemeType? type,
})

Lists all the themes in the current AWS account.

May throw AccessDeniedException. May throw InvalidParameterValueException. May throw InvalidNextTokenException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw UnsupportedUserEditionException. May throw InternalFailureException.

Parameter awsAccountId : The ID of the AWS account that contains the themes that you're listing.

Parameter maxResults : The maximum number of results to be returned per request.

Parameter nextToken : The token for the next set of results, or null if there are no more results.

Parameter type : The type of themes that you want to list. Valid options include the following:

  • ALL (default)- Display all existing themes.
  • CUSTOM - Display only the themes created by people using Amazon QuickSight.
  • QUICKSIGHT - Display only the starting themes defined by QuickSight.

Implementation

Future<ListThemesResponse> listThemes({
  required String awsAccountId,
  int? maxResults,
  String? nextToken,
  ThemeType? type,
}) async {
  ArgumentError.checkNotNull(awsAccountId, 'awsAccountId');
  _s.validateStringLength(
    'awsAccountId',
    awsAccountId,
    12,
    12,
    isRequired: true,
  );
  _s.validateNumRange(
    'maxResults',
    maxResults,
    1,
    100,
  );
  final $query = <String, List<String>>{
    if (maxResults != null) 'max-results': [maxResults.toString()],
    if (nextToken != null) 'next-token': [nextToken],
    if (type != null) 'type': [type.toValue()],
  };
  final response = await _protocol.send(
    payload: null,
    method: 'GET',
    requestUri: '/accounts/${Uri.encodeComponent(awsAccountId)}/themes',
    queryParams: $query,
    exceptionFnMap: _exceptionFns,
  );
  return ListThemesResponse.fromJson(response);
}