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

analytics_learners_retrieve

Request

Unified API endpoint for learner analytics.

This endpoint provides either:

  1. Cross-platform summary (when only username is provided)
  2. Platform-specific detailed data (when username + platform_key are provided)

Query params:

  • username (required): Username of the learner
  • platform_key (optional): Platform key for platform-specific data
  • page (optional): Page number (default: 1)
  • limit (optional): Records per page (default: 20, max: 100)

Returns:

  • If platform_key provided: Detailed platform metrics
  • If no platform_key: Cross-platform summary with pagination
Security
PlatformApiKeyAuthentication
Query
date_filterstringnon-empty
  • today - Today only
  • 7d - Last 7 days
  • 30d - Last 30 days
  • 90d - Last 90 days
  • all_time - All time
  • custom - Custom date range
Default "today"
Enum"today""7d""30d""90d""all_time""custom"
end_datestring(date)
granularitystringnon-empty
  • day - day
  • hour - hour
  • week - week
  • month - month
Default "hour"
Enum"day""hour""week""month"
limitinteger[ 1 .. 100 ]

Number of records per page (default: 20, max: 100)

Default 20
mentor_unique_idstring(uuid)
overtimeboolean

Include overtime metrics for the user in the platform (default: false)

Default false
pageinteger>= 1

Page number (default: 1)

Default 1
platform_keystringnon-empty

Optional platform key - if provided, returns platform-specific detailed data

start_datestring(date)
usernamestringnon-empty

Username of the learner to get analytics for. Defaults to self if not provided.

curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/analytics/learners/?date_filter=today&end_date=2019-08-24&granularity=day&limit=20&mentor_unique_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&overtime=false&page=1&platform_key=string&start_date=2019-08-24&username=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
userobject(UserInfo)required

Serializer for user information.

user.​user_idintegerrequired
user.​usernamestring or nullrequired
user.​emailstring or null(email)required
user.​namestringrequired
user.​is_activeboolean
Default true
user.​last_activestring(date-time)
user.​date_joinedstring(date-time)
summaryobject(LearnerSummary)required

Serializer for learner summary data across all platforms.

summary.​total_time_spent_secondsintegerrequired

Total time spent across all platforms

resultsArray of objects(LearnerAnalyticsResult)required
results[].​platform_idintegerrequired
results[].​platform_namestringrequired
results[].​platform_keystring or nullrequired
results[].​summaryobject(PlatformSummary)

Serializer for platform summary data (cross-platform view).

results[].​metricsobject(PlatformMetrics)

Serializer for detailed platform metrics (platform-specific view).

results[].​activityobject(ActivityInfo)

Serializer for activity information.

results[].​last_updatedstring(date-time)
results[].​user_idinteger
paginationobject(Pagination)required
pagination.​totalItemsintegerrequired

Total records

pagination.​currentPageintegerrequired

Current Page

pagination.​perPageintegerrequired

Size of data returned per page

pagination.​totalPagesintegerrequired

Amount of pages

overtimeArray of objects(OvertimeDataPoint)

Time spent over time data (when overtime=true)

generated_atstring(date-time)required
Response
application/json
{ "user": { "user_id": 0, "username": "string", "email": "user@example.com", "name": "string", "is_active": true, "last_active": "2019-08-24T14:15:22Z", "date_joined": "2019-08-24T14:15:22Z" }, "summary": { "total_time_spent_seconds": 0 }, "results": [ {} ], "pagination": { "totalItems": 0, "currentPage": 0, "perPage": 0, "totalPages": 0 }, "overtime": [ {} ], "generated_at": "2019-08-24T14:15:22Z" }

analytics_learners_list_retrieve

Request

Retrieve a paginated list of learners for a specific platform with their comprehensive metrics from the UserPlatformSummary materialized view. This endpoint is accessible only to platform administrators and supports search, sorting, and pagination.

Security
PlatformApiKeyAuthentication
Query
date_filterstringnon-empty
  • today - Today only
  • 7d - Last 7 days
  • 30d - Last 30 days
  • 90d - Last 90 days
  • all_time - All time
  • custom - Custom date range
Default "today"
Enum"today""7d""30d""90d""all_time""custom"
end_datestring(date)
granularitystringnon-empty
  • day - day
  • hour - hour
  • week - week
  • month - month
Default "hour"
Enum"day""hour""week""month"
limitinteger[ 1 .. 100 ]

Number of learners per page (default: 20, max: 100)

Default 20
mentor_unique_idstring(uuid)
pageinteger>= 1

Page number for pagination (default: 1)

Default 1
platform_keystringnon-emptyrequired

Platform key to filter learners by platform

searchstring

Search term to filter learners by username, email, or name

sort_bystringnon-empty

Field to sort learners by (default: last_activity)

  • username - Username
  • name - Name
  • last_activity - Last Activity
  • total_points - Total Points
  • total_time_spent_seconds - Time Spent
  • total_enrollments - Enrollments
  • total_skills_count - Skills Count
Default "last_activity"
Enum"username""name""last_activity""total_points""total_time_spent_seconds""total_enrollments""total_skills_count"
sort_orderstringnon-empty

Sort order (default: desc)

  • asc - Ascending
  • desc - Descending
Default "desc"
Enum"asc""desc"
start_datestring(date)
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/analytics/learners/list/?date_filter=today&end_date=2019-08-24&granularity=day&limit=20&mentor_unique_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&page=1&platform_key=string&search=string&sort_by=username&sort_order=asc&start_date=2019-08-24' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Paginated list of learners with their metrics

Bodyapplication/json
platformobjectrequired
platform.​platform_idintegerrequired

Platform ID

platform.​platform_namestringrequired

Platform name

platform.​platform_keystringrequired

Platform key

learnersArray of objects(LearnerListItem)required

List of learners

learners[].​user_idintegerrequired

User ID

learners[].​usernamestring or nullrequired

Username

learners[].​emailstring or null(email)required

Email address

learners[].​namestring or nullrequired

Display name

learners[].​is_activebooleanrequired

Whether user is active

learners[].​platform_idintegerrequired

Platform ID

learners[].​platform_namestring or nullrequired

Platform name

learners[].​platform_keystring or nullrequired

Platform key

learners[].​metricsobjectrequired
learners[].​metrics.​enrollmentsintegerrequired

Total enrollments

learners[].​metrics.​programsintegerrequired

Total programs

learners[].​metrics.​pathwaysintegerrequired

Total pathways

learners[].​metrics.​resourcesintegerrequired

Total resources

learners[].​metrics.​reported_skillsintegerrequired

Reported skills count

learners[].​metrics.​desired_skillsintegerrequired

Desired skills count

learners[].​metrics.​assigned_skillsintegerrequired

Assigned skills count

learners[].​metrics.​total_skillsintegerrequired

Total skills count

learners[].​metrics.​credentialsintegerrequired

Credentials earned

learners[].​metrics.​pointsnumber(double)required

Total points

learners[].​metrics.​total_time_spent_secondsintegerrequired

Total time spent in seconds

learners[].​metrics.​top_contentobjectrequired
learners[].​metrics.​top_content.​course_identifierstringrequired

Course identifier

learners[].​metrics.​top_content.​course_namestringrequired

Name of the course.

learners[].​metrics.​top_content.​time_spent_secondsintegerrequired

Time spent on this course in seconds

learners[].​first_activitystring or null(date-time)required

First activity date

learners[].​last_activitystring or null(date-time)required

Last activity date

paginationobjectrequired
pagination.​pageintegerrequired

Current page number

pagination.​limitintegerrequired

Records per page

pagination.​total_pagesintegerrequired

Total number of pages

pagination.​total_recordsintegerrequired

Total number of records

pagination.​has_nextbooleanrequired

Whether there is a next page

pagination.​has_previousbooleanrequired

Whether there is a previous page

pagination.​next_pageinteger or nullrequired

Next page number

pagination.​previous_pageinteger or nullrequired

Previous page number

generated_atstring(date-time)required

Response generation timestamp

Response
application/json

Example learner list payload

{ "platform": { "platform_id": 1, "platform_name": "Test Platform", "platform_key": "test-platform" }, "learners": [ {} ], "pagination": { "page": 1, "limit": 20, "total_pages": 1, "total_records": 1, "has_next": false, "has_previous": false, "next_page": null, "previous_page": null }, "generated_at": "2024-02-01T12:30:00Z" }

analytics_messages_retrieve

Request

Conversation list endpoint for analytics.

Query params (all optional unless specified by permissions):

  • platform_key: filter by platform
  • mentor_unique_id: filter by mentor
  • page: page number (default 1)
  • limit: page size (default 20, max 100)
  • search: search in user name and first user message
  • min_messages, max_messages: message_count range
  • sentiment: positive|negative|neutral
  • topic: topic name contains
  • start_date, end_date: date filter on conversation date

Returns: summary totals, results list (paginated), and pagination metadata.

Security
PlatformApiKeyAuthentication
Query
end_datestring(date)
limitinteger[ 1 .. 100 ]
Default 20
max_messagesinteger>= 0
mentor_unique_idstring(uuid)
min_messagesinteger>= 0
pageinteger>= 1
Default 1
platform_keystringnon-empty
searchstring
sentimentstringnon-empty
  • positive - positive
  • negative - negative
  • neutral - neutral
Enum"positive""negative""neutral"
start_datestring(date)
topicstringnon-empty
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/analytics/messages/?end_date=2019-08-24&limit=20&max_messages=0&mentor_unique_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&min_messages=0&page=1&platform_key=string&search=string&sentiment=positive&start_date=2019-08-24&topic=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
summaryobjectrequired
summary.​property name*anyadditional property
resultsArray of objects(ConversationListItem)required
results[].​platform_namestringrequired
results[].​platform_keystringrequired
results[].​mentorstringrequired
results[].​mentor_unique_idstringrequired
results[].​modelstringrequired
results[].​coststringread-onlyrequired
results[].​usernamestring or null<= 255 characters
results[].​namestring<= 255 charactersrequired
results[].​first_user_messagestring or null
results[].​topicsanyrequired
results[].​message_countinteger[ -2147483648 .. 2147483647 ]required
results[].​user_queriesinteger or null[ -2147483648 .. 2147483647 ]
results[].​assistant_responsesinteger or null[ -2147483648 .. 2147483647 ]
results[].​average_sentimentnumber or null(double)
results[].​sentimentstring or null<= 16 characters
results[].​created_atstring(date-time)required
results[].​platformintegerrequired
results[].​sessionstring(uuid)required
results[].​userinteger or null[ 0 .. 2147483647 ]

edX user ID

paginationobjectrequired
pagination.​property name*anyadditional property
Response
application/json
{ "summary": { "property1": null, "property2": null }, "results": [ {} ], "pagination": { "property1": null, "property2": null } }

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

credentials

Operations

custom-domains

Operations

features

Operations

media

Operations

notifications

Operations

scim

Operations

commerce

Operations

recommendations

Operations

reports

Operations

skills

Operations