Skip to content

Create a database type (admin only)

POST
/api/settings/database-types
curl --request POST \
--url https://example.com/api/settings/database-types \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "name": "example", "displayName": "example", "connectionFields": [ { "name": "example", "label": "example", "type": "text", "required": true, "default": "example" } ], "backupCommand": "example", "restoreCommand": "example", "defaultPort": 1 }'
Media typeapplication/json
object
name
required
string
>= 1 characters <= 50 characters /^[a-z0-9-]+$/
displayName
required
string
>= 1 characters <= 100 characters
connectionFields
required
Array<object>
object
name
required
string
label
required
string
type
required
string
Allowed values: text number password
required
boolean
default
backupCommand
string
restoreCommand
string
defaultPort
integer

Bad request — malformed input or failed validation.

Media typeapplication/json
object
code

Stable, machine-readable error code. Always present on the wire.

string
Allowed values: VALIDATION_ERROR READONLY_FIELD UNAUTHORIZED FORBIDDEN_SCOPE FORBIDDEN_ROLE NOT_FOUND CONFLICT IDEMPOTENCY_KEY_REUSED RATE_LIMITED SERVICE_UNAVAILABLE INTERNAL
message

Human-readable error message. Always present on the wire.

string
field

Field name when the error is tied to a specific input (e.g. validation).

string
hint

Optional, human-friendly hint for resolving the error.

string
requestId

Server-assigned request ID; quote this when reporting issues.

string
key
additional properties
any
Example
{
"code": "READONLY_FIELD",
"message": "Field \"exposedPorts\" is read-only and cannot be set via PATCH.",
"field": "exposedPorts",
"hint": "Exposed ports are discovered from the running container. Change the ports mapping in the compose file at composePath and redeploy.",
"requestId": "req_01H0…"
}

Unauthorized — missing or invalid bearer token.

Media typeapplication/json
object
code

Stable, machine-readable error code. Always present on the wire.

string
Allowed values: VALIDATION_ERROR READONLY_FIELD UNAUTHORIZED FORBIDDEN_SCOPE FORBIDDEN_ROLE NOT_FOUND CONFLICT IDEMPOTENCY_KEY_REUSED RATE_LIMITED SERVICE_UNAVAILABLE INTERNAL
message

Human-readable error message. Always present on the wire.

string
field

Field name when the error is tied to a specific input (e.g. validation).

string
hint

Optional, human-friendly hint for resolving the error.

string
requestId

Server-assigned request ID; quote this when reporting issues.

string
key
additional properties
any
Example
{
"code": "READONLY_FIELD",
"message": "Field \"exposedPorts\" is read-only and cannot be set via PATCH.",
"field": "exposedPorts",
"hint": "Exposed ports are discovered from the running container. Change the ports mapping in the compose file at composePath and redeploy.",
"requestId": "req_01H0…"
}

Forbidden — token scope or role does not permit this operation.

Media typeapplication/json
object
code

Stable, machine-readable error code. Always present on the wire.

string
Allowed values: VALIDATION_ERROR READONLY_FIELD UNAUTHORIZED FORBIDDEN_SCOPE FORBIDDEN_ROLE NOT_FOUND CONFLICT IDEMPOTENCY_KEY_REUSED RATE_LIMITED SERVICE_UNAVAILABLE INTERNAL
message

Human-readable error message. Always present on the wire.

string
field

Field name when the error is tied to a specific input (e.g. validation).

string
hint

Optional, human-friendly hint for resolving the error.

string
requestId

Server-assigned request ID; quote this when reporting issues.

string
key
additional properties
any
Example
{
"code": "READONLY_FIELD",
"message": "Field \"exposedPorts\" is read-only and cannot be set via PATCH.",
"field": "exposedPorts",
"hint": "Exposed ports are discovered from the running container. Change the ports mapping in the compose file at composePath and redeploy.",
"requestId": "req_01H0…"
}

Conflict — e.g. a unique constraint violation.

Media typeapplication/json
object
code

Stable, machine-readable error code. Always present on the wire.

string
Allowed values: VALIDATION_ERROR READONLY_FIELD UNAUTHORIZED FORBIDDEN_SCOPE FORBIDDEN_ROLE NOT_FOUND CONFLICT IDEMPOTENCY_KEY_REUSED RATE_LIMITED SERVICE_UNAVAILABLE INTERNAL
message

Human-readable error message. Always present on the wire.

string
field

Field name when the error is tied to a specific input (e.g. validation).

string
hint

Optional, human-friendly hint for resolving the error.

string
requestId

Server-assigned request ID; quote this when reporting issues.

string
key
additional properties
any
Example
{
"code": "READONLY_FIELD",
"message": "Field \"exposedPorts\" is read-only and cannot be set via PATCH.",
"field": "exposedPorts",
"hint": "Exposed ports are discovered from the running container. Change the ports mapping in the compose file at composePath and redeploy.",
"requestId": "req_01H0…"
}