Frontegg · Capability

Frontegg Entitlements API

Frontegg Entitlements API capability. 51 operations. Lead operation: Get account (tenant) plans. Self-contained Naftiko capability for the Frontegg Frontegg Entitlements business surface.

Run with Naftiko FronteggEntitlements

What You Can Do

GET
Planscontrollerv1_gettenantplans — Get account (tenant) plans
/v1/resources/plans/v1/tenant/{tenantId}
GET
Planscontrollerv1_getplans — Get plans
/v1/resources/plans/v1
POST
Planscontrollerv1_createplan — Create plan
/v1/resources/plans/v1
GET
Planscontrollerv1_getsingleplan — Get single plan
/v1/resources/plans/v1/{id}
PATCH
Planscontrollerv1_updateplan — Update plan
/v1/resources/plans/v1/{id}
DELETE
Planscontrollerv1_deleteplan — Delete plan
/v1/resources/plans/v1/{id}
GET
Planscontrollerv1_getplanfeatures — Get plan features
/v1/resources/plans/v1/{id}/features
PATCH
Planscontrollerv1_linkfeaturestoplan — Link features to plan
/v1/resources/plans/v1/{id}/features/link
PATCH
Planscontrollerv1_unlinkfeaturesfromplan — Unlink features from plan
/v1/resources/plans/v1/{id}/features/unlink
GET
Routescontrollerv1_getmany — Get routes
/v1/resources/routes/v1
POST
Routescontrollerv1_create — Create route
/v1/resources/routes/v1
GET
Routescontrollerv1_getsingle — Get single route
/v1/resources/routes/v1/{id}
DELETE
Routescontrollerv1_delete — Delete route
/v1/resources/routes/v1/{id}
PATCH
Routescontrollerv1_update — Update route
/v1/resources/routes/v1/{id}
POST
Routescontrollerv1_importopenapi — Import open API
/v1/resources/routes/v1/import-open-api
PUT
Routescontrollerv1_replacerules — Create or replace route rules
/v1/resources/routes/v1/{id}/rules
GET
Routesconfigurationscontrollerv1_getroutesconfiguration — Get routes configuration
/v1/resources/routes/v1/configuration
PATCH
Routesconfigurationscontrollerv1_updateroutesconfiguration — Update routes configuration
/v1/resources/routes/v1/configuration
GET
Featurescontrollerv1_getfeatures — Get Feature Flags
/v1/resources/features/v1
POST
Featurescontrollerv1_createfeature — Create feature
/v1/resources/features/v1
PATCH
Featurescontrollerv1_updatefeature — Update feature
/v1/resources/features/v1/{featureId}
DELETE
Featurescontrollerv1_deletefeature — Delete feature
/v1/resources/features/v1/{featureId}
POST
Featurescontrollerv2_create — Create feature
/v1/resources/features/v2
PATCH
Featurescontrollerv2_update — Update feature
/v1/resources/features/v2/{featureId}
GET
Entitlementscontrollerv2_getentitlements — Get entitlements
/v1/resources/entitlements/v2
POST
Entitlementscontrollerv2_createentitlement — Create entitlement
/v1/resources/entitlements/v2
POST
Entitlementscontrollerv2_createbatchentitlements — Batch create entitlements
/v1/resources/entitlements/v2/batch
PATCH
Entitlementscontrollerv2_updatebatchentitlements — Batch update entitlements
/v1/resources/entitlements/v2/batch
DELETE
Entitlementscontrollerv2_deletebatchentitlements — Batch delete entitlements
/v1/resources/entitlements/v2/batch
GET
Entitlementscontrollerv2_getsingleentitlement — Get single entitlement
/v1/resources/entitlements/v2/{id}
PATCH
Entitlementscontrollerv2_updateentitlement — Update entitlement
/v1/resources/entitlements/v2/{id}
DELETE
Entitlementscontrollerv2_deleteentitlement — Delete entitlement
/v1/resources/entitlements/v2/{id}
GET
Featureflagscontrollerv1_getfeatureflags — Get feature flags
/v1/resources/feature-flags/v1
POST
Featureflagscontrollerv1_createfeatureflag — Create feature flag
/v1/resources/feature-flags/v1
GET
Featureflagscontrollerv1_getsinglefeatureflag — Get single feature flag
/v1/resources/feature-flags/v1/{id}
PATCH
Featureflagscontrollerv1_updatefeatureflag — Update feature flag
/v1/resources/feature-flags/v1/{id}
DELETE
Featureflagscontrollerv1_deletefeatureflag — Delete feature flag
/v1/resources/feature-flags/v1/{id}
GET
Entitytypesv1controller_getentitytypes — Get Entity Types
/v1/resources/entity-types/v1
POST
Entitytypesv1controller_createentitytype — Create Entity Type
/v1/resources/entity-types/v1
GET
Entitytypesv1controller_getentitytype — Get Entity Type
/v1/resources/entity-types/v1/{key}
PATCH
Entitytypesv1controller_updateentitytype — Update Entity Type
/v1/resources/entity-types/v1/{key}
DELETE
Entitytypesv1controller_deleteentitytype — Delete Entity Type
/v1/resources/entity-types/v1/{key}
POST
Entitytypesactionsv1controller_createentitytypeactions — Create Entity Type Actions
/v1/resources/entity-types/v1/{key}/actions
PATCH
Entitytypesactionsv1controller_updateentitytypeaction — Update Entity Type Action
/v1/resources/entity-types/v1/{key}/actions/{actionKey}
DELETE
Entitytypesactionsv1controller_deleteentitytypeaction — Delete Entity Type Action
/v1/resources/entity-types/v1/{key}/actions/{actionKey}
POST
Entitytypesrelationsv1controller_createentitytyperelations — Create Entity Type Relations
/v1/resources/entity-types/v1/{key}/relations
PATCH
Entitytypesrelationsv1controller_updateentitytyperelation — Update Entity Type Relation
/v1/resources/entity-types/v1/{key}/relations/{relationKey}
DELETE
Entitytypesrelationsv1controller_deleteentitytyperelation — Delete Entity Type Relation
/v1/resources/entity-types/v1/{key}/relations/{relationKey}
GET
Relationsv1controller_getrelationassignments — Get Relation Assignments
/v1/resources/relations/v1/assignments
POST
Relationsv1controller_createrelationassignments — Create Relation Assignments
/v1/resources/relations/v1/assign
POST
Relationsv1controller_deleterelationassignments — Delete Relation Assignments
/v1/resources/relations/v1/unassign

MCP Tools

frontegg-entitlements-planscontrollerv1-gettenantplans

Get account (tenant) plans

read-only idempotent
frontegg-entitlements-planscontrollerv1-getplans

Get plans

read-only idempotent
frontegg-entitlements-planscontrollerv1-createplan

Create plan

frontegg-entitlements-planscontrollerv1-getsingleplan

Get single plan

read-only idempotent
frontegg-entitlements-planscontrollerv1-updateplan

Update plan

frontegg-entitlements-planscontrollerv1-deleteplan

Delete plan

idempotent
frontegg-entitlements-planscontrollerv1-getplanfeatures

Get plan features

read-only idempotent
frontegg-entitlements-planscontrollerv1-linkfeaturestoplan

Link features to plan

frontegg-entitlements-planscontrollerv1-unlinkfeaturesfrompl

Unlink features from plan

frontegg-entitlements-routescontrollerv1-getmany

Get routes

read-only idempotent
frontegg-entitlements-routescontrollerv1-create

Create route

frontegg-entitlements-routescontrollerv1-getsingle

Get single route

read-only idempotent
frontegg-entitlements-routescontrollerv1-delete

Delete route

idempotent
frontegg-entitlements-routescontrollerv1-update

Update route

frontegg-entitlements-routescontrollerv1-importopenapi

Import open API

frontegg-entitlements-routescontrollerv1-replacerules

Create or replace route rules

idempotent
frontegg-entitlements-routesconfigurationscontrollerv1-getro

Get routes configuration

read-only idempotent
frontegg-entitlements-routesconfigurationscontrollerv1-updat

Update routes configuration

frontegg-entitlements-featurescontrollerv1-getfeatures

Get Feature Flags

read-only idempotent
frontegg-entitlements-featurescontrollerv1-createfeature

Create feature

frontegg-entitlements-featurescontrollerv1-updatefeature

Update feature

frontegg-entitlements-featurescontrollerv1-deletefeature

Delete feature

idempotent
frontegg-entitlements-featurescontrollerv2-create

Create feature

frontegg-entitlements-featurescontrollerv2-update

Update feature

frontegg-entitlements-entitlementscontrollerv2-getentitlemen

Get entitlements

read-only idempotent
frontegg-entitlements-entitlementscontrollerv2-createentitle

Create entitlement

frontegg-entitlements-entitlementscontrollerv2-createbatchen

Batch create entitlements

frontegg-entitlements-entitlementscontrollerv2-updatebatchen

Batch update entitlements

frontegg-entitlements-entitlementscontrollerv2-deletebatchen

Batch delete entitlements

idempotent
frontegg-entitlements-entitlementscontrollerv2-getsingleenti

Get single entitlement

read-only idempotent
frontegg-entitlements-entitlementscontrollerv2-updateentitle

Update entitlement

frontegg-entitlements-entitlementscontrollerv2-deleteentitle

Delete entitlement

idempotent
frontegg-entitlements-featureflagscontrollerv1-getfeaturefla

Get feature flags

read-only idempotent
frontegg-entitlements-featureflagscontrollerv1-createfeature

Create feature flag

frontegg-entitlements-featureflagscontrollerv1-getsinglefeat

Get single feature flag

read-only idempotent
frontegg-entitlements-featureflagscontrollerv1-updatefeature

Update feature flag

frontegg-entitlements-featureflagscontrollerv1-deletefeature

Delete feature flag

idempotent
frontegg-entitlements-entitytypesv1controller-getentitytypes

Get Entity Types

read-only idempotent
frontegg-entitlements-entitytypesv1controller-createentityty

Create Entity Type

frontegg-entitlements-entitytypesv1controller-getentitytype

Get Entity Type

read-only idempotent
frontegg-entitlements-entitytypesv1controller-updateentityty

Update Entity Type

frontegg-entitlements-entitytypesv1controller-deleteentityty

Delete Entity Type

idempotent
frontegg-entitlements-entitytypesactionsv1controller-createe

Create Entity Type Actions

frontegg-entitlements-entitytypesactionsv1controller-updatee

Update Entity Type Action

frontegg-entitlements-entitytypesactionsv1controller-deletee

Delete Entity Type Action

idempotent
frontegg-entitlements-entitytypesrelationsv1controller-creat

Create Entity Type Relations

frontegg-entitlements-entitytypesrelationsv1controller-updat

Update Entity Type Relation

frontegg-entitlements-entitytypesrelationsv1controller-delet

Delete Entity Type Relation

idempotent
frontegg-entitlements-relationsv1controller-getrelationassig

Get Relation Assignments

read-only idempotent
frontegg-entitlements-relationsv1controller-createrelationas

Create Relation Assignments

frontegg-entitlements-relationsv1controller-deleterelationas

Delete Relation Assignments

Capability Spec

frontegg-entitlements.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Frontegg Entitlements API
  description: 'Frontegg Entitlements API capability. 51 operations. Lead operation: Get account (tenant) plans. Self-contained Naftiko capability for the Frontegg Frontegg Entitlements business surface.'
  tags:
  - Frontegg
  - Entitlements
  created: '2026-05-22'
  modified: '2026-05-22'
binds:
- namespace: env
  keys:
    FRONTEGG_CLIENT_ID: FRONTEGG_CLIENT_ID
    FRONTEGG_API_KEY: FRONTEGG_API_KEY
    FRONTEGG_BEARER_TOKEN: FRONTEGG_BEARER_TOKEN
capability:
  consumes:
  - type: http
    namespace: frontegg-entitlements
    baseUri: https://api.frontegg.com/entitlements
    description: Frontegg Entitlements API. Bearer JWT (environment or user token) authentication.
    resources:
    - name: resources-plans-v1-tenant-tenantid
      path: /resources/plans/v1/tenant/{tenantId}
      operations:
      - name: PlansControllerV1_getTenantPlans
        method: GET
        description: Get account (tenant) plans
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: tenantId
          in: path
          type: string
          description: tenantId parameter
          required: true
        - name: offset
          in: query
          type: number
          description: Page offset of the results to return
          required: false
        - name: limit
          in: query
          type: number
          description: Number of results per page
          required: false
        - name: filter
          in: query
          type: string
          description: Search input, searchable by `name`
          required: false
        - name: orderBy
          in: query
          type: string
          description: Field to order results by create date (`createdAt`) or expiration date (`expirationDate`)
          required: false
        - name: sortType
          in: query
          type: string
          description: Sort type, ASC for ascending, DESC for descending
          required: false
        - name: excludeNonEntitledPlans
          in: query
          type: boolean
          description: Boolean value to include related entities in the response
          required: false
        - name: featureKeys
          in: query
          type: array
          description: Filter plans that contain features with these keys
          required: false
    - name: resources-plans-v1
      path: /resources/plans/v1
      operations:
      - name: PlansControllerV1_getPlans
        method: GET
        description: Get plans
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: offset
          in: query
          type: number
          description: Page offset of the results to return
          required: false
        - name: limit
          in: query
          type: number
          description: Number of results per page
          required: false
        - name: filter
          in: query
          type: string
          description: Search input, searchable by `name`
          required: false
        - name: orderBy
          in: query
          type: string
          description: Field to order results by create date (`createdAt`) or expiration date (`expirationDate`)
          required: false
        - name: sortType
          in: query
          type: string
          description: Sort type, ASC for ascending, DESC for descending
          required: false
        - name: featureIds
          in: query
          type: array
          description: Comma separated feature IDs to filter results by
          required: false
        - name: userIds
          in: query
          type: array
          description: Comma separated user IDs to filter results by
          required: false
        - name: tenantIds
          in: query
          type: array
          description: Comma separated account (tenant) IDs to filter results by
          required: false
      - name: PlansControllerV1_createPlan
        method: POST
        description: Create plan
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-plans-v1-id
      path: /resources/plans/v1/{id}
      operations:
      - name: PlansControllerV1_getSinglePlan
        method: GET
        description: Get single plan
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
      - name: PlansControllerV1_updatePlan
        method: PATCH
        description: Update plan
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: PlansControllerV1_deletePlan
        method: DELETE
        description: Delete plan
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
    - name: resources-plans-v1-id-features
      path: /resources/plans/v1/{id}/features
      operations:
      - name: PlansControllerV1_getPlanFeatures
        method: GET
        description: Get plan features
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
        - name: offset
          in: query
          type: number
          description: Page offset of the results to return
          required: false
        - name: limit
          in: query
          type: number
          description: Number of results per page
          required: false
        - name: filter
          in: query
          type: string
          description: 'Search input; Searchable fields: `name`'
          required: false
        - name: orderBy
          in: query
          type: string
          description: Order fields by date created (`createdAt`) or expired (`expirationDate`)
          required: false
        - name: sortType
          in: query
          type: string
          description: Sort fields by an ascending (`ASC`) or a decending (`DESC`) order
          required: false
        - name: featureIds
          in: query
          type: array
          description: Comma separated feature IDs that can be used to filter the results
          required: false
        - name: permissionKeys
          in: query
          type: array
          description: Comma separated permission keys that can be used to filter the results
          required: false
        - name: hasFeatureFlag
          in: query
          type: boolean
          description: Filter out features that are linked/not linked to feature-flag
          required: false
        - name: featureKeys
          in: query
          type: array
          description: Comma separated feature Keys that can be used to filter the results
          required: false
    - name: resources-plans-v1-id-features-link
      path: /resources/plans/v1/{id}/features/link
      operations:
      - name: PlansControllerV1_linkFeaturesToPlan
        method: PATCH
        description: Link features to plan
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-plans-v1-id-features-unlink
      path: /resources/plans/v1/{id}/features/unlink
      operations:
      - name: PlansControllerV1_unlinkFeaturesFromPlan
        method: PATCH
        description: Unlink features from plan
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-routes-v1
      path: /resources/routes/v1
      operations:
      - name: RoutesControllerV1_getMany
        method: GET
        description: Get routes
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters: []
      - name: RoutesControllerV1_create
        method: POST
        description: Create route
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-routes-v1-id
      path: /resources/routes/v1/{id}
      operations:
      - name: RoutesControllerV1_getSingle
        method: GET
        description: Get single route
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
      - name: RoutesControllerV1_delete
        method: DELETE
        description: Delete route
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
      - name: RoutesControllerV1_update
        method: PATCH
        description: Update route
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-routes-v1-import-open-api
      path: /resources/routes/v1/import-open-api
      operations:
      - name: RoutesControllerV1_importOpenApi
        method: POST
        description: Import open API
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters: []
    - name: resources-routes-v1-id-rules
      path: /resources/routes/v1/{id}/rules
      operations:
      - name: RoutesControllerV1_replaceRules
        method: PUT
        description: Create or replace route rules
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-routes-v1-configuration
      path: /resources/routes/v1/configuration
      operations:
      - name: RoutesConfigurationsControllerV1_getRoutesConfiguration
        method: GET
        description: Get routes configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters: []
      - name: RoutesConfigurationsControllerV1_updateRoutesConfiguration
        method: PATCH
        description: Update routes configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-features-v1
      path: /resources/features/v1
      operations:
      - name: FeaturesControllerV1_getFeatures
        method: GET
        description: Get Feature Flags
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: offset
          in: query
          type: number
          description: Page offset of the results to return
          required: false
        - name: limit
          in: query
          type: number
          description: Number of results per page
          required: false
        - name: filter
          in: query
          type: string
          description: 'Search input; Searchable fields: `name`'
          required: false
        - name: orderBy
          in: query
          type: string
          description: Order fields by date created (`createdAt`) or expired (`expirationDate`)
          required: false
        - name: sortType
          in: query
          type: string
          description: Sort fields by an ascending (`ASC`) or a decending (`DESC`) order
          required: false
        - name: featureIds
          in: query
          type: array
          description: Comma separated feature IDs that can be used to filter the results
          required: false
        - name: permissionKeys
          in: query
          type: array
          description: Comma separated permission keys that can be used to filter the results
          required: false
        - name: hasFeatureFlag
          in: query
          type: boolean
          description: Filter out features that are linked/not linked to feature-flag
          required: false
        - name: featureKeys
          in: query
          type: array
          description: Comma separated feature Keys that can be used to filter the results
          required: false
      - name: FeaturesControllerV1_createFeature
        method: POST
        description: Create feature
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-features-v1-featureid
      path: /resources/features/v1/{featureId}
      operations:
      - name: FeaturesControllerV1_updateFeature
        method: PATCH
        description: Update feature
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: featureId
          in: path
          type: string
          description: featureId parameter
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: FeaturesControllerV1_deleteFeature
        method: DELETE
        description: Delete feature
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: featureId
          in: path
          type: string
          description: featureId parameter
          required: true
    - name: resources-features-v2
      path: /resources/features/v2
      operations:
      - name: FeaturesControllerV2_create
        method: POST
        description: Create feature
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-features-v2-featureid
      path: /resources/features/v2/{featureId}
      operations:
      - name: FeaturesControllerV2_update
        method: PATCH
        description: Update feature
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: featureId
          in: path
          type: string
          description: featureId parameter
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-entitlements-v2
      path: /resources/entitlements/v2
      operations:
      - name: EntitlementsControllerV2_getEntitlements
        method: GET
        description: Get entitlements
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: offset
          in: query
          type: number
          description: Page offset of results to return
          required: false
        - name: limit
          in: query
          type: number
          description: Number of results per page
          required: false
        - name: sortType
          in: query
          type: string
          description: Sort type, `ASC` for ascending, `DESC` for descending
          required: false
        - name: planId
          in: query
          type: string
          description: UUID string representing the plan ID
          required: false
        - name: planIds
          in: query
          type: array
          description: UUIDs string array representing the plan IDs
          required: false
        - name: assignLevel
          in: query
          type: string
          description: Assign level, `USER` for user-level entitlements, `TENANT` for tenant-level entitlements
          required: false
        - name: orderBy
          in: query
          type: string
          description: Field to order results by date (`createdAt`) or expiration date (`expirationDate`)
          required: false
        - name: userIds
          in: query
          type: array
          description: Comma separated user IDs to filter results by
          required: false
        - name: tenantIds
          in: query
          type: array
          description: Comma separated account (tenant) IDs to filter results by
          required: false
        - name: withRelations
          in: query
          type: boolean
          description: Boolean value to include related entities in the response
          required: false
      - name: EntitlementsControllerV2_createEntitlement
        method: POST
        description: Create entitlement
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-entitlements-v2-batch
      path: /resources/entitlements/v2/batch
      operations:
      - name: EntitlementsControllerV2_createBatchEntitlements
        method: POST
        description: Batch create entitlements
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: EntitlementsControllerV2_updateBatchEntitlements
        method: PATCH
        description: Batch update entitlements
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: EntitlementsControllerV2_deleteBatchEntitlements
        method: DELETE
        description: Batch delete entitlements
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ids
          in: query
          type: array
          description: UUID string that represents the entitlement ID
          required: true
    - name: resources-entitlements-v2-id
      path: /resources/entitlements/v2/{id}
      operations:
      - name: EntitlementsControllerV2_getSingleEntitlement
        method: GET
        description: Get single entitlement
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
      - name: EntitlementsControllerV2_updateEntitlement
        method: PATCH
        description: Update entitlement
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: EntitlementsControllerV2_deleteEntitlement
        method: DELETE
        description: Delete entitlement
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
    - name: resources-feature-flags-v1
      path: /resources/feature-flags/v1
      operations:
      - name: FeatureFlagsControllerV1_getFeatureFlags
        method: GET
        description: Get feature flags
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: offset
          in: query
          type: number
          description: Page offset of the results to return
          required: false
        - name: limit
          in: query
          type: number
          description: Number of results per page
          required: false
        - name: filter
          in: query
          type: string
          description: Search input, searchable by `name`
          required: false
        - name: orderBy
          in: query
          type: string
          description: Field to order results by create date (`createdAt`) or name (`name`)
          required: false
        - name: sortType
          in: query
          type: string
          description: Sort type, ASC for ascending, DESC for descending
          required: false
      - name: FeatureFlagsControllerV1_createFeatureFlag
        method: POST
        description: Create feature flag
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-feature-flags-v1-id
      path: /resources/feature-flags/v1/{id}
      operations:
      - name: FeatureFlagsControllerV1_getSingleFeatureFlag
        method: GET
        description: Get single feature flag
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
      - name: FeatureFlagsControllerV1_updateFeatureFlag
        method: PATCH
        description: Update feature flag
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: FeatureFlagsControllerV1_deleteFeatureFlag
        method: DELETE
        description: Delete feature flag
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: id parameter
          required: true
    - name: resources-entity-types-v1
      path: /resources/entity-types/v1
      operations:
      - name: EntityTypesV1Controller_getEntityTypes
        method: GET
        description: Get Entity Types
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters: []
      - name: EntityTypesV1Controller_createEntityType
        method: POST
        description: Create Entity Type
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-entity-types-v1-key
      path: /resources/entity-types/v1/{key}
      operations:
      - name: EntityTypesV1Controller_getEntityType
        method: GET
        description: Get Entity Type
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: key
          in: path
          type: string
          description: key parameter
          required: true
      - name: EntityTypesV1Controller_updateEntityType
        method: PATCH
        description: Update Entity Type
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: EntityTypesV1Controller_deleteEntityType
        method: DELETE
        description: Delete Entity Type
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters: []
    - name: resources-entity-types-v1-key-actions
      path: /resources/entity-types/v1/{key}/actions
      operations:
      - name: EntityTypesActionsV1Controller_createEntityTypeActions
        method: POST
        description: Create Entity Type Actions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-entity-types-v1-key-actions-actionkey
      path: /resources/entity-types/v1/{key}/actions/{actionKey}
      operations:
      - name: EntityTypesActionsV1Controller_updateEntityTypeAction
        method: PATCH
        description: Update Entity Type Action
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: EntityTypesActionsV1Controller_deleteEntityTypeAction
        method: DELETE
        description: Delete Entity Type Action
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters: []
    - name: resources-entity-types-v1-key-relations
      path: /resources/entity-types/v1/{key}/relations
      operations:
      - name: EntityTypesRelationsV1Controller_createEntityTypeRelations
        method: POST
        description: Create Entity Type Relations
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-entity-types-v1-key-relations-relationkey
      path: /resources/entity-types/v1/{key}/relations/{relationKey}
      operations:
      - name: EntityTypesRelationsV1Controller_updateEntityTypeRelation
        method: PATCH
        description: Update Entity Type Relation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: EntityTypesRelationsV1Controller_deleteEntityTypeRelation
        method: DELETE
        description: Delete Entity Type Relation
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters: []
    - name: resources-relations-v1-assignments
      path: /resources/relations/v1/assignments
      operations:
      - name: RelationsV1Controller_getRelationAssignments
        method: GET
        description: Get Relation Assignments
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: offset
          in: query
          type: integer
          description: offset parameter
          required: false
        - name: limit
          in: query
          type: integer
          description: limit parameter
          required: false
    - name: resources-relations-v1-assign
      path: /resources/relations/v1/assign
      operations:
      - name: RelationsV1Controller_createRelationAssignments
        method: POST
        description: Create Relation Assignments
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: resources-relations-v1-unassign
      path: /resources/relations/v1/unassign
      operations:
      - name: RelationsV1Controller_deleteRelationAssignments
        method: POST
        description: Delete Relation Assignments
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
  exposes:
  - type: rest
    namespace: frontegg-entitlements-rest
    port: 8080
    description: REST adapter for Frontegg Entitlements. One resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/resources/plans/v1/tenant/{tenantId}
      name: resources-plans-v1-tenant-tenantid
      description: REST surface for resources-plans-v1-tenant-tenantid.
      operations:
      - method: GET
        name: PlansControllerV1_getTenantPlans
        description: Get account (tenant) plans
        call: frontegg-entitlements.PlansControllerV1_getTenantPlans
        with:
          tenantId: rest.tenantId
          offset: rest.offset
          limit: rest.limit
          filter: rest.filter
          orderBy: rest.orderBy
          sortType: rest.sortType
          excludeNonEntitledPlans: rest.excludeN

# --- truncated at 32 KB (77 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/frontegg/refs/heads/main/capabilities/frontegg-entitlements.yaml