feature
and an item
or an item_price
in Chargebee Billing. By defining this relationship, it specifies the scope of access or rights the item or item price has in relation to that particular feature.
{
"entitlement": {
"feature_id": "fea-66ee05d2-2800-449f-a418-eaa863a67f9f",
"feature_name": "Quickbooks Integration_1234",
"id": "ent-15292c03-0b77-426a-aa5b-a18bb0acafdc",
"entity_id": "enterprise",
"entity_type": "plan",
"name": "Available",
"object": "entitlement",
"value": "true"
}
}
feature.type
:
feature.type
is quantity
and:feature.levels[is_unlimited]
is not true
for any one of feature.levels[]
, then the value can be any one of feature.levels[value][]
.feature.levels[is_unlimited]
is true
for one of the feature.levels[]
, then the value can be:
feature.levels[value][]
unlimited
(case-insensitive), indicating unlimited entitlement.type
is range
and:feature.levels[is_unlimited]
is not true
for any one of feature.levels[]
, then the value can be any whole number between levels[value][0]
and levels[value][1]
(inclusive).feature.levels[is_unlimited]
is true
for one of the feature.levels[]
, then the value can be:
levels[value][0]
unlimited
(case-insensitive), indicating unlimited entitlement.type
is custom
, then the value can be any one of feature.levels[value][]
.type
is switch
, then the value is set as available
or true
.The display name for the entitlement level. The value is automatically generated based on feature.type
:
feature.type
is quantity
or range
, the name
is the space-separated concatenation of value
and the plural form of feature.unit
. For instance, if value
is 20
and feature.unit
is user
, the name
will be 20 users
.feature.type
is custom
, the name
matches the value
.feature.type
is switch
, the name
is set to Available
when value
is true
; it’s set to Not Available
when value
is false
.Retrieves a list of all the entitlement
s associated with the specified feature
.
Create, update, or remove a set of entitlement
s for a feature.
The behavior depends on the specified action
. It tries to create, update, or delete entitlement
objects. If any of the entitlement objects fail to process, the entire operation stops with an error, and no entitlements are processed. In essence, the request processes either all the provided entitlements or none of them.
Early Access
Grandfathering support for entitlements is in early access. Write to eap@chargebee.com to get this enabled.
By default, this operation impacts all subscriptions that contain the item or item price. However, if you set apply_grandfathering
to true
, the existing subscriptions are not impacted by the change.
Consider the following example:
id
: premium-monthly-usd
) entitled to a feature (user_licenses
) at value 10
.id
: AzZjAiTl1btqS2lEj
) that contains the plan price (premium-monthly-usd
).premium-monthly-usd
for the user_licenses
feature to value
20
. You also set apply_grandfathering
to true
.id
: 6oqNGUlMd9Yn4Ui
) that contains the same plan price (premium-monthly-usd
).id
: AzZjAiTl1btqS2lEj
) is grandfathered in, so it continues to be entitled to user_licenses
at value
10
. The new subscription (id
: 6oqNGUlMd9Yn4Ui
) is entitled to user_licenses
at value
20
.premium-monthly-usd
for the user_licenses
feature to value
30
. You also set apply_grandfathering
to false
.id
: 99CRh8UgMXTq77tl
) that contains the same plan price (premium-monthly-usd
).AzZjAiTl1btqS2lEj
, 6oqNGUlMd9Yn4Ui
, and 99CRh8UgMXTq77tl
) are now entitled to user_licenses
at value
30
.