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

Get Content Analytics

Request

Retrieve aggregated analytics for catalog content (courses, programs, pathways, skills).

Returns both summary statistics and paginated list of content items with individual analytics. When a platform_key is provided, results are filtered to show only content consumed by learners associated with that platform.

Metrics supported:

  • course or courses: Course analytics with time spent
  • program or programs: Program analytics
  • pathway or pathways: Pathway analytics
  • skill or skills: Skill analytics

Platform Filtering:

  • Without platform_key: Shows global analytics across all platforms
  • With platform_key: Shows analytics filtered by platform learners only

Time Spent Analytics:

  • Platform-level: Total time spent across all content and average per learner
  • Course-level: Total time spent per course and average per enrolled learner
  • Time values are provided in seconds for precision
  • Overtime: Time series data showing platform time spent over last 7 days (courses only, and include_overtime=true)

External Content:

  • Content not owned by the requesting platform but used by its learners is marked as "external"
  • External content has limited metadata exposure for privacy
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"
include_overtimeboolean

Include time spent over time data

Default false
limitinteger[ 1 .. 100 ]

Number of items per page (max 100)

Default 20
mentor_unique_idstring(uuid)
metricstringnon-emptyrequired

The type of content to retrieve (course, program, pathway, skill)

  • course - course
  • courses - courses
  • program - program
  • programs - programs
  • pathway - pathway
  • pathways - pathways
  • skill - skill
  • skills - skills
Enum"course""courses""program""programs""pathway""pathways""skill""skills"
pageinteger>= 1

Page number for pagination

Default 1
platform_keystring or null

Optional platform key to filter results by platform

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

Responses

Bodyapplication/json
metricstringrequired

The metric type (course, program, pathway, skill)

summaryobjectrequired
summary.​totalsobject(ContentTotals)required

Serializer for content summary totals.

summary.​totals.​total_learnersintegerrequired

Total number of learners

summary.​totals.​total_enrollmentsintegerrequired

Total number of enrollments

summary.​totals.​total_time_spentinteger

Total time spent in seconds (courses only)

summary.​totals.​coursesinteger

Total number of courses

summary.​totals.​active_coursesinteger

Number of active courses

summary.​totals.​platform_coursesinteger

Number of platform-owned courses

summary.​totals.​external_coursesinteger

Number of external courses

summary.​totals.​programsinteger

Total number of programs

summary.​totals.​active_programsinteger

Number of active programs

summary.​totals.​platform_programsinteger

Number of platform-owned programs

summary.​totals.​external_programsinteger

Number of external programs

summary.​totals.​pathwaysinteger

Total number of pathways

summary.​totals.​active_pathwaysinteger

Number of active pathways

summary.​totals.​platform_pathwaysinteger

Number of platform-owned pathways

summary.​totals.​external_pathwaysinteger

Number of external pathways

summary.​totals.​skillsinteger

Total number of skills

summary.​totals.​active_skillsinteger

Number of active skills

summary.​totals.​platform_skillsinteger

Number of platform-owned skills

summary.​totals.​external_skillsinteger

Number of external skills

summary.​totals.​associated_coursesinteger

Number of courses associated with skills

summary.​totals.​learners_with_skillsinteger

Number of learners with skills

summary.​averagesobject(ContentAverages)required

Serializer for content summary averages.

summary.​averages.​completion_ratenumber(double)

Average completion rate percentage

summary.​averages.​average_ratingnumber(double)

Average rating

summary.​averages.​enrollments_per_coursenumber(double)

Average enrollments per course

summary.​averages.​enrollments_per_programnumber(double)

Average enrollments per program

summary.​averages.​enrollments_per_pathwaynumber(double)

Average enrollments per pathway

summary.​averages.​courses_per_skillnumber(double)

Average courses per skill

summary.​averages.​time_per_learnernumber(double)

Average time spent per learner in seconds (courses only)

summary.​overtimeArray of objects(OvertimeDataPoint)

Time spent over time data (courses only, when include_overtime=true)

paginationobjectrequired
pagination.​countintegerrequired

Total number of items

pagination.​nextstring or null

URL for next page

pagination.​previousstring or null

URL for previous page

pagination.​current_pageintegerrequired

Current page number

pagination.​total_pagesintegerrequired

Total number of pages

resultsArray of objects(ContentItem)required

List of content items

results[].​idstringrequired

Content identifier

results[].​namestringrequired

Content name

results[].​slugstringrequired

Content slug

results[].​platformstring or nullrequired

Platform key

results[].​externalbooleanrequired

Whether content is external to the platform

results[].​analyticsobject(ContentAnalytics)required

Serializer for individual content item analytics.

results[].​analytics.​enrollmentsintegerrequired

Total enrollments for this item

results[].​analytics.​active_enrollmentsintegerrequired

Active enrollments for this item

results[].​analytics.​completion_ratenumber(double)required

Completion rate percentage

results[].​analytics.​avg_ratingnumber or null(double)

Average rating

results[].​analytics.​rating_countinteger

Number of ratings

results[].​analytics.​associated_coursesinteger

Associated courses (for skills)

results[].​analytics.​learners_countinteger

Number of learners (for skills)

results[].​analytics.​total_time_spentinteger

Total time spent on this content in seconds (courses only)

results[].​analytics.​avg_time_per_learnernumber(double)

Average time spent per learner in seconds (courses only)

results[].​instructorstring or null

Instructor name

results[].​categorystring or null

Content category

results[].​durationstring or null

Content duration

results[].​enabledboolean

Whether content is enabled

results[].​createdstring or null

Creation date

results[].​updatedstring or null

Last update date

results[].​metadataany
Response
application/json
{ "metric": "string", "summary": { "totals": {}, "averages": {}, "overtime": [] }, "pagination": { "count": 0, "next": "string", "previous": "string", "current_page": 0, "total_pages": 0 }, "results": [ {} ] }

Get Content Details

Request

Retrieve detailed analytics for a specific content item including summary statistics, learner-level data, and optional time series information.

Security
PlatformApiKeyAuthentication
Path
content_idstringrequired
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)
limitinteger[ 1 .. 30 ]

Number of learner records per page

Default 10
mentor_unique_idstring(uuid)
metricstringnon-emptyrequired

Content type to fetch (course, program, pathway, skill)

  • course - course
  • courses - courses
  • program - program
  • programs - programs
  • pathway - pathway
  • pathways - pathways
  • skill - skill
  • skills - skills
Enum"course""courses""program""programs""pathway""pathways""skill""skills"
pageinteger>= 1
Default 1
platform_keystringnon-empty
searchstring
start_datestring(date)
time_metricstring or null

Optional time series metric (enrollments, completions, ratings, time_spent)

curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/analytics/content/details/{content_id}/?date_filter=today&end_date=2019-08-24&limit=10&mentor_unique_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&metric=course&page=1&platform_key=string&search=string&start_date=2019-08-24&time_metric=string' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
content_infoobject(ContentDetailsContentInfo)required

Serializer for the content information block.

content_info.​idstringrequired

Identifier for the content item

content_info.​namestring or null
content_info.​typestringrequired

Content type (course, program, pathway, skill)

content_info.​slugstring or null
content_info.​platformstring or null
content_info.​externalbooleanrequired

Whether the content is external to the platform

content_info.​metadataobject

Metadata associated with the content item

summaryobject(ContentDetailsSummary)required

Serializer for summary data in the content details endpoint.

summary.​totalsobjectrequired

Total counts related to the content item

summary.​totals.​property name*number(double)additional property
summary.​averagesobjectrequired

Average values related to the content item

summary.​averages.​property name*number or null(double)additional property
summary.​time_seriesobject
paginationobject(ContentDetailsPagination)required

Serializer for pagination information in content details response.

pagination.​countintegerrequired

Total learner records

pagination.​nextstring or null

Relative URL for the next page

pagination.​previousstring or null

Relative URL for the previous page

pagination.​current_pageintegerrequired

Current page number

pagination.​total_pagesintegerrequired

Total number of pages

learnersArray of objects(ContentDetailsLearner)required
learners[].​user_idintegerrequired

Learner identifier

learners[].​usernamestring or nullrequired

Learner username

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

Learner email

learners[].​namestring or nullrequired

Learner display name

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

Date the learner enrolled in the content

learners[].​completion_statusstringrequired

Completion status for the learner

learners[].​completion_percentagenumber or null(double)required

Learner completion percentage

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

Last activity timestamp for the learner

learners[].​ratingnumber or null(double)required

Learner rating for the content, if available

learners[].​reviewstring or nullrequired

Learner review content, if available

learners[].​detailsobject

Additional learner-specific metadata

Response
application/json
{ "content_info": { "id": "string", "name": "string", "type": "string", "slug": "string", "platform": "string", "external": true, "metadata": {} }, "summary": { "totals": {}, "averages": {}, "time_series": {} }, "pagination": { "count": 0, "next": "string", "previous": "string", "current_page": 0, "total_pages": 0 }, "learners": [ {} ] }

analytics_conversations_retrieve

Request

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"
mentor_unique_idstring(uuid)
metricstringnon-empty
  • conversations - Conversations over time
  • headline - Headline metrics for conversations (avg messages per conversation, avg rating)
Default "conversations"
Enum"conversations""headline"
platform_keystringnon-empty
start_datestring(date)
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/analytics/conversations/?date_filter=today&end_date=2019-08-24&granularity=day&mentor_unique_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&metric=conversations&platform_key=string&start_date=2019-08-24' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
metricstringrequired
pointsArray of objects(ConversationChartPoint)required
points[].​datestring(date-time)required
points[].​valueintegerrequired
Response
application/json
{ "metric": "string", "points": [ {} ] }

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