Documentation Index
Fetch the complete documentation index at: https://mintlify.com/danny-avila/LibreChat/llms.txt
Use this file to discover all available pages before exploring further.
Introduction
LibreChat provides a comprehensive REST API built on Express.js that powers all client-server interactions. The API follows RESTful principles and supports multiple authentication methods for flexible integration.Base URL Configuration
The API server can be configured through environment variables:When
HOST=0.0.0.0, the server listens on all network interfaces but should be accessed via http://localhost:{PORT}.API Architecture
LibreChat’s API is organized into logical route groups:Core Routes
| Route | Purpose | Authentication |
|---|---|---|
/api/auth | Authentication endpoints | Public/JWT |
/api/user | User management | JWT Required |
/api/messages | Message operations | JWT Required |
/api/convos | Conversation management | JWT Required |
/api/presets | Preset configurations | JWT Required |
/api/prompts | Prompt management | JWT Required |
Advanced Features
| Route | Purpose | Authentication |
|---|---|---|
/api/assistants | AI Assistants API | JWT Required |
/api/agents | Agent system | JWT Required |
/api/files | File upload/management | JWT Required |
/api/search | Search functionality | JWT Required |
/api/models | Model configuration | JWT Required |
/api/endpoints | Endpoint management | JWT Required |
Administration
| Route | Purpose | Authentication |
|---|---|---|
/api/admin | Admin operations | JWT + Admin Role |
/api/keys | API key management | JWT Required |
/api/api-keys | Agent API keys | JWT Required |
/api/roles | Role management | JWT Required |
/api/permissions | Access permissions | JWT Required |
/api/balance | Token balance | JWT Required |
Integration & Social
| Route | Purpose | Authentication |
|---|---|---|
/oauth | OAuth providers | Public |
/api/share | Share conversations | JWT Required |
/api/actions | Custom actions | JWT Required |
/api/mcp | MCP integration | JWT Required |
/api/memories | Memory management | JWT Required |
/api/tags | Tag system | JWT Required |
System Routes
Request/Response Format
Content Type
All API requests should use JSON:Request Body Limits
Middleware Stack
The API employs several security and processing middleware:Security Middleware
Compression
Response compression is enabled by default:Error Handling
The API uses a centralized error controller:Standard Error Response
Common HTTP Status Codes
| Code | Meaning | Usage |
|---|---|---|
200 | Success | Request completed successfully |
201 | Created | Resource created successfully |
400 | Bad Request | Invalid request parameters |
401 | Unauthorized | Missing or invalid authentication |
403 | Forbidden | Insufficient permissions |
404 | Not Found | Resource not found |
422 | Unprocessable Entity | Validation failed |
429 | Too Many Requests | Rate limit exceeded |
500 | Internal Server Error | Server-side error |
Rate Limiting
LibreChat implements rate limiting on sensitive endpoints:Rate limits help protect against brute force attacks and abuse. Limits vary by endpoint type.
CORS Configuration
CORS is enabled for cross-origin requests:Sub-Directory Deployment
LibreChat supports serving the application from a sub-directory:Set
DOMAIN_CLIENT=https://yourdomain.com/chat to serve from the /chat path.Database Connection
The API connects to MongoDB on startup:Startup Sequence
The server initialization follows this sequence:- Database Connection - Connect to MongoDB
- Database Seeding - Initialize required collections
- Configuration Loading - Load app configuration
- File Storage - Initialize file storage system
- Startup Checks - Validate system requirements
- Permissions - Update interface permissions
- Middleware Setup - Configure Express middleware
- Authentication - Initialize Passport strategies
- Routes Registration - Mount API routes
- Server Start - Listen on configured port
- Post-Startup Tasks - Initialize MCP, OAuth managers, migrations
Environment Variables
Key environment variables for API configuration:Next Steps
- Authentication Methods - Learn about JWT, OAuth, and session-based auth
- Conversations API - Manage conversations
- Messages API - Send and receive messages
- Agents API - Create and manage agents