Developer First · Event Driven

Automated File PipelinesWithout the Polling Loop

Stop writing Cron jobs that wake up every 60 seconds to check a bucket. Rilavek fires a signed webhook the millisecond a file upload completes — giving you real-time triggers for ETL, AI pipelines, and business workflows.

From file upload to your API in three steps

01

Authenticated Source

A partner or application uploads via SFTP, FTP, or HTTP using their unique Sender identity. No shared passwords.

02

Ingest & Store

Rilavek receives the file and streams it directly to your configured S3, GCS, or Azure destination.

03

Trigger Event

We POST a signed JSON payload to your webhook endpoint the moment the transfer completes. No polling required.

Why poll when you can push?

The standard pattern for file-triggered workflows is running a scheduled job every minute to list a bucket and compare against a known state. It is fragile, expensive, and adds a full polling interval of latency to every pipeline.

When an invoice, a sensor reading, or a batch export lands in your bucket, you want your downstream system to react immediately — not after the next cron tick. Rilavek fires a webhook at the transfer layer, before the file is even fully flushed, eliminating that gap entirely.

The webhook payload

Every event carries standardized metadata. Parse it with two lines of code in any language.

// POST https://your-api.com/webhooks/ingest

// Header: X-Rilavek-Signature: sha256=...

{

"event": "file.status_changed",

"timestamp": "2026-03-03T08:00:00Z",

"data": {

"pipe_id": "pipe_123",

"file_id": "file_456",

"filename": "invoice_99.pdf",

"status": "transferred",

"size": 10240,

"sender": "client_abc"

}

}

The Polling Tax

A polling loop running every 60 seconds on a bucket with 1,000 daily uploads makes 1,440 unnecessary LIST API calls for every 1 real event. That is a 1440:1 waste ratio before you even start processing. With Rilavek webhooks, the ratio is 1:1.

Verify the Signature

Every webhook request includes an X-Rilavek-Signature header — an HMAC-SHA256 of the raw request body signed with your secret. Always verify it before processing. Do not rely on the source IP alone.

Kill the Polling Loop

Save compute costs. React to files the moment they arrive, not after the next cron tick.

Sender Identity

Know exactly who sent what. Usage is tracked per Sender for billing and auditing.

Standard JSON

Receive standardized metadata: Pipe ID, File ID, Name, Size, Status, and Sender.

HMAC Signatures

Verify every request comes from Rilavek using SHA256 signatures. No spoofing.

Everything you need to build file-triggered automations

These are the features teams need the moment they outgrow a basic Cron job.

Sub-second Delivery

Webhooks fire at the transfer layer. Your API receives the event before most polling loops would even wake up.

Sender Isolation

Assign a unique identity to every partner, vendor, or application. Revoke access instantly without rotating shared credentials.

Structured Metadata

Every event includes Pipe ID, File ID, filename, size, sender, and transfer status. No custom parsing required.

Any Language

Your webhook endpoint is plain HTTPS. Handle it in Python, Node.js, Go, or any HTTP server. No SDK required.

Automatic Retries

If your endpoint is temporarily unavailable, we retry with exponential backoff. No events are silently dropped.

Multi-Protocol Sources

Trigger from files uploaded via SFTP, FTP, FTPS, or HTTP. One webhook config covers every inbound protocol.

Common questions

How fast is the webhook delivery after a file upload?

Webhooks fire at the transport layer — the moment the file transfer is confirmed complete. In practice this means delivery within milliseconds for small files and within seconds for large ones, well ahead of any polling interval.

What happens if my webhook endpoint is down?

We retry with exponential backoff over a configurable window. You can also view failed delivery attempts and manually replay events from the dashboard.

Can I filter webhooks by sender or file type?

Yes. You can configure per-Pipe event filters so only specific senders or file patterns trigger your endpoint. This keeps your backend from receiving irrelevant noise.

How do I verify a webhook is actually from Rilavek?

Each request includes an X-Rilavek-Signature header — an HMAC-SHA256 digest of the raw body using your shared secret. Verify it server-side before processing any payload.

Can I connect webhooks to Zapier or Make without writing code?

Yes. Any no-code automation platform that accepts inbound HTTP webhooks works out of the box. Point your Rilavek webhook URL at Zapier, Make, or n8n and build the automation from there.

Stop polling. Start reacting.

A working webhook pipeline on top of your file ingestion in minutes. Read the docs or start for free.

Free plan includes 10GB of transfer. No credit card required.