ibl-data-manager (3.59.0-ai-plus)
API for iblai
Request
API View for managing course group suggestions.
This endpoint allows administrators to view, create, and delete course suggestions for groups of users within a platform.
Query Parameters (GET): platform_key (str, required): The platform to retrieve group suggestions for platform_org (str, optional): The organization identifier for the platform query (str, optional): Search term to filter group suggestions sort (str, optional): Field to sort results by (default: 'id') department_mode (bool, optional): Filter suggestions by department admin access page (int, optional): Page number for pagination page_size (int, optional): Number of items per page
Methods: GET: Retrieve a paginated list of course group suggestions for a platform POST: Create or update a course group suggestion DELETE: Remove a course group suggestion
Request Body (POST): A JSON object containing:
- platform_key (str, required): The platform for the group suggestion
- course_id (str, required): The course ID to suggest
- group_id (str/int, required): The group to suggest the course to
- accepted (bool, optional): Whether the suggestion is accepted
- visible (bool, optional): Whether the suggestion is visible
- metadata (dict, optional): Additional suggestion metadata
Query Parameters (DELETE): suggestion_id (int, required): The ID of the group suggestion to delete
Returns: GET: A paginated JSON response containing course group suggestions: { "count": 5, "next": "https://example.com/api/catalog/suggestions/course/group/?page=2", "previous": null, "results": [ { "id": 123, "group_id": 789, "group_name": "Engineering Team", "platform_key": "platform1", "accepted": false, "visible": true, "created": "2023-06-15T14:30:00Z", "modified": "2023-06-15T14:30:00Z", "metadata": {}, "course_id": "course-v1:org+course+run", "course_name": "Introduction to Programming", "user_count": 25 }, ... ] }
POST: A JSON response containing the created/updated group suggestion: { "id": 123, "group_id": 789, "group_name": "Engineering Team", "platform_key": "platform1", "accepted": false, "visible": true, "created": "2023-06-15T14:30:00Z", "modified": "2023-06-15T14:30:00Z", "metadata": {}, "course_id": "course-v1:org+course+run", "course_name": "Introduction to Programming", "user_count": 25 }
DELETE: A success response with status 200
Error Responses: 400 Bad Request: If required parameters are missing or invalid, or if group suggestion operations fail 401 Unauthorized: If the user is not authenticated 403 Forbidden: If the user does not have permission to manage group suggestions 500 Internal Server Error: If an unexpected error occurs
Access Control:
- Requires IsDMAdmin, IsPlatformAdmin, or IsDepartmentModeAdminInPlatform permission
- Platform admins can manage group suggestions for their platform
- Department admins can manage group suggestions for their departments
- DM admins can manage all group suggestions
- Mock server
https://docs.ibl.ai/_mock/apis/ibl/api/catalog/suggestions/course/manage/group/
https://base.manager.iblai.app/api/catalog/suggestions/course/manage/group/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X DELETE \
'https://docs.ibl.ai/_mock/apis/ibl/api/catalog/suggestions/course/manage/group/?department_mode=false&page=0&page_size=0&platform_key=string&platform_org=string&query=string&sort=id&suggestion_id=0' \
-H 'Authorization: YOUR_API_KEY_HERE'
Request
API View for retrieving course suggestions for a specific user.
This endpoint allows users to view course suggestions that have been made for them, with support for filtering by platform and pagination.
Query Parameters: user (str, required): Username or user ID to retrieve suggestions for platform_key (str, optional): Filter suggestions by platform key platform_org (str, optional): Filter suggestions by platform organization sort (str, optional): Field to sort results by (default: '-id') page (int, optional): Page number for pagination page_size (int, optional): Number of items per page
Methods: GET: Retrieve a paginated list of course suggestions for a user
Returns: GET: A paginated JSON response containing course suggestions: { "count": 10, "next": "https://example.com/api/catalog/suggestions/course/user/?page=2", "previous": null, "results": [ { "id": 123, "user_id": 456, "username": "student1", "name": "Student Name", "platform_key": "platform1", "accepted": false, "visible": true, "created": "2023-06-15T14:30:00Z", "modified": "2023-06-15T14:30:00Z", "metadata": {}, "course_id": "course-v1:org+course+run", "course_name": "Introduction to Programming" }, ... ] }
Error Responses: 400 Bad Request: If required parameters are missing or invalid, or if suggestion retrieval fails 401 Unauthorized: If the user is not authenticated 403 Forbidden: If the user does not have permission to access this resource 500 Internal Server Error: If an unexpected error occurs
Access Control:
- Requires IsDMAdmin, IsPlatformAdminReadOnly, or IsEdxUserReadOnly permission
- Users can view their own suggestions
- Platform admins can view suggestions for users in their platform (read-only)
- DM admins can view all suggestions
- Mock server
https://docs.ibl.ai/_mock/apis/ibl/api/catalog/suggestions/course/user/
https://base.manager.iblai.app/api/catalog/suggestions/course/user/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.ibl.ai/_mock/apis/ibl/api/catalog/suggestions/course/user/?email=user%40example.com&page=0&page_size=0&platform_key=string&platform_org=string&sort=-id&user=string&user_id=0' \
-H 'Authorization: YOUR_API_KEY_HERE'
{ "count": 0, "next_page": "http://example.com", "previous_page": "http://example.com", "results": [ { … } ] }
Request
API View for managing pathway suggestions.
This endpoint allows administrators to view, create, update, and delete pathway suggestions for users within a platform.
Query Parameters (GET): platform_key (str, required): The platform to retrieve suggestions for platform_org (str, optional): The organization identifier for the platform query (str, optional): Search term to filter suggestions sort (str, optional): Field to sort results by (default: '-id') department_mode (bool, optional): Filter suggestions by department admin access page (int, optional): Page number for pagination page_size (int, optional): Number of items per page
Methods: GET: Retrieve a paginated list of pathway suggestions for a platform POST: Create or update a pathway suggestion DELETE: Remove a pathway suggestion
Request Body (POST): A JSON object containing:
- platform_key (str, required): The platform for the suggestion
- pathway_id (str, required): The pathway ID to suggest
- user_id (str/int, required): The user to suggest the pathway to
- accepted (bool, optional): Whether the suggestion is accepted
- visible (bool, optional): Whether the suggestion is visible
- metadata (dict, optional): Additional suggestion metadata
Query Parameters (DELETE): suggestion_id (int, required): The ID of the suggestion to delete
Returns: GET: A paginated JSON response containing pathway suggestions: { "count": 10, "next": "https://example.com/api/catalog/suggestions/pathway/manage/?page=2", "previous": null, "results": [ { "id": 123, "user_id": 456, "username": "student1", "name": "Student Name", "platform_key": "platform1", "accepted": false, "visible": true, "created": "2023-06-15T14:30:00Z", "modified": "2023-06-15T14:30:00Z", "metadata": {}, "pathway_id": "pathway-v1:org+pathway+run", "pathway_uuid": "12345678-1234-5678-1234-567812345678", "pathway_name": "Data Science Pathway", "pathway_platform_key": "platform1" }, ... ] }
POST: A JSON response containing the created/updated suggestion: { "id": 123, "user_id": 456, "username": "student1", "name": "Student Name", "platform_key": "platform1", "accepted": false, "visible": true, "created": "2023-06-15T14:30:00Z", "modified": "2023-06-15T14:30:00Z", "metadata": {}, "pathway_id": "pathway-v1:org+pathway+run", "pathway_uuid": "12345678-1234-5678-1234-567812345678", "pathway_name": "Data Science Pathway", "pathway_platform_key": "platform1" }
DELETE: A success response with status 200
Error Responses: 400 Bad Request: If required parameters are missing or invalid, or if suggestion operations fail 401 Unauthorized: If the user is not authenticated 403 Forbidden: If the user does not have permission to manage suggestions 500 Internal Server Error: If an unexpected error occurs
Access Control:
- Requires IsDMAdmin, IsPlatformAdmin, or IsDepartmentModeAdminInPlatform permission
- Platform admins can manage suggestions for their platform
- Department admins can manage suggestions for their departments
- DM admins can manage all suggestions
- Mock server
https://docs.ibl.ai/_mock/apis/ibl/api/catalog/suggestions/pathway/manage/
https://base.manager.iblai.app/api/catalog/suggestions/pathway/manage/
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
'https://docs.ibl.ai/_mock/apis/ibl/api/catalog/suggestions/pathway/manage/?department_mode=true&page=0&page_size=0&platform_key=string&platform_org=string&query=string&sort=-id' \
-H 'Authorization: YOUR_API_KEY_HERE'
{ "count": 0, "next_page": "http://example.com", "previous_page": "http://example.com", "results": [ { … } ] }