No bloat. No complex setups. Upload, manage, and deliver files from your own domain with automated SSL — all in one platform.
What you get
OQENS is purpose-built for lean teams that want powerful storage without the operational overhead.
Every workspace is fully isolated. Files, quotas, and access tokens are segregated at the filesystem level.
Point your domain's CNAME to OQENS. We automatically configure Nginx proxies and provision Let's Encrypt certificates.
Upload, list, preview, and delete files programmatically using your API key and standard HTTP endpoints.
Set hard storage and bandwidth limits per tenant. The system enforces them automatically — no surprises on your bill.
Generate preview URLs and direct download links for any file. Shareable in one click, no third-party CDN required.
Track unique views, downloads, and bandwidth per file and tenant. All surfaced in a clean admin dashboard.
Simple workflow
Three steps from sign-up to serving your first file over a custom domain.
Create a workspace. OQENS provisions an isolated storage environment and gives you a unique Cloud ID and API key instantly.
Drag-and-drop files in the web UI or integrate our HTTP API into your app. Supports any file type — images, videos, PDFs, archives.
Add a CNAME, request your custom domain in Settings. OQENS handles Nginx config and SSL issuance automatically — no DevOps needed.
For developers
One HTTP endpoint. Any language. Your API key handles auth.
# Upload a file to your OQENS workspace
curl -X POST \
-F "file=@photo.jpg" \
-H "X-API-Key: oqens_api_xxxxxxxxxxxxxxxx" \
https://auth.oqens.me/api/bucket/upload
# Response
# { "url": "https://dl.oqens.me/your-id/photo.jpg", "size": 204800 }
// Upload a file using the Fetch API
const formData = new FormData();
formData.append('file', fileInput.files[0]);
const res = await fetch('https://auth.oqens.me/api/bucket/upload', {
method: 'POST',
headers: { 'X-API-Key': 'oqens_api_xxxxxxxxxxxxxxxx' },
body: formData
});
const data = await res.json();
console.log(data.url); // https://dl.oqens.me/your-id/file.jpg
import requests
url = "https://auth.oqens.me/api/bucket/upload"
headers = {"X-API-Key": "oqens_api_xxxxxxxxxxxxxxxx"}
files = {"file": open("document.pdf", "rb")}
response = requests.post(url, headers=headers, files=files)
print(response.json())
# {'url': 'https://dl.oqens.me/your-id/document.pdf', 'size': 86234}
Products
A unified suite of tools powered by edge distribution.
Our flagship distributed storage architecture. Host your static assets, files, and media on an incredibly fast, globally replicated edge network.
Open Echo CloudA stunning markdown editing workspace. Write at the speed of thought and instantly publish your papers to a globally optimized SEO directory.
Discover PapersSecurely distribute your high-resolution photography. Edge-cached galleries ensure that guests around the world can view your albums instantly.
Discover PhotosFAQ
Yes. OQENS enforces strict tenant segregation. Files are stored in isolated directories tied to your Cloud ID. No tenant can access another's data, API keys, or bandwidth quota.
Point your domain's CNAME record to dl.oqens.me. Then request the domain in your dashboard Settings. OQENS automatically configures an Nginx reverse proxy and provisions a free Let's Encrypt SSL certificate via Certbot.
All file types are supported — images, videos, PDFs, archives, documents, binaries. There is no file type restriction, only your storage quota limits apply.
Yes. OQENS tracks unique device views (via anonymous persistent cookies) and total file downloads. Bandwidth consumption is calculated in real-time and visible in your dashboard analytics.
When your storage or bandwidth limit is reached, uploads and downloads are automatically restricted until the next billing cycle or until you upgrade your plan. You'll see a warning banner in your dashboard.
Absolutely. Every tenant gets an API key they can use to upload, list, and delete files programmatically. The dashboard is optional — the API is first-class.