Releases: maxio-com/ab-typescript-sdk
Releases · maxio-com/ab-typescript-sdk
Release 9.0.0
Changelog: v9.0.0
Breaking Changes
SnapDayenum removed — TheSnapDayenum (which contained a single valueEnd = 'end') has been deleted.Subscription.snapDayis now typed asstring | nulldirectly, and theSubscriptionSnapDaycontainer has been removed.CalendarBillingSnapDaychanged fromnumber | SnapDaytonumber | string.UpdateSubscriptionSnapDaychanged fromnumber | SnapDaytostring | number(note: order reversed). Replace anySnapDay.Endreferences with the string"end".readComponentPricePointreturn type changed —ComponentPricePointsController.readComponentPricePoint()now returnsComponentPricePointCurrencyOverageResponseinstead ofComponentPricePointResponse.CreateAllocationcredit type fields changed —downgradeCreditnow usesDowngradeCreditCreditTypeandupgradeChargenow usesUpgradeChargeCreditType, replacing the sharedCreditTypeenum. The accepted values (full,prorated,none) are unchanged.
New Features
- New controller:
SubscriptionRenewalsController— Full CRUD for scheduled renewal configurations, with 11 endpoints:createScheduledRenewalConfiguration— Create a scheduled renewal config for a subscriptionlistScheduledRenewalConfigurations— List configs with optional status filterreadScheduledRenewalConfiguration— Read a single configupdateScheduledRenewalConfiguration— Update a configscheduleScheduledRenewalLockIn— Schedule a future lock-in datelockInScheduledRenewalImmediately— Lock in immediatelyunpublishScheduledRenewalConfiguration— Return a config to editable statecancelScheduledRenewalConfiguration— Cancel a configcreateScheduledRenewalConfigurationItem— Add product/component line itemsupdateScheduledRenewalConfigurationItem— Update an item's pricing and quantitydeleteScheduledRenewalConfigurationItem— Remove an item
cloneComponentPricePoint— New method onComponentPricePointsController. Clones a component price point including pricing scheme, price tiers, tax settings, currency prices, overage pricing, and event-based billing segments.deliverProformaInvoice— New method onProformaInvoicesController. Delivers a proforma invoice via email with support for direct recipients, CC, and BCC.issueInvoicenow supports "draft" status — The endpoint can now issue invoices that are in both "pending" and "draft" status.
New Models
AvailableActionsCloneComponentPricePointCloneComponentPricePointRequestComponentPricePointCurrencyOverageResponseContractCurrencyOveragePricesDeliverProformaInvoiceRequestRegisterScheduledRenewalComponentCustomPriceScheduledRenewalConfigurationScheduledRenewalConfigurationItemScheduledRenewalConfigurationItemRequestScheduledRenewalConfigurationItemResponseScheduledRenewalConfigurationRequestScheduledRenewalConfigurationRequestBodyScheduledRenewalConfigurationResponseScheduledRenewalConfigurationsResponseScheduledRenewalItemRequestBodyComponentScheduledRenewalItemRequestBodyProductScheduledRenewalLockInRequestScheduledRenewalProductPricePointScheduledRenewalUpdateRequestSendEmail
New enum types:
DowngradeCreditCreditType— Values:Full,Prorated,NoneStatus— Values:Draft,Scheduled,Pending,Canceled,Active,FulfilledUpgradeChargeCreditType— Values:Full,Prorated,None
Model Enhancements
CancellationOptions— AddedcancelAtEndOfPeriod(boolean),scheduledCancellationAt(string | null),refundPrepaymentAccountBalance(boolean).ComponentCustomPrice— AddedlistPricePointId(number | null),useDefaultListPrice(boolean).CreateAllocation— AddeddecimalQuantity(string),previousQuantity(number),decimalPreviousQuantity(string),customPrice(ComponentCustomPrice).ProductFamily— AddedarchivedAt(string | null).ProformaInvoice— AddedavailableActions(AvailableActions).SendInvoiceRequest— AddedattachmentUrls(string[]).SubscriptionGroup— Addeduid(string).SubscriptionSort— New enum values:TotalPayments,Id,OpenBalance,ExpiresAt.
Internal / Non-functional Changes
- Package version bumped from
8.0.0to9.0.0. - API documentation regenerated for all controllers and models.
8.0.0
7.0.1
📝 Changelog: API Documentation Updates
We've made several updates to the API documentation to improve clarity, consistency, and accuracy. This release includes enhancements to the descriptions for various endpoints, corrections to example data, and updates to external links.
🌐 Webhooks API Improvements
- Simplified descriptions: We've streamlined the descriptions for several webhook endpoints, including List Webhooks, Enable Webhooks, Replay Webhooks, Create Endpoint, Update Endpoint, and List Endpoints, to make them more concise and easier to understand.
- Updated documentation links: All internal and external links within the webhook documentation have been updated to point to the correct, current resources.
💰 Billing and Subscription Updates
- Enhanced Customer API: The Read Customer endpoint now includes a complete example response, providing a clearer picture of the data you'll receive from the API.
- Component Price Point examples: We've added new examples for Volume and Tiered price points to the Create Component Price Point endpoint, providing clearer guidance for different pricing schemes. The Stairstep Price Point example was also corrected to include a valid
ending_quantity. - Flexible Subscription Usage: The
subscription_idpath parameter for the Create Usage endpoint has been updated tosubscription_id_or_reference. This allows you to use either the subscription's ID or its reference string, making the endpoint more flexible. - Updated documentation links: The links in the documentation for GoCardless, Stripe SEPA/BECS Direct Debit, and Chargify.js have been corrected to ensure they point to the latest and most relevant documentation.
🧰 General Enhancements
- Concise descriptions: We've shortened descriptions for the Read Customer and Read Component endpoints to be more direct.
- Improved link consistency: All external links, especially those referencing Chargify.js and various examples, have been reviewed and updated to the correct, canonical URLs.
7.0.0
- List Service Credits: Added a new endpoint (
GET /service_credits.json) to list service credits. - Invoice Consolidation: Introduced a
consolidation_levelparameter to theGET /invoices.jsonendpoint to control how invoices are grouped. - Filter by Coupon Code: Added a
coupon_codeparameter to filter subscriptions. - New Component Field: The
product_family_handlefield has been added to the Read/List Components endpoints. - New Payment Profile Fields: Added
created_atandupdated_atfields to the payment profile schema. - New Invoice Field: The
received_ondate has been added to the Read Invoice endpoint response. - Deferred Signup: Added support for
defer_signupin payment examples.
6.1.0
What's Changed
- Added
scheduleSubscriptionCancellationEnabledproperty to theSitemodel
Full Changelog: 6.0.1...6.1.0
6.0.1
- Fixed errors when using some query parameters nested inside objects
Full Changelog: 6.0.0...6.0.1
6.0.0
-
AdvancedBillingClientwas slightly reworked:domainparameter has been removed.subdomainparameter changed name tositeEnvironmenthas changed. Now it's either defaultUS, orEUfor Advanced Billing eu hosting. The default isUS. SDK is now supporting EU hosted accounts.
-
Coupon fixes:
- renamed
CreateOrUpdateCoupontoCouponRequest - renamed
CreateOrUpdatePercentageCouponPercentagetoCouponPayloadPercentage - changed
CreateOrUpdateCouponCoupontoCouponPayload - There're no longer 2 distinct models for Flat amount and Percentage coupon. They're merged into
CouponPayload. Using it, specify eitheramount_in_centsorpercentageproperty code,name,description,amount_in_centsandpercentageare not required properties inCouponPayloadmodel. It means they're not send as nulls if unset. It enables patching coupon withupdateCouponwithout specifying these properties values. Previous version enforced setting them.CouponPayloadendDatechanges type fromZonedDateTimetoLocalDate. ResponseCouponendDateis stillZonedDateTime(its calculated as end of the day)updateCouponnow throwsErrorListResponseException- added
currencyPricesforCouponresponse. Note you need to specify suitable query parameters to access it - added
currencyPricesquery parameter forreadCouponandfindCoupon - added some missing descriptions
- changed
CouponamountInCentsto Long - changed
CouponCurrencypriceto nullable Double andidto nullable Integer createOrUpdateCouponCurrencyPricesnow throwsErrorStringMapResponseException
- renamed
-
Subscription Fixes:
- added
SubscriptionResponseforpurgeSubscriptionoperation purgeSubscriptionnow throwsSubscriptionResponseErrorExceptionupdatePrepaidSubscriptionConfigurationnow throwsApiExceptionwhen the status code is 422
- added
-
Components fixes:
- removed
PrepaidComponentPricePoint. UseCreatePrepaidComponentPricePointwhen creating price points forPrepaidComponenttogether with component instead - added prepaid-specific properties to
ComponentPricePoint(response model) - removed
upgrade_chargeanddowngrade_creditfromEbbComponent,OnOffComponentandMeteredComponentrequest models (not applicable for this type of component) - removed deprecated
priceInCentsfrom component request models - removed
pricesfromOnOffComponentrequest model (unitPrice should be used) - Fixed
ComponentPricePointexpirationIntervalUnittype - corrected some descriptions
- Define exceptions for create component price points operations
- removed
-
Currency Prices fixes:
- add
currencyPricesquery parameter toreadComponentPricePoint UpdateCurrencyPricepriceis nowdoubleinstead ofint- Add PriceId and PricePointId to CurrencyPrice
- Return verbose exception message for currency prices operations
- add
-
Events fixes:
- Added
EventKeyenum and filled it with missing event types - merged
SubscriptionGroupSignupFailureandSubscriptionGroupSignupFailureandSubscriptionGroupSignupSuccessintoSubscriptionGroupSignupEventData. - documented
keytoeventSpecificDatamappings. - removed
EventTypeused ineventsendpoints for filter.EventKeyshould be used instead.
- Added
-
Misc:
- Added missing properties and types for
Invoice - fixed
recordEventandbulkRecordEvents. Now they work with default environment, with subdomain specified during client initialization. They no longer need subdomain provided to the method execution - Fixed types for models required for
update subscription groupandadd subscription to groupoperations - Make
initiateDelayedCancellationandcancelDunningthrowErrorListResponseExceptionon 422 error - added
processingInvoice Status - Fix errors for Subscription Notes
- Add error model for listOffers
- Use date/dateTime instead of string for filtering when listing products and product families
- Now it's possible to list archived product price points using
archivedproperty withlistProductPricePoints
- Added missing properties and types for
Full Changelog: 5.2.0...6.0.0
5.2.0
What's Changed
- Added
tax_exempt_reasonanddefault_auto_renewal_profile_idtoCustomer - Added
received_ontoInvoicePaymentandCreateInvoicePayment - Added
product_price_point_idandproduct_price_point_handletoUpdateSubscription - Improved some properties descriptions
Full Changelog: 5.1.0...5.2.0
5.1.0
What's Changed
- Add
importedto subscriptioncancellation_method - Add
idfilter to List Products API
Full Changelog: 5.0.0...5.1.0
5.0.0
What's Changed
- [DE-602] test CRUD for subcodes by @jumper2210 in #81
- De-900: test crud for components part 1 by @jumper2210 in #82
- DE-934 Setup tests on a new site by @michalpierog in #83
- [DE-932] Release 5.0.0 by @maciej-nedza in #84
- DE-921 DE-922 Fix problem with interval units - interval units now can be nullable in various contexts, ExtendedIntervalUnit was renamed to ExpirationIntervalUnit, now ExpirationIntervalUnit is used in SubscriptionCustomPrice, CreatePrepaidComponentPricePoint, CreateProductPricePoint, CreateOrUpdateProduct, PrepaidComponent, ProductPricePoint and Product for expirationIntervalUnit property. This enum has additional value of never (this has not changed)
- DE-921 DE-924 Reworked vaults - CurrentVault enum was renamed to AllVaults and filled with previously missing values. BankAccountVault was filled with missing values. ApplePayVault was added with the vault supporting this payment method. CreditCardVault was added with vaults supporting this payment method. PayPalVault was added with vaults supporting this payment method. Models for respective payment profiles types now use respective enums.
- DE-910 Distinguish response payment profiles based on the paymentType. PaymentProfileResponsePaymentProfile was renamed to PaymentProfile.ApplePayPaymentProfile, and PayPalPaymentProfile were added as possible PaymentProfile in PaymentProfileResponse. Fixed a bug, when response payment profile couldn't be deserialized due to missing fields.
- Added publicUrlExpires_on to the Invoice
- Added achLateReject to the InvoiceRefund
- Added tax-related properties to InvoiceTaxComponentBreakout and InvoiceTax
- SUB-4037 Add taxIncluded to ComponentCustomPrice. Added request model for Activate Event-Based Component endpoint, SubscriptionComponentActivateEventBasedComponent
productFamilyId in endpoint paths parameters is now string, to enable searching by both handle and id - [DE-932] Rename Chargify API by @michalpierog in #85
New Contributors
- @jumper2210 made their first contribution in #81
Full Changelog: 4.0.0...5.0.0