list method

Future<VoidedPurchasesListResponse> list(
  1. String packageName, {
  2. String? endTime,
  3. bool? includeQuantityBasedPartialRefund,
  4. int? maxResults,
  5. int? startIndex,
  6. String? startTime,
  7. String? token,
  8. int? type,
  9. String? $fields,
})

Lists the purchases that were canceled, refunded or charged-back.

Request parameters:

packageName - The package name of the application for which voided purchases need to be returned (for example, 'com.some.thing').

endTime - The time, in milliseconds since the Epoch, of the newest voided purchase that you want to see in the response. The value of this parameter cannot be greater than the current time and is ignored if a pagination token is set. Default value is current time. Note: This filter is applied on the time at which the record is seen as voided by our systems and not the actual voided time returned in the response.

includeQuantityBasedPartialRefund - Optional. Whether to include voided purchases of quantity-based partial refunds, which are applicable only to multi-quantity purchases. If true, additional voided purchases may be returned with voidedQuantity that indicates the refund quantity of a quantity-based partial refund. The default value is false.

maxResults - Defines how many results the list operation should return. The default number depends on the resource collection.

startIndex - Defines the index of the first element to return. This can only be used if indexed paging is enabled.

startTime - The time, in milliseconds since the Epoch, of the oldest voided purchase that you want to see in the response. The value of this parameter cannot be older than 30 days and is ignored if a pagination token is set. Default value is current time minus 30 days. Note: This filter is applied on the time at which the record is seen as voided by our systems and not the actual voided time returned in the response.

token - Defines the token of the page to return, usually taken from TokenPagination. This can only be used if token paging is enabled.

type - The type of voided purchases that you want to see in the response. Possible values are: 0. Only voided in-app product purchases will be returned in the response. This is the default value. 1. Both voided in-app purchases and voided subscription purchases will be returned in the response. Note: Before requesting to receive voided subscription purchases, you must switch to use orderId in the response which uniquely identifies one-time purchases and subscriptions. Otherwise, you will receive multiple subscription orders with the same PurchaseToken, because subscription renewal orders share the same PurchaseToken.

$fields - Selector specifying which fields to include in a partial response.

Completes with a VoidedPurchasesListResponse.

Completes with a commons.ApiRequestError if the API endpoint returned an error.

If the used http.Client completes with an error when making a REST call, this method will complete with the same error.

Implementation

async.Future<VoidedPurchasesListResponse> list(
  core.String packageName, {
  core.String? endTime,
  core.bool? includeQuantityBasedPartialRefund,
  core.int? maxResults,
  core.int? startIndex,
  core.String? startTime,
  core.String? token,
  core.int? type,
  core.String? $fields,
}) async {
  final queryParams_ = <core.String, core.List<core.String>>{
    if (endTime != null) 'endTime': [endTime],
    if (includeQuantityBasedPartialRefund != null)
      'includeQuantityBasedPartialRefund': [
        '${includeQuantityBasedPartialRefund}'
      ],
    if (maxResults != null) 'maxResults': ['${maxResults}'],
    if (startIndex != null) 'startIndex': ['${startIndex}'],
    if (startTime != null) 'startTime': [startTime],
    if (token != null) 'token': [token],
    if (type != null) 'type': ['${type}'],
    if ($fields != null) 'fields': [$fields],
  };

  final url_ = 'androidpublisher/v3/applications/' +
      commons.escapeVariable('$packageName') +
      '/purchases/voidedpurchases';

  final response_ = await _requester.request(
    url_,
    'GET',
    queryParams: queryParams_,
  );
  return VoidedPurchasesListResponse.fromJson(
      response_ as core.Map<core.String, core.dynamic>);
}