createBillingPriceTransition method
Future<CommercePriceTransitionResponse?>
createBillingPriceTransition(
- String subscriptionItemId,
- PriceTransitionRequest priceTransitionRequest
Create a price transition for a subscription item
Creates a price transition for the specified subscription item. This may create an upcoming subscription item or activate immediately depending on plan and payer rules.
Parameters:
-
String subscriptionItemId (required): The ID of the subscription item to transition
-
PriceTransitionRequest priceTransitionRequest (required): Parameters for the price transition
Implementation
Future<CommercePriceTransitionResponse?> createBillingPriceTransition(
String subscriptionItemId,
PriceTransitionRequest priceTransitionRequest,
) async {
final response = await createBillingPriceTransitionWithHttpInfo(
subscriptionItemId,
priceTransitionRequest,
);
if (response.statusCode >= HttpStatus.badRequest) {
throw ApiException(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),
'CommercePriceTransitionResponse',
) as CommercePriceTransitionResponse;
}
return null;
}