Skip to main content
MongoDB repository patterns and data access methods used in the Weam AI Node.js backend for structured data operations.

Usage Pattern

All repository methods follow consistent patterns:
  1. Import the required repository module
  2. Call the method with appropriate parameters
  3. Handle the returned data

Repository Modules

CompanyRepository

fetchCompanyData(companyId)

Retrieves company metadata from MongoDB using company ID. Parameters:
  • companyId: string - Unique company identifier
Returns: Company document object with all metadata

ChatSessionRepository

fetchChatSessionData(sessionId)

Retrieves chat session data from MongoDB using session ID. Parameters:
  • sessionId: string - Unique chat session identifier
Returns: Chat session document with messages and metadata

LLMModelRepository

fetchCompanyModelData(apiKeyId)

Retrieves LLM configuration data using API key identifier. Parameters:
  • apiKeyId: string - API key identifier
Returns: Model configuration including API credentials and settings

EmbeddingModelRepository

fetchEmbeddingModelData(apiKeyId)

Fetches embedding model configurations and vector settings. Parameters:
  • apiKeyId: string - API key identifier
Returns: Embedding model configuration with dimension and provider details

FileRepository

fetchFileData(fileId)

Retrieves file metadata for user or system files. Parameters:
  • fileId: string - Unique file identifier
Returns: File metadata including storage location and processing status

ChatMemberRepository

fetchChatMemberData(chatSessionId)

Fetches chat participant data for session management. Parameters:
  • chatSessionId: string - Chat session identifier
Returns: Array of chat members with roles and permissions

AgentRepository

fetchAgentData(agentId)

Retrieves agent configuration including system prompts and settings. Parameters:
  • agentId: string - Agent identifier
Returns: Agent configuration with prompts, tools, and metadata

DocumentRepository

fetchDocumentData(documentId)

Retrieves document metadata and storage information. Parameters:
  • documentId: string - Document identifier
Returns: Document metadata including chunks and embedding status

VectorRepository

searchVectors(query, options)

Performs vector similarity search in Pinecone. Parameters:
  • query: string - Search query text
  • options: object - Search configuration
Returns: Array of relevant document chunks with similarity scores