# ai-mentor ## ai_mentor_orgs_all_triggers_retrieve - [GET /api/ai-mentor/orgs/{org}/all-triggers/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_all_triggers_retrieve.md): List all triggers for an organization. Args: request: The HTTP request. org: The organization/tenant identifier. Returns: Response: A list of trigger slugs for the organization. Raises: BadRequest: If the request is invalid. ## ai_mentor_orgs_mentors_email_inbox_list - [GET /api/ai-mentor/orgs/{org}/mentors/{mentor}/email-inbox/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_mentors_email_inbox_list.md): Retrieve a list of emails in a mentor's inbox. The list can be filtered using the 'search' query parameter to search for specific terms in the email content or subject. Args: mentor: The unique identifier of the mentor. Returns: Response: A paginated list of emails in the mentor's inbox. Raises: NotFound: If the specified mentor does not exist. ## ai_mentor_orgs_mentors_email_inbox_summary_retrieve - [GET /api/ai-mentor/orgs/{org}/mentors/{mentor}/email-inbox-summary/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_mentors_email_inbox_summary_retrieve.md): Retrieve a summary of a mentor's email inbox. Args: request: The HTTP request. mentor: The unique identifier of the mentor. Returns: Response: A summary of the mentor's email inbox statistics. Raises: NotFound: If the specified mentor does not exist. ## ai_mentor_orgs_mentors_email_inbox_retrieve - [GET /api/ai-mentor/orgs/{org}/mentors/{mentor}/email-inbox/{email_prompt_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_mentors_email_inbox_retrieve.md): Retrieve details of a specific email in a mentor's inbox. Args: request: The HTTP request. email_prompt_id: The ID of the email to retrieve. Returns: Response: The detailed information about the email. Raises: NotFound: If the specified email does not exist. ## ai_mentor_orgs_mentors_link_course_retrieve - [GET /api/ai-mentor/orgs/{org}/mentors/{mentor}/link-course/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_mentors_link_course_retrieve.md): API endpoint to link mentor with a course and enable guided mode. Permissions: - Accessible to tenant admins. ## ai_mentor_orgs_mentors_link_course_create - [POST /api/ai-mentor/orgs/{org}/mentors/{mentor}/link-course/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_mentors_link_course_create.md): API endpoint to link mentor with a course and enable guided mode. Permissions: - Accessible to tenant admins. ## ai_mentor_orgs_metadata_create - [POST /api/ai-mentor/orgs/{org}/metadata/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_metadata_create.md): Create or update metadata for a mentor. Args: request: The HTTP request containing the metadata. org: The organization/tenant identifier. Returns: Response: The created or updated mentor metadata. Raises: BadRequest: If the provided data is invalid. ## ai_mentor_orgs_quiz_customizer_retrieve - [GET /api/ai-mentor/orgs/{org}/quiz-customizer/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_quiz_customizer_retrieve.md): Retrieve existing questions. Args: request: The HTTP request. Returns: Response: The existing questions. ## ai_mentor_orgs_quiz_customizer_create - [POST /api/ai-mentor/orgs/{org}/quiz-customizer/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_quiz_customizer_create.md): Generate follow-up questions based on initial questions. Args: request: The HTTP request containing the initial questions. Returns: Response: The generated follow-up questions. Raises: BadRequest: If the provided data is invalid. ## ai_mentor_orgs_sessions_create - [POST /api/ai-mentor/orgs/{org}/sessions/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_sessions_create.md): Retrieve or create a chat session with a mentor. Passing as results in using all tools assigned to the mentor. To specify that no tools be used, pass an empty list. Args: request: HTTP request containing mentor details. org: Organization key identifier. user_id (optional): Username for authentication (if required by the mentor). Returns: Response: JSON object containing the session ID. Raises: Http404: If the mentor is not found. ValidationError: If the username is invalid. ValidationError: If one or more tool slugs are invalid. ## ai_mentor_orgs_trigger_create - [POST /api/ai-mentor/orgs/{org}/trigger/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_trigger_create.md): Create or modify a trigger. Args: request: The HTTP request containing the trigger data. org: The organization/tenant identifier. Returns: Response: The created or updated trigger details. Raises: BadRequest: If the provided data is invalid or missing required parameters. ## ai_mentor_orgs_trigger_templates_retrieve - [GET /api/ai-mentor/orgs/{org}/trigger-templates/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_trigger_templates_retrieve.md): Retrieve available trigger templates. Args: request: The HTTP request. org: The organization/tenant identifier. Returns: Response: A dictionary of available trigger templates and their required parameters. Raises: BadRequest: If the request is invalid. ## ai_mentor_orgs_trigger_retrieve - [GET /api/ai-mentor/orgs/{org}/trigger/{slug}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_trigger_retrieve.md): Retrieve details of a specific trigger. Args: request: The HTTP request. org: The organization/tenant identifier. slug: The unique slug identifier of the trigger. Returns: Response: The details of the specified trigger. Raises: Http404: If the specified trigger does not exist. ## ai_mentor_orgs_trigger_deletion_create - [POST /api/ai-mentor/orgs/{org}/trigger/{slug}/deletion/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_trigger_deletion_create.md): Delete a specific trigger. Args: request: The HTTP request. org: The organization/tenant identifier. slug: The unique slug identifier of the trigger to delete. Returns: Response: A confirmation of the deletion status. Raises: BadRequest: If the specified trigger does not exist. ## ai_mentor_orgs_users_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_list.md): Retrieve a list of mentors. Returns: - List of mentors matching the filters. ## ai_mentor_orgs_users_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_create.md): Create a new mentor. Body Parameters: - name: Mentor name. - unique_id: Unique identifier. - platform_key: Associated platform. - metadata: Additional mentor attributes. ## ai_mentor_orgs_users_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/{name}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_retrieve.md): API ViewSet for managing mentors. Provides endpoints to retrieve, create, update, and delete mentor data. Permissions: - Accessible to both tenant admins and students. ## ai_mentor_orgs_users_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/{name}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_update.md): Update a mentor's details with RBAC enforcement and custom serializer handling. ## ai_mentor_orgs_users_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/{name}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_partial_update.md): API ViewSet for managing mentors. Provides endpoints to retrieve, create, update, and delete mentor data. Permissions: - Accessible to both tenant admins and students. ## ai_mentor_orgs_users_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/{name}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_destroy.md): Soft delete a mentor. ## ai_mentor_orgs_users_ai_generated_images_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/ai-generated-images/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_ai_generated_images_list.md): Endpoint to view and delete AI generated images for a user. AI Generated images are images generated during chat with AI. They are cached to allow retrieval and deletion. optional filtering parameters allowed are - username: The username of the user for which this image was stored. - provider: The provider used to generate the image. eg. openai, nvidia (nim), replicate. - model: the text to image model on the provider used to generate the image. This endpoint is accessible to both students and platform admins. ## ai_mentor_orgs_users_ai_generated_images_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/ai-generated-images/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_ai_generated_images_retrieve.md): Endpoint to view and delete AI generated images for a user. AI Generated images are images generated during chat with AI. They are cached to allow retrieval and deletion. optional filtering parameters allowed are - username: The username of the user for which this image was stored. - provider: The provider used to generate the image. eg. openai, nvidia (nim), replicate. - model: the text to image model on the provider used to generate the image. This endpoint is accessible to both students and platform admins. ## ai_mentor_orgs_users_ai_generated_images_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/ai-generated-images/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_ai_generated_images_destroy.md): Endpoint to view and delete AI generated images for a user. AI Generated images are images generated during chat with AI. They are cached to allow retrieval and deletion. optional filtering parameters allowed are - username: The username of the user for which this image was stored. - provider: The provider used to generate the image. eg. openai, nvidia (nim), replicate. - model: the text to image model on the provider used to generate the image. This endpoint is accessible to both students and platform admins. ## ai_mentor_orgs_users_ai_user_profile_memory_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/ai-user-profile-memory/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_ai_user_profile_memory_list.md): Endpoint to get a list of AI user profile memory entries or to add an entry. ## ai_mentor_orgs_users_ai_user_profile_memory_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/ai-user-profile-memory/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_ai_user_profile_memory_create.md): Endpoint to create an AI user profile memory entry. Sample request: Sample Response (the same as request data): ## ai_mentor_orgs_users_ai_user_profile_memory_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/ai-user-profile-memory/{tag}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_ai_user_profile_memory_destroy.md): The endpoint to delete an AI user profile memory entry. No query parameters or JSON parameters are required. The response is always empty. Successful request will be responded with status 204, and failed request will be responded with status 404. ## ai_mentor_orgs_users_assumed_knowledge_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/assumed-knowledge/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_assumed_knowledge_retrieve.md): Retrieve assumed knowledge levels. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user to retrieve assumed knowledge for. Returns: Response: The assumed knowledge levels for different categories. Raises: NotFound: If no assumed knowledge exists for the user. ## ai_mentor_orgs_users_assumed_knowledge_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/assumed-knowledge/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_assumed_knowledge_create.md): Update assumed knowledge levels. Args: request: The HTTP request containing the updated knowledge levels. org: The organization/tenant identifier. user_id: The ID of the user to update assumed knowledge for. Returns: Response: The updated assumed knowledge levels. Raises: BadRequest: If the provided data is invalid. ## ai_mentor_orgs_users_audio_to_text_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/audio-to-text/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_audio_to_text_create.md): Convert an uploaded audio file to text. Args: request: The HTTP request containing the audio file. org: The organization/tenant identifier. user_id: The ID of the user uploading the audio. Returns: Response: The transcribed text from the audio file. Raises: BadRequest: If the audio file is invalid or cannot be processed. NotFound: If the API key for the tenant is not found. ## ai_mentor_orgs_users_available_template_mentors_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/available-template-mentors/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_available_template_mentors_retrieve.md): This endpoint list available template mentors for a tenant Returns: 200 : List of Tool objects ## ai_mentor_orgs_users_call_configurations_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/call-configurations/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_call_configurations_list.md): API ViewSet for managing call configurations. This ViewSet provides endpoints to retrieve, create, and update call configurations for mentors. Call configurations define how voice calls are handled for a mentor. Permissions: - Accessible only to platform admins. Endpoints: GET /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - List all call configurations for a specific mentor - Returns paginated list of call configurations POST /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - Create a new call configuration for a mentor - Requires call configuration data in request body PUT /api/org/{org}/mentors/{mentor_pk}/call-configurations/{id}/ - Update an existing call configuration - Requires call configuration data in request body Query Parameters: - mentor: Filter configurations by mentor ID Returns: - CallConfigurationSerializer data ## ai_mentor_orgs_users_call_configurations_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/call-configurations/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_call_configurations_create.md): API ViewSet for managing call configurations. This ViewSet provides endpoints to retrieve, create, and update call configurations for mentors. Call configurations define how voice calls are handled for a mentor. Permissions: - Accessible only to platform admins. Endpoints: GET /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - List all call configurations for a specific mentor - Returns paginated list of call configurations POST /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - Create a new call configuration for a mentor - Requires call configuration data in request body PUT /api/org/{org}/mentors/{mentor_pk}/call-configurations/{id}/ - Update an existing call configuration - Requires call configuration data in request body Query Parameters: - mentor: Filter configurations by mentor ID Returns: - CallConfigurationSerializer data ## ai_mentor_orgs_users_call_configurations_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/call-configurations/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_call_configurations_retrieve.md): API ViewSet for managing call configurations. This ViewSet provides endpoints to retrieve, create, and update call configurations for mentors. Call configurations define how voice calls are handled for a mentor. Permissions: - Accessible only to platform admins. Endpoints: GET /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - List all call configurations for a specific mentor - Returns paginated list of call configurations POST /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - Create a new call configuration for a mentor - Requires call configuration data in request body PUT /api/org/{org}/mentors/{mentor_pk}/call-configurations/{id}/ - Update an existing call configuration - Requires call configuration data in request body Query Parameters: - mentor: Filter configurations by mentor ID Returns: - CallConfigurationSerializer data ## ai_mentor_orgs_users_call_configurations_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/call-configurations/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_call_configurations_update.md): API ViewSet for managing call configurations. This ViewSet provides endpoints to retrieve, create, and update call configurations for mentors. Call configurations define how voice calls are handled for a mentor. Permissions: - Accessible only to platform admins. Endpoints: GET /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - List all call configurations for a specific mentor - Returns paginated list of call configurations POST /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - Create a new call configuration for a mentor - Requires call configuration data in request body PUT /api/org/{org}/mentors/{mentor_pk}/call-configurations/{id}/ - Update an existing call configuration - Requires call configuration data in request body Query Parameters: - mentor: Filter configurations by mentor ID Returns: - CallConfigurationSerializer data ## ai_mentor_orgs_users_call_configurations_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/call-configurations/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_call_configurations_partial_update.md): API ViewSet for managing call configurations. This ViewSet provides endpoints to retrieve, create, and update call configurations for mentors. Call configurations define how voice calls are handled for a mentor. Permissions: - Accessible only to platform admins. Endpoints: GET /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - List all call configurations for a specific mentor - Returns paginated list of call configurations POST /api/org/{org}/mentors/{mentor_pk}/call-configurations/ - Create a new call configuration for a mentor - Requires call configuration data in request body PUT /api/org/{org}/mentors/{mentor_pk}/call-configurations/{id}/ - Update an existing call configuration - Requires call configuration data in request body Query Parameters: - mentor: Filter configurations by mentor ID Returns: - CallConfigurationSerializer data ## ai_mentor_orgs_users_category_groups_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/category-groups/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_category_groups_list.md): Retrieve a list of Mentor Category Groups. ## ai_mentor_orgs_users_category_groups_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/category-groups/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_category_groups_create.md): Create a new Mentor Category Group. Only accessible to Platform Admins. ## ai_mentor_orgs_users_category_groups_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/category-groups/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_category_groups_retrieve.md): Mentor Category Groups offer parent grouping for mentor category objects. The parameter is deprecated and is currently left behind for backward compatibility. Permissions: GET: Accessible to both Platform Admins and Students POST, DELETE, PATCH, PUT: Accessible to only Platform Admins ## ai_mentor_orgs_users_category_groups_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/category-groups/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_category_groups_update.md): Mentor Category Groups offer parent grouping for mentor category objects. The parameter is deprecated and is currently left behind for backward compatibility. Permissions: GET: Accessible to both Platform Admins and Students POST, DELETE, PATCH, PUT: Accessible to only Platform Admins ## ai_mentor_orgs_users_category_groups_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/category-groups/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_category_groups_partial_update.md): Mentor Category Groups offer parent grouping for mentor category objects. The parameter is deprecated and is currently left behind for backward compatibility. Permissions: GET: Accessible to both Platform Admins and Students POST, DELETE, PATCH, PUT: Accessible to only Platform Admins ## ai_mentor_orgs_users_category_groups_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/category-groups/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_category_groups_destroy.md): Mentor Category Groups offer parent grouping for mentor category objects. The parameter is deprecated and is currently left behind for backward compatibility. Permissions: GET: Accessible to both Platform Admins and Students POST, DELETE, PATCH, PUT: Accessible to only Platform Admins ## ai_mentor_orgs_users_clean_vector_results_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/clean-vector-results/{session_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_clean_vector_results_list.md): Retrieve and clean up vector results from a specific session. This endpoint retrieves the documents last used by the mentor to answer the most recent query from the user in the specified session, and cleans them to remove any inappropriate content. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user making the request. session_id: The ID of the session to retrieve vector results from. Returns: Response: The cleaned vector results. Raises: BadRequest: If the API key for the cleaning provider is not found. NotFound: If no vector results are found for the session. ## ai_mentor_orgs_users_clean_vector_results_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/clean-vector-results/{session_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_clean_vector_results_create.md): Clean up provided vector results. This endpoint allows users to submit specific vector results for cleaning, which is useful when there are particular documents that need to be processed. Args: request: The HTTP request containing the vector results to clean. org: The organization/tenant identifier. user_id: The ID of the user making the request. Returns: Response: The cleaned vector results. Raises: BadRequest: If the API key for the cleaning provider is not found or the provided data is invalid. ## Delete User Chat History - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/clear-chathistory](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_clear_chathistory_destroy.md): Endpoint to clear a user's chat history. ## ai_mentor_orgs_users_course_creation_task_files_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-task-files/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_task_files_list.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_task_files_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-task-files/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_task_files_create.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_task_files_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-task-files/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_task_files_retrieve.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_task_files_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-task-files/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_task_files_update.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_task_files_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-task-files/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_task_files_partial_update.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_task_files_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-task-files/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_task_files_destroy.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_tasks_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-tasks/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_list.md): Create, retrieve and delete course creation tasks Course creation tasks allow you to schedule the creation of a course on OpenEdx deployment connected to this data manager. The course is created entirely by an ai model (as specified in your inputs). The llm decides on the content of the course based on the name, description, target audience and other parameters. Bigger and newer models tend to outperform smaller once. Clear and unambiguous parameters are more likely to produce better results. ## ai_mentor_orgs_users_course_creation_tasks_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-tasks/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_create.md): Create, retrieve and delete course creation tasks Course creation tasks allow you to schedule the creation of a course on OpenEdx deployment connected to this data manager. The course is created entirely by an ai model (as specified in your inputs). The llm decides on the content of the course based on the name, description, target audience and other parameters. Bigger and newer models tend to outperform smaller once. Clear and unambiguous parameters are more likely to produce better results. ## ai_mentor_orgs_users_course_creation_tasks_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-tasks/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_retrieve.md): Create, retrieve and delete course creation tasks Course creation tasks allow you to schedule the creation of a course on OpenEdx deployment connected to this data manager. The course is created entirely by an ai model (as specified in your inputs). The llm decides on the content of the course based on the name, description, target audience and other parameters. Bigger and newer models tend to outperform smaller once. Clear and unambiguous parameters are more likely to produce better results. ## ai_mentor_orgs_users_course_creation_tasks_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-tasks/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_destroy.md): Create, retrieve and delete course creation tasks Course creation tasks allow you to schedule the creation of a course on OpenEdx deployment connected to this data manager. The course is created entirely by an ai model (as specified in your inputs). The llm decides on the content of the course based on the name, description, target audience and other parameters. Bigger and newer models tend to outperform smaller once. Clear and unambiguous parameters are more likely to produce better results. ## ai_mentor_orgs_users_course_creation_tasks_cancel_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-tasks/{id}/cancel/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_cancel_retrieve.md): Cancel a course creation task run. : The task must be running or pending. : - 200: The course creation task is successfully cancelled. - 400: The course creation task is not in a running or pending state. ## ai_mentor_orgs_users_course_creation_tasks_create_course_outline_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-tasks/{id}/create-course-outline/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_create_course_outline_retrieve.md): This is intended for stepwise approach of course creation. Use this to intiate generating an outline of the course. ## ai_mentor_orgs_users_course_creation_tasks_create_course_outline_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-tasks/{id}/create-course-outline/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_create_course_outline_create.md): This is intended for stepwise approach of course creation. Use this to intiate generating an outline of the course. ## ai_mentor_orgs_users_course_creation_tasks_start_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation-tasks/{id}/start/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_start_retrieve.md): Kick start the course creation task. This endpoint should be called once the files for a course creation task has been successfully uploaded. : - The course creation task must be in a pending state or failed state. : - 200: The course creation task is successfully started. - 400: The course creation task is not in a pending state. ## ai_mentor_orgs_users_course_creation_component_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/component/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_component_list.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_component_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/component/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_component_create.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_component_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/component/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_component_retrieve.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_component_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/component/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_component_update.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_component_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/component/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_component_partial_update.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_component_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/component/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_component_destroy.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_component_draft_content_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/component/{id}/draft-content/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_component_draft_content_retrieve.md): Generate draft content for a specific unit. This action starts a background task to create draft content for the specified unit using AI. Args: request: The HTTP request. pk: The primary key of the unit to generate content for. Returns: Response: A confirmation that the content generation task has been started. Raises: NotFound: If the specified unit does not exist. ## ai_mentor_orgs_users_course_creation_component_draft_content_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/component/{id}/draft-content/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_component_draft_content_create.md): Generate draft content for a specific unit. This action starts a background task to create draft content for the specified unit using AI. Args: request: The HTTP request. pk: The primary key of the unit to generate content for. Returns: Response: A confirmation that the content generation task has been started. Raises: NotFound: If the specified unit does not exist. ## ai_mentor_orgs_users_course_creation_course_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/course/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_course_list.md): API viewset for managing EdX courses. This viewset allows platform administrators to retrieve, delete, and perform various operations on EdX courses that were created through course creation tasks. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_course_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/course/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_course_retrieve.md): API viewset for managing EdX courses. This viewset allows platform administrators to retrieve, delete, and perform various operations on EdX courses that were created through course creation tasks. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_course_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/course/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_course_destroy.md): API viewset for managing EdX courses. This viewset allows platform administrators to retrieve, delete, and perform various operations on EdX courses that were created through course creation tasks. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_course_draft_content_for_all_units_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/course/{id}/draft-content-for-all-units/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_course_draft_content_for_all_units_retrieve.md): Generate draft content for all units in a course. This action starts a background task to create draft content for all units in the course using AI. Args: request: The HTTP request. pk: The primary key of the course to generate content for. Returns: Response: A confirmation that the content generation task has been started. Raises: NotFound: If the specified course does not exist. ## ai_mentor_orgs_users_course_creation_course_full_structure_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/course/{id}/full-structure/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_course_full_structure_retrieve.md): Retrieve the full structure of a course. This action returns the complete hierarchical structure of the course, including all sections, subsections, units, and components. Args: request: The HTTP request. pk: The primary key of the course to retrieve. Returns: Response: The full structure of the course. Raises: NotFound: If the specified course does not exist. ## ai_mentor_orgs_users_course_creation_course_load_from_edx_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/course/{id}/load-from-edx/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_course_load_from_edx_retrieve.md): Load existing course structure from OpenEdX. This action starts a background task to pull the course structure from the EdX platform into the database. Args: request: The HTTP request. pk: The primary key of the course to load. Returns: Response: A confirmation that the load task has been started. Raises: NotFound: If the specified course does not exist. ## ai_mentor_orgs_users_course_creation_course_sync_to_edx_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/course/{id}/sync-to-edx/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_course_sync_to_edx_retrieve.md): Synchronize the course structure to EdX. This action starts a background task to push the course structure from the database to the EdX platform. Args: request: The HTTP request. pk: The primary key of the course to synchronize. Returns: Response: A confirmation that the sync task has been started. Raises: NotFound: If the specified course does not exist. ## ai_mentor_orgs_users_course_creation_files_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/files/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_files_list.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_files_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/files/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_files_create.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_files_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/files/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_files_retrieve.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_files_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/files/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_files_update.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_files_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/files/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_files_partial_update.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_files_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/files/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_files_destroy.md): Endpoint to fetch update and delete files associated with course creation tasks. ## ai_mentor_orgs_users_course_creation_section_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/section/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_section_list.md): API viewset for managing course sections. This viewset allows platform administrators to retrieve and manage sections within EdX courses. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_section_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/section/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_section_create.md): API viewset for managing course sections. This viewset allows platform administrators to retrieve and manage sections within EdX courses. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_section_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/section/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_section_retrieve.md): API viewset for managing course sections. This viewset allows platform administrators to retrieve and manage sections within EdX courses. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_section_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/section/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_section_update.md): API viewset for managing course sections. This viewset allows platform administrators to retrieve and manage sections within EdX courses. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_section_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/section/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_section_partial_update.md): API viewset for managing course sections. This viewset allows platform administrators to retrieve and manage sections within EdX courses. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_section_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/section/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_section_destroy.md): API viewset for managing course sections. This viewset allows platform administrators to retrieve and manage sections within EdX courses. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_subsection_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/subsection/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_subsection_list.md): API viewset for managing course subsections. This viewset allows platform administrators to retrieve and manage subsections within course sections. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_subsection_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/subsection/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_subsection_create.md): API viewset for managing course subsections. This viewset allows platform administrators to retrieve and manage subsections within course sections. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_subsection_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/subsection/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_subsection_retrieve.md): API viewset for managing course subsections. This viewset allows platform administrators to retrieve and manage subsections within course sections. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_subsection_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/subsection/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_subsection_update.md): API viewset for managing course subsections. This viewset allows platform administrators to retrieve and manage subsections within course sections. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_subsection_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/subsection/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_subsection_partial_update.md): API viewset for managing course subsections. This viewset allows platform administrators to retrieve and manage subsections within course sections. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_subsection_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/subsection/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_subsection_destroy.md): API viewset for managing course subsections. This viewset allows platform administrators to retrieve and manage subsections within course sections. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_tasks_list_2 - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/tasks/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_list_2.md): Create, retrieve and delete course creation tasks Course creation tasks allow you to schedule the creation of a course on OpenEdx deployment connected to this data manager. The course is created entirely by an ai model (as specified in your inputs). The llm decides on the content of the course based on the name, description, target audience and other parameters. Bigger and newer models tend to outperform smaller once. Clear and unambiguous parameters are more likely to produce better results. ## ai_mentor_orgs_users_course_creation_tasks_create_2 - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/tasks/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_create_2.md): Create, retrieve and delete course creation tasks Course creation tasks allow you to schedule the creation of a course on OpenEdx deployment connected to this data manager. The course is created entirely by an ai model (as specified in your inputs). The llm decides on the content of the course based on the name, description, target audience and other parameters. Bigger and newer models tend to outperform smaller once. Clear and unambiguous parameters are more likely to produce better results. ## ai_mentor_orgs_users_course_creation_tasks_retrieve_2 - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/tasks/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_retrieve_2.md): Create, retrieve and delete course creation tasks Course creation tasks allow you to schedule the creation of a course on OpenEdx deployment connected to this data manager. The course is created entirely by an ai model (as specified in your inputs). The llm decides on the content of the course based on the name, description, target audience and other parameters. Bigger and newer models tend to outperform smaller once. Clear and unambiguous parameters are more likely to produce better results. ## ai_mentor_orgs_users_course_creation_tasks_destroy_2 - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/tasks/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_destroy_2.md): Create, retrieve and delete course creation tasks Course creation tasks allow you to schedule the creation of a course on OpenEdx deployment connected to this data manager. The course is created entirely by an ai model (as specified in your inputs). The llm decides on the content of the course based on the name, description, target audience and other parameters. Bigger and newer models tend to outperform smaller once. Clear and unambiguous parameters are more likely to produce better results. ## ai_mentor_orgs_users_course_creation_tasks_cancel_retrieve_2 - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/tasks/{id}/cancel/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_cancel_retrieve_2.md): Cancel a course creation task run. : The task must be running or pending. : - 200: The course creation task is successfully cancelled. - 400: The course creation task is not in a running or pending state. ## ai_mentor_orgs_users_course_creation_tasks_create_course_outline_retrieve_2 - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/tasks/{id}/create-course-outline/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_create_course_outline_retrieve_2.md): This is intended for stepwise approach of course creation. Use this to intiate generating an outline of the course. ## ai_mentor_orgs_users_course_creation_tasks_create_course_outline_create_2 - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/tasks/{id}/create-course-outline/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_create_course_outline_create_2.md): This is intended for stepwise approach of course creation. Use this to intiate generating an outline of the course. ## ai_mentor_orgs_users_course_creation_tasks_start_retrieve_2 - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/tasks/{id}/start/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_tasks_start_retrieve_2.md): Kick start the course creation task. This endpoint should be called once the files for a course creation task has been successfully uploaded. : - The course creation task must be in a pending state or failed state. : - 200: The course creation task is successfully started. - 400: The course creation task is not in a pending state. ## ai_mentor_orgs_users_course_creation_unit_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/unit/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_unit_list.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_unit_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/unit/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_unit_create.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_unit_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/unit/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_unit_retrieve.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_unit_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/unit/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_unit_update.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_unit_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/unit/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_unit_partial_update.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_unit_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/unit/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_unit_destroy.md): API viewset for managing course units. This viewset allows platform administrators to retrieve and manage units within course subsections, and generate content for them. Permissions: - Restricted to platform administrators only ## ai_mentor_orgs_users_course_creation_unit_draft_content_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/unit/{id}/draft-content/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_unit_draft_content_retrieve.md): Generate draft content for a specific unit. This action starts a background task to create draft content for the specified unit using AI. Args: request: The HTTP request. pk: The primary key of the unit to generate content for. Returns: Response: A confirmation that the content generation task has been started. Raises: NotFound: If the specified unit does not exist. ## ai_mentor_orgs_users_course_creation_unit_draft_content_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/course-creation/unit/{id}/draft-content/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_course_creation_unit_draft_content_create.md): Generate draft content for a specific unit. This action starts a background task to create draft content for the specified unit using AI. Args: request: The HTTP request. pk: The primary key of the unit to generate content for. Returns: Response: A confirmation that the content generation task has been started. Raises: NotFound: If the specified unit does not exist. ## ai_mentor_orgs_users_create_mentor_wizard_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/create-mentor-wizard/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_create_mentor_wizard_create.md): Create a new mentor using the wizard interface. Args: request: The HTTP request containing the mentor data. org: The organization/tenant identifier. user_id: The ID of the user creating the mentor. Returns: Response: The created mentor. Raises: BadRequest: If the provided data is invalid. ## ai_mentor_orgs_users_custom_instruction_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/custom-instruction/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_custom_instruction_retrieve.md): Retrieve custom instructions for a specific user. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user to retrieve custom instructions for. Returns: Response: The custom instructions for the user. Raises: NotFound: If no custom instructions exist for the user. ## ai_mentor_orgs_users_custom_instruction_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/custom-instruction/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_custom_instruction_create.md): Create a new custom instruction for a user. Args: request: The HTTP request containing the custom instruction data. org: The organization/tenant identifier. user_id: The ID of the user to create custom instructions for. Returns: Response: The created custom instruction. Raises: BadRequest: If the provided data is invalid. ## ai_mentor_orgs_users_custom_instruction_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/custom-instruction/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_custom_instruction_update.md): Update an existing custom instruction for a user. Args: request: The HTTP request containing the updated custom instruction data. org: The organization/tenant identifier. user_id: The ID of the user to update custom instructions for. Returns: Response: The updated custom instruction. Raises: BadRequest: If the provided data is invalid. NotFound: If no custom instruction exists for the user. ## ai_mentor_orgs_users_downloads_tasks_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/downloads/tasks/{task_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_downloads_tasks_retrieve.md): Retrieves the chat history for a user if the export task is ready. This Endpoint to download user chathistory. Accessible to tenant admins and students. Returns: 200: When task is not ready. 200: chat history object 400: When data is not valid. ## ai_mentor_orgs_users_edx_memory_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/edx-memory/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_edx_memory_list.md): Endpoints to fetch and delete Edx stored Memory information stored for a user and a corresponding edx course they have interracted with. This information is passed to the corresponding mentor so the mentor has context information about the course and unit that the user last interracted with. There can be only one UserEdxMemory instance per student and course_id. Url Args: org (str): The organization's platform key. user_id (str): The username identifier of the individual. Returns: 200: A paginated list of UserEdxMemory objects Examples: - List all memories GET: /api/ai-mentor/orgs/main/users/johndoe/edx-memory/ Request: None Response: { "count": 0, "next": null, "previous": null, "results": [{ "student": 1, "course_id": "course-v1:main+CARBON+2024_Fall", "data": {}, "date_created": "2024-06-25T15:30:26.257140", "last_modified": "2024-06-25T15:30:26.257140" }] } - Get a single UserEdxMemory object GET: /api/ai-mentor/orgs/main/users/johndoe/edx-memory/1/ Request: None Response: { "student": 1, "course_id": "course-v1:main+CARBON+2024_Fall", "data": {}, "date_created": "2024-06-25T15:30:26.257140", "last_modified": "2024-06-25T15:30:26.257140" } ## ai_mentor_orgs_users_edx_memory_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/edx-memory/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_edx_memory_retrieve.md): Endpoints to fetch and delete Edx stored Memory information stored for a user and a corresponding edx course they have interracted with. This information is passed to the corresponding mentor so the mentor has context information about the course and unit that the user last interracted with. There can be only one UserEdxMemory instance per student and course_id. Url Args: org (str): The organization's platform key. user_id (str): The username identifier of the individual. Returns: 200: A paginated list of UserEdxMemory objects Examples: - List all memories GET: /api/ai-mentor/orgs/main/users/johndoe/edx-memory/ Request: None Response: { "count": 0, "next": null, "previous": null, "results": [{ "student": 1, "course_id": "course-v1:main+CARBON+2024_Fall", "data": {}, "date_created": "2024-06-25T15:30:26.257140", "last_modified": "2024-06-25T15:30:26.257140" }] } - Get a single UserEdxMemory object GET: /api/ai-mentor/orgs/main/users/johndoe/edx-memory/1/ Request: None Response: { "student": 1, "course_id": "course-v1:main+CARBON+2024_Fall", "data": {}, "date_created": "2024-06-25T15:30:26.257140", "last_modified": "2024-06-25T15:30:26.257140" } ## ai_mentor_orgs_users_edx_memory_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/edx-memory/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_edx_memory_destroy.md): Endpoints to fetch and delete Edx stored Memory information stored for a user and a corresponding edx course they have interracted with. This information is passed to the corresponding mentor so the mentor has context information about the course and unit that the user last interracted with. There can be only one UserEdxMemory instance per student and course_id. Url Args: org (str): The organization's platform key. user_id (str): The username identifier of the individual. Returns: 200: A paginated list of UserEdxMemory objects Examples: - List all memories GET: /api/ai-mentor/orgs/main/users/johndoe/edx-memory/ Request: None Response: { "count": 0, "next": null, "previous": null, "results": [{ "student": 1, "course_id": "course-v1:main+CARBON+2024_Fall", "data": {}, "date_created": "2024-06-25T15:30:26.257140", "last_modified": "2024-06-25T15:30:26.257140" }] } - Get a single UserEdxMemory object GET: /api/ai-mentor/orgs/main/users/johndoe/edx-memory/1/ Request: None Response: { "student": 1, "course_id": "course-v1:main+CARBON+2024_Fall", "data": {}, "date_created": "2024-06-25T15:30:26.257140", "last_modified": "2024-06-25T15:30:26.257140" } ## ai_mentor_orgs_users_elevenlabs_voice_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/elevenlabs-voice/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_elevenlabs_voice_list.md): Retrieve a list of Elevenlabs voices available to a user. This endpoint returns both custom voices created by the user and premade voices available to all users. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user to retrieve voices for. Returns: Response: A list of available Elevenlabs voices. Raises: NotFound: If the specified user does not exist. ## ai_mentor_orgs_users_elevenlabs_voice_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/elevenlabs-voice/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_elevenlabs_voice_create.md): Create a new custom Elevenlabs voice. This endpoint allows users to upload audio files to create a custom voice that can be used with the Elevenlabs text-to-speech service. Note: The audio files' total length should be longer than 1 minute and the total size should be smaller than 11 MiB. Args: request: The HTTP request containing the voice name and audio files. org: The organization/tenant identifier. user_id: The ID of the user creating the voice. Returns: Response: The created voice configuration. Raises: BadRequest: If the provided data is invalid, credentials are not found, or there's an API error. ## ai_mentor_orgs_users_elevenlabs_voice_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/elevenlabs-voice/{voice_name}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_elevenlabs_voice_destroy.md): Delete an existing Elevenlabs voice configuration. This endpoint removes a custom voice configuration both from the local database and from the Elevenlabs remote API if applicable. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user who owns the voice. voice_name: The name of the voice to delete. Returns: Response: A confirmation of the deletion. Raises: BadRequest: If the Elevenlabs credentials are not found or there's an API error. ## ai_mentor_orgs_users_export_chathistory_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/export-chathistory/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_export_chathistory_create.md): Initiates a background task to export the user's chat history. Returns: 200: task id. ## ai_mentor_orgs_users_free_usage_count_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/free-usage-count](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_free_usage_count_retrieve.md): Retrieve the count of free usage credits available to a user. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user to check free usage for. Returns: Response: The count of free usage credits available. Raises: NotFound: If the specified user does not exist. ## ai_mentor_orgs_users_mcp_servers_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mcp-servers/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mcp_servers_list.md): List all MCP servers. Returns a paginated list of MCP servers that can be filtered by platform and searched by name or URL. ## ai_mentor_orgs_users_mcp_servers_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mcp-servers/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mcp_servers_create.md): ViewSet for MCP Servers. Allows platform admins to list, create, retrieve, update, and delete MCP servers. Permissions: - Accessible to tenant admins. ## ai_mentor_orgs_users_mcp_servers_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mcp-servers/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mcp_servers_retrieve.md): ViewSet for MCP Servers. Allows platform admins to list, create, retrieve, update, and delete MCP servers. Permissions: - Accessible to tenant admins. ## ai_mentor_orgs_users_mcp_servers_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/mcp-servers/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mcp_servers_update.md): ViewSet for MCP Servers. Allows platform admins to list, create, retrieve, update, and delete MCP servers. Permissions: - Accessible to tenant admins. ## ai_mentor_orgs_users_mcp_servers_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/mcp-servers/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mcp_servers_partial_update.md): ViewSet for MCP Servers. Allows platform admins to list, create, retrieve, update, and delete MCP servers. Permissions: - Accessible to tenant admins. ## ai_mentor_orgs_users_mcp_servers_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/mcp-servers/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mcp_servers_destroy.md): ViewSet for MCP Servers. Allows platform admins to list, create, retrieve, update, and delete MCP servers. Permissions: - Accessible to tenant admins. ## ai_mentor_orgs_users_mentor_feedback_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentor-feedback/{feedback_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_feedback_retrieve.md): Retrieve details of a specific user chat feedback entry. Args: request: The HTTP request. org: The organization/tenant identifier. feedback_id: The ID of the feedback entry to retrieve. Returns: Response: The feedback entry details. Raises: NotFound: If the specified feedback entry does not exist. ## ai_mentor_orgs_users_mentor_feedback_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/mentor-feedback/{feedback_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_feedback_update.md): Update an existing user chat feedback entry. Args: request: The HTTP request containing the updated feedback data. org: The organization/tenant identifier. feedback_id: The ID of the feedback entry to update. Returns: Response: The updated feedback entry. Raises: NotFound: If the specified feedback entry does not exist. BadRequest: If the provided data is invalid or the mentor does not exist. ## ai_mentor_orgs_users_mentor_feedback_create_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentor-feedback/create/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_feedback_create_create.md): Create a new user chat feedback entry. Args: request: The HTTP request containing the feedback data. org: The organization/tenant identifier. Returns: Response: The created feedback entry. Raises: BadRequest: If the provided data is invalid or the mentor does not exist. ## ai_mentor_orgs_users_mentor_from_template_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentor-from-template/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_from_template_create.md): View to create a mentor from a template Accessible to only tenant admins. ## ai_mentor_orgs_users_mentor_llms_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentor-llms/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_llms_list.md): Retrieve available LLMs for a user. ## ai_mentor_orgs_users_mentor_tools_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentor-tools/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_tools_list.md): Retrieve the list of available mentor tools. ## ai_mentor_orgs_users_mentor_with_settings_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentor-with-settings/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_with_settings_create.md): View to create a mentor from a template with settings. Accessible to tenant admins only. ## ai_mentor_orgs_users_mentor_audience_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentor/audience/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_audience_list.md): Retrieve the list of mentor audiences. Returns: - 200: List of mentor audiences. ## ai_mentor_orgs_users_mentor_audience_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentor/audience/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_audience_create.md): Create a new mentor audience. Accessible to tenant admins only. Returns: - 201: Created mentor audience. - 401: Unauthorized. ## ai_mentor_orgs_users_mentor_audience_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/mentor/audience/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_audience_destroy.md): Delete a mentor audience. Accessible to tenant admins only. Returns: - 204: No content. - 400: Bad request if audience name is missing. - 404: Not found if audience does not exist. - 401: Unauthorized. ## ai_mentor_orgs_users_mentor_categories_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentor/categories/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_categories_list.md): Retrieve a list of mentor categories. Returns: 200: A list of mentor categories. ## ai_mentor_orgs_users_mentor_categories_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentor/categories/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_categories_create.md): Create a new mentor category. Accessible only to tenant admins. Returns: 200: Details of the created mentor category. ## ai_mentor_orgs_users_mentor_categories_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/mentor/categories/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_categories_destroy.md): Delete a mentor category. Accessible only to tenant admins. Returns: 204: "No content" when Delete succeeded. 400: Bad request data received ## ai_mentor_orgs_users_mentor_seed_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentor/seed/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentor_seed_retrieve.md): Seed initial mentors in a tenant. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user initiating the seeding. Returns: Response: A success message with details about the seeded mentors. Raises: BadRequest: If the seeding process fails. ## ai_mentor_orgs_users_mentors_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_retrieve.md): Retrieve details of a specific mentor by slug or name. ## ai_mentor_orgs_users_mentors_available_tools_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/available-tools/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_available_tools_list.md): Retrieve tools available for a particular mentor. ## ai_mentor_orgs_users_mentors_create_call_credentials_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/create-call-credentials/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_create_call_credentials_create.md): Generate IBL Call Pro authentication parameters for audio calls. This endpoint creates the necessary authentication tokens and parameters for connecting to a IBL Call Pro room for audio communication with a mentor. Args: request: The HTTP request object containing the required parameters. org: The organization/tenant identifier. user_id: The ID of the user requesting authentication. Returns: Response: IBL Call Pro authentication parameters including URL, room name, participant name, and authentication token. Raises: ValidationError: If the request parameters are invalid. BadRequest: If the IBL Call Pro credentials are not properly configured. ## ai_mentor_orgs_users_mentors_current_memory_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/current-memory/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_current_memory_retrieve.md): Retrieve memory components for a specific mentor. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user making the request. mentor: The identifier of the mentor to retrieve memory for. Returns: Response: The memory components for the mentor. Raises: NotFound: If the specified mentor or memory does not exist. ## ai_mentor_orgs_users_mentors_current_memory_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/current-memory/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_current_memory_update.md): Update memory components for a specific mentor. Args: request: The HTTP request containing the updated memory data. org: The organization/tenant identifier. user_id: The ID of the user making the request. mentor: The identifier of the mentor to update memory for. Returns: Response: The updated memory components for the mentor. Raises: BadRequest: If the provided data is invalid. NotFound: If the specified mentor does not exist. ## ai_mentor_orgs_users_mentors_custom_voice_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/custom-voice/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_custom_voice_retrieve.md): Retrieve the current custom voice settings for a mentor. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user who owns the mentor link. mentor: The unique identifier of the mentor. Returns: Response: The current custom voice settings. Raises: NotFound: If the specified mentor or student does not exist. ## ai_mentor_orgs_users_mentors_custom_voice_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/custom-voice/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_custom_voice_create.md): Set a custom voice for a mentor. This endpoint allows setting a custom voice for a specific mentor, either using the default voice provider or Elevenlabs. Args: request: The HTTP request containing the voice provider and name. org: The organization/tenant identifier. user_id: The ID of the user who owns the mentor link. mentor: The unique identifier of the mentor. Returns: Response: The updated custom voice settings. Raises: BadRequest: If the provided data is invalid or the voice does not exist. NotFound: If the mentor or student does not exist. ## ai_mentor_orgs_users_mentors_custom_voice_tts_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/custom-voice-tts/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_custom_voice_tts_create.md): Generate audio from text using a mentor's custom voice. This endpoint converts the provided text to speech using the custom voice configured for the specified mentor. Args: request: The HTTP request containing the text to convert. org: The organization/tenant identifier. user_id: The ID of the user who owns the mentor link. mentor: The unique identifier of the mentor. Returns: Response: An MP3 audio file of the synthesized speech. Raises: BadRequest: If the text is empty, credentials are not found, or custom voice is not set. NotFound: If the mentor or student does not exist. ## ai_mentor_orgs_users_mentors_edit_scenarios_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/edit-scenarios/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_edit_scenarios_update.md): Update scenarios for a specific mentor. Args: request: The HTTP request containing the updated scenarios. org: The organization/tenant identifier. user_id: The ID of the user making the request. mentor: The identifier of the mentor to update scenarios for. Returns: Response: The updated scenarios for the mentor. Raises: BadRequest: If the provided data is invalid. NotFound: If the specified mentor does not exist. ## ai_mentor_orgs_users_mentors_fork_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/fork/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_fork_create.md): Fork (clone) an existing mentor. Args: request: The HTTP request containing the fork parameters. org: The organization/tenant identifier. mentor: The identifier of the mentor to fork. user_id: The ID of the user initiating the fork. Returns: Response: The newly created forked mentor. Raises: BadRequest: If the provided data is invalid or the fork operation fails. NotFound: If the specified mentor does not exist. ## ai_mentor_orgs_users_mentors_historical_memory_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/historical-memory/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_historical_memory_retrieve.md): Retrieve memory history entries for a specific mentor and user. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user to retrieve memory history for. mentor: The identifier of the mentor to retrieve memory history for. Returns: Response: The memory history entries for the mentor and user. Raises: NotFound: If the specified mentor or memory history does not exist. ## ai_mentor_orgs_users_mentors_memory_progress_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/memory-progress/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_memory_progress_retrieve.md): Mixin that includes the StudentTokenAuthentication and IsAdminUserOrStudent ## ai_mentor_orgs_users_mentors_memory_settings_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/memory-settings/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_memory_settings_retrieve.md): Retrieve memory settings for a specific mentor. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user making the request. mentor: The identifier of the mentor to retrieve settings for. Returns: Response: The memory settings for the mentor. Raises: NotFound: If the specified mentor or settings do not exist. ## ai_mentor_orgs_users_mentors_memory_settings_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/memory-settings/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_memory_settings_create.md): Endpoint for mentor memory item settings. Accessible to platform admins and superusers. Returns: 200: Change mentor memory component item. 400: When request is not valid. ## ai_mentor_orgs_users_mentors_mentor_eval_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/mentor-eval/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_mentor_eval_retrieve.md): Retrieve evaluation criteria for a specific mentor. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user making the request. mentor: The identifier of the mentor to retrieve evaluations for. Returns: Response: The evaluation criteria for the mentor. Raises: NotFound: If the specified mentor or evaluations do not exist. ## ai_mentor_orgs_users_mentors_mentor_eval_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/mentor-eval/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_mentor_eval_create.md): Create or update evaluation criteria for a specific mentor. Args: request: The HTTP request containing the evaluation data. org: The organization/tenant identifier. user_id: The ID of the user making the request. mentor: The identifier of the mentor to create/update evaluations for. Returns: Response: The created or updated evaluation criteria. Raises: BadRequest: If the provided data is invalid or the mentor does not exist. ## ai_mentor_orgs_users_mentors_mentor_eval_execution_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/mentor-eval-execution/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_mentor_eval_execution_create.md): Run an evaluation for a specific mentor. Args: request: The HTTP request containing the evaluation ID. org: The organization/tenant identifier. user_id: The ID of the user making the request. mentor: The identifier of the mentor to evaluate. Returns: Response: The ID of the generated evaluation report. Raises: BadRequest: If the evaluation ID is invalid or the mentor does not match. ## ai_mentor_orgs_users_mentors_public_settings_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/public-settings/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_public_settings_retrieve.md): Retrieve public mentor settings. Args: request: HTTP request instance. user_id: The ID of the user requesting settings. mentor: The mentor identifier (name, slug, or unique_id). org: The organization key. Returns: Response containing the mentor settings or an error message. ## ai_mentor_orgs_users_mentors_reports_mentor_eval_report_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/reports/{report_id}/mentor-eval-report/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_reports_mentor_eval_report_retrieve.md): Retrieve a specific evaluation report. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user making the request. mentor: The identifier of the mentor that was evaluated. report_id: The ID of the evaluation report to retrieve. Returns: Response: The detailed evaluation report. Raises: BadRequest: If the report does not exist, does not match the mentor, or is still being generated. ## ai_mentor_orgs_users_mentors_scenarios_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/scenarios/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_scenarios_retrieve.md): Retrieve available scenarios for a specific mentor. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user making the request. mentor: The identifier of the mentor to retrieve scenarios for. Returns: Response: The available scenarios for the mentor. Raises: NotFound: If the specified mentor or scenarios do not exist. ## Retrieve Mentor Settings - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/settings/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_settings_retrieve.md): Fetch the settings of a mentor within an organization. Only accessible to tenant admins. ## Update Mentor Settings - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/settings/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_settings_update.md): Update various mentor settings including system prompts, tool permissions, and UI configurations. ## ai_mentor_orgs_users_mentors_spaced_repetition_question_stats_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/spaced-repetition-question-stats/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_spaced_repetition_question_stats_retrieve.md): Retrieve spaced repetition question statistics. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user to retrieve statistics for. mentor: The unique identifier of the mentor. Returns: Response: Statistics about the user's performance on spaced repetition questions. Raises: NotFound: If the mentor or student does not exist. ## ai_mentor_orgs_users_mentors_spaced_repetition_recommended_paths_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/spaced-repetition-recommended-paths/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_spaced_repetition_recommended_paths_list.md): Retrieve a list of learning paths associated with a specific mentor and student. This endpoint uses the memory component to establish the learning context for a student under the guidance of a mentor. It verifies that the provided organization identifier matches the mentor's platform key, and then retrieves learning path tags associated with the student's question cards. Each tag is annotated with the total number of question cards and the count of cards with successful repetitions (i.e., correct answers). The learning paths are ordered by the number of correct answers and limited to the top five entries. Args: request: The HTTP request containing the necessary context. org (str): The organization identifier/platform key. user_id (str): The username of the student. mentor (str): The unique identifier of the mentor. *args: Additional positional arguments. kwargs: Additional keyword arguments. Returns: Resp200onse: memory component detail infomrmation Raises: NotFound: If the memory component for the specified mentor and student cannot be found, or if the organization identifier does not match the mentor's platform key. ## ai_mentor_orgs_users_mentors_spaced_repetition_recommended_paths_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/spaced-repetition-recommended-paths/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_spaced_repetition_recommended_paths_update.md): Set a specific learning path for spaced repetition. Args: request: The HTTP request containing the learning path. org: The organization/tenant identifier. user_id: The ID of the user to set the learning path for. mentor: The unique identifier of the mentor. Returns: Response: The set learning path. Raises: BadRequest: If the provided data is invalid. NotFound: If the learning path, mentor, or student does not exist. ## ai_mentor_orgs_users_mentors_star_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/star/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_star_retrieve.md): Endpoint for getting the star status of a mentor. Accessible to students and admins. Returns: 200: Star status. 400: When request is not valid. ## ai_mentor_orgs_users_mentors_star_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/star/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_star_create.md): Endpoint for starring a mentor. Accessible to students and admins. Returns: 200: Star status. 400: When request is not valid. ## ai_mentor_orgs_users_mentors_unstar_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/mentors/{mentor}/unstar/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_mentors_unstar_create.md): Remove a mentor from a user's starred list. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user unstarring the mentor. mentor: The identifier of the mentor to unstar. Returns: Response: The updated star status of the mentor. Raises: NotFound: If the specified mentor or student does not exist. BadRequest: If the request is invalid. ## ai_mentor_orgs_users_metadata_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/metadata](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_metadata_retrieve.md): Retrieve metadata for a mentor. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user making the request. Returns: Response: The mentor metadata. Raises: NotFound: If no metadata exists for the specified mentor. ## ai_mentor_orgs_users_moderation_logs_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/moderation-logs/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_moderation_logs_list.md): Endpoint to view and delete Moderation Logs for a tenant. These can be filtered by username, platform_key and mentor id A search query can be conducted to search through the prompts and reason for the moderation catch event. ## ai_mentor_orgs_users_moderation_logs_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/moderation-logs/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_moderation_logs_retrieve.md): Endpoint to view and delete Moderation Logs for a tenant. These can be filtered by username, platform_key and mentor id A search query can be conducted to search through the prompts and reason for the moderation catch event. ## ai_mentor_orgs_users_moderation_logs_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/moderation-logs/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_moderation_logs_destroy.md): Endpoint to view and delete Moderation Logs for a tenant. These can be filtered by username, platform_key and mentor id A search query can be conducted to search through the prompts and reason for the moderation catch event. ## ai_mentor_orgs_users_periodic_agent_logs_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/periodic-agent-logs/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_periodic_agent_logs_list.md): Endpoint to view logs for periodic agent runs. These logs contain the full mentor output for each run for debugging. Logs are ordered from newest to oldest. However this can be changed. You can also filter logs for a PeriodicAgent by passing the query parameter in the URL. ## ai_mentor_orgs_users_periodic_agent_logs_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/periodic-agent-logs/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_periodic_agent_logs_retrieve.md): Endpoint to view logs for periodic agent runs. These logs contain the full mentor output for each run for debugging. Logs are ordered from newest to oldest. However this can be changed. You can also filter logs for a PeriodicAgent by passing the query parameter in the URL. ## ai_mentor_orgs_users_periodic_agents_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/periodic-agents/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_periodic_agents_list.md): Endpoint to create and view, update and delete periodic agents. Periodic agents are schedulers issued for mentors. These are configured with input prompt (if any) as well as a cron schedule to trigger the periodic agent. Access to these are restricted to platform admins and tenant administrators Session information for running the periodic agent will be generated with the credentials of the user (platform administrator) who created the agent. A Periodic Agent is allowed to have a and . When a is set for a Periodic Agent, a post request with data entries containing the log and timestamp of the run will be made to the callback_url provided. Here is the payload structure: The payload is encrypted using the provided. You can validate the payload using the X-Hub-Signature-256 signature header for request data. This is a Sha256 encoded HMAC hex digest of the payload body. ## ai_mentor_orgs_users_periodic_agents_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/periodic-agents/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_periodic_agents_create.md): Endpoint to create and view, update and delete periodic agents. Periodic agents are schedulers issued for mentors. These are configured with input prompt (if any) as well as a cron schedule to trigger the periodic agent. Access to these are restricted to platform admins and tenant administrators Session information for running the periodic agent will be generated with the credentials of the user (platform administrator) who created the agent. A Periodic Agent is allowed to have a and . When a is set for a Periodic Agent, a post request with data entries containing the log and timestamp of the run will be made to the callback_url provided. Here is the payload structure: The payload is encrypted using the provided. You can validate the payload using the X-Hub-Signature-256 signature header for request data. This is a Sha256 encoded HMAC hex digest of the payload body. ## ai_mentor_orgs_users_periodic_agents_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/periodic-agents/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_periodic_agents_retrieve.md): Endpoint to create and view, update and delete periodic agents. Periodic agents are schedulers issued for mentors. These are configured with input prompt (if any) as well as a cron schedule to trigger the periodic agent. Access to these are restricted to platform admins and tenant administrators Session information for running the periodic agent will be generated with the credentials of the user (platform administrator) who created the agent. A Periodic Agent is allowed to have a and . When a is set for a Periodic Agent, a post request with data entries containing the log and timestamp of the run will be made to the callback_url provided. Here is the payload structure: The payload is encrypted using the provided. You can validate the payload using the X-Hub-Signature-256 signature header for request data. This is a Sha256 encoded HMAC hex digest of the payload body. ## ai_mentor_orgs_users_periodic_agents_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/periodic-agents/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_periodic_agents_update.md): Endpoint to create and view, update and delete periodic agents. Periodic agents are schedulers issued for mentors. These are configured with input prompt (if any) as well as a cron schedule to trigger the periodic agent. Access to these are restricted to platform admins and tenant administrators Session information for running the periodic agent will be generated with the credentials of the user (platform administrator) who created the agent. A Periodic Agent is allowed to have a and . When a is set for a Periodic Agent, a post request with data entries containing the log and timestamp of the run will be made to the callback_url provided. Here is the payload structure: The payload is encrypted using the provided. You can validate the payload using the X-Hub-Signature-256 signature header for request data. This is a Sha256 encoded HMAC hex digest of the payload body. ## ai_mentor_orgs_users_periodic_agents_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/periodic-agents/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_periodic_agents_partial_update.md): Endpoint to create and view, update and delete periodic agents. Periodic agents are schedulers issued for mentors. These are configured with input prompt (if any) as well as a cron schedule to trigger the periodic agent. Access to these are restricted to platform admins and tenant administrators Session information for running the periodic agent will be generated with the credentials of the user (platform administrator) who created the agent. A Periodic Agent is allowed to have a and . When a is set for a Periodic Agent, a post request with data entries containing the log and timestamp of the run will be made to the callback_url provided. Here is the payload structure: The payload is encrypted using the provided. You can validate the payload using the X-Hub-Signature-256 signature header for request data. This is a Sha256 encoded HMAC hex digest of the payload body. ## ai_mentor_orgs_users_periodic_agents_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/periodic-agents/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_periodic_agents_destroy.md): Endpoint to create and view, update and delete periodic agents. Periodic agents are schedulers issued for mentors. These are configured with input prompt (if any) as well as a cron schedule to trigger the periodic agent. Access to these are restricted to platform admins and tenant administrators Session information for running the periodic agent will be generated with the credentials of the user (platform administrator) who created the agent. A Periodic Agent is allowed to have a and . When a is set for a Periodic Agent, a post request with data entries containing the log and timestamp of the run will be made to the callback_url provided. Here is the payload structure: The payload is encrypted using the provided. You can validate the payload using the X-Hub-Signature-256 signature header for request data. This is a Sha256 encoded HMAC hex digest of the payload body. ## ai_mentor_orgs_users_pin_message_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/pin-message/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_pin_message_list.md): Retrieve pinned messages for a user. Args: request: The HTTP request. org: Organization key identifier. user_id: The username of the student. Returns: Response: Paginated list of pinned messages. Raises: NotFound: If the student or session does not exist. ## ai_mentor_orgs_users_pin_message_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/pin-message/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_pin_message_create.md): Create a pinned message for a user session. Args: request: The HTTP request containing session details. org: Organization key identifier. user_id: The username of the student. Returns: Response: Status 201 on success. Raises: NotFound: If the student does not exist. ValidationError: If request data is invalid. ## ai_mentor_orgs_users_pin_message_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/pin-message/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_pin_message_destroy.md): Delete a pinned message for a user. Args: request: The HTTP request containing session details. org: Organization key identifier. user_id: The username of the student. Returns: Response: Status 204 on success. Raises: NotFound: If the student or pinned message does not exist. ValidationError: If request data is invalid. ## ai_mentor_orgs_users_planned_jobs_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/planned-jobs/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_planned_jobs_list.md): Endpoints for viewing jobs and their status A job run refers to a task with steps that an agent is going to undertake. You can filter job runs by their status. Note that for a single user and a specified session, at most only one JobRun instance is active at any point in time. ## ai_mentor_orgs_users_planned_jobs_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/planned-jobs/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_planned_jobs_retrieve.md): Endpoints for viewing jobs and their status A job run refers to a task with steps that an agent is going to undertake. You can filter job runs by their status. Note that for a single user and a specified session, at most only one JobRun instance is active at any point in time. ## ai_mentor_orgs_users_playwright_scripts_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/playwright-scripts/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_playwright_scripts_list.md): Endpoints for viewing playwright scripts and updating playwright scripts for a tenant and user. ## ai_mentor_orgs_users_playwright_scripts_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/playwright-scripts/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_playwright_scripts_create.md): Endpoints for viewing playwright scripts and updating playwright scripts for a tenant and user. ## ai_mentor_orgs_users_playwright_scripts_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/playwright-scripts/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_playwright_scripts_retrieve.md): Endpoints for viewing playwright scripts and updating playwright scripts for a tenant and user. ## ai_mentor_orgs_users_playwright_scripts_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/playwright-scripts/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_playwright_scripts_update.md): Endpoints for viewing playwright scripts and updating playwright scripts for a tenant and user. ## ai_mentor_orgs_users_playwright_scripts_partial_update - [PATCH /api/ai-mentor/orgs/{org}/users/{user_id}/playwright-scripts/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_playwright_scripts_partial_update.md): Endpoints for viewing playwright scripts and updating playwright scripts for a tenant and user. ## ai_mentor_orgs_users_playwright_scripts_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/playwright-scripts/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_playwright_scripts_destroy.md): Endpoints for viewing playwright scripts and updating playwright scripts for a tenant and user. ## ai_mentor_orgs_users_predictive_analytics_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/predictive-analytics/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_predictive_analytics_create.md): Retrieve predictive analytics based on historical data variables. Args: request: HTTP request containing predictive analytics input. org: Organization key identifier. Returns: - 200: Object containing predicted data. - 400: When AI response cannot be loaded into JSON. - 404: When OpenAI key for the tenant is not set. - 429: When OpenAI request exceeds the rate limit. Example: ## ai_mentor_orgs_users_recent_messages_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/recent-messages/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_recent_messages_retrieve.md): Retrieves recent chat messages based on provided query parameters. Returns: 200: Paginated List of chat messages. 400: Invalid query parameters. ## ai_mentor_orgs_users_recently_accessed_mentors_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/recently-accessed-mentors/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_recently_accessed_mentors_list.md): Endpoint for listing most recently accessed mentors. Accessible to students and admins. Returns: 200: List of most recently accessed mentors. 400: When request is not valid. ## ai_mentor_orgs_users_recommend_courses_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/recommend-courses/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_recommend_courses_retrieve.md): Retrieve recommended courses for a specific user. Args: request: The HTTP request containing query parameters. org: The organization/tenant identifier. user_id: The ID of the user to get recommendations for. Returns: Response: A list of recommended courses. Raises: BadRequest: If the query parameters are invalid. NotFound: If the OpenAI API key for the tenant is not found. TooManyRequests: If rate limits are exceeded. ServerError: If there's an error processing the AI response. ## ai_mentor_orgs_users_recommend_courses_block_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/recommend-courses-block/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_recommend_courses_block_retrieve.md): Retrieve recommended course blocks for a specific user. Args: request: The HTTP request containing query parameters. org: The organization/tenant identifier. user_id: The ID of the user to get recommendations for. Returns: Response: A list of recommended course blocks. Raises: BadRequest: If the query parameters are invalid. ## ai_mentor_orgs_users_resources_web_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/resources/web/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_resources_web_create.md): Search for web resources based on a query. Args: request: The HTTP request containing the search query. org: The organization/tenant identifier. user_id: The ID of the user making the request. Returns: Response: A list of web resources matching the query. Raises: ValidationError: If the search fails or returns no results. ## ai_mentor_orgs_users_safety_logs_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/safety-logs/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_safety_logs_list.md): Endpoint to view and delete Safety System Logs for a tenant. These can be filtered by username, platform_key and mentor id A search query can be conducted to search through the prompts and reason for the moderation catch event. ## ai_mentor_orgs_users_safety_logs_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/safety-logs/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_safety_logs_retrieve.md): Endpoint to view and delete Safety System Logs for a tenant. These can be filtered by username, platform_key and mentor id A search query can be conducted to search through the prompts and reason for the moderation catch event. ## ai_mentor_orgs_users_safety_logs_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/safety-logs/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_safety_logs_destroy.md): Endpoint to view and delete Safety System Logs for a tenant. These can be filtered by username, platform_key and mentor id A search query can be conducted to search through the prompts and reason for the moderation catch event. ## ai_mentor_orgs_users_session_detail_mentors_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/session-detail/mentors/{mentor}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_session_detail_mentors_list.md): Retrieve session details including message counts and timestamps. Query Parameters: page (optional, int): Page number for pagination. Returns: - 200: Paginated list of session details. - 404: Session not found. ## ai_mentor_orgs_users_sessionid_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/sessionid/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessionid_list.md): Retrieve user sessions filtered by start date and end date. Query Parameters: start_date (optional, ISO format): Start date for filtering sessions. end_date (optional, ISO format): End date for filtering sessions. Returns: - 200: List of session IDs with insertion timestamps. - 400: Invalid request parameters. ## ai_mentor_orgs_users_sessions_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_create.md): Retrieve or create a chat session with a mentor. Passing as results in using all tools assigned to the mentor. To specify that no tools be used, pass an empty list. Args: request: HTTP request containing mentor details. org: Organization key identifier. user_id (optional): Username for authentication (if required by the mentor). Returns: Response: JSON object containing the session ID. Raises: Http404: If the mentor is not found. ValidationError: If the username is invalid. ValidationError: If one or more tool slugs are invalid. ## Retrieve Chat Messages - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/{session_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_retrieve.md): Fetches chat messages for a specific session. ## ai_mentor_orgs_users_sessions_update - [PUT /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/{session_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_update.md): Update the title of a chat session and its tools ## ai_mentor_orgs_users_sessions_destroy - [DELETE /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/{session_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_destroy.md): Deletes all messages in a chat session. ## ai_mentor_orgs_users_sessions_browser_screenshot_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/{session_id}/browser-screenshot/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_browser_screenshot_retrieve.md): Endpoint to fetch the logs of a session. Logs are cached for up to 1 hour of their creation: accessing the logs after an hour will result in an empty data. This is intentional and made to avoid cases where logs bloat our in-memory db. Accessible to tenant admins and students. Url Args: org (str): The organization's platform key. user_id (str): The username identifier of the individual. session_id (str): The session id. Returns: 200: a SessionBrowserScreenshot object ## ai_mentor_orgs_users_sessions_download_session_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/{session_id}/download-session](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_download_session_retrieve.md): Retrieves the chat history for a session as a plain text file. Returns: 200: txt file containing coversation ## ai_mentor_orgs_users_sessions_memory_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/{session_id}/memory/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_memory_retrieve.md): Retrieve memory data for a specific session. This endpoint returns the memory components (knowledge gaps, lessons learned, help requests) that were generated during the specified chat session. Args: org: The organization/tenant identifier. user_id: The ID of the user who owns the session. session_id: The ID of the session to retrieve memory for. Returns: Response: The memory data associated with the session. Raises: NotFound: If the session does not exist or does not belong to the user. ## ai_mentor_orgs_users_sessions_shell_logs_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/{session_id}/shell-logs/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_shell_logs_retrieve.md): Retrieve shell logs for a specific session. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user who owns the session. session_id: The ID of the session to retrieve logs for. Returns: Response: The shell logs for the specified session. Raises: NotFound: If the specified session does not exist. ## ai_mentor_orgs_users_sessions_suggestion_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/{session_id}/suggestion](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_suggestion_list.md): Retrieve a list of related questions based on a chat session. ## ai_mentor_orgs_users_sessions_tasks_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/sessions/{session_id}/tasks/{task_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_sessions_tasks_retrieve.md): Retrieves the chat history for a given session if the export task is ready. Returns: 200: When task is not ready. 200: chat history object 400: When data is not valid. ## ai_mentor_orgs_users_settings_tenant_llm_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/settings/tenant-llm/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_settings_tenant_llm_list.md): Retrieve all LLM models assigned to a specific tenant. Args: request: The HTTP request. org: The unique identifier of the tenant. Returns: Response: A list of LLM models assigned to the tenant. Raises: NotFound: If the specified tenant does not have any associated models. ValidationError: If an unexpected error occurs. ## ai_mentor_orgs_users_settings_tenant_llm_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/settings/tenant-llm/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_settings_tenant_llm_create.md): Create or update an LLM model for a tenant. Accessible only to tenant administrators. Args: request: The HTTP request containing LLM model details. org: The unique identifier of the tenant. Returns: Response: Details of the newly created or updated LLM model. Raises: ValidationError: If request data is invalid. NotFound: If the tenant does not exist. ## ai_mentor_orgs_users_starred_mentors_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/starred-mentors/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_starred_mentors_list.md): Retrieve a list of mentors starred by a specific user. Args: request: The HTTP request. org: The organization/tenant identifier. user_id: The ID of the user to retrieve starred mentors for. Returns: Response: A list of the user's starred mentors, sorted by most recently accessed. Raises: NotFound: If the specified student does not exist. BadRequest: If the request is invalid. ## ai_mentor_orgs_users_tasks_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/tasks/{task_id}](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_tasks_retrieve.md): Retrieves the status of a task using its task ID. Accessible to both tenant admins and students. Returns: 200: task id ## ai_mentor_orgs_users_tasks_sessions_create - [POST /api/ai-mentor/orgs/{org}/users/{user_id}/tasks/sessions/{session_id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_tasks_sessions_create.md): Export chat history for a session. Returns: 200: Task ID for the export operation. ## ai_mentor_orgs_users_voices_list - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/voices/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_voices_list.md): Retrieve a list of available voice options. Args: request: The HTTP request. Returns: Response: A list of available voice options. Raises: NotFound: If no voice options are available. ## ai_mentor_orgs_users_voices_retrieve - [GET /api/ai-mentor/orgs/{org}/users/{user_id}/voices/{id}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_users_voices_retrieve.md): Retrieve details of a specific voice option. Args: request: The HTTP request. pk: The primary key of the voice option to retrieve. Returns: Response: The details of the specified voice option. Raises: NotFound: If the specified voice option does not exist. ## ai_mentor_orgs_webhooks_azure_trigger_create - [POST /api/ai-mentor/orgs/{org}/webhooks/azure/trigger/{slug}/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_webhooks_azure_trigger_create.md) ## ai_mentor_orgs_webhooks_github_pullrequest_create - [POST /api/ai-mentor/orgs/{org}/webhooks/github/pullrequest/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_orgs_webhooks_github_pullrequest_create.md): Handle incoming POST requests from GitHub webhook for pull requests. Args: request: The HTTP request object containing the webhook payload. org: the organizaion name. Returns: Response: A response indicating the result of processing the webhook event. ## ai_mentor_webhooks_azure_emailchat_create - [POST /api/ai-mentor/webhooks/azure/emailchat/](https://docs.ibl.ai/apis/ibl/ai-mentor/ai_mentor_webhooks_azure_emailchat_create.md)