Expression-based eligibility on subscription offers
What's new
Subscription offers no longer carry eligibility_rules, the list of new_acquisition and
returning flags that decided who could claim an offer. They now take a single nullable
expression, the same Expression schema that item quantity_expression and news
requirements_expression use since 2026.09.23. An
offer without an expression applies to every player.
The SubscriptionOfferEligibility enum behind the old field is gone from the spec.
Impact
Offer targeting is no longer limited to two fixed player groups. Any condition an expression can describe, such as a custom attribute or a segment check, can now gate an offer.
Offers show up in the offers list of a subscription plan, which is embedded in subscription items
and store items. Every endpoint that returns those objects drops eligibility_rules from its
response.
Changes
| Resource | Change |
|---|---|
| get_items | Removed eligibility_rules from subscription offers and added expression |
| get_all_store_items | Removed eligibility_rules from subscription offers and added expression |
| get_store_items | Removed eligibility_rules from subscription offers and added expression |
| create_store_item | Removed eligibility_rules from subscription offers and added expression |
| bulk_update_store_items | Removed eligibility_rules from subscription offers and added expression |
| update_store_item | Removed eligibility_rules from subscription offers and added expression |
| Components | Removed the SubscriptionOfferEligibility schema |
Upgrade
- Stop reading
eligibility_rulesfrom subscription offers. It no longer appears in any response. - Read
expressioninstead, and treat a missing ornullvalue as "available to everyone". - If you generate clients from the spec, regenerate them. The
SubscriptionOfferEligibilitytype no longer exists.
Need help?
Contact our integration team at [email protected]