listSubscriptions method

Future<ListSubscriptionsOutput> listSubscriptions({
  1. required String domainIdentifier,
  2. String? approverProjectId,
  3. int? maxResults,
  4. String? nextToken,
  5. String? owningGroupId,
  6. String? owningIamPrincipalArn,
  7. String? owningProjectId,
  8. String? owningUserId,
  9. SortKey? sortBy,
  10. SortOrder? sortOrder,
  11. SubscriptionStatus? status,
  12. String? subscribedListingId,
  13. String? subscriptionRequestIdentifier,
})

Lists subscriptions in Amazon DataZone.

May throw AccessDeniedException. May throw InternalServerException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw ValidationException.

Parameter domainIdentifier : The identifier of the Amazon DataZone domain.

Parameter approverProjectId : The identifier of the project for the subscription's approver.

Parameter maxResults : The maximum number of subscriptions to return in a single call to ListSubscriptions. When the number of subscriptions to be listed is greater than the value of MaxResults, the response contains a NextToken value that you can use in a subsequent call to ListSubscriptions to list the next set of Subscriptions.

Parameter nextToken : When the number of subscriptions is greater than the default value for the MaxResults parameter, or if you explicitly specify a value for MaxResults that is less than the number of subscriptions, the response includes a pagination token named NextToken. You can specify this NextToken value in a subsequent call to ListSubscriptions to list the next set of subscriptions.

Parameter owningGroupId : The ID of the owning group.

Parameter owningIamPrincipalArn : The ARN of the owning IAM principal.

Parameter owningProjectId : The identifier of the owning project.

Parameter owningUserId : The ID of the owning user.

Parameter sortBy : Specifies the way in which the results of this action are to be sorted.

Parameter sortOrder : Specifies the sort order for the results of this action.

Parameter status : The status of the subscriptions that you want to list.

Parameter subscribedListingId : The identifier of the subscribed listing for the subscriptions that you want to list.

Parameter subscriptionRequestIdentifier : The identifier of the subscription request for the subscriptions that you want to list.

Implementation

Future<ListSubscriptionsOutput> listSubscriptions({
  required String domainIdentifier,
  String? approverProjectId,
  int? maxResults,
  String? nextToken,
  String? owningGroupId,
  String? owningIamPrincipalArn,
  String? owningProjectId,
  String? owningUserId,
  SortKey? sortBy,
  SortOrder? sortOrder,
  SubscriptionStatus? status,
  String? subscribedListingId,
  String? subscriptionRequestIdentifier,
}) async {
  _s.validateNumRange(
    'maxResults',
    maxResults,
    1,
    50,
  );
  final $query = <String, List<String>>{
    if (approverProjectId != null) 'approverProjectId': [approverProjectId],
    if (maxResults != null) 'maxResults': [maxResults.toString()],
    if (nextToken != null) 'nextToken': [nextToken],
    if (owningGroupId != null) 'owningGroupId': [owningGroupId],
    if (owningIamPrincipalArn != null)
      'owningIamPrincipalArn': [owningIamPrincipalArn],
    if (owningProjectId != null) 'owningProjectId': [owningProjectId],
    if (owningUserId != null) 'owningUserId': [owningUserId],
    if (sortBy != null) 'sortBy': [sortBy.value],
    if (sortOrder != null) 'sortOrder': [sortOrder.value],
    if (status != null) 'status': [status.value],
    if (subscribedListingId != null)
      'subscribedListingId': [subscribedListingId],
    if (subscriptionRequestIdentifier != null)
      'subscriptionRequestIdentifier': [subscriptionRequestIdentifier],
  };
  final response = await _protocol.send(
    payload: null,
    method: 'GET',
    requestUri:
        '/v2/domains/${Uri.encodeComponent(domainIdentifier)}/subscriptions',
    queryParams: $query,
    exceptionFnMap: _exceptionFns,
  );
  return ListSubscriptionsOutput.fromJson(response);
}