Upcoming releases
Flexible discounts for Switch Orders (Mid-term upgrade discounts)
Expected release: June 2026
Partners can now apply flexible discount codes when customers switch products mid-term using POST /v3/customers/{customerId}/orders with orderType: SWITCH or PREVIEW_SWITCH. This allows promotional pricing to be offered at the point of upgrade, not just at renewal.
What changed
The following APIs have been updated:
- Preview Switch Order (
PREVIEW_SWITCH): AcceptslineItems[].flexDiscountCodesin the request. ReturnslineItems[].flexDiscountsin the response, showing whether each code was successfully applied. - Create Switch Order (
SWITCH): AcceptslineItems[].flexDiscountCodesin the request. ReturnslineItems[].flexDiscountsin the response. - Get Order (
GET /v3/customers/{customerId}/orders/{orderId}): ReturnslineItems[].flexDiscountsforSWITCHorders, in addition to the existing behavior for otherorderTypes, includingNEWorders. - Get Order History (
GET /v3/customers/{customerId}/orders): ReturnslineItems[].flexDiscountsforSWITCHorders in the order history list.
Important: flexDiscountCodes apply only to lineItems (the target product items being switched to). Codes on cancellingItems (the source product being cancelled) are not accepted or returned.
Why it matters
Partners can now incentivize customers to upgrade products during their active subscription term by applying promotional discounts at the time of the switch. Previously, flexible discounts were only available on new orders and renewals. This enables upsell campaigns where discount codes can be offered to customers making mid-term product upgrades.
Action required
flexDiscountCodes to switch order requestslineItems[].flexDiscountCodes (array of strings) in your PREVIEW_SWITCH and SWITCH order requests to apply a flexible discount. This field is optional.flexDiscounts[].result in the responseresult: "SUCCESS" is returned for each applied code before confirming the discount to the customer.Get Order and Get Order History API integrationsSWITCH orders, expect the lineItems[].flexDiscounts field to now be present in responses.Preview Switch Order before placing the orderPREVIEW_SWITCH first to confirm discount applicability and see the discounted pricing before committing the order.For more information, see Manage Flexible Discounts.
Flexible Discounts for 3-Year Commitments (3YC)
Expected release: June 2026
Partners can discover and apply flexible discounts specifically designed for customers who are new to 3YC (orders that make them 3YC-compliant) or existing 3YC customers, including cases where minimum purchase quantity (MPQ) thresholds are met. Promotions can be reused and applied to the first term, the current term, or the full 3YC commitment duration.
Why it matters
Partners can now present 3YC-specific promotional pricing to eligible customers to incentivize new 3-year commitments or to reward existing 3YC subscribers. This removes the need for manual outreach to identify eligible customers.
Action required
GET /v3/flex-discounts.flexDiscountCodes in your NEW or RENEWAL order request. Eligibility is evaluated dynamically.For more information, see Manage Flexible Discounts.
Churn and seat expansion propensity are now surfaced in the Recommendations API
Expected release: June 2026
Partners can now see churn risk and seat expansion signals for each customer through the existing Fetch Recommendations (POST /v3/recommendations) API.
What changed?
The Recommendations API response now includes a churn object and a seatExpansion object. Each contains a probability rating (HIGH, MEDIUM, or LOW), a refreshDate, and a reasons array with up to seven leading indicators ordered by relevance. Seat expansion also includes predictedAddonSize with the expected number of additional seats.
Important: An empty object {} for either node means propensity data is not available for that customer. Do not interpret {} as LOW risk or LOW expansion potential.
Why it matters?
Partners can now identify at-risk customers and high-growth opportunities using data-driven signals, rather than relying on anecdotal indicators or waiting for account-manager outreach.
Action required
churn and seatExpansion nodesproductRecommendations. Handle three states: absent (feature not enabled), empty {} (data unavailable), and populated (data available).{} with LOWproductRecommendations and overlayRecommendations are unchanged. Existing integrations continue to work without modification.For more information, see Propensity Intelligence.