Skip to content

Database Management API

Manage databases through the Management API. Requires JWT authentication (dashboard access).


Creates a new database.

Request:

{
"name": "my-production-db",
"region": "us-east-1",
"settings": null
}
FieldTypeRequiredDescription
namestringYesDatabase name (lowercase, numbers, hyphens)
regionstringYesRegion code (e.g., us-east-1)
settingsobjectNoOptional configuration

Response (201 Created):

{
"databaseId": "db_abc123",
"name": "my-production-db",
"region": "us-east-1",
"status": "Creating",
"createdAt": "2024-01-15T10:00:00Z"
}

Lists all databases for the authenticated organization.

Query Parameters:

ParameterTypeDefaultDescription
limitinteger20Max items to return
cursorstringnullPagination cursor

Response (200 OK):

{
"databases": [
{
"databaseId": "db_abc123",
"name": "my-production-db",
"region": "us-east-1",
"status": "Active",
"createdAt": "2024-01-15T10:00:00Z",
"updatedAt": "2024-01-15T10:05:00Z",
"settings": null,
"usage": {
"itemCount": 15000,
"storageBytes": 52428800,
"readUnitsConsumed": 1500,
"writeUnitsConsumed": 300,
"lastUpdated": "2024-01-15T11:00:00Z"
}
}
],
"nextCursor": null
}

GET /api/v1/management/databases/{databaseId}

Section titled “GET /api/v1/management/databases/{databaseId}”

Gets a specific database by ID.

Response (200 OK): Same as individual database in list response.


DELETE /api/v1/management/databases/{databaseId}

Section titled “DELETE /api/v1/management/databases/{databaseId}”

Deletes a database.

Response (204 No Content): Empty body on success.


StatusDescription
CreatingDatabase is being provisioned
ActiveDatabase is ready for use
InactiveDatabase is paused
MaintenanceDatabase is undergoing maintenance
DeletingDatabase is being deleted
ErrorDatabase encountered an error
BackingUpDatabase backup in progress
RestoringDatabase restore in progress

Each database includes usage statistics:

FieldTypeDescription
itemCountintegerNumber of items stored
storageByteslongTotal storage used in bytes
readUnitsConsumedlongRead capacity consumed
writeUnitsConsumedlongWrite capacity consumed
lastUpdateddatetimeWhen metrics were last updated

// Create database
var createResult = await client.Databases.CreateAsync(new CreateDatabaseRequest(
Name: "my-production-db",
Region: "us-east-1"
));
if (createResult.IsSuccess)
{
Console.WriteLine($"Database created: {createResult.Value.DatabaseId}");
}
// List databases
var listResult = await client.Databases.ListAsync();
foreach (var db in listResult.Value.Databases)
{
Console.WriteLine($"{db.Name} - {db.Status}");
Console.WriteLine($" Items: {db.Usage?.ItemCount}");
Console.WriteLine($" Storage: {db.Usage?.StorageBytes / 1024 / 1024} MB");
}
// Get database
var dbResult = await client.Databases.GetAsync("db_abc123");
// Delete database
var deleteResult = await client.Databases.DeleteAsync("db_abc123");

  • Lowercase letters only (a-z)
  • Numbers (0-9)
  • Hyphens (-)
  • Must start with a letter
  • 3-63 characters long

Valid names:

  • my-app-prod
  • users-db
  • project123

Invalid names:

  • My-App (uppercase)
  • 123-db (starts with number)
  • my_app (underscore)