PostgreSQL Provisioning V2

Operations related to managing a Postgresql cluster

List recent cluster backup events.

SecurityBasic Authentication
Request
path Parameters
clusterId
required
string <uuid>

ID of the cluster.

Responses
200

List backups and restores for each node in a given cluster, for the last 7 days.

get/cluster-management/v2/data-sources/applications/postgresql/clusters/v2/{clusterId}/list-backups/v2/
Request samples
Response samples
application/json
{
  • "clusterDataCentres": [
    ],
  • "id": "77b5a4e1-c422-4a78-b551-d8fa5c42ad95",
  • "name": "example-cluster"
}

List compatible node sizes for PostgreSQL and any specified addon applications.

SecurityBasic Authentication
Request
query Parameters
pgbouncerRequired
boolean

Specifies whether node sizes are also compatible with PgBouncer.

Responses
200

Successfully retrieved compatible node sizes for PostgreSQL.

get/cluster-management/v2/data-sources/applications/postgresql/compatible-node-sizes/v2/
Request samples
Response samples
application/json
[
  • {
    }
]

List all versions of applications compatible with a PostgreSQL version.

SecurityBasic Authentication
Request
path Parameters
version
required
string[0-9]+\.[0-9]+\.[0-9]+

A PostgreSQL version.

Responses
200

Successfully retrieved versions of applications compatible with a PostgreSQL version.

get/cluster-management/v2/data-sources/applications/postgresql/compatible-versions/v2/{version}
Request samples
Response samples
application/json
[
  • {
    }
]

List all PostgreSQL applications and versions.

SecurityBasic Authentication
Responses
200

Successfully retrieved applications and versions for PostgreSQL.

get/cluster-management/v2/data-sources/applications/postgresql/versions/v2/
Request samples
Response samples
application/json
[
  • {
    }
]

Create a Postgresql cluster.

SecurityBasic Authentication
Request
Request Body schema: application/json
required
postgresqlVersion
required
string[0-9]+\.[0-9]+\.[0-9]+

Version of Postgresql to run on the cluster. Available versions:

  • 15.8.0
  • 15.10.0
  • 16.6.0
  • 16.4.0
  • 14.13.0
  • 14.15.0

description
string

A description of the cluster

Array of objects (TwoFactorDeleteSettingsV2) <= 1 items
extensions
Array of strings (PostgresqlExtensionsV2)

List of PostgreSQL extensions.

Items Value: "PG_CRON"
required
Array of objects (PostgresqlDataCentreV2) [ 1 .. 2 ] items

List of data centre settings.

currentClusterOperationStatus
string (CurrentClusterOperationStatusV2)

Indicates if the cluster is currently performing any restructuring operation such as being created or resized

Enum: "NO_OPERATION" "OPERATION_IN_PROGRESS" "OPERATION_FAILED"
synchronousModeStrict
required
boolean

Create the PostgreSQL cluster with the selected replication mode, see [PostgreSQL replication mode] (https://www.instaclustr.com/support/documentation/postgresql/options/replication-mode/).

privateNetworkCluster
required
boolean

Creates the cluster with private network only, see Private Network Clusters.

name
required
string [ 3 .. 48 ] characters [a-zA-Z0-9][a-zA-Z0-9_-]*

Name of the cluster.

Array of objects (ResizeSettingsV2) <= 1 items

Settings to determine how resize requests will be performed for the cluster.

slaTier
required
string (SlaTierV2)

SLA Tier of the cluster. Non-production clusters may receive lower priority support and reduced SLAs. Production tier is not available when using Developer class nodes. See SLA Tier for more information.

Enum: "PRODUCTION" "NON_PRODUCTION"
Responses
202

PostgreSQL Cluster provisioning requested.

post/cluster-management/v2/resources/applications/postgresql/clusters/v2/
Request samples
application/json
{
  • "dataCentres": [
    ],
  • "extensions": [
    ],
  • "name": "test_apiv2_postgresql_create",
  • "postgresqlVersion": "[x.y.z]",
  • "privateNetworkCluster": false,
  • "slaTier": "NON_PRODUCTION",
  • "synchronousModeStrict": false
}
Response samples
application/json
{
  • "dataCentres": [
    ],
  • "extensions": [
    ],
  • "name": "test_apiv2_postgresql_create",
  • "postgresqlVersion": "[x.y.z]",
  • "privateNetworkCluster": false,
  • "slaTier": "NON_PRODUCTION",
  • "synchronousModeStrict": false
}

Get PostgreSQL cluster details.

SecurityBasic Authentication
Request
path Parameters
clusterId
required
string <uuid>
Responses
200

PostgreSQL cluster details retrieved.

get/cluster-management/v2/resources/applications/postgresql/clusters/v2/{clusterId}/
Request samples
Response samples
application/json
{
  • "dataCentres": [
    ],
  • "extensions": [
    ],
  • "name": "test_apiv2_postgresql_create",
  • "postgresqlVersion": "[x.y.z]",
  • "privateNetworkCluster": false,
  • "slaTier": "NON_PRODUCTION",
  • "synchronousModeStrict": false
}

Update PostgreSQL cluster details

SecurityBasic Authentication
Request
path Parameters
clusterId
required
string <uuid>
Request Body schema: application/json
required
extensions
Array of strings (PostgresqlExtensionsV2)
Items Value: "PG_CRON"
required
Array of objects (PostgresqlDataCentreV2) [ 1 .. 2 ] items

List of datacentre settings.

description
string

A description of the cluster

Array of objects (TwoFactorDeleteSettingsV2) <= 1 items
Array of objects (ResizeSettingsV2) <= 1 items

Settings to determine how resize requests will be performed for the cluster.

Responses
202

PostgreSQL cluster update request accepted.

404

PostgreSQL cluster not found.

put/cluster-management/v2/resources/applications/postgresql/clusters/v2/{clusterId}/
Request samples
application/json
{
  • "dataCentres": [
    ]
}
Response samples
application/json
{
  • "dataCentres": [
    ],
  • "extensions": [
    ],
  • "name": "test_apiv2_postgresql_create",
  • "postgresqlVersion": "[x.y.z]",
  • "privateNetworkCluster": false,
  • "slaTier": "NON_PRODUCTION",
  • "synchronousModeStrict": false
}

Delete cluster

Delete an active cluster.

SecurityBasic Authentication
Request
path Parameters
clusterId
required
string <uuid>
Responses
204

Cluster delete requested.

delete/cluster-management/v2/resources/applications/postgresql/clusters/v2/{clusterId}/
Request samples