AlloyDB for PostgreSQL is an open source-compatible database service that provides a powerful option for migrating, modernizing, or building commercial-grade applications. It offers full compatibility with standard PostgreSQL, and is more than 4x faster for transactional workloads and up to 100x faster for analytical queries than standard PostgreSQL in our performance tests. AlloyDB for PostgreSQL offers a 99.99 percent availability SLA inclusive of maintenance.
AlloyDB is optimized for the most demanding use cases, allowing you to build new applications that require high transaction throughput, large database sizes, or multiple read resources; scale existing PostgreSQL workloads with no application changes; and modernize legacy proprietary databases.
Service: alloydb.googleapis.com
To call this service, we recommend that you use the Google-provided client libraries. If your application needs to use your own libraries to call this service, use the following information when you make the API requests.
Discovery document
A Discovery Document is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery documents:
Service endpoint
A service endpoint is a base URL that specifies the network address of an API service. One service might have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:
https://alloydb.googleapis.com
REST Resource: v1beta.projects.locations
Methods | |
---|---|
get |
GET /v1beta/{name=projects/*/locations/*} Gets information about a location. |
list |
GET /v1beta/{name=projects/*}/locations Lists information about the supported locations for this service. |
REST Resource: v1beta.projects.locations.backups
Methods | |
---|---|
create |
POST /v1beta/{parent=projects/*/locations/*}/backups Creates a new Backup in a given project and location. |
delete |
DELETE /v1beta/{name=projects/*/locations/*/backups/*} Deletes a single Backup. |
get |
GET /v1beta/{name=projects/*/locations/*/backups/*} Gets details of a single Backup. |
list |
GET /v1beta/{parent=projects/*/locations/*}/backups Lists Backups in a given project and location. |
patch |
PATCH /v1beta/{backup.name=projects/*/locations/*/backups/*} Updates the parameters of a single Backup. |
REST Resource: v1beta.projects.locations.clusters
Methods | |
---|---|
create |
POST /v1beta/{parent=projects/*/locations/*}/clusters Creates a new Cluster in a given project and location. |
createsecondary |
POST /v1beta/{parent=projects/*/locations/*}/clusters:createsecondary Creates a cluster of type SECONDARY in the given location using the primary cluster as the source. |
delete |
DELETE /v1beta/{name=projects/*/locations/*/clusters/*} Deletes a single Cluster. |
export |
POST /v1beta/{name=projects/*/locations/*/clusters/*}:export Exports data from the cluster. |
get |
GET /v1beta/{name=projects/*/locations/*/clusters/*} Gets details of a single Cluster. |
list |
GET /v1beta/{parent=projects/*/locations/*}/clusters Lists Clusters in a given project and location. |
patch |
PATCH /v1beta/{cluster.name=projects/*/locations/*/clusters/*} Updates the parameters of a single Cluster. |
promote |
POST /v1beta/{name=projects/*/locations/*/clusters/*}:promote Promotes a SECONDARY cluster. |
restore |
POST /v1beta/{parent=projects/*/locations/*}/clusters:restore Creates a new Cluster in a given project and location, with a volume restored from the provided source, either a backup ID or a point-in-time and a source cluster. |
switchover |
POST /v1beta/{name=projects/*/locations/*/clusters/*}:switchover Switches the roles of PRIMARY and SECONDARY clusters without any data loss. |
upgrade |
PATCH /v1beta/{name=projects/*/locations/*/clusters/*}:upgrade Upgrades a single Cluster. |
REST Resource: v1beta.projects.locations.clusters.instances
Methods | |
---|---|
create |
POST /v1beta/{parent=projects/*/locations/*/clusters/*}/instances Creates a new Instance in a given project and location. |
createsecondary |
POST /v1beta/{parent=projects/*/locations/*/clusters/*}/instances:createsecondary Creates a new SECONDARY Instance in a given project and location. |
delete |
DELETE /v1beta/{name=projects/*/locations/*/clusters/*/instances/*} Deletes a single Instance. |
failover |
POST /v1beta/{name=projects/*/locations/*/clusters/*/instances/*}:failover Forces a Failover for a highly available instance. |
get |
GET /v1beta/{name=projects/*/locations/*/clusters/*/instances/*} Gets details of a single Instance. |
get |
GET /v1beta/{parent=projects/*/locations/*/clusters/*/instances/*}/connectionInfo Get instance metadata used for a connection. |
inject |
POST /v1beta/{name=projects/*/locations/*/clusters/*/instances/*}:injectFault Injects fault in an instance. |
list |
GET /v1beta/{parent=projects/*/locations/*/clusters/*}/instances Lists Instances in a given project and location. |
patch |
PATCH /v1beta/{instance.name=projects/*/locations/*/clusters/*/instances/*} Updates the parameters of a single Instance. |
restart |
POST /v1beta/{name=projects/*/locations/*/clusters/*/instances/*}:restart Restart an Instance in a cluster. |
REST Resource: v1beta.projects.locations.clusters.users
Methods | |
---|---|
create |
POST /v1beta/{parent=projects/*/locations/*/clusters/*}/users Creates a new User in a given project, location, and cluster. |
delete |
DELETE /v1beta/{name=projects/*/locations/*/clusters/*/users/*} Deletes a single User. |
get |
GET /v1beta/{name=projects/*/locations/*/clusters/*/users/*} Gets details of a single User. |
list |
GET /v1beta/{parent=projects/*/locations/*/clusters/*}/users Lists Users in a given project and location. |
patch |
PATCH /v1beta/{user.name=projects/*/locations/*/clusters/*/users/*} Updates the parameters of a single User. |
REST Resource: v1beta.projects.locations.operations
Methods | |
---|---|
cancel |
POST /v1beta/{name=projects/*/locations/*/operations/*}:cancel Starts asynchronous cancellation on a long-running operation. |
delete |
DELETE /v1beta/{name=projects/*/locations/*/operations/*} Deletes a long-running operation. |
get |
GET /v1beta/{name=projects/*/locations/*/operations/*} Gets the latest state of a long-running operation. |
list |
GET /v1beta/{name=projects/*/locations/*}/operations Lists operations that match the specified filter in the request. |
REST Resource: v1beta.projects.locations.supportedDatabaseFlags
Methods | |
---|---|
list |
GET /v1beta/{parent=projects/*/locations/*}/supportedDatabaseFlags Lists SupportedDatabaseFlags for a given project and location. |
REST Resource: v1.projects.locations
Methods | |
---|---|
get |
GET /v1/{name=projects/*/locations/*} Gets information about a location. |
list |
GET /v1/{name=projects/*}/locations Lists information about the supported locations for this service. |
REST Resource: v1.projects.locations.backups
Methods | |
---|---|
create |
POST /v1/{parent=projects/*/locations/*}/backups Creates a new Backup in a given project and location. |
delete |
DELETE /v1/{name=projects/*/locations/*/backups/*} Deletes a single Backup. |
get |
GET /v1/{name=projects/*/locations/*/backups/*} Gets details of a single Backup. |
list |
GET /v1/{parent=projects/*/locations/*}/backups Lists Backups in a given project and location. |
patch |
PATCH /v1/{backup.name=projects/*/locations/*/backups/*} Updates the parameters of a single Backup. |
REST Resource: v1.projects.locations.clusters
Methods | |
---|---|
create |
POST /v1/{parent=projects/*/locations/*}/clusters Creates a new Cluster in a given project and location. |
createsecondary |
POST /v1/{parent=projects/*/locations/*}/clusters:createsecondary Creates a cluster of type SECONDARY in the given location using the primary cluster as the source. |
delete |
DELETE /v1/{name=projects/*/locations/*/clusters/*} Deletes a single Cluster. |
get |
GET /v1/{name=projects/*/locations/*/clusters/*} Gets details of a single Cluster. |
list |
GET /v1/{parent=projects/*/locations/*}/clusters Lists Clusters in a given project and location. |
patch |
PATCH /v1/{cluster.name=projects/*/locations/*/clusters/*} Updates the parameters of a single Cluster. |
promote |
POST /v1/{name=projects/*/locations/*/clusters/*}:promote Promotes a SECONDARY cluster. |
restore |
POST /v1/{parent=projects/*/locations/*}/clusters:restore Creates a new Cluster in a given project and location, with a volume restored from the provided source, either a backup ID or a point-in-time and a source cluster. |
switchover |
POST /v1/{name=projects/*/locations/*/clusters/*}:switchover Switches the roles of PRIMARY and SECONDARY clusters without any data loss. |
REST Resource: v1.projects.locations.clusters.instances
Methods | |
---|---|
create |
POST /v1/{parent=projects/*/locations/*/clusters/*}/instances Creates a new Instance in a given project and location. |
createsecondary |
POST /v1/{parent=projects/*/locations/*/clusters/*}/instances:createsecondary Creates a new SECONDARY Instance in a given project and location. |
delete |
DELETE /v1/{name=projects/*/locations/*/clusters/*/instances/*} Deletes a single Instance. |
failover |
POST /v1/{name=projects/*/locations/*/clusters/*/instances/*}:failover Forces a Failover for a highly available instance. |
get |
GET /v1/{name=projects/*/locations/*/clusters/*/instances/*} Gets details of a single Instance. |
get |
GET /v1/{parent=projects/*/locations/*/clusters/*/instances/*}/connectionInfo Get instance metadata used for a connection. |
inject |
POST /v1/{name=projects/*/locations/*/clusters/*/instances/*}:injectFault Injects fault in an instance. |
list |
GET /v1/{parent=projects/*/locations/*/clusters/*}/instances Lists Instances in a given project and location. |
patch |
PATCH /v1/{instance.name=projects/*/locations/*/clusters/*/instances/*} Updates the parameters of a single Instance. |
restart |
POST /v1/{name=projects/*/locations/*/clusters/*/instances/*}:restart Restart an Instance in a cluster. |
REST Resource: v1.projects.locations.clusters.users
Methods | |
---|---|
create |
POST /v1/{parent=projects/*/locations/*/clusters/*}/users Creates a new User in a given project, location, and cluster. |
delete |
DELETE /v1/{name=projects/*/locations/*/clusters/*/users/*} Deletes a single User. |
get |
GET /v1/{name=projects/*/locations/*/clusters/*/users/*} Gets details of a single User. |
list |
GET /v1/{parent=projects/*/locations/*/clusters/*}/users Lists Users in a given project and location. |
patch |
PATCH /v1/{user.name=projects/*/locations/*/clusters/*/users/*} Updates the parameters of a single User. |
REST Resource: v1.projects.locations.operations
Methods | |
---|---|
cancel |
POST /v1/{name=projects/*/locations/*/operations/*}:cancel Starts asynchronous cancellation on a long-running operation. |
delete |
DELETE /v1/{name=projects/*/locations/*/operations/*} Deletes a long-running operation. |
get |
GET /v1/{name=projects/*/locations/*/operations/*} Gets the latest state of a long-running operation. |
list |
GET /v1/{name=projects/*/locations/*}/operations Lists operations that match the specified filter in the request. |
REST Resource: v1.projects.locations.supportedDatabaseFlags
Methods | |
---|---|
list |
GET /v1/{parent=projects/*/locations/*}/supportedDatabaseFlags Lists SupportedDatabaseFlags for a given project and location. |