Skip to content

ibl-data-manager (3.59.0-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_analytics_perlearner_orgs_users_videos_per_course_retrieve

Request

Summary Videos watched data for a learner per enrollment

Query Params

  1. user_id e.g developer@ibleducation.com or dev123 (username|email)
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
user_idstringrequired
Query
department_idinteger

When department_mode=1 is passed, it allows to filter data for only user content groups for the specified department

end_datestringnon-empty

end date. ISO 8601

formatstringnon-empty

Format

  • json - json
Default "json"
Value"json"
include_main_platformboolean

Include main platform data

Default true
start_datestringnon-empty

start date. ISO 8601

curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/ai-analytics/perlearner/orgs/{org}/users/{user_id}/videos/per-course?department_id=0&end_date=string&format=json&include_main_platform=true&start_date=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
dataArray of objects(PerlearnerEngagementVideosData)required
data[].​course_idstringrequired

Edx Course ID

data[].​namestringrequired

Course Name

data[].​total_videosintegerrequired

Total course videos

data[].​watchedintegerrequired

Total videos watched by student

data[].​total_time_watchintegerrequired

Total time user watched video

data[].​average_class_watchnumber(double)required

Average videos watched by students in course

data[].​class_time_averagenumber(double)required

Average time spent by students on this course

Response
application/json
{ "data": [ {} ] }

ai_analytics_user_groups_orgs_retrieve

Request

Get a list of user groups with metrics and filtering options.

This endpoint provides a paginated list of user groups with aggregated metrics about learner performance, course completions, and skill acquisition.

This endpoint uses DM token authentication and respects department-based access controls.

Query Parameters: page (int, optional): Page number for pagination length (int, optional): Number of items per page program (str, optional): Filter by program pathway (str, optional): Filter by pathway groups (list, optional): Filter by group names location (str, optional): Filter by location is_enrolled (bool, optional): Filter for groups with enrolled users start_date (date, optional): Filter by learner join date (start range) end_date (date, optional): Filter by learner join date (end range)

Returns: A paginated list of user groups with comprehensive metrics.

Access Control:

  • Platform admins can see all groups
  • Department admins can only see groups in their departments
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
Query
department_idinteger

When department_mode=1 is passed, it allows to filter data for only user content groups for the specified department

end_datestring(date)

Filter by learners date_joined. Start date. ISO 8601

formatstringnon-empty

Format

  • json - json
Default "json"
Value"json"
groupsArray of strings

Groups search string. Single string or list of strings. e.g 'sample_group' or ['group', 'another group']

include_main_platformboolean

Include main platform data

Default true
is_enrolledboolean or null

Filter for users who have at least an enrollment

lengthinteger

Size of data to return

locationstringnon-empty

Location search string

pageinteger

Page offset

pathwaystringnon-empty

Pathway string

programstringnon-empty

Program search string

start_datestring(date)

Filter by learners date_joined. Start date. ISO 8601

curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/ai-analytics/user-groups/orgs/{org}/?department_id=0&end_date=2019-08-24&format=json&groups=string&include_main_platform=true&is_enrolled=true&length=0&location=string&page=0&pathway=string&program=string&start_date=2019-08-24' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
dataArray of objects(GroupListData)
paginationobject(Pagination)required
pagination.​totalItemsintegerrequired

Total records

pagination.​currentPageintegerrequired

Current Page

pagination.​perPageintegerrequired

Size of data returned per page

pagination.​totalPagesintegerrequired

Amount of pages

Response
application/json
{ "data": [ {} ], "pagination": { "totalItems": 0, "currentPage": 0, "perPage": 0, "totalPages": 0 } }

analytics_orgs_time_update_create

Request

Update time spent tracking data from client-side events.

This endpoint receives time spent data collected on the client side and stores it in the analytics database. It requires a valid authentication token.

Methods: POST: Submit time spent tracking data

Returns: A response indicating success or failure: { "success": true|false, "message": "Error message if failed" (optional) }

Error Responses: 400 Bad Request: If the request data is invalid or the API is disabled

Notes: This API must be enabled via the ENABLE_TIME_SPENT_UPDATE_API setting.

Security
PlatformApiKeyAuthentication
Path
orgstringrequired
Bodyrequired
timestampstring(date-time)required

Time when the event occurred, ensure it is UTC (ISO 8601 format)

course_idstring

Course ID to track time spent

mentor_uuidstring

Mentor UUID to track time spent

block_idstring

Block ID to track time spent

countintegerrequired

Time spent in seconds

urlstringrequired

Source URL

metadataany

Additional metadata

Default {}
session_uuidstring

Session UUID to track time spent

curl -i -X POST \
  'https://docs.ibl.ai/_mock/apis/ibl/api/analytics/orgs/{org}/time/update/' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "timestamp": "2019-08-24T14:15:22Z",
    "course_id": "string",
    "mentor_uuid": "string",
    "block_id": "string",
    "count": 0,
    "url": "string",
    "metadata": {},
    "session_uuid": "string"
  }'

Responses

Bodyapplication/json
successboolean
Default true
messageany
Default "Time spent updated successfully"
Response
application/json
{ "success": true, "message": "Time spent updated successfully" }

ai-bot

Operations

ai-finetuning

Operations

ai-index

Operations

ai-marketing

Operations

ai-media

Operations

ai-mentor

Operations

ai-prompt

Operations

career

Operations

catalog

Operations

core

Operations

credentials

Operations

features

Operations

media

Operations

notifications

Operations

scim

Operations

commerce

Operations

recommendations

Operations

reports

Operations

skills

Operations