Frontegg ReBAC API

The ReBAC API from Frontegg — 9 operation(s) for rebac.

Operations 14

GET /resources/entity-types/v1 Get Entity Types #
POST /resources/entity-types/v1 Create Entity Type #
GET /resources/entity-types/v1/{key} Get Entity Type #
PATCH /resources/entity-types/v1/{key} Update Entity Type #
DELETE /resources/entity-types/v1/{key} Delete Entity Type #
POST /resources/entity-types/v1/{key}/actions Create Entity Type Actions #
PATCH /resources/entity-types/v1/{key}/actions/{actionKey} Update Entity Type Action #
DELETE /resources/entity-types/v1/{key}/actions/{actionKey} Delete Entity Type Action #
POST /resources/entity-types/v1/{key}/relations Create Entity Type Relations #
PATCH /resources/entity-types/v1/{key}/relations/{relationKey} Update Entity Type Relation #
DELETE /resources/entity-types/v1/{key}/relations/{relationKey} Delete Entity Type Relation #
GET /resources/relations/v1/assignments Get Relation Assignments #
POST /resources/relations/v1/assign Create Relation Assignments #
POST /resources/relations/v1/unassign Delete Relation Assignments #

Documentation

Specifications

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/frontegg-rebac-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

frontegg-rebac-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Frontegg Re BAC API
  version: '1.0'
  description: 'Operations tagged ReBAC across 2 of this provider''s published API definitions: frontegg-combined-openapi.yml, frontegg-entitlements-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.frontegg.com/entitlements
  description: EU Region
- url: https://api.us.frontegg.com/entitlements
  description: US Region
- url: https://api.ca.frontegg.com/entitlements
  description: CA Region
- url: https://api.au.frontegg.com/entitlements
  description: AU Region
- url: https://{domain}.frontegg.com/entitlements
  description: Frontegg sub-domain for use with user tokens
  variables:
    domain:
      default: app-xxx
tags:
- name: ReBAC
  x-displayName: ReBAC
paths:
  /resources/entity-types/v1:
    servers:
    - url: https://api.frontegg.com/entitlements
      description: EU Region
    - url: https://api.us.frontegg.com/entitlements
      description: US Region
    - url: https://api.ca.frontegg.com/entitlements
      description: CA Region
    - url: https://api.au.frontegg.com/entitlements
      description: AU Region
    - url: https://{domain}.frontegg.com/entitlements
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    get:
      operationId: EntityTypesV1Controller_getEntityTypes
      summary: Get Entity Types
      description: List all entity types in your schema.
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedEntityTypesResponse'
      tags:
      - ReBAC
      security:
      - bearer: []
    post:
      operationId: EntityTypesV1Controller_createEntityType
      summary: Create Entity Type
      description: Create a new entity type (e.g. document, folder, project).
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EntityTypeRequest'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityTypeResponse'
      tags:
      - ReBAC
      security:
      - bearer: []
  /resources/entity-types/v1/{key}:
    servers:
    - url: https://api.frontegg.com/entitlements
      description: EU Region
    - url: https://api.us.frontegg.com/entitlements
      description: US Region
    - url: https://api.ca.frontegg.com/entitlements
      description: CA Region
    - url: https://api.au.frontegg.com/entitlements
      description: AU Region
    - url: https://{domain}.frontegg.com/entitlements
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    get:
      operationId: EntityTypesV1Controller_getEntityType
      summary: Get Entity Type
      description: Retrieve an entity type along with its relations and actions.
      parameters:
      - name: key
        required: true
        in: path
        schema:
          type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityTypeOneResponse'
      tags:
      - ReBAC
      security:
      - bearer: []
    patch:
      operationId: EntityTypesV1Controller_updateEntityType
      summary: Update Entity Type
      description: Update an existing entity type.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EntityTypeRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityTypeResponse'
      tags:
      - ReBAC
      security:
      - bearer: []
    delete:
      operationId: EntityTypesV1Controller_deleteEntityType
      summary: Delete Entity Type
      description: Deletes an entity type and all its schema definitions.
      parameters: []
      responses:
        '204':
          description: ''
      tags:
      - ReBAC
      security:
      - bearer: []
  /resources/entity-types/v1/{key}/actions:
    servers:
    - url: https://api.frontegg.com/entitlements
      description: EU Region
    - url: https://api.us.frontegg.com/entitlements
      description: US Region
    - url: https://api.ca.frontegg.com/entitlements
      description: CA Region
    - url: https://api.au.frontegg.com/entitlements
      description: AU Region
    - url: https://{domain}.frontegg.com/entitlements
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    post:
      operationId: EntityTypesActionsV1Controller_createEntityTypeActions
      summary: Create Entity Type Actions
      description: Creates an action on an entity type and defines, via relationKeys, how permission is granted directly or through hierarchical relationships.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EntityTypeActionsRequest'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/EntityTypeActionsResponse'
      tags:
      - ReBAC
      security:
      - bearer: []
  /resources/entity-types/v1/{key}/actions/{actionKey}:
    servers:
    - url: https://api.frontegg.com/entitlements
      description: EU Region
    - url: https://api.us.frontegg.com/entitlements
      description: US Region
    - url: https://api.ca.frontegg.com/entitlements
      description: CA Region
    - url: https://api.au.frontegg.com/entitlements
      description: AU Region
    - url: https://{domain}.frontegg.com/entitlements
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    patch:
      operationId: EntityTypesActionsV1Controller_updateEntityTypeAction
      summary: Update Entity Type Action
      description: Update an existing action's relation mappings.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EntityTypeActionUpdateRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityTypeActionsResponse'
      tags:
      - ReBAC
      security:
      - bearer: []
    delete:
      operationId: EntityTypesActionsV1Controller_deleteEntityTypeAction
      summary: Delete Entity Type Action
      description: Remove an action from an entity type.
      parameters: []
      responses:
        '204':
          description: ''
      tags:
      - ReBAC
      security:
      - bearer: []
  /resources/entity-types/v1/{key}/relations:
    servers:
    - url: https://api.frontegg.com/entitlements
      description: EU Region
    - url: https://api.us.frontegg.com/entitlements
      description: US Region
    - url: https://api.ca.frontegg.com/entitlements
      description: CA Region
    - url: https://api.au.frontegg.com/entitlements
      description: AU Region
    - url: https://{domain}.frontegg.com/entitlements
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    post:
      operationId: EntityTypesRelationsV1Controller_createEntityTypeRelations
      summary: Create Entity Type Relations
      description: Define schema-level relation types (e.g. reader, owner, parent) and which entity types can be subjects.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EntityTypeRelationsRequest'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/EntityTypeRelationResponse'
      tags:
      - ReBAC
      security:
      - bearer: []
  /resources/entity-types/v1/{key}/relations/{relationKey}:
    servers:
    - url: https://api.frontegg.com/entitlements
      description: EU Region
    - url: https://api.us.frontegg.com/entitlements
      description: US Region
    - url: https://api.ca.frontegg.com/entitlements
      description: CA Region
    - url: https://api.au.frontegg.com/entitlements
      description: AU Region
    - url: https://{domain}.frontegg.com/entitlements
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    patch:
      operationId: EntityTypesRelationsV1Controller_updateEntityTypeRelation
      summary: Update Entity Type Relation
      description: Modify a relation's allowed subject entity types.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EntityTypeRelationUpdateRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EntityTypeRelationResponse'
      tags:
      - ReBAC
      security:
      - bearer: []
    delete:
      operationId: EntityTypesRelationsV1Controller_deleteEntityTypeRelation
      summary: Delete Entity Type Relation
      description: Remove a relation definition from an entity type.
      parameters: []
      responses:
        '204':
          description: ''
      tags:
      - ReBAC
      security:
      - bearer: []
  /resources/relations/v1/assignments:
    servers:
    - url: https://api.frontegg.com/entitlements
      description: EU Region
    - url: https://api.us.frontegg.com/entitlements
      description: US Region
    - url: https://api.ca.frontegg.com/entitlements
      description: CA Region
    - url: https://api.au.frontegg.com/entitlements
      description: AU Region
    - url: https://{domain}.frontegg.com/entitlements
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    get:
      operationId: RelationsV1Controller_getRelationAssignments
      summary: Get Relation Assignments
      description: List all instance-level relationship assignments.
      parameters:
      - name: offset
        required: false
        in: query
        example: 0
        schema:
          default: 0
          type: integer
      - name: limit
        required: false
        in: query
        example: 10
        schema:
          default: 10
          type: integer
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PagedRelationAssignmentsResponse'
      tags:
      - ReBAC
      security:
      - bearer: []
  /resources/relations/v1/assign:
    servers:
    - url: https://api.frontegg.com/entitlements
      description: EU Region
    - url: https://api.us.frontegg.com/entitlements
      description: US Region
    - url: https://api.ca.frontegg.com/entitlements
      description: CA Region
    - url: https://api.au.frontegg.com/entitlements
      description: AU Region
    - url: https://{domain}.frontegg.com/entitlements
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    post:
      operationId: RelationsV1Controller_createRelationAssignments
      summary: Create Relation Assignments
      description: Create relation assignments (instance-level relationships). E.g., "User A is a reader of Document 1".
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RelationAssignmentsRequest'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RelationAssignmentDto'
      tags:
      - ReBAC
      security:
      - bearer: []
  /resources/relations/v1/unassign:
    servers:
    - url: https://api.frontegg.com/entitlements
      description: EU Region
    - url: https://api.us.frontegg.com/entitlements
      description: US Region
    - url: https://api.ca.frontegg.com/entitlements
      description: CA Region
    - url: https://api.au.frontegg.com/entitlements
      description: AU Region
    - url: https://{domain}.frontegg.com/entitlements
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    post:
      operationId: RelationsV1Controller_deleteRelationAssignments
      summary: Delete Relation Assignments
      description: Remove instance-level relationship assignments.
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RelationAssignmentsRequest'
      responses:
        '204':
          description: ''
      tags:
      - ReBAC
      security:
      - bearer: []
components:
  schemas:
    EntityTypeRelationResponse:
      type: object
      properties:
        vendorId:
          type: string
          readOnly: true
          example: 123e4567-e89b-12d3-a456-426614174000
        targetEntityTypeKey:
          type: string
          readOnly: true
          example: book
        key:
          type: string
          readOnly: true
          example: reader
        subjectEntityTypeKeys:
          readOnly: true
          example:
          - copywriter
          - customer
          type: array
          items:
            type: string
      required:
      - vendorId
      - targetEntityTypeKey
      - key
      - subjectEntityTypeKeys
    EntityTypeActionsRequest:
      type: object
      properties:
        actions:
          type: array
          items:
            $ref: '#/components/schemas/EntityTypeActionRequest'
      required:
      - actions
    EntityTypeActionRequest:
      type: object
      properties:
        key:
          type: string
          example: read
        relationKeys:
          example:
          - reader
          - writer
          - fromRelation: parent
            toAction: read
          description: Array of relation keys (strings) or arrow syntax objects ({ fromRelation, toAction })
          type: array
          items:
            type: string
      required:
      - key
      - relationKeys
    RelationAssignmentsRequest:
      type: object
      properties:
        assignments:
          type: array
          items:
            $ref: '#/components/schemas/RelationAssignmentRequestDto'
      required:
      - assignments
    EntityTypeRelationUpdateRequest:
      type: object
      properties:
        key:
          type: string
          example: reader
        subjectEntityKeys:
          example:
          - copywriter
          - customer
          type: array
          items:
            type: string
      required:
      - key
      - subjectEntityKeys
    EntityTypeRequest:
      type: object
      properties:
        key:
          type: string
          example: document
        description:
          type: string
          example: Representation of a Word document file
      required:
      - key
    RelationAssignmentRequestDto:
      type: object
      properties:
        subjectEntityTypeKey:
          type: string
          example: user
        subjectKey:
          type: string
          example: anthony@email-of.his
        relationKey:
          type: string
          example: reader
        targetEntityTypeKey:
          type: string
          example: document
        targetKey:
          type: string
          example: document-1.doc
        activeFrom:
          type: string
          example: '2024-01-01T00:00:00Z'
        activeUntil:
          type: string
          example: '2024-12-31T23:59:59Z'
      required:
      - subjectEntityTypeKey
      - subjectKey
      - relationKey
      - targetEntityTypeKey
      - targetKey
    EntityTypeActionsResponse:
      type: object
      properties:
        vendorId:
          type: string
          readOnly: true
          example: 123e4567-e89b-12d3-a456-426614174000
        entityTypeKey:
          type: string
          readOnly: true
          example: book
        key:
          type: string
          readOnly: true
          example: read
        relationKeys:
          readOnly: true
          example:
          - reader
          - writer
          - fromRelation: parent
            toAction: read
          type: array
          items:
            type: string
      required:
      - vendorId
      - entityTypeKey
      - key
      - relationKeys
    EntityTypeResponse:
      type: object
      properties:
        key:
          type: string
          readOnly: true
          example: document
        description:
          type: string
          readOnly: true
          example: Representation of a Word document file
        createdAt:
          type: string
          readOnly: true
          example: '2021-06-02T14:00:00.000Z'
          format: date-time
      required:
      - key
      - description
      - createdAt
    EntityTypeRelationsRequest:
      type: object
      properties:
        relations:
          type: array
          items:
            $ref: '#/components/schemas/EntityTypeRelationRequest'
      required:
      - relations
    EntityTypeOneResponse:
      type: object
      properties:
        key:
          type: string
          readOnly: true
          example: document
        description:
          type: string
          readOnly: true
          example: Representation of a Word document file
        createdAt:
          type: string
          readOnly: true
          example: '2021-06-02T14:00:00.000Z'
          format: date-time
        relations:
          readOnly: true
          type: array
          items:
            type: string
        actions:
          readOnly: true
          type: array
          items:
            type: string
      required:
      - key
      - description
      - createdAt
      - relations
      - actions
    RelationAssignmentDto:
      type: object
      properties:
        subjectEntityTypeKey:
          type: string
          readOnly: true
          example: user
        subjectKey:
          type: string
          readOnly: true
          example: anthony@email-of.his
        relationKey:
          type: string
          readOnly: true
          example: reader
        targetEntityTypeKey:
          type: string
          readOnly: true
          example: document
        targetKey:
          type: string
          readOnly: true
          example: document-1.doc
        activeFrom:
          type: string
          example: '2024-01-01T00:00:00Z'
        activeUntil:
          type: string
          example: '2024-12-31T23:59:59Z'
      required:
      - subjectEntityTypeKey
      - subjectKey
      - relationKey
      - targetEntityTypeKey
      - targetKey
    PagedEntityTypesResponse:
      type: object
      properties:
        hasNext:
          type: boolean
          readOnly: true
          example: true
        items:
          readOnly: true
          type: array
          items:
            $ref: '#/components/schemas/EntityTypeResponse'
      required:
      - hasNext
      - items
    EntityTypeRelationRequest:
      type: object
      properties:
        key:
          type: string
          example: reader
        subjectEntityKeys:
          example:
          - copywriter
          - customer
          type: array
          items:
            type: string
      required:
      - key
      - subjectEntityKeys
    EntityTypeActionUpdateRequest:
      type: object
      properties:
        key:
          type: string
          example: read
        relationKeys:
          example:
          - reader
          - writer
          - fromRelation: parent
            toAction: read
          description: Array of relation keys (strings) or arrow syntax objects ({ fromRelation, toAction })
          type: array
          items:
            type: string
      required:
      - key
      - relationKeys
    PagedRelationAssignmentsResponse:
      type: object
      properties:
        items:
          readOnly: true
          type: array
          items:
            $ref: '#/components/schemas/RelationAssignmentDto'
        hasNext:
          type: boolean
          readOnly: true
          example: false
      required:
      - items
      - hasNext
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http
x-refined-from:
- frontegg-combined-openapi.yml
- frontegg-entitlements-openapi.yml
x-tagGroups:
- name: Management
  tags:
  - Applications settings