Required SDK versions for Entitlement are:

React 6.0.25
Angular 6.17.0
Vue.js 3.0.17
Vanilla.js 6.175.0

Node.js 5.3.0

What are Plans?

The Entitlements Engine allows you to enable access to a Plan. A Plan is a stack of features/capabilities that you can link to users or accounts.

How to manage feature plans for your app

To create a Plan follow these steps;

  1. Click on Add new plan.
    1. Name - add the relevant name to the plan
    2. Advanced
      1. Grant to all new accounts - This ability allows you to create an automatic trial— Upon account creation, the account will be granted the plan automatically.
      2. Indefinite or time-bound - Allowing you to limit the time the plan is assigned to the account/users. If you wish to enroll users in a trial period, you can set the trial time limitation in advance.

Once you create a Plan, it's time to assign and edit features, accounts, and users.

  1. Assign features - add features to the Plan.
  2. Assign accounts - add accounts to your Plan. All users within an account are granted the associated Plan when their account is assigned.
  3. Assign users - add specific users to a Plan.

Creating a time-limited Plan

For accounts and users, you can limit manually the expiration of the entitled Plan. This capability allows you to control user's access and grant time-bound access for different use cases.


Different time expirations

If a user is being granted the same plan with different time expirations, they will be entitled to the longest time period between the two.

Advanced User Targeting

Advanced targeting allows you to enroll users in a Plan, according to specific attributes (either Frontegg attributes, Custom attributes, or JWT attributes).

To create designated user access to plans, go to Plans > Advanced Targeting > Add rule and select the attributes you wish to apply for the plan. You can add multiple rules for each plan (limitations are specified in the Plan Rule Limitations) below.

Adding a rule for Advanced Targeting

Adding a rule for Advanced Targeting

Setting desired attributes to enroll only specific users in a plan

Setting desired attributes to enroll only specific users in a plan

Adding multiple rules per plan

Adding multiple rules per plan


Users and Advanced Rules

Note that when you set targeting rules via the Advanced targeting option in plans, the rules will be check for compatibility with all users, and will target those that apply to the rule. A different option is to assign plans to specific users via the users' tab, but that is not to say that advanced targeting is applicable only to the users you add to the users' tab.

Attributes for Plan Targeting

The default Frontegg attributes we offer are: email (frontegg.email), email verified (frontegg.emailVerified), user Id (frontegg.userId), and tenant Id (frontegg.tenantId). These attributes are included in your drop-down attributes menu. In addition to frontegg attributes, Custom attributes can also be used. Learn more about custom attributes in the following section.

Custom Attributes

You can create custom attributes to fine-grain your users' enrollment in a plan. When creating custom attributes, the attribute Key and Value you set in your code must correlate with the text you input in the Attribute and Value/Segment fields.

JWT Attributes

In addition to Custom attributes and default Frontegg attributes, you can target attributes from the user's JWT. Since we flat the jwt object, you can access its nestled properties, including arrays. For example, if you store information such as the user's date of birth as dateOfBirth, then you can target this attribute by inputing a jwt.dateOfBirth in the attribute field. For JWT attributes, you need to use the jwt prefix.


Entitlement SDKs

Check our Entitlements SDKs Collection

Plan Rule Limitations

When creating an advanced targeting rule for a plan, note the following limitations:

  • Each environment (developing/staging/production) is limited to 100 plans (Contact us if you need to exceed this limitation).
  • Each plan can have up to 10 rules
  • Each Rule is limited to 10 conditions
  • The Attribute field is limited to 100 characters
  • The Value/Segment field can contain up to 25 items
  • Each Value/Segment is limited to 50 characters