DreamFactory Role API
Role-based access control management
Role-based access control management
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/dreamfactory-role-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: DreamFactory System Admin Role API
description: The DreamFactory System API provides administrative management capabilities for DreamFactory instances. It allows administrators to manage services, apps, roles, users, CORS configurations, email templates, environment settings, lookups, events, scripts, and more. All system resources are accessible under the /api/v2/system/ base path. Authentication requires either an X-DreamFactory-Session-Token header (for system admins) or an X-DreamFactory-API-Key header (for users with appropriate permissions).
version: 2.0.0
contact:
name: DreamFactory Support
url: https://www.dreamfactory.com/support
license:
name: Apache 2.0
url: https://www.apache.org/licenses/LICENSE-2.0
termsOfService: https://www.dreamfactory.com/terms-of-use
servers:
- url: https://{instance}/api/v2
description: DreamFactory instance
variables:
instance:
default: example.dreamfactory.com
description: Your DreamFactory instance hostname
security:
- sessionToken: []
- apiKey: []
tags:
- name: Role
description: Role-based access control management
paths:
/system/role:
get:
operationId: listRoles
summary: DreamFactory List roles
description: Retrieve a list of roles.
tags:
- Role
parameters:
- $ref: '#/components/parameters/fields'
- $ref: '#/components/parameters/filter'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/offset'
- $ref: '#/components/parameters/order'
- $ref: '#/components/parameters/related'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/RoleListResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/InternalError'
post:
operationId: createRole
summary: DreamFactory Create role
description: Create a new role for access control.
tags:
- Role
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RoleRequest'
responses:
'201':
description: Role created
content:
application/json:
schema:
$ref: '#/components/schemas/RoleResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/InternalError'
/system/role/{id}:
get:
operationId: getRole
summary: DreamFactory Get role
description: Retrieve a specific role by ID.
tags:
- Role
parameters:
- $ref: '#/components/parameters/id'
- $ref: '#/components/parameters/fields'
- $ref: '#/components/parameters/related'
responses:
'200':
description: Success
content:
application/json:
schema:
$ref: '#/components/schemas/RoleResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalError'
patch:
operationId: updateRole
summary: DreamFactory Update role
description: Update a specific role by ID.
tags:
- Role
parameters:
- $ref: '#/components/parameters/id'
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/RoleRequest'
responses:
'200':
description: Role updated
content:
application/json:
schema:
$ref: '#/components/schemas/RoleResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalError'
delete:
operationId: deleteRole
summary: DreamFactory Delete role
description: Delete a specific role by ID.
tags:
- Role
parameters:
- $ref: '#/components/parameters/id'
responses:
'200':
description: Role deleted
content:
application/json:
schema:
$ref: '#/components/schemas/SuccessResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'404':
$ref: '#/components/responses/NotFound'
'500':
$ref: '#/components/responses/InternalError'
components:
responses:
InternalError:
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
BadRequest:
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
NotFound:
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
Unauthorized:
description: Unauthorized - invalid or missing session token or API key
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
schemas:
ErrorResponse:
type: object
properties:
error:
type: object
properties:
code:
type: integer
description: Error code.
message:
type: string
description: Error message.
context:
type: object
description: Additional error context.
SuccessResponse:
type: object
properties:
success:
type: boolean
RoleListResponse:
type: object
properties:
resource:
type: array
items:
$ref: '#/components/schemas/RoleResponse'
RoleRequest:
type: object
properties:
name:
type: string
description: Name of the role.
description:
type: string
description: Description of the role.
is_active:
type: boolean
description: Whether the role is active.
role_service_access_by_role_id:
type: array
description: Service access permissions for the role.
items:
type: object
properties:
service_id:
type: integer
component:
type: string
verb_mask:
type: integer
requestor_mask:
type: integer
filters:
type: array
items:
type: object
filter_op:
type: string
required:
- name
RoleResponse:
type: object
properties:
id:
type: integer
name:
type: string
description:
type: string
is_active:
type: boolean
created_date:
type: string
format: date-time
last_modified_date:
type: string
format: date-time
parameters:
related:
name: related
in: query
description: Comma-delimited list of related resources to include.
schema:
type: string
limit:
name: limit
in: query
description: Maximum number of records to return.
schema:
type: integer
default: 0
offset:
name: offset
in: query
description: Number of records to skip for pagination.
schema:
type: integer
default: 0
filter:
name: filter
in: query
description: SQL-like filter to limit results.
schema:
type: string
order:
name: order
in: query
description: SQL-like order containing field and direction.
schema:
type: string
fields:
name: fields
in: query
description: Comma-delimited list of fields to return.
schema:
type: string
id:
name: id
in: path
required: true
description: Resource identifier.
schema:
type: integer
securitySchemes:
sessionToken:
type: apiKey
name: X-DreamFactory-Session-Token
in: header
description: Session token obtained after admin login.
apiKey:
type: apiKey
name: X-DreamFactory-API-Key
in: header
description: API key associated with a registered application.
externalDocs:
description: DreamFactory Documentation
url: https://guide.dreamfactory.com/docs/