Organizations are the top-level entities in Eden-MDBS that provide isolated multi-tenant environments. They serve as the fundamental boundary for access control, resource management, and user isolation.
Organizations are multi-tenant containers that:
Organizations require a creation token (set via EDEN_NEW_ORG_TOKEN environment variable on the server).
curl http://{host}:8000/api/v1/new \
-H "Content-Type: application/json" \
-H "Authorization: Bearer {EDEN_NEW_ORG_TOKEN}" \
-d '{
"id": "my_company",
"super_admins": [
{
"username": "admin",
"password": "secure_password_123"
}
]
}'Response:
{
"id": "my_company",
"uuid": "550e8400-e29b-41d4-a716-446655440000"
}curl http://{host}:8000/api/v1/organizations \
-H "Authorization: Bearer $TOKEN"Response:
{
"status": "success",
"data": {
"id": "my_company",
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"description": "My Company's Eden Organization",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z",
"eden_nodes": 2,
"super_admins": 1,
"users": 15,
"endpoints": 8,
"templates": 25,
"workflows": 5
}
}Include the X-Eden-Verbose: true header to get complete organization details including UUIDs:
curl http://{host}:8000/api/v1/organizations \
-H "Authorization: Bearer $TOKEN" \
-H "X-Eden-Verbose: true"Response:
{
"status": "success",
"data": {
"id": "my_company",
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"description": "My Company's Eden Organization",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z",
"eden_node_uuids": [
"550e8400-e29b-41d4-a716-446655440001",
"550e8400-e29b-41d4-a716-446655440002"
],
"super_admin_uuids": ["550e8400-e29b-41d4-a716-446655440003"],
"user_uuids": [
"550e8400-e29b-41d4-a716-446655440004",
"550e8400-e29b-41d4-a716-446655440005"
],
"endpoint_uuids": ["550e8400-e29b-41d4-a716-446655440006"],
"template_uuids": [],
"workflow_uuids": []
}
}Only SuperAdmin users can update organization information:
curl http://{host}:8000/api/v1/organizations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $TOKEN" \
-X PATCH \
-d '{
"description": "Updated description for our organization"
}'Response:
{
"status": "success",
"data": {
"id": "my_company",
"uuid": "550e8400-e29b-41d4-a716-446655440000"
}
}| Field | Description |
|---|---|
id | Organization identifier (string) |
description | Organization description |
Warning: This permanently deletes the organization and ALL associated resources.
curl http://{host}:8000/api/v1/organizations \
-H "Authorization: Bearer $TOKEN" \
-X DELETEResponse:
{
"status": "success",
"data": {
"id": "my_company",
"uuid": "550e8400-e29b-41d4-a716-446655440000",
"removed_objects": {
"objects": {
"deleted_from_cache": ["..."],
"deleted_from_postgres": ["..."]
},
"rbac": {
"removed_subjects": {
"users": ["user_uuid_1", "user_uuid_2"],
"roles": ["admin_role_uuid"]
}
}
}
}
}Eden uses a hierarchical access level system:
| Level | Description |
|---|---|
| Read | View and query resources |
| Write | Read permissions plus modify data |
| Admin | Write permissions plus manage users and configurations |
| SuperAdmin | Full control including other admin management |
{
"error": "Conflict",
"message": "Organization with ID 'my_company' already exists"
}{
"error": "Not Found",
"message": "Organization not found"
}{
"error": "Forbidden",
"message": "SuperAdmin access required for organization operations"
}