Operations
Zatabase is fully managed. Infrastructure, upgrades, and security patches are handled for you. This page covers the operational controls available through the console and API.
Environments
Section titled “Environments”Each project supports multiple environments so you can develop and test without affecting production data.
| Environment | Purpose |
|---|---|
| Production | Live application traffic. Created automatically with every project. |
| Staging | Pre-production testing with production-like settings. |
| Development | Local and CI workflows. Relaxed rate limits. |
Switch environments from the console sidebar or by passing the X-Zatabase-Environment header in API requests. Each environment has its own tables, collections, indexes, API keys, and user data.
Create and manage environments via the console at Project Settings > Environments or through the API:
# List environmentscurl -s https://your-project.zatabase.io/v1/environments \ -H "Authorization: Bearer $ZATABASE_KEY" | jq
# Create a new environmentcurl -s -X POST https://your-project.zatabase.io/v1/environments \ -H "Authorization: Bearer $ZATABASE_KEY" \ -H "Content-Type: application/json" \ -d '{"name": "staging", "description": "Pre-production testing"}' | jqTLS and Security
Section titled “TLS and Security”Every connection to your-project.zatabase.io is encrypted with TLS. There are no certificates to provision, rotate, or manage.
Additional security defaults:
- API keys are scoped per environment and can be revoked instantly
- JWT tokens use short-lived access tokens with automatic refresh
- RBAC enforces permissions at every API boundary (see Permissions)
- Audit logs record all administrative actions and are available in the console
Monitoring
Section titled “Monitoring”Access real-time metrics and logs from the Monitoring tab in the console dashboard:
- Request volume — requests per second, error rates, latency percentiles
- Storage — total data size, row counts per table, index sizes
- Query performance — slow query log, query plan analysis
- Active connections — current SDK and API connections
For programmatic access, query the metrics API:
curl -s https://your-project.zatabase.io/v1/metrics \ -H "Authorization: Bearer $ZATABASE_KEY" | jqSet up alerts in Project Settings > Alerts to get notified on Slack, email, or webhook when thresholds are crossed.
Backups
Section titled “Backups”Zatabase automatically takes daily backups of every environment with point-in-time recovery support.
| Feature | Details |
|---|---|
| Automatic backups | Daily, retained for 30 days (configurable per plan) |
| Point-in-time recovery | Restore to any second within the retention window |
| Manual snapshots | Create on-demand snapshots from the console or API |
| Cross-region restore | Restore a backup to a different region |
Manage backups from Project Settings > Backups or through the API:
# List available backupscurl -s https://your-project.zatabase.io/v1/backups \ -H "Authorization: Bearer $ZATABASE_KEY" | jq
# Create a manual snapshotcurl -s -X POST https://your-project.zatabase.io/v1/backups \ -H "Authorization: Bearer $ZATABASE_KEY" \ -H "Content-Type: application/json" \ -d '{"label": "before-migration"}' | jq
# Restore from a backupcurl -s -X POST https://your-project.zatabase.io/v1/backups/restore \ -H "Authorization: Bearer $ZATABASE_KEY" \ -H "Content-Type: application/json" \ -d '{"backup_id": "bkp_abc123", "target_environment": "staging"}' | jqScaling
Section titled “Scaling”Adjust compute and storage resources from the console or by upgrading your plan. Changes take effect immediately with no downtime.
- Vertical scaling — increase CPU and memory allocation for your project
- Storage scaling — storage grows automatically; set a maximum to control costs
- Read replicas — add replicas in the same or different regions for read-heavy workloads
- Connection pooling — built-in connection pooling for high-concurrency applications
Manage scaling from Project Settings > Resources.
Health Checks
Section titled “Health Checks”Zatabase exposes public health endpoints that do not require authentication, useful for external uptime monitoring:
# Liveness -- is the service running?curl -s https://your-project.zatabase.io/health# {"status": "ok"}
# Readiness -- is the service ready to accept queries?curl -s https://your-project.zatabase.io/health/ready# {"status": "ok", "checks": {...}}Platform-wide status is available at status.zatabase.io.