SDKClient

Managed databases

SDK reference for managed databases — Inspect managed databases, work with rows, and manage connections and migrations.

Inspect managed databases, work with rows, and manage connections and migrations.

list

List managed databases for the active deployment, with their tables and migration status

GET

Usage:

const result = await swirls.client.managedDatabases.list({
  projectId: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes

schema

Full table + column schema of one managed database, for SQL editor autocomplete

GET

Usage:

const result = await swirls.client.managedDatabases.schema({
  projectId: '...',
  database: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
appNamestringNo
databasestringYes

Output:

FieldTypeDescription
tablesobject[]

listRows

Read a page of rows from one table of a managed database (read-only), with optional server-side sort, filter, and search

GET

Usage:

const result = await swirls.client.managedDatabases.listRows({
  projectId: '...',
  database: '...',
  table: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
appNamestringNo
databasestringYes
tablestringYes
limitnumberNo
offsetnumberNo
orderByobjectNo
filtersobject[]No
searchstringNo
idsstring[]No

Output:

FieldTypeDescription
columnsobject[]
rowsobject[]
totalCountnumber

insertRow

Insert one row into a managed-database table (schema-allowlisted columns)

POST

Usage:

const result = await swirls.client.managedDatabases.insertRow({
  projectId: '...',
  database: '...',
  table: '...',
  fields: {},
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
appNamestringNo
databasestringYes
tablestringYes
fieldsobjectYes

updateRow

Patch one row in a managed-database table. Primary-key mutation is refused.

POST

Usage:

const result = await swirls.client.managedDatabases.updateRow({
  projectId: '...',
  database: '...',
  table: '...',
  id: '...',
  fields: {},
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
appNamestringNo
databasestringYes
tablestringYes
idstringYes
fieldsobjectYes

deleteRow

Delete one row from a managed-database table by primary key

POST

Usage:

const result = await swirls.client.managedDatabases.deleteRow({
  projectId: '...',
  database: '...',
  table: '...',
  id: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
appNamestringNo
databasestringYes
tablestringYes
idstringYes

Output:

FieldTypeDescription
idstring

runQuery

Run a SQL query against a managed database (SQL console). Read-only owner connection.

POST

Usage:

const result = await swirls.client.managedDatabases.runQuery({
  projectId: '...',
  database: '...',
  sql: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
databasestringYes
sqlstringYes

Output:

FieldTypeDescription
columnsobject[]
rowsobject[]
rowCountnumber
truncatedboolean
durationMsnumber

listConnections

List named connections provisioned for a managed database block

GET

Usage:

const result = await swirls.client.managedDatabases.listConnections({
  projectId: '...',
  database: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
appNamestringNo
databasestringYes

revealConnection

Reveal the connection string for a managed database connection (requires deployments:write)

POST

Usage:

const result = await swirls.client.managedDatabases.revealConnection({
  projectId: '...',
  database: '...',
  connection: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
appNamestringNo
databasestringYes
connectionstringYes

Output:

FieldTypeDescription
directUrlstring
pooledUrlstring

rotateConnection

Rotate a managed database connection and return the new connection string

POST

Usage:

const result = await swirls.client.managedDatabases.rotateConnection({
  projectId: '...',
  database: '...',
  connection: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
appNamestringNo
databasestringYes
connectionstringYes

Output:

FieldTypeDescription
directUrlstring
pooledUrlstring

migrationStatus

Per-database migration detail for the active deployment (status, gate reason, applied and pending data migrations)

GET

Usage:

const result = await swirls.client.managedDatabases.migrationStatus({
  projectId: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes

approveMigration

Approve a gated managed-database migration, kicking an approved re-run of the migration workflow

POST

Usage:

const result = await swirls.client.managedDatabases.approveMigration({
  projectId: '...',
  database: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
databasestringYes

Output:

FieldTypeDescription
startedtrue
deploymentIdstring

recycle

Replace a managed database with a new empty instance and remove the old instance. Existing data is not copied. Deploy-time migrations recreate the schema on the next deploy.

POST

Usage:

const result = await swirls.client.managedDatabases.recycle({
  projectId: '...',
  database: '...',
})

Input:

ParameterTypeRequiredDescription
projectIdstringYes
databasestringYes

Output:

FieldTypeDescription
externalDatabaseIdstring
previousExternalDatabaseIdstring
healthobject

On this page