Databases API
Manage PostgreSQL databases via the API.
List Databases
GET /v1/databases
Query Parameters:
| Parameter | Type | Description |
|---|---|---|
| status | string | Filter by status: active, provisioning, stopped |
| plan | string | Filter by plan: starter, standard, pro |
Response:
{
"data": [
{
"id": "db_abc123",
"name": "my-database",
"status": "active",
"plan": "starter",
"version": "16",
"region": "us-east",
"host": "db-abc123.postgres.sparbz.cloud",
"port": 5432,
"created_at": "2024-01-15T10:30:00Z"
}
],
"meta": {
"total": 1,
"page": 1,
"per_page": 20
}
}
Get Database
GET /v1/databases/:id
Response:
{
"data": {
"id": "db_abc123",
"name": "my-database",
"status": "active",
"plan": "starter",
"version": "16",
"region": "us-east",
"host": "db-abc123.postgres.sparbz.cloud",
"port": 5432,
"connection_string": "postgres://user:pass@db-abc123.postgres.sparbz.cloud:5432/mydb",
"resources": {
"vcpu": 1,
"memory_gb": 1,
"storage_gb": 10
},
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-01-15T10:30:00Z"
}
}
Create Database
POST /v1/databases
Request Body:
{
"name": "my-database",
"plan": "starter",
"version": "16",
"region": "us-east"
}
Response: 201 Created
{
"data": {
"id": "db_abc123",
"name": "my-database",
"status": "provisioning",
"plan": "starter",
"version": "16",
"region": "us-east"
}
}
Update Database
PATCH /v1/databases/:id
Request Body:
{
"plan": "standard"
}
Response:
{
"data": {
"id": "db_abc123",
"name": "my-database",
"status": "scaling",
"plan": "standard"
}
}
Delete Database
DELETE /v1/databases/:id
Response: 204 No Content
Reset Password
POST /v1/databases/:id/reset-password
Response:
{
"data": {
"password": "new-generated-password",
"connection_string": "postgres://user:new-generated-password@..."
}
}
Get Connection Details
GET /v1/databases/:id/connection
Response:
{
"data": {
"host": "db-abc123.postgres.sparbz.cloud",
"port": 5432,
"database": "mydb",
"username": "user",
"ssl_mode": "require",
"connection_string": "postgres://..."
}
}
Backups
List Backups
GET /v1/databases/:id/backups
Create Backup
POST /v1/databases/:id/backups
Restore Backup
POST /v1/databases/:id/backups/:backup_id/restore