Skip to content

9.0.0

Latest

Choose a tag to compare

@imlukedewitt imlukedewitt released this 17 Mar 19:01
· 0 commits to main since this release

Changelog: v9.0.0

Breaking Changes

Type changes (may require code updates):

  • Subscription.snapDay — Changed from SubscriptionSnapDay (oneOf container: int | SnapDay enum) to String. If you were using SubscriptionSnapDay.fromNumber() or SubscriptionSnapDay.fromSnapDay(), replace with the raw string value directly.
  • UpdateSubscription.snapDay — Changed from OptionalNullable<UpdateSubscriptionSnapDay> to UpdateSubscriptionSnapDay (no longer nullable). The unsetSnapDay() method has been removed.
  • CalendarBillingSnapDay — The SnapDay enum case was replaced with a plain String case. Use CalendarBillingSnapDay.fromString(...) instead of CalendarBillingSnapDay.fromSnapDay(SnapDay).
  • SnapDay enum removed — This enum (end) has been eliminated entirely. Use the string "end" directly.
  • ComponentPricePointsController.readComponentPricePoint() — Return type changed from ComponentPricePointResponse to ComponentPricePointCurrencyOverageResponse.
  • CreateAllocation constructor signature changed — New fields added (decimalQuantity, previousQuantity, decimalPreviousQuantity, customPrice) and the types for downgradeCredit / upgradeCharge changed from CreditType to DowngradeCreditCreditType / UpgradeChargeCreditType respectively. Field ordering also changed.
  • CancellationOptions constructor signature changed — Three new fields added (cancelAtEndOfPeriod, scheduledCancellationAt, refundPrepaymentAccountBalance).
  • SendInvoiceRequest constructor signature changed — New attachmentUrls parameter added.

New Features

New Controller: SubscriptionRenewalsController

  • Access via client.getSubscriptionRenewalsController()
  • Full CRUD for scheduled renewal configurations:
    • createScheduledRenewalConfiguration
    • listScheduledRenewalConfigurations
    • readScheduledRenewalConfiguration
    • updateScheduledRenewalConfiguration
    • scheduleScheduledRenewalLockIn
    • lockInScheduledRenewalImmediately
    • unpublishScheduledRenewalConfiguration
    • cancelScheduledRenewalConfiguration
    • createScheduledRenewalConfigurationItem
    • updateScheduledRenewalConfigurationItem
    • deleteScheduledRenewalConfigurationItem

New Endpoint: Clone Component Price Point

  • ComponentPricePointsController.cloneComponentPricePoint() — Clone an existing component price point (copies pricing scheme, tiers, currency prices, overage pricing, etc.)

New Endpoint: Deliver Proforma Invoice

  • ProformaInvoicesController.deliverProformaInvoice() — Programmatically deliver proforma invoices via email with support for cc/bcc recipients.

Invoice Email Attachments

  • SendInvoiceRequest now supports attachmentUrls — attach up to 10 files (10MB each) when sending invoice emails.

Invoices: Issue "draft" invoices

  • The issueInvoice endpoint now supports issuing invoices in "draft" status (previously only "pending").

New Models

  • AvailableActions
  • CloneComponentPricePoint, CloneComponentPricePointRequest
  • ComponentPricePointCurrencyOverageResponse
  • Contract
  • CurrencyOveragePrices
  • DeliverProformaInvoiceRequest
  • DowngradeCreditCreditType, UpgradeChargeCreditType (replace CreditType in allocation contexts)
  • Register
  • SendEmail
  • Status
  • ScheduledRenewalConfiguration, ScheduledRenewalConfigurationItem, ScheduledRenewalConfigurationItemRequest, ScheduledRenewalConfigurationItemResponse, ScheduledRenewalConfigurationRequest, ScheduledRenewalConfigurationRequestBody, ScheduledRenewalConfigurationResponse, ScheduledRenewalConfigurationsResponse, ScheduledRenewalComponentCustomPrice, ScheduledRenewalItemRequestBodyComponent, ScheduledRenewalItemRequestBodyProduct, ScheduledRenewalLockInRequest, ScheduledRenewalProductPricePoint, ScheduledRenewalUpdateRequest

Model Enhancements

  • SubscriptionSort — New sort options: TOTAL_PAYMENTS, ID, OPEN_BALANCE, EXPIRES_AT
  • SubscriptionGroup — New uid field
  • ProductFamily — New archivedAt field
  • ProformaInvoice — Added availableActions (AvailableActions)
  • CreateAllocation — New fields: decimalQuantity, previousQuantity, decimalPreviousQuantity, customPrice
  • CancellationOptions — New fields: cancelAtEndOfPeriod, scheduledCancellationAt, refundPrepaymentAccountBalance
  • ComponentCustomPrice — New fields: listPricePointId, useDefaultListPrice
  • UpdateSubscription.customPrice — Now documents the 30 custom price point limit per subscription

Internal / Non-functional Changes

  • ApiException.getHttpContext() — Now returns the concrete HttpContext type instead of the interface
  • Maven plugin version bumps:
    • versions-maven-plugin: 2.5 → 2.20.1
    • maven-enforcer-plugin: 3.0.0-M2 → 3.6.1
    • maven-javadoc-plugin: 2.10.4 → 3.12.0
    • maven-source-plugin: 3.0.1 → 3.4.0
    • maven-gpg-plugin: 1.6 → 3.2.8
  • Javadoc improvements: "Chargify" references updated to "Advanced Billing" throughout
  • Minor punctuation/wording fixes in API doc comments