Skip to main content
Openinary Cloud is the hosted version of Openinary. You get the same URL-based transformation API and the same upload API as the self-hosted version, without running Docker, storage, or a video worker yourself.
Cloud is in public alpha. Sign-up is open to everyone, see Create your account below. It’s early: expect rough edges, and please report what breaks.

What you don’t have to do

Everything the self-hosted docs ask you to configure, Cloud already runs: storage, the transform pipeline, the video processing queue, the CDN cache, and the dashboard. There are no environment variables, no API_SECRET, no CORS_ORIGIN, no Docker resources to size. You create an account, create an API key, and start uploading.

Two hostnames

Your public asset URLs always look like this:

Create your account

1

Open the app

Go to app.openinary.dev and enter your email address. Signing in and signing up are the same form: a new address creates the account.
2

Enter the code

You receive a 6-digit code by email (valid 10 minutes). Enter it and you’re in, on the Free plan. You can also sign in with Google.
There is no password: every sign-in is a fresh emailed code, or Google. If you joined during the invite-only phase and your invite link expired, just request a code from the sign-in page: your account already exists.

Buckets

A bucket is an isolated space for your media. Files, folders, and cached transforms never cross between buckets, and each bucket has its own bucketId in your delivery URLs, so a staging bucket can’t serve a production asset.
  • One bucket is active at a time in the dashboard, that’s the one the media browser shows.
  • API keys are pinned to a single bucket when you create them, and can’t be re-scoped afterwards. What an integration writes to therefore never depends on what’s selected in the dashboard.
  • Deleting a bucket deletes its files and every API key pinned to it.
Manage them in the dashboard under Settings → Buckets.

Plans and limits

Every account starts on Free. Alpha doubles the allowances, costs nothing per month, and adds pay-as-you-go past them (a card is collected at checkout so overage can be billed). Upgrade from Settings → Plan.
On Free, hitting a limit returns 402 until the monthly allowance resets (storage is cumulative, it doesn’t reset). Video processing is metered on how long the transform actually took to run, not on the length of the video. Cached deliveries never count as transformations.
Live usage, the deliveries behind each number, and your video jobs are in Settings → Usage and Settings → Plan.

What’s different from self-hosted

Almost nothing, at the level you write code, the transformation syntax is identical. The differences worth knowing:

Next steps

Cloud Quickstart

Create an API key, upload a file, and deliver your first transformed URL.

Cloud API Reference

Base URL, authentication, every endpoint, errors and rate limits.

File Uploader on Cloud

Drop the React uploader into your app, no API key in the browser.

Transformations

The full parameter list, shared with the self-hosted version.