Skip to content

ibl-data-manager (4.84.1-ai-plus)

API for iblai

Download OpenAPI description
Languages
Servers
Mock server
https://docs.ibl.ai/_mock/apis/ibl/
https://base.manager.iblai.app/

ai-account

Operations

ai-analytics

Operations

ai-bot

Operations

ai-finetuning

Operations

ai-index

Operations

ai-marketing

Operations

ai-media

Operations

ai-mentor

Operations

ai-prompt

Operations

analytics

Operations

career

Operations

catalog

Operations

core

Operations

Check user permissions

Request

Check user permissions for specified resources

Security
PlatformApiKeyAuthentication
Bodyrequired
platform_keystringrequired

Platform key to check permissions for

resourcesArray of stringsrequired

List of resource paths to check permissions for. Must start and end with '/' (e.g., ['/mentors/', '/mentors/123/', '/students/'])

curl -i -X POST \
  https://docs.ibl.ai/_mock/apis/ibl/api/core/rbac/permissions/check/ \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "platform_key": "string",
    "resources": [
      "string"
    ]
  }'

Responses

No response body

List RBAC policies

Request

Retrieve a list of RBAC policies. Can be filtered by platform_key, role_id, name, username, email, or group. Use include_users and include_groups to control response payload.

Security
PlatformApiKeyAuthentication
Query
emailstringnon-empty

Filter policies by email (exact match, case-insensitive) - includes users in policy or in policy's groups

groupstringnon-empty

Filter policies by group name (exact match, case-insensitive)

include_groupsboolean

Include group information in response (default: true)

Default true
include_usersboolean

Include user information in response (default: true)

Default true
namestringnon-empty

Filter policies by name (case-insensitive partial match)

pageinteger

A page number within the paginated result set.

page_sizeinteger

Number of results to return per page.

platform_keystringnon-empty

Filter policies by platform key

role_idinteger

Filter policies by role ID

usernamestringnon-empty

Filter policies by username (exact match, case-insensitive) - includes users in policy or in policy's groups

curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/core/rbac/policies/?email=string&group=string&include_groups=true&include_users=true&name=string&page=0&page_size=0&platform_key=string&role_id=0&username=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
countintegerrequired
Example: 123
nextstring or null(uri)
Example: "http://api.example.org/accounts/?page=4"
previousstring or null(uri)
Example: "http://api.example.org/accounts/?page=2"
resultsArray of objects(RbacPolicy)required
results[].​idintegerread-onlyrequired
results[].​namestring<= 255 characters

Policy name. If not supplied, defaults to a UUID4

results[].​roleobjectread-onlyrequired
results[].​role.​idintegerread-onlyrequired
results[].​role.​namestring<= 255 charactersrequired
results[].​role.​actionsArray of strings

List of actions/permissions this role can perform (e.g., ['Ibl.Mentor/Settings/read', 'Ibl.Mentor/Settings/write'])

results[].​role.​data_actionsArray of strings

List of data actions/permissions this role can perform for field-level access (e.g., ['Ibl.Mentor/Settings/name/read', 'Ibl.Mentor/Settings/email/write'])

results[].​platformobjectread-onlyrequired
results[].​platform.​idintegerread-onlyrequired
results[].​platform.​keystring<= 200 charactersrequired

The platform key

results[].​platform.​namestring or null<= 200 characters

The name of the platform

results[].​resourcesArray of stringsrequired

List of resource paths this policy grants access to (e.g., ['/platforms/1/mentors', '/platforms/1/mentors/settings'])

results[].​usersArray of objects(RbacUser)read-onlyrequired
results[].​users[].​idintegerread-onlyrequired

edX user ID

results[].​users[].​usernamestring or null<= 100 characters

edX username

results[].​users[].​emailstring or null(email)<= 254 characters

edX email

results[].​groupsArray of objects(RbacPolicyGroup)read-onlyrequired
results[].​groups[].​idintegerread-onlyrequired
results[].​groups[].​namestring<= 255 characters

Optional name of the group

results[].​groups[].​unique_idstring<= 255 charactersrequired

The unique identifier for the group

results[].​groups[].​descriptionstring

Optional group description

results[].​is_internalbooleanread-onlyrequired

When True, this policy is internal to the system and cannot be viewed or modified by tenants via API endpoints.

Response
application/json
{ "count": 123, "next": "http://api.example.org/accounts/?page=4", "previous": "http://api.example.org/accounts/?page=2", "results": [ {} ] }

Create RBAC policy

Request

Create a new RBAC policy that defines resource access for a role

Security
PlatformApiKeyAuthentication
Bodyrequired
namestring<= 255 characters

Policy name. If not supplied, defaults to a UUID4

resourcesArray of stringsrequired

List of resource paths this policy grants access to (e.g., ['/platforms/1/mentors', '/platforms/1/mentors/settings'])

role_idintegerwrite-onlyrequired

ID of the role this policy applies to

platform_keystringwrite-onlyrequired

Platform key where this policy applies

users_to_addArray of integerswrite-only

List of user IDs to add to this Policy

users_to_removeArray of integerswrite-only

List of user IDs to remove from this Policy

groups_to_addArray of integerswrite-only

List of group IDs to add to this Policy

groups_to_removeArray of integerswrite-only

List of group IDs to remove from this Policy

curl -i -X POST \
  https://docs.ibl.ai/_mock/apis/ibl/api/core/rbac/policies/ \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "string",
    "resources": [
      "string"
    ],
    "role_id": 0,
    "platform_key": "string",
    "users_to_add": [
      0
    ],
    "users_to_remove": [
      0
    ],
    "groups_to_add": [
      0
    ],
    "groups_to_remove": [
      0
    ]
  }'

Responses

Bodyapplication/json
idintegerread-onlyrequired
namestring<= 255 characters

Policy name. If not supplied, defaults to a UUID4

roleobjectread-onlyrequired
role.​idintegerread-onlyrequired
role.​namestring<= 255 charactersrequired
role.​actionsArray of strings

List of actions/permissions this role can perform (e.g., ['Ibl.Mentor/Settings/read', 'Ibl.Mentor/Settings/write'])

role.​data_actionsArray of strings

List of data actions/permissions this role can perform for field-level access (e.g., ['Ibl.Mentor/Settings/name/read', 'Ibl.Mentor/Settings/email/write'])

platformobjectread-onlyrequired
platform.​idintegerread-onlyrequired
platform.​keystring<= 200 charactersrequired

The platform key

platform.​namestring or null<= 200 characters

The name of the platform

resourcesArray of stringsrequired

List of resource paths this policy grants access to (e.g., ['/platforms/1/mentors', '/platforms/1/mentors/settings'])

usersArray of objects(RbacUser)read-onlyrequired
users[].​idintegerread-onlyrequired

edX user ID

users[].​usernamestring or null<= 100 characters

edX username

users[].​emailstring or null(email)<= 254 characters

edX email

groupsArray of objects(RbacPolicyGroup)read-onlyrequired
groups[].​idintegerread-onlyrequired
groups[].​namestring<= 255 characters

Optional name of the group

groups[].​unique_idstring<= 255 charactersrequired

The unique identifier for the group

groups[].​descriptionstring

Optional group description

is_internalbooleanread-onlyrequired

When True, this policy is internal to the system and cannot be viewed or modified by tenants via API endpoints.

Response
application/json
{ "id": 0, "name": "string", "role": { "id": 0, "name": "string", "actions": [], "data_actions": [] }, "platform": { "id": 0, "key": "string", "name": "string" }, "resources": [ "string" ], "users": [ {} ], "groups": [ {} ], "is_internal": true }

credentials

Operations

custom-domains

Operations

features

Operations

media

Operations

notifications

Operations

scim

Operations

commerce

Operations

recommendations

Operations

reports

Operations

skills

Operations