Skip to content

Entitlements Overview (1.0)

The Entitlements Engine is powered by the isEntitledTo query and is designed to manage and control user access within your application. It enables you to grant users specific roles, permissions, feature access, and more, providing a flexible framework for access management.

Below is an overview of API endpoints relevant to managing features, plans, feature flags, and API access control within your application. All endpoints are classified as Management Endpoints, requiring environment-level authorization and offering comprehensive control over entitlement resources.

Languages
Servers
EU Region
https://api.frontegg.com/entitlements/
US Region
https://api.us.frontegg.com/entitlements/
CA Region
https://api.ca.frontegg.com/entitlements/
AU Region
https://api.au.frontegg.com/entitlements/
Frontegg sub-domain for use with user tokens
https://{domain}.frontegg.com/entitlements/

ReBAC

Operations

Delete Entity Type

Request

Deletes an entity type and all its schema definitions.

Security
bearer
curl -i -X DELETE \
  'https://api.frontegg.com/entitlements/resources/entity-types/v1/{key}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

Create Entity Type Actions

Request

Creates an action on an entity type and defines, via relationKeys, how permission is granted directly or through hierarchical relationships.

Security
bearer
Bodyapplication/jsonrequired
actionsArray of objects(EntityTypeActionRequest)required
actions[].​keystringrequired
Example: "read"
actions[].​relationKeysArray of stringsrequired

Array of relation keys (strings) or arrow syntax objects ({ fromRelation, toAction })

Example: ["reader","writer",{"fromRelation":"parent","toAction":"read"}]
curl -i -X POST \
  'https://api.frontegg.com/entitlements/resources/entity-types/v1/{key}/actions' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "actions": [
      {
        "key": "read",
        "relationKeys": [
          "reader",
          "writer",
          {
            "fromRelation": "parent",
            "toAction": "read"
          }
        ]
      }
    ]
  }'

Responses

Bodyapplication/jsonArray [
vendorIdstringread-onlyrequired
Example: "123e4567-e89b-12d3-a456-426614174000"
entityTypeKeystringread-onlyrequired
Example: "book"
keystringread-onlyrequired
Example: "read"
relationKeysArray of stringsread-onlyrequired
Example: ["reader","writer",{"fromRelation":"parent","toAction":"read"}]
]
Response
application/json
[ { "vendorId": "123e4567-e89b-12d3-a456-426614174000", "entityTypeKey": "book", "key": "read", "relationKeys": [ … ] } ]

Update Entity Type Action

Request

Update an existing action's relation mappings.

Security
bearer
Bodyapplication/jsonrequired
keystringrequired
Example: "read"
relationKeysArray of stringsrequired

Array of relation keys (strings) or arrow syntax objects ({ fromRelation, toAction })

Example: ["reader","writer",{"fromRelation":"parent","toAction":"read"}]
curl -i -X PATCH \
  'https://api.frontegg.com/entitlements/resources/entity-types/v1/{key}/actions/{actionKey}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "key": "read",
    "relationKeys": [
      "reader",
      "writer",
      {
        "fromRelation": "parent",
        "toAction": "read"
      }
    ]
  }'

Responses

Bodyapplication/json
vendorIdstringread-onlyrequired
Example: "123e4567-e89b-12d3-a456-426614174000"
entityTypeKeystringread-onlyrequired
Example: "book"
keystringread-onlyrequired
Example: "read"
relationKeysArray of stringsread-onlyrequired
Example: ["reader","writer",{"fromRelation":"parent","toAction":"read"}]
Response
application/json
{ "vendorId": "123e4567-e89b-12d3-a456-426614174000", "entityTypeKey": "book", "key": "read", "relationKeys": [ "reader", "writer", { … } ] }

Features

Operations

Plans

Operations

Entitlements

Operations

Feature Flags

Operations

API Access Control

Operations