Agen.co enables organizations to securely expose enterprise context to internal agents, copilots, and AI workflows through an identity-aware control layer that governs access, reduces risk, and centralizes oversight.
A low-code CIAM platform for managing customer identity as you scale.
Empower your workforce with secure agents
Entitlements are related to authorization but do not replace it. A request may require both a commercial entitlement and a user permission – for example, the customer must have access to scheduled exports and the individual user must be authorized to run one.
Entitlement management is the process of defining, assigning, evaluating, changing, and auditing access to product capabilities and limits. Entitlements may come from plans, contracts, trials, promotional grants, or customer-specific overrides.
A SaaS entitlement can be boolean, such as whether an organization may use SSO; quantitative, such as API requests per month; or categorical, such as a support tier. The system must resolve these values consistently for the active tenant and enforce them near the protected feature or API.
Roles and entitlements answer different questions. RBAC describes what a subject may do under assigned roles. Entitlements describe which features, limits, or service levels the customer or user has been granted.
report:export
At runtime, both conditions may apply. A user can have permission to initiate an export while their tenant lacks the export entitlement. Conversely, a tenant may own the feature while a particular user lacks the required permission.
An entitlement system needs a source of definitions, assignment data, deterministic evaluation, enforcement, and evidence. Treating feature visibility in the user interface as the entire system leaves API and background paths unprotected.
The catalog defines stable feature and limit keys, descriptions, value types, defaults, owners, and lifecycle status. Application code should reference stable keys rather than display names that marketing or product teams may change.
Assignments connect plans, contracts, trials, grants, or overrides to a customer organization or user. Each source needs effective dates, ownership, and a defined relationship to other sources.
The evaluator combines applicable values into an effective entitlement for the active tenant and, where supported, a user. Conflicting grants need deterministic precedence rather than depending on retrieval order.
Applications should evaluate the entitlement at the API, service, job, or other boundary that controls the protected capability. Hiding a button is useful for experience but is not sufficient enforcement.
Teams need evidence showing who or what changed an entitlement, the previous and new values, effective time, source, tenant, and outcome. Reconciliation should detect drift between catalog, contract or billing state, and runtime assignments.
After defining, assigning, evaluating, and enforcing entitlements through the components above, the lifecycle must also cover change over time:
When several sources can grant or restrict the same feature, define a deterministic precedence model. One generic approach is: emergency or legal deny, explicit customer or user override, time-bound trial or grant, contracted plan value, then catalog default.
The exact order is a product decision, not a universal standard. Document whether an override replaces, increases, caps, or denies a plan value; when it becomes effective; when it expires; and how cached decisions are invalidated.
The values below illustrate the data model and are not Frontegg pricing.
Suppose Acme’s plan includes scheduled export. An Acme administrator still needs the exports:run permission to start the operation. Beta’s plan and overrides must not affect Acme’s evaluation, cache entries, usage counters, or audit records.
exports:run
Entitlement systems become difficult when definitions, assignments, and enforcement are spread across billing code, application flags, support tools, and manually maintained exceptions.
Different services may use different names or defaults for the same feature. Centralized stable keys and versioned definitions reduce inconsistent behavior.
A plan, contract amendment, trial, and support override may all affect one capability. Without explicit precedence, two services can calculate different effective values.
Long cache lifetimes can delay upgrades, revocations, or expired trials. Define cache keys with tenant context and design invalidation around the business risk of stale access.
Removing a feature can affect stored data, scheduled jobs, integrations, or active sessions. Define what remains readable, what stops immediately, and whether a grace period applies.
Assignments, usage counters, and evaluation caches must include the tenant boundary. A correct feature value attached to the wrong customer is still an authorization failure.
Frontegg’s Entitlements Engine connects Plans, Features, Permissions, and Users. A Plan can contain one or more Features and can be assigned to accounts or specific users. Plans can also be indefinite or time-bound, including trial use cases.
Plan └── one or more Features ├── stable feature key └── optional associated Permissions Account or User └── assigned Plan or targeted access Application └── evaluates Feature and/or Permission entitlement
Frontegg’s Feature documentation explains that Features are assigned to Plans and may be associated with Permissions. For self-service access, the documented evaluation can require both the Feature and its associated Permission.
Applications can evaluate access through documented frontend hooks such as useFeatureEntitlements, usePermissionEntitlements, and useEntitlements, or through backend SDK and API checks. The Entitlements API documents the isEntitledTo query and management endpoints for Features, Plans, and Entitlements. Applications should still enforce the result at the protected resource and include tenant context throughout caching, metering, and audit flows.
useFeatureEntitlements
usePermissionEntitlements
useEntitlements
isEntitledTo
For related concepts, see Frontegg’s RBAC and entitlements overview, authorization guide, and SaaS multitenancy.