createCustomerPayment method

Future<MmPaymentSetupIntent?> createCustomerPayment()

Create a customer setup payment intent

Creates a customer setup payment intent for the given Mattermost cloud installation. ##### Permissions Must have manage_system permission and be licensed for Cloud. Minimum server version: 5.28 Note:: This is intended for internal use and is subject to change.

Implementation

Future<MmPaymentSetupIntent?> createCustomerPayment() async {
  final response = await createCustomerPaymentWithHttpInfo();
  if (response.statusCode >= HttpStatus.badRequest) {
    throw MmApiException(response.statusCode, await _decodeBodyBytes(response));
  }
  // When a remote server returns no body with a status of 204, we shall not decode it.
  // At the time of writing this, `dart:convert` will throw an "Unexpected end of input"
  // FormatException when trying to decode an empty string.
  if (response.body.isNotEmpty && response.statusCode != HttpStatus.noContent) {
    return await apiClient.deserializeAsync(
      await _decodeBodyBytes(response),
      'MmPaymentSetupIntent',
    ) as MmPaymentSetupIntent;
  }
  return null;
}