🔐 Vault API Client

Hybrid Database Management Interface

Vault Web UI - Help & Documentation

Learn how to use the Hybrid Vault system

🚀 Quick Start

The Vault is a hybrid data management system that combines graph relationships with flexible document storage.

  1. Create Node Types - Define your data structure in Schema Configuration
  2. Add Nodes - Create entities (Projects, Tasks, Documents, etc.)
  3. Connect with Relationships - Link nodes together with meaningful relationships
  4. Search & Browse - Find and navigate your data
  5. Track Changes - Review complete audit history

✨ Core Features

📦 Nodes

Nodes are the primary entities in your vault. Each node has:

  • A unique identifier (UUID)
  • A type (Task, Project, User, etc.)
  • Flexible content fields
  • Access control keys
  • Relationships to other nodes

🔗 Relationships

Relationships connect nodes together:

  • Directed connections (source → target)
  • Typed (OWNS, ASSIGNED_TO, DEPENDS_ON)
  • Can have their own metadata
  • Enforce schema rules
  • Support access key inheritance

🔑 Access Control

Fine-grained permissions:

  • Key Holders grant access
  • Access keys inherited through relationships
  • Users need matching keys to view data
  • Hierarchical permission structure

📋 Audit Trail

Complete change history:

  • Every change is logged
  • Before/after snapshots
  • Field-level change tracking
  • User attribution and timestamps

🔄 Common Workflows

1. Setting Up a New Schema
  1. Navigate to Schema Configuration
  2. Click + Add Node Type
  3. Define the node type name, description, and fields
  4. Mark as Key Holder if it should grant access
  5. Set required fields and default values
  6. Click + Add Relationship Type to define connections
  7. Specify allowed source and target node types
  8. Set relationship direction (outgoing/incoming/bidirectional)
2. Creating a Project with Tasks
  1. Go to NodesCreate Node
  2. Select Project as the node type
  3. Fill in project details (title, description, budget, etc.)
  4. Enable Key Holder to control access
  5. Click Create Node
  6. From the project view, click Create Task
  7. Add multiple tasks, which will automatically inherit project access
  8. Create relationships between tasks (e.g., DEPENDS_ON)
3. Assigning Tasks to Users
  1. Open the task you want to assign
  2. Click Add Relationship
  3. Select ASSIGNED_TO as relationship type
  4. Choose the target user
  5. Add metadata (role, priority, assigned date)
  6. The user will now see the task in their view
4. Searching and Filtering Data
  1. Use the Search page for advanced queries
  2. Enter keywords to search across all content
  3. Filter by node type (Tasks, Projects, etc.)
  4. Add field filters (status=active, priority=high)
  5. Results respect your access permissions
  6. Click any result to view details
5. Reviewing Audit History
  1. Click 📋 Audit History on any node or relationship
  2. View complete timeline of all changes
  3. See who made each change and when
  4. Review field-level changes (added/modified/removed)
  5. Use Audit Dashboard for system-wide statistics
  6. Export audit data for compliance reporting

🎨 UI Components Guide

Navigation Menu

Nodes - Browse and manage all nodes
Search - Advanced search with filters
Schema - Configure node and relationship types
Audit Dashboard - System-wide audit statistics
Help - This help documentation
API Docs - Technical API reference

Node View

Content Tab - View and edit all node fields
Relationships Tab - See all connections, create new ones
📋 Audit History Button - View complete change history
Edit Button - Modify node content
Delete Button - Remove node (with confirmation)

Status Badges

🔑 KEY HOLDER - Node grants access to children
ACTIVE - Current status indicator
OUTGOING - Relationship direction

Audit Change Indicators

ADDED - New field added
MODIFIED - Field value changed
REMOVED - Field deleted

💡 Tips & Best Practices

Use meaningful node types

Choose descriptive names like "Task", "Project", "Document" rather than generic "Item" or "Thing"

Plan your key holder hierarchy

Place key holders at natural boundaries (Teams, Projects) to simplify access control

Use relationships consistently

Stick to standard relationship types (OWNS, ASSIGNED_TO, DEPENDS_ON) for easier understanding

Review audit trails regularly

Check audit history to understand data evolution and catch unintended changes

Keep content fields focused

Store frequently changing data in content fields, static identifiers in immutable fields

Use search filters effectively

Combine node type filters with content filters for precise queries

⌨️ Keyboard Shortcuts

Shortcut Action
Ctrl + K Quick search (when available)
Ctrl + S Save (in edit forms)
Esc Close modals/cancel
Tab Navigate between form fields

⚠️ Troubleshooting

"Access Denied" errors

You don't have the required access keys. Contact the key holder owner or an administrator to grant access.

Can't create a relationship

Check the schema configuration - the relationship type may not allow connections between these node types.

Required field errors

All fields marked as required in the schema must have values. Check the schema to see which fields are mandatory.

Nodes not appearing in search

Search results are filtered by access control. You can only see nodes where you have matching access keys.