DOCUMENTATION
Ship an agentic assistant inside your product
EERRAA is an open-source, self-hosted, white-label AI agent platform. A user asks in your product's chat, the agent reads your docs, calls your tools, does the thing, and replies. It acts, it does not just talk. You bring your own model key, so you never pay EERRAA for LLM tokens.
New here? Start with the Quickstart and get a live agent in about five minutes. Then read the core concepts to understand how the pieces fit together.
Getting started
Guides
Embed the widgetDrop the vanilla-JS widget into any page. Themes, position, JS API.Identify your usersOpen vs signed identity. HMAC signing to gate private features.Connect toolsGive the agent actions as SSRF-guarded webhooks with approvals.MCP serversConnect a remote MCP server and auto-import its whole toolset.Knowledge baseUpload docs for hybrid pgvector retrieval across Arabic and English.Per-user credentialsAn encrypted vault, injected into tool auth without reaching the model.SchedulingLet users create one-off and recurring tasks that run unattended.Model keysBring your own Anthropic, OpenAI, or Google key. Tried in priority order.Self-hostingRun the whole platform on your own box. One install, many agents.
API reference
The public API lives at https://eerraa.online and authenticates with a project key: Authorization: Bearer era_<project key>. Chat streams over server-sent events, everything else is plain JSON.
OverviewBase URL, auth, conventions, and how the endpoints fit together.Chat (SSE)POST /v1/chat and every event the stream can emit.History & sessionsRead history, delete sessions, send thumbs up or down.CredentialsProvision and revoke per-user vault secrets, server to server.KnowledgeUpload, list, and delete a user's documents.Scheduled tasksThe endpoints behind the My-tasks panel.MCP OAuthPer-user MCP connections started from the widget.Widget & JS APIEmbed attributes, ERAConfig, and the window.ERA methods.Error codesEvery error code the API returns and what it means.
