openapi: 3.0.0
info:
  description: >
    This document specifies a **UI Permission Management RESTful API** for
    **WSO2 Identity Server** 
  version: "v1"
  title: WSO2 Identity Server - Permission Management API definition
  contact:
    name: WSO2
    url: 'http://wso2.com/products/identity-server/'
    email: architecture@wso2.org
  license:
    name: Apache 2.0
    url: 'http://www.apache.org/licenses/LICENSE-2.0.html'
security:
  - OAuth2: []
  - BasicAuth: []
paths:
  /permission-management/permissions:
    get:
      tags:
        - permissions
      summary: |
        List permissions in the permission tree
      description: >
        This API provides the array list of all permissions in the UI permission	
        tree as an array of display name and the permission resource path.	</br>
        <b>Permission required:</b><br>	
        * /permission/admin/manage/identity/rolemgt/view<br>	
        <b>Scope required:</b><br>	
        * internal_role_mgt_view
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PermissionTreeObject'
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '500':
          description: Server Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      x-wso2-request: ''
      x-wso2-response: |
        "HTTP/1.1 200 Ok"
servers:
  - url: 'https://localhost:9443/t/{tenant-domain}/api/server/v1'
components:
  securitySchemes:
    BasicAuth:
      type: http
      scheme: basic
    OAuth2:
      type: oauth2
      flows:
        authorizationCode:
          authorizationUrl: 'https://localhost:9443/oauth2/authorize'
          tokenUrl: 'https://localhost:9443/oauth2/token'
          scopes: {}
  schemas:
    PermissionTreeObject:
      type: array
      items:
        $ref: '#/components/schemas/Permission'
      example:
        - displayName: All Permissions
          resourcePath: "/permission/"
        - displayName: Applications
          resourcePath: "/permission/applications"
        - displayName: Super Admin Permissions
          resourcePath: "/permission/protected"
        - displayName: Configure
          resourcePath: "/permission/protected/configure"
        - displayName: Feature Management
          resourcePath: "/permission/protected/configure/components"
        - displayName: Manage
          resourcePath: "/permission/protected/manage"
        - displayName: Modify
          resourcePath: "/permission/protected/manage/modify"
        - displayName: Tenants
          resourcePath: "/permission/protected/manage/modify/tenants"
        - displayName: Monitor
          resourcePath: "/permission/protected/manage/monitor"
        - displayName: Tenants
          resourcePath: "/permission/protected/manage/monitor/tenants"
        - displayName: List
          resourcePath: "/permission/protected/manage/monitor/tenants/list"
        - displayName: Server Admin
          resourcePath: "/permission/protected/server-admin"
        - displayName: Home Page
          resourcePath: "/permission/protected/server-admin/homepage"
        - displayName: Admin Permissions
          resourcePath: "/permission/admin"
        - displayName: Monitor
          resourcePath: "/permission/admin/monitor"
        - displayName: Metrics
          resourcePath: "/permission/admin/monitor/metrics"
        - displayName: Monitor BPEL
          resourcePath: "/permission/admin/monitor/bpel"
        - displayName: Monitor Attachment
          resourcePath: "/permission/admin/monitor/attachment"
        - displayName: Configure
          resourcePath: "/permission/admin/configure"
        - displayName: Security
          resourcePath: "/permission/admin/configure/security"
        - displayName: Identity Management
          resourcePath: "/permission/admin/configure/security/usermgt"
        - displayName: Password Management
          resourcePath: "/permission/admin/configure/security/usermgt/passwords"
        - displayName: Profile Management
          resourcePath: "/permission/admin/configure/security/usermgt/profiles"
        - displayName: User Management
          resourcePath: "/permission/admin/configure/security/usermgt/users"
        - displayName: Identity Provisioning
          resourcePath: "/permission/admin/configure/security/usermgt/provisioning"
        - displayName: Configure Data Sources
          resourcePath: "/permission/admin/configure/datasources"
        - displayName: Theme
          resourcePath: "/permission/admin/configure/theme"
        - displayName: Login
          resourcePath: "/permission/admin/login"
        - displayName: Manage
          resourcePath: "/permission/admin/manage"
        - displayName: Event Streams
          resourcePath: "/permission/admin/manage/event-streams"
        - displayName: Search
          resourcePath: "/permission/admin/manage/search"
        - displayName: Advanced
          resourcePath: "/permission/admin/manage/search/advanced-search"
        - displayName: Basic
          resourcePath: "/permission/admin/manage/search/resources"
        - displayName: BPEL
          resourcePath: "/permission/admin/manage/bpel"
        - displayName: Manage BPEL Process Instances
          resourcePath: "/permission/admin/manage/bpel/instances"
        - displayName: Manage BPEL Processes
          resourcePath: "/permission/admin/manage/bpel/processes"
        - displayName: Manage BPEL Packages
          resourcePath: "/permission/admin/manage/bpel/packages"
        - displayName: Add BPEL
          resourcePath: "/permission/admin/manage/bpel/add"
        - displayName: Resources
          resourcePath: "/permission/admin/manage/resources"
        - displayName: Browse
          resourcePath: "/permission/admin/manage/resources/browse"
        - displayName: Notifications
          resourcePath: "/permission/admin/manage/resources/notifications"
        - displayName: Add
          resourcePath: "/permission/admin/manage/add"
        - displayName: Module
          resourcePath: "/permission/admin/manage/add/module"
        - displayName: Services
          resourcePath: "/permission/admin/manage/add/service"
        - displayName: Webapps
          resourcePath: "/permission/admin/manage/add/webapp"
        - displayName: Attachment
          resourcePath: "/permission/admin/manage/attachment"
        - displayName: Extensions
          resourcePath: "/permission/admin/manage/extensions"
        - displayName: Add
          resourcePath: "/permission/admin/manage/extensions/add"
        - displayName: List
          resourcePath: "/permission/admin/manage/extensions/list"
        - displayName: Identity
          resourcePath: "/permission/admin/manage/identity"
        - displayName: PEP
          resourcePath: "/permission/admin/manage/identity/pep"
        - displayName: Security Management
          resourcePath: "/permission/admin/manage/identity/securitymgt"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/securitymgt/update"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/securitymgt/view"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/securitymgt/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/securitymgt/delete"
        - displayName: Authentication Management
          resourcePath: "/permission/admin/manage/identity/authentication"
        - displayName: Session Management
          resourcePath: "/permission/admin/manage/identity/authentication/session"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/authentication/session/view"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/authentication/session/delete"
        - displayName: Claim
          resourcePath: "/permission/admin/manage/identity/claimmgt"
        - displayName: Claim Metadata Management
          resourcePath: "/permission/admin/manage/identity/claimmgt/metadata"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/claimmgt/metadata/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/claimmgt/metadata/delete"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/claimmgt/metadata/update"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/claimmgt/metadata/view"
        - displayName: Claim Management
          resourcePath: "/permission/admin/manage/identity/claimmgt/claim"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/claimmgt/claim/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/claimmgt/claim/update"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/claimmgt/claim/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/claimmgt/claim/delete"
        - displayName: User Role UI Management
          resourcePath: "/permission/admin/manage/identity/userroleuimgt"
        - displayName: UI-Create
          resourcePath: "/permission/admin/manage/identity/userroleuimgt/create"
        - displayName: Tenant Defualt Authentication Management
          resourcePath: "/permission/admin/manage/identity/defaultauthSeq"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/defaultauthSeq/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/defaultauthSeq/update"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/defaultauthSeq/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/defaultauthSeq/delete"
        - displayName: Entitlement Management
          resourcePath: "/permission/admin/manage/identity/entitlement"
        - displayName: Entitlement PAP Management
          resourcePath: "/permission/admin/manage/identity/entitlement/pap"
        - displayName: Entitlement Policy Management
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/delete"
        - displayName: Publish
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/publish"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/create"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/view"
        - displayName: Rollback
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/rollback"
        - displayName: Order
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/order"
        - displayName: Demote
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/demote"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/update"
        - displayName: Enable
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/enable"
        - displayName: List
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/policy/list"
        - displayName: Entitlement Subscriber Management
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/subscriber"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/subscriber/update"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/subscriber/view"
        - displayName: List
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/subscriber/list"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/subscriber/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/entitlement/pap/subscriber/delete"
        - displayName: Entitlement PDP Management
          resourcePath: "/permission/admin/manage/identity/entitlement/pdp"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/entitlement/pdp/view"
        - displayName: Manage
          resourcePath: "/permission/admin/manage/identity/entitlement/pdp/manage"
        - displayName: Test
          resourcePath: "/permission/admin/manage/identity/entitlement/pdp/test"
        - displayName: Entitlement PEP Management
          resourcePath: "/permission/admin/manage/identity/entitlement/pep"
        - displayName: Identity Provider Management
          resourcePath: "/permission/admin/manage/identity/idpmgt"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/idpmgt/delete"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/idpmgt/create"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/idpmgt/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/idpmgt/update"
        - displayName: Configuration Management
          resourcePath: "/permission/admin/manage/identity/configmgt"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/configmgt/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/configmgt/update"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/configmgt/delete"
        - displayName: List
          resourcePath: "/permission/admin/manage/identity/configmgt/list"
        - displayName: Add
          resourcePath: "/permission/admin/manage/identity/configmgt/add"
        - displayName: Key Store Management
          resourcePath: "/permission/admin/manage/identity/keystoremgt"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/keystoremgt/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/keystoremgt/update"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/keystoremgt/delete"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/keystoremgt/create"
        - displayName: Consent Management
          resourcePath: "/permission/admin/manage/identity/consentmgt"
        - displayName: List
          resourcePath: "/permission/admin/manage/identity/consentmgt/list"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/consentmgt/view"
        - displayName: Add
          resourcePath: "/permission/admin/manage/identity/consentmgt/add"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/consentmgt/delete"
        - displayName: Application Template Management
          resourcePath: "/permission/admin/manage/identity/apptemplatemgt"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/apptemplatemgt/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/apptemplatemgt/update"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/apptemplatemgt/delete"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/apptemplatemgt/create"
        - displayName: Identity Management
          resourcePath: "/permission/admin/manage/identity/identitymgt"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/identitymgt/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/identitymgt/update"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/identitymgt/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/identitymgt/delete"
        - displayName: Workflow Management
          resourcePath: "/permission/admin/manage/identity/workflow"
        - displayName: Associations
          resourcePath: "/permission/admin/manage/identity/workflow/association"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/workflow/association/view"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/workflow/association/delete"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/workflow/association/create"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/workflow/association/update"
        - displayName: Workflows
          resourcePath: "/permission/admin/manage/identity/workflow/definition"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/workflow/definition/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/workflow/definition/delete"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/workflow/definition/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/workflow/definition/update"
        - displayName: BPS Profiles
          resourcePath: "/permission/admin/manage/identity/workflow/profile"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/workflow/profile/view"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/workflow/profile/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/workflow/profile/delete"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/workflow/profile/update"
        - displayName: Monitor
          resourcePath: "/permission/admin/manage/identity/workflow/monitor"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/workflow/monitor/view"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/workflow/monitor/delete"
        - displayName: Email Management
          resourcePath: "/permission/admin/manage/identity/emailmgt"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/emailmgt/update"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/emailmgt/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/emailmgt/delete"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/emailmgt/view"
        - displayName: Identity Provisioning
          resourcePath: "/permission/admin/manage/identity/provisioning"
        - displayName: User Management
          resourcePath: "/permission/admin/manage/identity/usermgt"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/usermgt/update"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/usermgt/delete"
        - displayName: List
          resourcePath: "/permission/admin/manage/identity/usermgt/list"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/usermgt/view"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/usermgt/create"
        - displayName: User
          resourcePath: "/permission/admin/manage/identity/user"
        - displayName: Association
          resourcePath: "/permission/admin/manage/identity/user/association"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/user/association/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/user/association/update"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/user/association/delete"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/user/association/create"
        - displayName: User Store Management
          resourcePath: "/permission/admin/manage/identity/userstore"
        - displayName: User Store Count Management
          resourcePath: "/permission/admin/manage/identity/userstore/count"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/userstore/count/delete"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/userstore/count/view"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/userstore/count/create"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/userstore/count/update"
        - displayName: User Store Configuration Management
          resourcePath: "/permission/admin/manage/identity/userstore/config"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/userstore/config/delete"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/userstore/config/create"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/userstore/config/update"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/userstore/config/view"
        - displayName: Functions Library Management
          resourcePath: "/permission/admin/manage/identity/functionsLibrarymgt"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/functionsLibrarymgt/update"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/functionsLibrarymgt/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/functionsLibrarymgt/delete"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/functionsLibrarymgt/view"
        - displayName: Application Management
          resourcePath: "/permission/admin/manage/identity/applicationmgt"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/applicationmgt/delete"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/applicationmgt/create"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/applicationmgt/update"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/applicationmgt/view"
        - displayName: Role Management
          resourcePath: "/permission/admin/manage/identity/rolemgt"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/rolemgt/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/rolemgt/delete"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/rolemgt/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/rolemgt/update"
        - displayName: Challenge Questions Management
          resourcePath: "/permission/admin/manage/identity/challenge"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/challenge/delete"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/challenge/create"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/challenge/update"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/challenge/view"
        - displayName: STS Management
          resourcePath: "/permission/admin/manage/identity/stsmgt"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/stsmgt/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/stsmgt/delete"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/stsmgt/view"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/stsmgt/update"
        - displayName: Template
          resourcePath: "/permission/admin/manage/identity/template"
        - displayName: Template Management
          resourcePath: "/permission/admin/manage/identity/template/mgt"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/template/mgt/view"
        - displayName: Add
          resourcePath: "/permission/admin/manage/identity/template/mgt/add"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/template/mgt/delete"
        - displayName: List
          resourcePath: "/permission/admin/manage/identity/template/mgt/list"
        - displayName: User Profile Management
          resourcePath: "/permission/admin/manage/identity/userprofile"
        - displayName: View
          resourcePath: "/permission/admin/manage/identity/userprofile/view"
        - displayName: Create
          resourcePath: "/permission/admin/manage/identity/userprofile/create"
        - displayName: Delete
          resourcePath: "/permission/admin/manage/identity/userprofile/delete"
        - displayName: Update
          resourcePath: "/permission/admin/manage/identity/userprofile/update"
        - displayName: Event Publisher
          resourcePath: "/permission/admin/manage/event-publish"
        - displayName: Configure
          resourcePath: "/permission/admin/manage/modify"
        - displayName: Module
          resourcePath: "/permission/admin/manage/modify/module"
        - displayName: Webapps
          resourcePath: "/permission/admin/manage/modify/webapp"
        - displayName: User Profiles
          resourcePath: "/permission/admin/manage/modify/user-profile"
        - displayName: Services
          resourcePath: "/permission/admin/manage/modify/service"
        - displayName: Topic
          resourcePath: "/permission/admin/manage/topic"
        - displayName: Delete Topic
          resourcePath: "/permission/admin/manage/topic/deleteTopic"
        - displayName: Browse Topic
          resourcePath: "/permission/admin/manage/topic/browseTopic"
        - displayName: Purge Topic
          resourcePath: "/permission/admin/manage/topic/purgeTopic"
        - displayName: Add Topic/SubTopic
          resourcePath: "/permission/admin/manage/topic/addTopic"
        - displayName: HumanTask
          resourcePath: "/permission/admin/manage/humantask"
        - displayName: Manage HumanTask Packages
          resourcePath: "/permission/admin/manage/humantask/packages"
        - displayName: View Task List
          resourcePath: "/permission/admin/manage/humantask/viewtasks"
        - displayName: Add HumanTask
          resourcePath: "/permission/admin/manage/humantask/add"
        - displayName: Manage HumanTasks
          resourcePath: "/permission/admin/manage/humantask/task"
    Permission:
      type: object
      properties:
        displayName:
          type: string
          example: "Login"
          description: The display name of the permission
        resourcePath:
          type: string
          example: "/permission/admin/login"
          description: The resource path of the permission

    Error:
      type: object
      properties:
        code:
          type: string
          example: AAA-00000
        message:
          type: string
          example: Some Error Message
        description:
          type: string
          example: Some Error Description
        traceId:
          type: string
          example: e0fbcfeb-3617-43c4-8dd0-7b7d38e13047


