Documentation

Learn how to architect your data pipeline in minutes.

Core Concepts

To master Rilavek, you only need to understand five simple concepts. Together, they form a flexible and powerful data pipeline architecture.

The Five Primitives

01

Source

The Ingress Protocol

A Source defines HOW data enters the system. It's the protocol or method used for ingestion.

FTP / FTPS (Port 21)SFTP (Port 2222)HTTP API (Coming Soon)
02

Sender

The Identity Layer

A Sender is WHO is sending the data. This decoupled identity system lets you manage credentials independently of where the data goes.

Camera 01Drone Fleet APartner API
03

Pipe

The Logic Engine

A Pipe connects Sources to Destinations. It acts as the routing and logic layer, supporting 1-to-many fan-out to replicate data to multiple clouds simultaneously.

Fan-out: Replicate to S3 + B2ACL: Allow Camera GroupRoute to multiple buckets
04

Destinations

The Storage Targets

A Destination is where your data ultimately rests. You can configure a Primary destination for critical data and multiple Secondary destinations for redundancy or archival.

AWS S3 (Primary)Backblaze B2 (Secondary)Cloudflare R2MinIO
05

Sync Event

The Notification System

Every file transfer is tracked as a Sync Event with a lifecycle. Subscribe to these events via Webhooks to trigger downstream workflows.

file.uploadedfile.status_changedWebhook to Zapier/n8n

Delivery Guarantees & Fan-out

Primary Guarantee

Files are guaranteed to be successfully delivered to your Primary Destination. Rilavek streams data directly to it with Zero-Knowledge storage (we act as a pass-through). If the Primary Destination is unreachable or rejects the file, the entire upload is immediately failed and the error is returned to the client (e.g., your camera) to allow for a retry.

Secondary Destinations & Fan-out

Streaming to Secondary destinations happens in parallel. Rilavek makes a best-effort attempt to deliver to all configured secondary targets. If a temporary error occurs, we will attempt to retry the delivery transiently using in-memory buffering. Data never touches our disks, maintaining our strict zero-knowledge privacy promise.

Tolerant Mode (Default)

If a secondary destination fails, the file is considered "Partially Delivered". The overall operation returns Success to the client so the upload is not retried unnecessarily. You will be alerted via Sync Events.

Strict Mode (Fail on Error)

If you enable Fail on Error for a secondary destination, a failure to deliver to it causes the entire transfer to fail. The client receives an error, allowing your device or software to retry the upload if configured.

File Statuses

Every file that passes through Rilavek is tracked with one of these statuses:

StatusDescription
CreatedThe file upload has started. Data is actively streaming through Rilavek to the destination(s).
TransferredThe file was successfully delivered to all required destinations.
FailedThe transfer failed due to a destination error (e.g., Primary unreachable or a critical secondary with "Fail on Error" enabled).
CancelledThe transfer was aborted by the pipeline logic. This typically occurs when a Strict Mode secondary destination fails, causing the entire operation to halt.

💡 Pro Tip: Decoupled Architecture

The power of Rilavek lies in decoupling. Change your Destination from AWS to R2? No need to reconfigure your cameras. Rotate a Sender's password? Other Senders aren't affected. Each primitive is independent, making your infrastructure flexible and secure.