Skip to content
Back to main site

Spanner

Manage Spanner instances and databases through the v1 API, and use sessions, transactions and SQL with the local Spanner engine.

Plan: Pro97 of 99 methods implemented, 2 failed in testing11Known differences

Capacity and placement are only settings, not every SQL feature or dialect was tried, and adapter methods fail.

Example checked on Vera 1.2.2, 8 November 2026. Each coverage note names its own evidence and date.

Activate your license key and start the emulator with the Vera launcher, as in Activate Pro, then run these in a terminal of their own. They use Google Cloud’s address on your machine.

Terminal window
export VERA_ENDPOINT="http://localhost:8081"
export CLOUDSDK_AUTH_DISABLE_CREDENTIALS=true
export CLOUDSDK_CORE_PROJECT=example-project
export CLOUDSDK_API_ENDPOINT_OVERRIDES_SERVICEUSAGE="$VERA_ENDPOINT/_gcp/serviceusage/"
export CLOUDSDK_API_ENDPOINT_OVERRIDES_SPANNER="$VERA_ENDPOINT/_gcp/spanner/"
export SPANNER_BASE="$VERA_ENDPOINT/_gcp/spanner/v1/projects/example-project"

REST requests use VERA_ENDPOINT and SPANNER_BASE. The other lines are for gcloud: they turn off credentials, pick a local project, and keep its Spanner and Service Usage calls on the emulator. They were tested with gcloud 585.0.0 for the example below. Other gcloud commands may call other APIs.

Requests go to $VERA_ENDPOINT/_gcp/spanner/v1/. Instance configurations such as regional-us-central1 come from the emulator’s catalog: they don’t provision real distributed capacity. Sessions, transactions and SQL run on a local Spanner engine. Vera 1.2.0 preview didn’t include that engine: there, creating a session answered 501.

Create an instance and read it back, add a database with a table, run a query in a session, then delete the instance. Both tabs create the same instance name, so clean up in one before trying the other.

Terminal window
gcloud spanner instances create example-instance \
--config=regional-us-central1 --description="Example instance" --nodes=1 --quiet
gcloud spanner instances describe example-instance --format=json

These are selected fields of the instance that the read returns:

Instance (selected fields)
{
"name": "projects/example-project/instances/example-instance",
"config": "projects/example-project/instanceConfigs/regional-us-central1",
"displayName": "Example instance",
"nodeCount": 1,
"processingUnits": 1000,
"state": "READY",
"instanceType": "PROVISIONED",
"edition": "STANDARD"
}

READY describes the administrative record, not distributed capacity (see Limitations).

After creating example-instance with either tab above, add a database with a table:

Terminal window
curl --fail-with-body -X POST "$SPANNER_BASE/instances/example-instance/databases" \
-H "Content-Type: application/json" \
-d '{"createStatement":"CREATE DATABASE `example-db`","extraStatements":["CREATE TABLE Test (Id INT64 NOT NULL, Value STRING(MAX)) PRIMARY KEY (Id)"]}'

The database create returns an operation that’s already done. Next, open a session on the database and run a query in it. This step needs Python 3 (python3), which copies the session’s name from the session response into SESSION for the query.

Terminal window
SESSION=$(curl --fail-with-body -X POST \
"$SPANNER_BASE/instances/example-instance/databases/example-db/sessions" \
-H "Content-Type: application/json" -d '{}' | \
python3 -c 'import json,sys; print(json.load(sys.stdin)["name"])')
curl --fail-with-body -X POST "$VERA_ENDPOINT/_gcp/spanner/v1/${SESSION}:executeSql" \
-H "Content-Type: application/json" -d '{"sql":"SELECT 1 AS answer"}'

The query returns its result:

Response
{
"metadata": {
"rowType": {
"fields": [
{
"name": "answer",
"type": {
"code": "INT64"
}
}
]
},
"undeclaredParameters": {}
},
"rows": [["1"]]
}

On Vera 1.2.0-rc.3, a row written to Test was also read back, and batch DML ran in a transaction that was then rolled back. Then clean up as below.

Terminal window
gcloud spanner instances delete example-instance --quiet

The example was run on Vera 1.2.2 on 8 November 2026. The rest of these were run on Vera 1.2.0-rc.3, apart from listing instance configurations and reading and deleting databases, which were run on Vera 1.2.0 preview. The API coverage marks the rest of the API from a review of the Vera 1.2.0 source, with its limits in the notes.

  • Instance configurations: list the emulator’s catalog, such as regional-us-central1.
  • Instances: create, read and delete records, through REST or gcloud.
  • Databases: create, read and delete databases through REST. A create with an extra CREATE TABLE statement returned a READY database, and the table it created could be written and queried.
  • Sessions, transactions and SQL: sessions, single-use and read-write transactions, executeSql, batch DML, reads, partitioned queries and reads, batch writes, and reading and changing the schema answered 200. Over REST, streaming methods return a JSON array of frames.
  • Operations: administrative creates return operations that have already finished.

The main limits are below. A few more apply to every service, and the API coverage notes cover smaller differences.

  • Not every SQL feature was tried. Sessions, queries, reads, mutations and transactions ran on the local engine, but not every SQL feature or dialect was tried.
  • Adapter methods fail. On Vera 1.2.0-rc.3, sessions.adaptMessage answered 501 and sessions:adapter answered 404.
  • Permission tests don’t check permissions. From a review of the Vera 1.2.0 source, testIamPermissions on an existing instance, database, backup, backup schedule or database role returns every permission requested, without checking the caller. On Vera 1.2.0-rc.3, an instance returned even not.a.real.permission.
  • Settings are records. Node count, processing units and regional configuration are stored settings: no distributed database capacity was shown. From a review of the Vera 1.2.0 source, changequorum and moving an instance change settings only, addSplitPoints stores no split points, and getScans returns no scan data. Don’t use the emulator to test Spanner’s consistency or performance.
  • Backups are local snapshots. From a review of the Vera 1.2.0 source, creating, copying and restoring a backup snapshots and restores the database’s schema and rows in the local engine, but version-time behavior isn’t established. Backup schedules approximate cron as a fixed period of hours, a day, 7 days or 30 days, starting one period after the schedule is first seen.

Every method in Google Cloud's published v1 API (discovery document, revision 20261104), and whether the emulator implements it. Findings without a date are from testing on 5 November 2026. Local observation notes without a build or date are from Vera 1.2.0 preview, on 5 November 2026. Methods not checked earlier were assessed by a review of the Vera 1.2.0 source on 6 November 2026: source inspection describes an implementation and its known limits, not a successful run in a release build or a comparison with Google Cloud. Failures in a tested build are marked separately, and each note from this review names its evidence and date. What the statuses mean

projects.instances

9 of 9 implemented · 2 known differences
MethodStatusNotes
createImplementedLocal observation: returns an operation that's already done. Node count and processing units are stored settings.
deleteImplemented
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored instance. Its READY state and node capacity are configuration; the local Spanner engine serves its databases. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — the instance reported READY, and sessions and SQL worked on its database.
getIamPolicyImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the policy stored on the resource. This doesn't mean IAM authorization is enforced.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.
moveKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — updates the instance's configuration and its databases' encryption settings. Nothing is migrated: the local engine stays where it is.
patchImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — applies capacity, labels and the other supported settings to the stored instance. Node count and processing units don't allocate any capacity.
setIamPolicyImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — stores the policy on the resource, with etag conflict checks. This doesn't mean IAM authorization is enforced.
testIamPermissionsKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — for an existing resource, returns every requested permission without checking the caller or the stored policy bindings. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — a request on an instance for spanner.instances.get and not.a.real.permission returned both.

projects.instances.databases

14 of 14 implemented · 4 known differences
MethodStatusNotes
addSplitPointsKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — checks the database exists and the index and table names, then returns {} without storing split points or repartitioning data.
changequorumKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — checks the dual-region configuration and etag, then changes the stored quorum setting. No replicas or quorum are involved.
createImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — creates the database in the local Spanner engine and runs its extraStatements. Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — a create with a CREATE TABLE statement in extraStatements made a table that worked: a row written to it was returned by read and streamingRead.
dropDatabaseImplemented
getImplemented
getDdlImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
getIamPolicyImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the policy stored on the resource. This doesn't mean IAM authorization is enforced.
getScansKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — returns the requested time range with empty scan data, not Key Visualizer data collected from activity.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.
patchImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — applies the supported update mask to the stored record.
restoreImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — creates the restored database and, when the backup's local snapshot exists, restores its schema and rows through the local Spanner engine. Backups made in Google Cloud can't be restored.
setIamPolicyImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — stores the policy on the resource, with etag conflict checks. This doesn't mean IAM authorization is enforced.
testIamPermissionsKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — for an existing resource, returns every requested permission without checking the caller or the stored policy bindings.
updateDdlImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.

projects.instances.databases.sessions

16 of 18 implemented · 2 failed in testing
MethodStatusNotes
adaptMessageFailed in testingLocal observation: Vera 1.2.0-rc.3, 6 November 2026 — an adaptMessage request on an existing session, with protocol postgres, answered HTTP 501 UNIMPLEMENTED, with "Method Not Allowed". Source inspection: Vera 1.2.0 source, 6 November 2026 — the request is passed straight to the local Spanner engine.
adapterFailed in testingLocal observation: Vera 1.2.0-rc.3, 6 November 2026 — a sessions:adapter request on an existing database answered HTTP 404 NOT_FOUND. Source inspection: Vera 1.2.0 source, 6 November 2026 — the request is passed straight to the local Spanner engine.
batchCreateImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
batchWriteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in the tested sequence, and the streaming reads returned the stored row. Over REST, the response is a JSON array of frames.
beginTransactionImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
commitImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
createImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — creates the session in the local Spanner engine. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — creating a session answered HTTP 200, and executeSql with SELECT 1 AS answer in it returned one row holding 1.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
executeBatchDmlImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
executeSqlImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
executeStreamingSqlImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in the tested sequence, and the streaming reads returned the stored row. Over REST, the response is a JSON array of frames.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
partitionQueryImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
partitionReadImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
readImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
rollbackImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in a tested sequence on one database: a table created, a row written and read back, batch DML run in a read-write transaction and rolled back, and the schema read and changed.
streamingReadImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — requests go to the bundled local Spanner engine. Not every SQL construct or dialect is established, and Spanner's distributed behavior isn't reproduced. Local observation: Vera 1.2.0-rc.3, 6 November 2026 — this method answered HTTP 200 in the tested sequence, and the streaming reads returned the stored row. Over REST, the response is a JSON array of frames.

projects.instanceConfigs

5 of 5 implemented
MethodStatusNotes
createImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — checks the prerequisites and stores the instance configuration locally.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored record and the local state that depends on it.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored record, or returns its not-found error.
listImplementedLocal observation: lists the emulator's catalog of configurations, such as regional-us-central1.
patchImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — applies the supported update mask to the stored record.

projects.instanceConfigOperations

1 of 1 implemented
MethodStatusNotes
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

projects.instanceConfigs.operations

4 of 4 implemented
MethodStatusNotes
cancelImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — keeps the record of an operation that has already finished, and marks a long-running operation that's still running as cancelled.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored record and the local state that depends on it.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored record, or returns its not-found error.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

projects.instanceConfigs.ssdCaches.operations

4 of 4 implemented
MethodStatusNotes
cancelImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — keeps the record of an operation that has already finished, and marks a long-running operation that's still running as cancelled.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored record and the local state that depends on it.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored record, or returns its not-found error.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

projects.instances.backupOperations

1 of 1 implemented
MethodStatusNotes
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

projects.instances.backups

9 of 9 implemented · 1 known difference
MethodStatusNotes
copyImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — stores the backup record and snapshots the database's schema and rows in the local Spanner engine. It's a local snapshot, not a distributed backup, and version-time behavior isn't established.
createImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — stores the backup record and snapshots the database's schema and rows in the local Spanner engine. It's a local snapshot, not a distributed backup, and version-time behavior isn't established.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored record and the local state that depends on it.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored record, or returns its not-found error.
getIamPolicyImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the policy stored on the resource. This doesn't mean IAM authorization is enforced.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.
patchImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — applies the supported update mask to the stored record.
setIamPolicyImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — stores the policy on the resource, with etag conflict checks. This doesn't mean IAM authorization is enforced.
testIamPermissionsKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — for an existing resource, returns every requested permission without checking the caller or the stored policy bindings.

projects.instances.backups.operations

4 of 4 implemented
MethodStatusNotes
cancelImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — keeps the record of an operation that has already finished, and marks a long-running operation that's still running as cancelled.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored record and the local state that depends on it.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored record, or returns its not-found error.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

projects.instances.databaseOperations

1 of 1 implemented
MethodStatusNotes
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

projects.instances.databases.backupSchedules

8 of 8 implemented · 3 known differences
MethodStatusNotes
createKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — stores the schedule and takes snapshots of the data, but approximates cron as every N hours, daily, every 7 days or every 30 days, starting one period after the schedule is first seen. Timing doesn't follow exact cron or wall-clock time.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored record and the local state that depends on it.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored record, or returns its not-found error.
getIamPolicyImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the policy stored on the resource. This doesn't mean IAM authorization is enforced.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.
patchKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — stores the schedule and takes snapshots of the data, but approximates cron as every N hours, daily, every 7 days or every 30 days, starting one period after the schedule is first seen. Timing doesn't follow exact cron or wall-clock time.
setIamPolicyImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — stores the policy on the resource, with etag conflict checks. This doesn't mean IAM authorization is enforced.
testIamPermissionsKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — for an existing resource, returns every requested permission without checking the caller or the stored policy bindings.

projects.instances.databases.databaseRoles

2 of 2 implemented · 1 known difference
MethodStatusNotes
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists stored roles, adding the roles the database schema declares and the system roles. Enforcement of what each role may do isn't established.
testIamPermissionsKnown differenceSource inspection: Vera 1.2.0 source, 6 November 2026 — for an existing resource, returns every requested permission without checking the caller or the stored policy bindings. It looks the role up only among the stored role records, while listing roles also adds those the database schema declares.

projects.instances.databases.operations

4 of 4 implemented
MethodStatusNotes
cancelImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — keeps the record of an operation that has already finished, and marks a long-running operation that's still running as cancelled.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored record and the local state that depends on it.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored record, or returns its not-found error.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

projects.instances.instancePartitionOperations

1 of 1 implemented
MethodStatusNotes
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

projects.instances.instancePartitions

5 of 5 implemented
MethodStatusNotes
createImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — checks the prerequisites and stores the instance partition. Partition topology and capacity are stored configuration.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored partition and the local state that depends on it. Partition topology and capacity are stored configuration.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored partition, or returns its not-found error. Partition topology and capacity are stored configuration.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored partitions, with the supported filtering and pagination. Partition topology and capacity are stored configuration.
patchImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — applies the supported update mask to the stored partition. Partition topology and capacity are stored configuration.

projects.instances.instancePartitions.operations

4 of 4 implemented
MethodStatusNotes
cancelImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — keeps the record of an operation that has already finished, and marks a long-running operation that's still running as cancelled.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored record and the local state that depends on it.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored record, or returns its not-found error.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

projects.instances.operations

4 of 4 implemented
MethodStatusNotes
cancelImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — keeps the record of an operation that has already finished, and marks a long-running operation that's still running as cancelled.
deleteImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — removes the stored record and the local state that depends on it.
getImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — reads the stored record, or returns its not-found error.
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored records in scope, with the supported filtering and pagination.

scans

1 of 1 implemented
MethodStatusNotes
listImplementedSource inspection: Vera 1.2.0 source, 6 November 2026 — lists the stored scans. Nothing in the service writes any, so the list is normally empty, and no Key Visualizer data is collected.