Frontegg Permissions API

The Permissions API from Frontegg — 4 operation(s) for permissions.

Operations 6

GET /resources/permissions/v1 Get Permissions #
POST /resources/permissions/v1 Create Permissions #
DELETE /resources/permissions/v1/{permissionId} Delete Permission #
PATCH /resources/permissions/v1/{permissionId} Update Permission #
PUT /resources/permissions/v1/{permissionId}/roles Set a Permission to Multiple Roles #
PUT /resources/permissions/v1/classification Set Permissions Classification #

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-permissions-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-permissions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Frontegg Permissions API
  version: '1.0'
  description: 'Operations tagged Permissions across 2 of this provider''s published API definitions: frontegg-combined-openapi.yml, frontegg-identity-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.frontegg.com/identity
  description: EU Region
- url: https://api.us.frontegg.com/identity
  description: US Region
- url: https://api.ca.frontegg.com/identity
  description: CA Region
- url: https://api.au.frontegg.com/identity
  description: AU Region
- url: https://{domain}.frontegg.com/identity
  description: Frontegg sub-domain for use with user tokens
  variables:
    domain:
      default: app-xxx
tags:
- name: Permissions
  x-displayName: Permissions
paths:
  /resources/permissions/v1:
    servers:
    - url: https://api.frontegg.com/identity
      description: EU Region
    - url: https://api.us.frontegg.com/identity
      description: US Region
    - url: https://api.ca.frontegg.com/identity
      description: CA Region
    - url: https://api.au.frontegg.com/identity
      description: AU Region
    - url: https://{domain}.frontegg.com/identity
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    get:
      operationId: PermissionsControllerV1_getAllPermissions
      summary: Get Permissions
      description: 'Retrieve all permissions configured for your environment.


        Each permission object includes the name, description, assigned roles, categories, and other defining information.'
      parameters: []
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PermissionResponse'
      tags:
      - Permissions
      security:
      - bearer: []
    post:
      operationId: PermissionsControllerV1_addPermissions
      summary: Create Permissions
      description: 'Add a new permission.


        Provide the permission information in the request body.


        This route does not associate permissions with roles. Use the associate permission to roles route to manage role associations.'
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/AddPermissionRequest'
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PermissionResponse'
      tags:
      - Permissions
      security:
      - bearer: []
  /resources/permissions/v1/{permissionId}:
    servers:
    - url: https://api.frontegg.com/identity
      description: EU Region
    - url: https://api.us.frontegg.com/identity
      description: US Region
    - url: https://api.ca.frontegg.com/identity
      description: CA Region
    - url: https://api.au.frontegg.com/identity
      description: AU Region
    - url: https://{domain}.frontegg.com/identity
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    delete:
      operationId: PermissionsControllerV1_deletePermission
      summary: Delete Permission
      description: 'Delete a permission.


        Provide the permission ID as a path parameter to specify which permission to delete. You can obtain the permission ID using the **Get permissions** API.'
      parameters:
      - name: permissionId
        required: true
        in: path
        schema:
          type: string
      responses:
        '204':
          description: ''
      tags:
      - Permissions
      security:
      - bearer: []
    patch:
      operationId: PermissionsControllerV1_updatePermission
      summary: Update Permission
      description: 'Update an existing permission.


        Provide the permission ID as a path parameter to specify which permission to update, and send the updated permission information in the request body.


        This route does not update role associations for the permission. Use the associate permission to roles route to manage role associations.'
      parameters:
      - name: permissionId
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdatePermissionRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionResponse'
      tags:
      - Permissions
      security:
      - bearer: []
  /resources/permissions/v1/{permissionId}/roles:
    servers:
    - url: https://api.frontegg.com/identity
      description: EU Region
    - url: https://api.us.frontegg.com/identity
      description: US Region
    - url: https://api.ca.frontegg.com/identity
      description: CA Region
    - url: https://api.au.frontegg.com/identity
      description: AU Region
    - url: https://{domain}.frontegg.com/identity
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    put:
      operationId: PermissionsControllerV1_setRolesToPermission
      summary: Set a Permission to Multiple Roles
      description: 'Associate a permission with multiple roles.


        Provide the permission ID as a path parameter and include the role IDs in the request body as an array of strings. Any pre-existing role associations will remain.


        You can obtain role IDs using the **Get roles** API.'
      parameters:
      - name: permissionId
        required: true
        in: path
        schema:
          type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddRolesToPermissionRequest'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionResponse'
      tags:
      - Permissions
      security:
      - bearer: []
  /resources/permissions/v1/classification:
    servers:
    - url: https://api.frontegg.com/identity
      description: EU Region
    - url: https://api.us.frontegg.com/identity
      description: US Region
    - url: https://api.ca.frontegg.com/identity
      description: CA Region
    - url: https://api.au.frontegg.com/identity
      description: AU Region
    - url: https://{domain}.frontegg.com/identity
      description: Frontegg sub-domain for use with user tokens
      variables:
        domain:
          default: app-xxx
    put:
      operationId: PermissionsControllerV1_updatePermissionsAssignmentType
      summary: Set Permissions Classification
      description: 'Classify permissions for self-service usage.


        Provide an array of `permissionIds` and the classification `type` in the request body. This allows you to segregate which permissions will be used for self-service.'
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ClassifyPermissionsDto'
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionResponse'
      tags:
      - Permissions
      security:
      - bearer: []
components:
  schemas:
    AddRolesToPermissionRequest:
      type: object
      properties:
        roleIds:
          description: The permission will be assigned to the specified roles
          type: array
          items:
            type: string
      required:
      - roleIds
    UpdatePermissionRequest:
      type: object
      properties:
        key:
          type: string
        name:
          type: string
        description:
          type: string
        categoryId:
          type: string
    ClassifyPermissionsDto:
      type: object
      properties:
        permissionIds:
          type: array
          items:
            type: string
        type:
          type: string
          enum:
          - NEVER
          - ALWAYS
          - ASSIGNABLE
      required:
      - permissionIds
      - type
    AddPermissionRequest:
      type: object
      properties:
        key:
          type: string
        name:
          type: string
        description:
          type: string
        categoryId:
          type: string
        assignmentType:
          type: string
          enum:
          - NEVER
          - ALWAYS
          - ASSIGNABLE
      required:
      - key
      - name
    PermissionResponse:
      type: object
      properties:
        id:
          type: string
        key:
          type: string
        name:
          type: string
        description:
          type: string
        createdAt:
          format: date-time
          type: string
        updatedAt:
          format: date-time
          type: string
        roleIds:
          type: array
          items:
            type: string
        categoryId:
          type: string
        fePermission:
          type: boolean
      required:
      - id
      - key
      - name
      - description
      - createdAt
      - updatedAt
      - roleIds
      - categoryId
      - fePermission
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http
x-refined-from:
- frontegg-combined-openapi.yml
- frontegg-identity-openapi.yml
x-tagGroups:
- name: Management
  tags:
  - Applications settings