Core Concepts
Understanding Eve's core concepts will help you get the most out of the platform. This guide explains the fundamental building blocks and how they work together.
Organizations
Organizations are the top-level containers in Eve that provide multi-tenant isolation.
- Each organization is completely isolated from others
- All resources (users, endpoints, templates, workflows) belong to an organization
- Organizations are created with a special creation token
- Each organization has its own set of SuperAdmin users
Organization
├── Users (with access levels)
├── Endpoints (database connections)
├── Templates (reusable operations)
└── Workflows (multi-step automations)Users and Access Levels
Eden uses a hierarchical access level system with four tiers:
| Level | Capabilities |
|---|---|
| Read | View resources and execute read-only queries |
| Write | All Read permissions + execute write queries |
| Admin | All Write permissions + manage users, endpoints, templates |
| SuperAdmin | All Admin permissions + manage other admins, organization |
Each level includes all permissions from lower levels. A Write user automatically has Read permissions.
Permission Rules
- Users can only manage users with lower access levels
- Only SuperAdmins can create/modify Admin and SuperAdmin users
- Users can always modify their own profile information
Endpoints
Endpoints are managed connections to external systems. They provide:
- Unified interface for different database types
- Connection pooling for performance
- RBAC integration for access control
- Health monitoring for reliability
Endpoint Categories
| Category | Examples |
|---|---|
| Databases | PostgreSQL, MySQL, MongoDB, Redis, ClickHouse, Snowflake, and vector stores. |
| LLMs | OpenAI, Anthropic, Ollama, OpenRouter, Azure OpenAI, and compatible providers. |
| Applications | Google Workspace, GitHub, GitLab, Datadog, Salesforce, and other business or operational systems. |
| Servers, storage, and APIs | HTTP services, S3, and Lambda. |
| Platforms | AWS, Azure, and Databricks. |
| Agents | Codex, Claude Code, Hermes, and supported compatible agent clients. |
See Endpoints for category pages and connection-specific configuration.
Endpoint Operations
| Operation | Description | Access Required |
|---|---|---|
| Read | Query data without modification | Read |
| Write | Insert, update, or delete data | Write |
| Transaction | Multiple operations in one atomic unit | Write |
Templates
Templates are reusable, parameterized operations that define database queries or API calls.
Why Use Templates?
- Reusability: Define once, use many times with different parameters
- Security: Parameters are properly escaped to prevent injection
- Consistency: Ensure queries follow best practices
- Access Control: Templates have their own RBAC permissions
Template Structure
{
"id": "get_user_orders",
"kind": "Read",
"template": {
"query": "SELECT * FROM orders WHERE user_id = {{user_id}}",
"params": ["{{user_id}}"]
}
}Templates use Handlebars syntax for parameter substitution:
{{parameter}}- Simple value substitution{{#if condition}}...{{/if}}- Conditional logic{{#each array}}...{{/each}}- Loop over arrays
Workflows
Workflows are multi-step operations that orchestrate multiple templates or actions.
Use workflows when you need to:
- Execute operations across multiple endpoints
- Implement conditional logic between steps
- Create complex data pipelines
- Automate multi-database transactions
Role-Based Access Control (RBAC)
RBAC controls who can access what resources at a granular level.
Resource-Level Permissions
You can grant different access levels per resource:
User: developer@company.com
├── Organization: Read
├── Endpoint "analytics_db": Read
├── Endpoint "app_db": Write
└── Template "user_report": ReadPermission Hierarchy
- Resource-specific permission takes precedence
- Organization-level permission applies if no resource-specific permission
- No access if neither exists
Example
A user with organization-level Write access:
- Has Write access to all endpoints by default
- Can be granted Admin on specific endpoints (override higher)
- Can be restricted to Read on specific endpoints (override lower)
Authentication
Eden uses JWT (JSON Web Token) authentication:
- Login with username/password to get a token
- Include token in Authorization header for API requests
- Refresh token before expiration to maintain session
Authorization: Bearer <jwt_token>Token Contents
JWT tokens contain:
- User ID and UUID
- Organization ID and UUID
- Expiration timestamp
API Structure
All API endpoints follow a consistent pattern:
http://{host}:8000/api/v1/{resource}Response Format
Success:
{
"status": "success",
"data": { ... }
}Error:
{
"error": "Error Type",
"message": "Detailed error message"
}Putting It Together
Here's how the concepts work together in a typical workflow:
- Organization is created with a SuperAdmin
- SuperAdmin creates additional users with appropriate access levels
- Admin creates endpoints to connect databases
- Admin grants RBAC permissions to users for specific endpoints
- Users authenticate and receive JWT tokens
- Users execute queries against endpoints they have access to
- Templates encapsulate common queries for reuse
- Workflows orchestrate complex multi-step operations
Next Steps
- Endpoints - Connect your databases
- RBAC - Configure access control
- Templates - Create reusable operations
- API Reference - Full API documentation