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/

Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations

Request

List all available skills on the platform.

This endpoint returns information about all skills that can be acquired on the platform.

Path Parameters: org (str): The platform/organization identifier

Returns: A list of all skills with basic information about each skill.

Access Control: - Platform admins can access this information - All authenticated users can access this information

Security
PlatformApiKeyAuthentication
Path
orgstringrequired
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/jsonArray [
idintegerread-onlyrequired
namestring or null<= 255 characters

Display name

course_countintegerread-onlyrequired

Number of courses with skill

user_countintegerread-onlyrequired

Number of users with skill

total_pointsintegerread-onlyrequired

Total points for skill

average_pointsnumber(double)read-onlyrequired

Average points for skill

]
Response
application/json
[ { "id": 0, "name": "string", "course_count": 0, "user_count": 0, "total_points": 0, "average_points": 0.1 } ]

skills_orgs_skills_percentile_retrieve

Request

Retrieve percentile distribution for a specific skill.

This endpoint returns the percentile distribution of points earned by users for a specific skill.

Path Parameters: skill_id (int): The ID of the skill to retrieve percentile information for org (str, optional): The platform/organization identifier to filter results

Returns: A list of percentile breakpoints for the specified skill.

Error Responses: 404 Not Found: If the specified skill doesn't exist

Access Control:

  • Platform admins can access this information
  • All authenticated users can access this information
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
skill_idintegerrequired
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/{skill_id}/percentile/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
usernamestringrequired
pointsnumber(double)required
percentilenumber(double)required

Percentile of points for user. If an org was provided, this is the percentile of the user relative to users within the org.

Response
application/json
{ "username": "string", "points": 0.1, "percentile": 0.1 }

Request

Retrieve detailed information about a specific skill.

This endpoint returns comprehensive information about a specific skill, including its description, categories, and related courses.

Path Parameters: org (str): The platform/organization identifier skill_name (str): The name of the skill to retrieve details for

Returns: Detailed information about the specified skill.

Error Responses: 404 Not Found: If the specified skill doesn't exist

Access Control:

  • Platform admins can access this information
  • All authenticated users can access this information
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
skill_namestringrequired
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/{skill_name}/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
namestring or null<= 255 characters

Display name

coursesArray of objects(CourseSkill)required
courses[].​course_idstring<= 255 charactersrequired

The edX course ID string for the course.

courses[].​skillsArray of objects(Skill)required
courses[].​skills[].​idintegerread-onlyrequired
courses[].​skills[].​namestring or nullread-onlyrequired

Display name

courses[].​skills[].​platform_keystring
courses[].​skills[].​slugstring or null^[-a-zA-Z0-9_]+$read-onlyrequired

An additional unique slug field. (Optional)

courses[].​skills[].​dataany or nullread-onlyrequired

Metadata

related_skillsintegerread-onlyrequired
Response
application/json
{ "name": "string", "courses": [ {} ], "related_skills": 0 }

skills_orgs_skills_percentile_list

Request

Mixin that includes the StudentTokenAuthentication and IsAdminUserOrStudent

Security
PlatformApiKeyAuthentication
Path
orgstringrequired
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/percentile/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/jsonArray [
usernamestringrequired
pointsnumber(double)required
percentilenumber(double)required

Percentile of points for user. If an org was provided, this is the percentile of the user relative to users within the org.

]
Response
application/json
[ { "username": "string", "points": 0.1, "percentile": 0.1 } ]

skills_orgs_skills_thresholds_retrieve

Request

Manage skill thresholds for a platform.

This endpoint allows platform administrators to view, create, update, and delete skill thresholds. Skill thresholds define the minimum points required to consider a skill as acquired or mastered.

Path Parameters: org (str): The platform/organization identifier

Methods: GET: Retrieve all skill thresholds for the platform POST: Create a new skill threshold PATCH: Update an existing skill threshold DELETE: Delete all skill thresholds for the platform

Request Body (POST): name (str, required): The name of the threshold level (e.g., "Beginner", "Intermediate") threshold (int, required): The minimum points required to reach this threshold

Request Body (PATCH): name (str, required): The name of the existing threshold to update threshold (int, required): The new minimum points value for this threshold

Returns: GET: A list of all skill thresholds for the platform POST/PATCH: The created or updated skill threshold with format: { "name": "threshold_name", "threshold": threshold_value } DELETE: No content (204)

Error Responses: 400 Bad Request: If the request data is invalid or missing required fields 404 Not Found: If the specified platform doesn't exist or the threshold to update cannot be found

Access Control:

  • Only platform administrators can access this endpoint
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/thresholds/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
namestring<= 255 charactersrequired

The name of the threshold e.g Beginner.

thresholdinteger[ -2147483648 .. 2147483647 ]required

The threshold for the skill.

platformstringrequired

The platform key

Response
application/json
{ "name": "string", "threshold": -2147483648, "platform": "string" }

skills_orgs_skills_thresholds_create

Request

Manage skill thresholds for a platform.

This endpoint allows platform administrators to view, create, update, and delete skill thresholds. Skill thresholds define the minimum points required to consider a skill as acquired or mastered.

Path Parameters: org (str): The platform/organization identifier

Methods: GET: Retrieve all skill thresholds for the platform POST: Create a new skill threshold PATCH: Update an existing skill threshold DELETE: Delete all skill thresholds for the platform

Request Body (POST): name (str, required): The name of the threshold level (e.g., "Beginner", "Intermediate") threshold (int, required): The minimum points required to reach this threshold

Request Body (PATCH): name (str, required): The name of the existing threshold to update threshold (int, required): The new minimum points value for this threshold

Returns: GET: A list of all skill thresholds for the platform POST/PATCH: The created or updated skill threshold with format: { "name": "threshold_name", "threshold": threshold_value } DELETE: No content (204)

Error Responses: 400 Bad Request: If the request data is invalid or missing required fields 404 Not Found: If the specified platform doesn't exist or the threshold to update cannot be found

Access Control:

  • Only platform administrators can access this endpoint
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
Bodyrequired
namestring<= 255 charactersrequired

The name of the threshold e.g Beginner.

thresholdinteger[ -2147483648 .. 2147483647 ]required

The threshold for the skill.

platformstringrequired

The platform key

curl -i -X POST \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/thresholds/' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "string",
    "threshold": -2147483648,
    "platform": "string"
  }'

Responses

Bodyapplication/json
namestring<= 255 charactersrequired

The name of the threshold e.g Beginner.

thresholdinteger[ -2147483648 .. 2147483647 ]required

The threshold for the skill.

platformstringrequired

The platform key

Response
application/json
{ "name": "string", "threshold": -2147483648, "platform": "string" }

skills_orgs_skills_thresholds_partial_update

Request

Manage skill thresholds for a platform.

This endpoint allows platform administrators to view, create, update, and delete skill thresholds. Skill thresholds define the minimum points required to consider a skill as acquired or mastered.

Path Parameters: org (str): The platform/organization identifier

Methods: GET: Retrieve all skill thresholds for the platform POST: Create a new skill threshold PATCH: Update an existing skill threshold DELETE: Delete all skill thresholds for the platform

Request Body (POST): name (str, required): The name of the threshold level (e.g., "Beginner", "Intermediate") threshold (int, required): The minimum points required to reach this threshold

Request Body (PATCH): name (str, required): The name of the existing threshold to update threshold (int, required): The new minimum points value for this threshold

Returns: GET: A list of all skill thresholds for the platform POST/PATCH: The created or updated skill threshold with format: { "name": "threshold_name", "threshold": threshold_value } DELETE: No content (204)

Error Responses: 400 Bad Request: If the request data is invalid or missing required fields 404 Not Found: If the specified platform doesn't exist or the threshold to update cannot be found

Access Control:

  • Only platform administrators can access this endpoint
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
Body
namestring<= 255 characters

The name of the threshold e.g Beginner.

thresholdinteger[ -2147483648 .. 2147483647 ]

The threshold for the skill.

platformstring

The platform key

curl -i -X PATCH \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/thresholds/' \
  -H 'Authorization: YOUR_API_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "name": "string",
    "threshold": -2147483648,
    "platform": "string"
  }'

Responses

Bodyapplication/json
namestring<= 255 charactersrequired

The name of the threshold e.g Beginner.

thresholdinteger[ -2147483648 .. 2147483647 ]required

The threshold for the skill.

platformstringrequired

The platform key

Response
application/json
{ "name": "string", "threshold": -2147483648, "platform": "string" }

skills_orgs_skills_thresholds_destroy

Request

Manage skill thresholds for a platform.

This endpoint allows platform administrators to view, create, update, and delete skill thresholds. Skill thresholds define the minimum points required to consider a skill as acquired or mastered.

Path Parameters: org (str): The platform/organization identifier

Methods: GET: Retrieve all skill thresholds for the platform POST: Create a new skill threshold PATCH: Update an existing skill threshold DELETE: Delete all skill thresholds for the platform

Request Body (POST): name (str, required): The name of the threshold level (e.g., "Beginner", "Intermediate") threshold (int, required): The minimum points required to reach this threshold

Request Body (PATCH): name (str, required): The name of the existing threshold to update threshold (int, required): The new minimum points value for this threshold

Returns: GET: A list of all skill thresholds for the platform POST/PATCH: The created or updated skill threshold with format: { "name": "threshold_name", "threshold": threshold_value } DELETE: No content (204)

Error Responses: 400 Bad Request: If the request data is invalid or missing required fields 404 Not Found: If the specified platform doesn't exist or the threshold to update cannot be found

Access Control:

  • Only platform administrators can access this endpoint
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
curl -i -X DELETE \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/thresholds/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

No response body

Request

Retrieve a user's skill information.

This endpoint returns information about skills that a user has acquired through the platform. It can return all skills or filter by a specific skill.

Path Parameters: org (str): The platform/organization identifier user_id (str): The username of the user to retrieve skill information for

Query Parameters: skill_name (str, optional): Filter results to a specific skill

Returns: When skill_name is provided: Details about the specific skill including points earned and percentile ranking

When skill_name is not provided: A list of all skills the user has acquired with their points

Access Control:

  • Platform admins can access any user's skill information
  • Users can access their own skill information
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
user_idstringrequired
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/users/{user_id}/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
skillobject(Skill)required
skill.​idintegerread-onlyrequired
skill.​namestring or nullread-onlyrequired

Display name

skill.​platform_keystring
skill.​slugstring or null^[-a-zA-Z0-9_]+$read-onlyrequired

An additional unique slug field. (Optional)

skill.​dataany or nullread-onlyrequired

Metadata

coursesArray of objects(CoursePoint)required

Courses with skill and associated points

courses[].​course_idstring<= 255 charactersrequired

The edX course ID string for the course.

courses[].​pointsintegerrequired
resourcesArray of objects(ResourcePoint)required

Resources with skill and associated points

resources[].​namestring or null<= 255 characters

The display name of the resource.

resources[].​pointsintegerread-onlyrequired
total_pointsintegerread-onlyrequired

Total points for skill

percentilenumber(double)

Percentile of points for user.

Response
application/json
{ "skill": { "id": 0, "name": "string", "platform_key": "string", "slug": "string", "data": null }, "courses": [ {} ], "resources": [ {} ], "total_points": 0, "percentile": 0.1 }

skills_orgs_skills_users_desired_skills_retrieve

Request

Retrieve a user's desired skills.

This endpoint returns the skills that a user has indicated they want to develop or acquire through the platform.

Path Parameters: org (str): The platform/organization identifier user_id (str): The username of the user to retrieve skill information for

Returns: The user's desired skills information.

Error Responses: 400 Bad Request: If the user doesn't exist in the platform or has no desired skills 404 Not Found: If the specified platform doesn't exist

Access Control:

  • Platform admins can access any user's information
  • Users can access their own information
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
user_idstringrequired
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/users/{user_id}/desired-skills/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
user_idinteger
usernamestring
skillsArray of objects(Skill)required
skills[].​idintegerread-onlyrequired
skills[].​namestring or nullread-onlyrequired

Display name

skills[].​platform_keystring
skills[].​slugstring or null^[-a-zA-Z0-9_]+$read-onlyrequired

An additional unique slug field. (Optional)

skills[].​dataany or nullread-onlyrequired

Metadata

dataany or nullread-onlyrequired
Response
application/json
{ "user_id": 0, "username": "string", "skills": [ {} ], "data": null }

skills_orgs_skills_users_point_percentile_retrieve

Request

Retrieve a user's total skill points and percentile ranking.

This endpoint returns the total skill points a user has earned across all skills and their percentile ranking compared to other users on the platform.

Path Parameters: org (str): The platform/organization identifier user_id (str): The username of the user to retrieve information for

Returns: The user's total skill points and percentile ranking information:

  • Username
  • Total points earned across all skills
  • Percentile ranking compared to other users

Access Control:

  • Platform admins can access any user's information
  • Users can access their own information
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
user_idstringrequired
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/users/{user_id}/point-percentile/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
usernamestringrequired
total_pointsnumber(double)required
percentilenumber(double)required

Percentile of points for user. If an org was provided, this is the percentile of the user relative to users within the org.

Response
application/json
{ "username": "string", "total_points": 0.1, "percentile": 0.1 }

skills_orgs_skills_users_reported_skills_retrieve

Request

Retrieve a user's self-reported skills.

This endpoint returns the skills that a user has reported having prior to or outside of the platform learning experience.

Path Parameters: org (str): The platform/organization identifier user_id (str): The username of the user to retrieve skill information for

Returns: The user's self-reported skills information.

Error Responses: 400 Bad Request: If the user doesn't exist in the platform or has no reported skills 404 Not Found: If the specified platform doesn't exist

Access Control:

  • Platform admins can access any user's information
  • Users can access their own information
Security
PlatformApiKeyAuthentication
Path
orgstringrequired
user_idstringrequired
curl -i -X GET \
  'https://docs.ibl.ai/_mock/apis/ibl/api/skills/orgs/{org}/skills/users/{user_id}/reported-skills/' \
  -H 'Authorization: YOUR_API_KEY_HERE'

Responses

Bodyapplication/json
user_idinteger
usernamestring
skillsArray of objects(Skill)required
skills[].​idintegerread-onlyrequired
skills[].​namestring or nullread-onlyrequired

Display name

skills[].​platform_keystring
skills[].​slugstring or null^[-a-zA-Z0-9_]+$read-onlyrequired

An additional unique slug field. (Optional)

skills[].​dataany or nullread-onlyrequired

Metadata

dataany or nullread-onlyrequired
Response
application/json
{ "user_id": 0, "username": "string", "skills": [ {} ], "data": null }