eeCLOUD API Reference

Official developer documentation for eeCLOUD. This reference describes the full public API, execution model and data structures used by the engine.

Overview

eeCLOUD is a memory-oriented cloud data engine designed to store, retrieve and manipulate time-ordered data efficiently. Instead of exposing raw SQL queries, eeCLOUD provides a deterministic API based on memory snapshots and ordered reads.

Core Concepts

Application

An Application is the main isolation unit in eeCLOUD. Each application has its own configuration, database scope, cache and API key.

Memory

A Memory is a logical container of time-ordered data. It can be compared to a stream, a collection or an append-only log.

MemoryArea

A MemoryArea represents a single data entry stored inside a Memory. Read and write operations may return one or multiple MemoryArea objects.

Order Semantics

Many operations accept an Order parameter that controls how records are selected when multiple matches exist.

ValueDescription
DESC (default)Returns the most recent record (last inserted)
ASCReturns the oldest record (first inserted)

When an operation is logically single-record, the order parameter determines which record is returned.

Return Model

Memory

FieldTypeDescription
dateDateTimeResponse generation time (UTC)
namestringMemory name
timelongExecution time in milliseconds
areaList<MemoryArea>Returned memory areas
resultboolOperation success flag
errorsstring[]Error messages, if any

MemoryArea

FieldTypeDescription
addresslongPrimary index value
idstringRecord identifier
indexstringSecondary index value (unique)
referencelongNumeric reference value
dateDateTimeLogical record date
datastringJSON serialized payload
createDateTimeCreation timestamp
modifyDateTimeLast modification timestamp
deletedboolSoft delete flag
deleteDateTimeDeletion timestamp

Application

The Application class is the main entry point of eeCLOUD.

var app = new Application(config, cache);
ParameterDescription
configDatabase and application configuration
cacheOptional cache provider (IeeCACHE)

Write Operations

Write operations append data to a Memory and immediately persist it to the database. Multiple overloads allow full control over identifiers, indexes, timestamps and references.

Basic write

await app.WriteData(
            "myApp",
            "users",
            new { name = "John" }
        );
        

Write with reference

The reference parameter is a numeric value used to logically group records. It is commonly used for multi-tenant scenarios, user isolation or session-based data.

await app.WriteData(
            "myApp",
            "orders",
            new { total = 99.90 },
            reference: userId
        );
        

Reference-based writes enable highly efficient reads using ReadRefData and ReadAllData without scanning the entire Memory.

Clusterized write

await app.WriteData(
            "myApp",
            "orders",
            new { total = 99.90 },
            reference: userId,
            clusterized: true
        );
        

Read Operations

eeCLOUD does not expose a traditional ReadById. Read operations are order-aware and return a Memory container.

// Latest record (default)
            await app.ReadData("myApp", "users");

            // First record
            await app.ReadData("myApp", "users", Order.ASC);
        

Read All Operations

ReadAll operations return multiple records and support pagination, ordering and date ranges.

await app.ReadAllData("myApp", "events", Order.ASC, false, 0, 100);

Update Operations

Update operations are deterministic and primarily based on the memory address.

await app.UpdateData("myApp", "users", address, newData);

Delete, Restore and Erase

eeCLOUD supports soft delete, restore and permanent erase operations.

await app.DeleteData("myApp", "users", address);
await app.RestoreData("myApp", "users", address);
await app.EraseData("myApp", "users", address);

Info Operations

Utility operations for monitoring and introspection.

await app.MemoryCount("myApp", "users");
await app.MemorySize("myApp", "users");
await app.MemoryList("myApp");

Reference & Clusters

Next
An unhandled error has occurred. Reload 🗙

Rejoining the server...

Rejoin failed... trying again in seconds.

Failed to rejoin.
Please retry or reload the page.

The session has been paused by the server.

Failed to resume the session.
Please reload the page.