Documentation

Getting Started

Getting Started with EasyRAG

EasyRAG is a Retrieval-Augmented Generation (RAG) as a Service platform that makes it easy to build AI-powered document search and question-answering systems.


What is EasyRAG?

EasyRAG handles the complex infrastructure for RAG applications:

  • Document Processing: Upload PDFs, Word docs, spreadsheets, presentations, and media files
  • Automatic Chunking: Intelligent text splitting with configurable chunk sizes
  • Vector Indexing: Embeddings stored in Qdrant for fast semantic search
  • Transcription: Automatic speech-to-text for audio and video files
  • Multi-Tenant: Built-in customer and dataset isolation
  • Secure: Frontend tokens for safe browser access

Core Concepts

Datasets

A dataset is a logical container for related documents. Think of it as a project or knowledge base.

Examples:

  • customer-support – Help documentation
  • legal-contracts – Contract database
  • user-123-personal – Per-user document storage

Files

Documents uploaded to a dataset. Supported formats:

  • Documents: PDF, DOCX, XLSX, PPTX, CSV
  • Media: MP3, WAV, MP4 (auto-transcribed)

Each file is:

  • Chunked into smaller pieces (default: 300 tokens)
  • Converted to vector embeddings
  • Indexed for semantic search
  • Stored with custom metadata

Authentication

Two authentication methods:

  1. API Keys (Backend)

    • Full access to your account
    • Generate in the dashboard
    • Use for server-side operations
  2. Frontend Tokens (Browser/Mobile)

    • Short-lived (max 24 hours)
    • Scoped to a single dataset
    • Created via /v1/tokens/create

Quick Start

1. Get Your API Key

Sign up at easyrag.com and generate an API key from the dashboard.

2. Upload Your First Document

bash
curl -X POST https://api.easyrag.com/v1/files/upload \ -H "Authorization: Bearer YOUR_API_KEY" \ -F "datasetId=my-first-dataset" \ -F "file=@document.pdf"

3. Search Your Document

bash
curl -X POST https://api.easyrag.com/v1/search \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "datasetId": "my-first-dataset", "question": "What is this document about?" }'

4. Get an AI Answer

bash
curl -X POST https://api.easyrag.com/v1/query \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "datasetId": "my-first-dataset", "question": "Summarize the key points" }'

API Endpoints

EndpointMethodPurpose
/v1/tokens/createPOSTCreate frontend token
/v1/files/uploadPOSTUpload files to dataset
/v1/filesGETList files in dataset
/v1/files/:fileIdGETGet file details + download URL
/v1/files/:fileIdDELETEDelete single file
/v1/datasets/:datasetId/filesDELETEDelete all files in dataset
/v1/filesDELETEDelete all customer files
/v1/searchPOSTSemantic search (returns chunks)
/v1/queryPOSTAI-generated answers (RAG)

Use Cases

1. Customer Support Chatbot

Upload your help documentation and let users ask questions:

javascript
// Upload docs (once) await uploadFiles('support-docs', helpFiles); // User asks question const answer = await query('support-docs', 'How do I reset my password?');

2. Document Management System

Let users search their uploaded documents:

javascript
// User uploads await uploadFiles(`user-${userId}`, userFiles); // User searches const results = await search(`user-${userId}`, searchQuery);

3. Custom RAG Pipeline

Use EasyRAG for retrieval, bring your own LLM:

javascript
// Get relevant context const chunks = await search('my-dataset', question); // Use your own LLM const answer = await yourLLM.complete({ context: chunks.map(c => c.pageContent).join('\n'), question });

4. Multi-Language Support

Upload documents in any language (embeddings support 100+ languages):

javascript
await uploadFiles('multilingual-docs', [ 'manual-en.pdf', 'manual-es.pdf', 'manual-fr.pdf' ]); // Search works across all languages const results = await search('multilingual-docs', 'comment réinitialiser');

Next Steps

  1. Authentication – Learn about API keys and frontend tokens
  2. Uploading Files – Detailed upload documentation
  3. Search – Semantic search API
  4. Query – AI-powered answers

Pricing

Pay-As-You-Go

  • File Upload: 1 credit per file
  • Search/Query: 0.1 credit per request
  • Transcription: 0.1 credit per minute

Free Tier

  • 20 credits on signup
  • About 20 file uploads or 200 queries

Credit Packs

Purchase credits in the dashboard:

  • Small: 100 credits ($5)
  • Medium: 500 credits ($20)
  • Large: 1200 credits ($40)

Base URL

All API requests use:

https://api.easyrag.com/v1

Support


Limits

  • Document files: 100 MB max
  • Media files: 2 GB max
  • Frontend tokens: 24 hour max TTL
  • API rate limits: Contact support for enterprise limits

Technology Stack

EasyRAG is built on:

  • Embeddings: OpenAI text-embedding-3-small
  • LLM: GPT-4.1-mini
  • Vector DB: Qdrant
  • Storage: Google Cloud Storage
  • Transcription: Whisper API
  • Hosting: Firebase Cloud Functions + Cloud Run