Stop provisioning databases. LeopardDB gives every one of your users or customers an isolated, self-service database behind a single HTTP API — hosted in the Netherlands, with an EU-based OAuth2 identity provider and a native desktop client built in from the first request. Sign up, pick a plan, and you're provisioned in minutes.
LeopardDB is hosted in the Netherlands on Previder, a Dutch datacentre operator — storage, identity and billing all inside the EU. No transatlantic transfers to explain to your DPO, no Standard Contractual Clauses to paper over, no region toggle you have to remember to set. If GDPR is a hard requirement — and for most European teams it now is — this is the shortest path to a compliant backend.
Every user or organisation gets a physically isolated namespace inside a shared PostgreSQL instance. Not shared tables behind row-level-security policies you have to get right — separate databases per tenant. No provisioning scripts, no per-customer instance sprawl, no cross-tenant leak waiting to happen. You send products; you get back products.
Most cloud backends assume you're writing JavaScript. LeopardDB ships a flat, C-compatible client library with TLS built in — so a Delphi, Lazarus, C++ Builder or C application talks to it natively, without you writing an HTTP and JSON layer first. If your product isn't web-first, this is the cloud backend built for you.
No user table. No stored passwords. No tokens of our own. Authentication and role-based access control run entirely on an EU-based OAuth2 identity provider, with every request validated against your tenant — signature, audience, expiry, permissions, and a live check that the user hasn't been blocked or removed from their organisation.
That's the entire onboarding. No migrations, no ORM, no DBA.
# 1. Create a database
curl -X POST https://api.leoparddb.com/v1/database \
-H "Authorization: Bearer $TOKEN" \
-d '{"name":"mydb"}'
# 2. Create a table
curl -X POST https://api.leoparddb.com/v1/schema/table \
-H "Authorization: Bearer $TOKEN" \
-d '{"tableName":"products","databaseName":"mydb",
"columns":[{"name":"title","type":"text","nullable":false},
{"name":"price","type":"numeric","nullable":true},
{"name":"image","type":"bytea","nullable":true}]}'
# 3. Insert a record
curl -X POST "https://api.leoparddb.com/v1/data/table?table=products&database=mydb" \
-H "Authorization: Bearer $TOKEN" \
-d '{"records":[{"title":"Widget","price":9.99}]}'Add a column on Tuesday, rename it on Thursday, drop it when the feature dies. All from JSON, all live, all over the same API. Every table gets a UUID primary key for free.
Upload and download binaries straight into bytea columns. Record listings never inline your bytes — they report HasValue or Empty — so a query stays fast and a download stays a download.
Filter and sort your records with a structured, validated query API. Field names are checked against your table, operators are whitelisted, and every value is parameterised — so a query is just a query. There is no raw-SQL escape hatch to secure, because there isn't one.
Need LeopardDB inside your own walls? It runs as a Windows service, a Linux daemon, or a Docker container against your own PostgreSQL — under a custom licence. Contact us for a quote.
LeopardDB exists because European software teams keep solving the same problem twice: build the product, then retrofit the compliance story. GDPR isn't optional, and with the EU Cyber Resilience Act's main obligations arriving in 2027, a serious security posture is moving from nice-to-have to table stakes. So we built the backend the other way round — compliance first, features on top.
Send us your security questionnaireStart free. Add seats as your team or your customer base grows. Every plan runs on the same EU infrastructure with the same isolation guarantees.
| Free | Professional | Enterprise | Custom | |
|---|---|---|---|---|
| Price | €0 | €35 / user / DB / mo | €65 / user / DB / mo | Quote |
| Users included | up to 5 | up to 50 | up to 100 | unlimited |
| Databases | 1 | up to 10 | up to 25 | unlimited |
| Tables | 10 | 50 | 100 | unlimited |
| Fields per table | 10 | 25 | 100 | unlimited |
| Records per table | 1,000 | 100,000 | 1,000,000 | unlimited |
| EU data residency | ||||
| Auth0 identity & RBAC | ||||
| Blob storage | ||||
| Client libraries | ||||
| Self-hosting | — | — | — | |
| Support | Community | Priority email | Named contact | |
| Start free | Request a demo | Request a demo | Get a quote |
Prices are per user, per month, excluding VAT. Limits are enforced in real time — if you're approaching a ceiling, upgrade in place and keep working; nothing is lost.
Pick a plan and the number of seats, pay by card through Mollie, and your organisation is provisioned automatically. You'll get an email to set your password and you're in.
Want the full docs before you commit? Ask us: info@owlhatsoftware.com
Request documentationEvery endpoint, ready to run. The fastest way to see the API for yourself.
Source on GitHub, binaries for Windows x64 and Linux x64.
Available on request. Email us and we'll send them over.
402 response naming the exact limit you reached — and prompts an upgrade. Limits are enforced live, so you find out at the moment it matters, not in a surprise invoice.like/ilike, null checks, multi-field sort — is there.Fifteen minutes, your requirements, a live API. If LeopardDB isn't the right fit we'll say so — a bad-fit customer is worse for us than no customer.