Database
Provision real MariaDB, Postgres, and MongoDB databases on Hep.gg, browse and edit them in the built-in web editor, connect with any standard client over db.teamhydra.dev, and manage them programmatically with a bearer-key API.
Database
The Hep.gg Database app gives you real databases you can connect to with any standard client. Every database you provision is a genuine MariaDB, Postgres, or MongoDB database with its own dedicated user scoped to that one database. There are two separate surfaces, and it helps to keep them apart from the start:
- Your databases are reachable at
db.teamhydra.devwith a normal database client (themysqlCLI,psql,mongosh, an ORM, a driver). This is where your queries run. - The management API is a small bearer-key API at
https://api.hep.gg/v1/dbfor listing and creating databases from a script or CI, without the dashboard.
Authentication
The two surfaces authenticate differently.
- Your database (
db.teamhydra.dev): the per-database username and password. Both are auto-generated when the database is provisioned. The password is shown on creation and can be revealed or rotated from the dashboard or the management API. - Management API (
https://api.hep.gg/v1/db): a bearer key of the formhepgg_db_..., sent in theAuthorizationheader.
Authorization: Bearer hepgg_db_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxManagement keys are minted in the dashboard under Database, API Keys at hep.gg. There is no public endpoint to create a key. The key carries your account entitlements: it can list and create databases, and reveal or rotate a database's password. It cannot delete a database; that stays dashboard-only. A suspended account, or a key you have disabled, returns 401. Never commit a key or a database password to source control.
Quickstart
Create your first database with the management API, then connect to it. Replace $DB_KEY with a key from your dashboard.
A successful create returns 201 and includes the password and a ready-to-use connection string in data, returned only this once. Store them immediately. See Management API for the full request and response shape, then Connecting for client examples.
Edit your data in the browser
Every database has a built-in web editor: open it from the database list on the dashboard by clicking a database's name or its Editor button. It is a full-screen workspace for viewing and changing the data itself, with nothing to install.
- MariaDB and Postgres: browse tables with filters, sorting, and paging; edit cells inline; insert and delete rows; create, alter, and drop tables, columns, and indexes from the Structure tab; follow foreign keys with one click to jump to the referenced row; and run raw SQL in a query console.
- MongoDB: browse collections, filter documents with Extended JSON, insert, edit, or delete documents with types like ObjectId and Date preserved exactly, and create or drop collections and indexes.
The editor signs in as your own database user, so it can do exactly what your connection string can do and nothing more. If your account is over its storage quota, writes pause in the editor the same way they do for your apps. Editor queries are capped at 10 seconds and 500 result rows to keep the shared servers healthy.
What you can do
Tiers and quota
What you get out of the box, plus how usage is enforced.
- Free: 1 database, 100 MB account-wide, 10 concurrent connections per database user.
- Premium: 2 databases, 500 MB account-wide, 25 concurrent connections per database user.
- Packs: each pack adds +1 slot and +N MB of account-wide storage for 30 days. Stack as many as you like; slots and bytes both sum.
Slots and storage are account-wide and shared across both surfaces, so a database you create over the management API counts against the same quota as one created in the dashboard. Add slots or storage from the dashboard Top Up tab. Quota details and the over-quota behavior are covered in Connecting.
Engines available
All three engines are live on db.teamhydra.dev in production:
| Engine | Default port | Connection scheme |
|---|---|---|
| MariaDB / MySQL | 3306 | mysql:// |
| Postgres | 5432 | postgresql:// |
| MongoDB | 27017 | mongodb:// (with ?authSource=admin) |
If an engine is not enabled on a deployment, creating a database with that engine returns 400 ENGINE_DISABLED. MariaDB is always available; it is the app's primary pool.