# Search and filter AI mentors across the platform Search and filter AI mentors with support for comprehensive filtering, pagination, and detailed mentor information. This endpoint supports both anonymous and authenticated users with different access levels. Anonymous Users: - Access to public mentors only (VIEWABLE_BY_ANYONE) - Limited search capabilities - No personalization Authenticated Users: - Full access based on platform permissions (scoped to requested platform) - Personalized results - Access to tenant-specific mentors Available Filters: - query: Search term to filter mentors by name or description - tenant: Filter by tenant/organization platform key(s) - category: Filter by mentor category (comma-separated) - subjects: Filter by mentor subject (comma-separated) - types: Filter by mentor type (comma-separated) - llm: Filter by LLM provider (comma-separated, e.g., GPT-4, Claude) - visibility: Filter by visibility level (comma-separated: viewable_by_anyone, viewable_by_tenant_students, viewable_by_tenant_admins) - created_by: Filter mentors created by specific user (for personalized search) - include_main_public_mentors: Include main tenant public mentors Facets: The response includes facets with aggregated counts for all filterable attributes: - categories, subjects, types, llm_providers, visibility All facet values can be used as filter parameters in subsequent requests. Notes: - Detail view is removed; use the ibl_ai_mentor app for mentor details - include_main_public_mentors=true shows only VIEWABLE_BY_ANYONE mentors from the main tenant across tenants - For authenticated requests, platform_key is required when username is provided - Frontend uses llm parameter name (backend maps to llm_provider automatically) Endpoint: GET /api/ai-search/mentors/ Version: 4.84.1-ai-plus Security: PlatformApiKeyAuthentication ## Query parameters: - `category` (string) Mentor category filter - `created_by` (string) Filter mentors created by specific user (for personalized search) - `include_main_public_mentors` (boolean) Include main tenant public mentors (VIEWABLE_BY_ANYONE) when true - `limit` (integer) Number of results per page - `llm` (string) LLM provider filter - `offset` (integer) Number of results to skip - `platform_key` (string, required) Platform key for RBAC enforcement - `query` (string) Search query for mentors - `subjects` (string) Mentor subject filter - `tenant` (string) Tenant key(s) (CSV) - `types` (string) Mentor type filter - `visibility` (string) Mentor visibility filter (viewable_by_anyone, viewable_by_tenant_students, viewable_by_tenant_admins) ## Response 200 fields (application/json): - `results` (array, required) List of mentor search results - `count` (integer, required) Total number of results - `next` (string,null) URL for next page of results - `previous` (string,null) URL for previous page of results - `current_page` (integer, required) Current page number - `total_pages` (integer, required) Total number of pages ## Response 400 fields ## Response 500 fields