Google Cloud Spanner Cloud Spanner Scans API
The Cloud Spanner Scans API from Google Cloud Spanner — 1 operation(s) for cloud spanner scans.
The Cloud Spanner Scans API from Google Cloud Spanner — 1 operation(s) for cloud spanner scans.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/google-cloud-spanner:google-cloud-spanner-scans-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Cloud Spanner Scans API
version: v1
description: Generated from Google's published Discovery document for Cloud Spanner API (spanner v1, revision 20261109). 1 operation(s).
contact:
name: Google
url: https://developers.google.com/
termsOfService: https://developers.google.com/terms
servers:
- url: https://spanner.googleapis.com
tags:
- name: Scans
paths:
/v1/scans:
get:
operationId: spanner.scans.list
summary: List scans
description: Return available scans given a Database-specific resource name.
parameters:
- name: filter
in: query
required: false
description: A filter expression to restrict the results based on information present in the available Scan collection. The filter applies to all fields within the Scan message except for `data`.
schema:
type: string
- name: pageSize
in: query
required: false
description: The maximum number of items to return.
schema:
type: integer
format: int32
- name: pageToken
in: query
required: false
description: The next_page_token value returned from a previous List request, if any.
schema:
type: string
- name: view
in: query
required: false
description: Specifies which parts of the Scan should be returned in the response. Note, only the SUMMARY view (the default) is currently supported for ListScans.
schema:
enum:
- VIEW_UNSPECIFIED
- SUMMARY
- FULL
type: string
responses:
'200':
description: Successful response
content:
application/json:
schema:
$ref: '#/components/schemas/ListScansResponse'
4XX:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: 'Client error (google.rpc.Status: INVALID_ARGUMENT, PERMISSION_DENIED, NOT_FOUND ...)'
default:
content:
application/json:
schema:
$ref: '#/components/schemas/GoogleRpcError'
description: Error response (google.rpc.Status)
security:
- oauth2:
- https://www.googleapis.com/auth/cloud-platform
- https://www.googleapis.com/auth/spanner.data
- apiKey: []
tags:
- Scans
components:
schemas:
KeyRangeInfos:
properties:
infos:
type: array
description: The list individual KeyRangeInfos.
items:
$ref: '#/components/schemas/KeyRangeInfo'
totalSize:
description: The total size of the list of all KeyRangeInfos. This may be larger than the number of repeated messages above. If that is the case, this number may be used to determine how many are not being shown.
format: int32
type: integer
description: A message representing a list of specific information for multiple key ranges.
type: object
IndexedKeyRangeInfos:
description: A message representing a (sparse) collection of KeyRangeInfos for specific key buckets.
properties:
keyRangeInfos:
type: object
description: A (sparse) mapping from key bucket index to the KeyRangeInfos for that key bucket.
additionalProperties:
$ref: '#/components/schemas/KeyRangeInfos'
type: object
DiagnosticMessage:
description: A message representing the key visualizer diagnostic messages.
properties:
shortMessage:
$ref: '#/components/schemas/LocalizedString'
description: The short message.
metric:
$ref: '#/components/schemas/LocalizedString'
description: The metric.
severity:
description: The severity of the diagnostic message.
enum:
- SEVERITY_UNSPECIFIED
- INFO
- WARNING
- ERROR
- FATAL
type: string
info:
$ref: '#/components/schemas/LocalizedString'
description: Information about this diagnostic information.
metricSpecific:
type: boolean
description: Whether this message is specific only for the current metric. By default Diagnostics are shown for all metrics, regardless which metric is the currently selected metric in the UI. However occasionally a metric will generate so many messages that the resulting visual clutter becomes overwhelming. In this case setting this to true, will show the diagnostic messages for that metric only if it is the currently selected metric.
type: object
ContextValue:
description: A message representing context for a KeyRangeInfo, including a label, value, unit, and severity.
type: object
properties:
label:
$ref: '#/components/schemas/LocalizedString'
description: The label for the context value. e.g. "latency".
unit:
description: The unit of the context value.
type: string
severity:
description: The severity of this context.
type: string
enum:
- SEVERITY_UNSPECIFIED
- INFO
- WARNING
- ERROR
- FATAL
value:
format: float
type: number
description: The value for the context.
GoogleRpcError:
type: object
description: The error envelope every Google API returns.
properties:
error:
type: object
properties:
code:
type: integer
message:
type: string
status:
type: string
details:
type: array
items:
type: object
MetricMatrixRow:
type: object
description: A message representing a row of a matrix of floats.
properties:
cols:
items:
type: number
format: float
description: The columns of the row.
type: array
IndexedHotKey:
properties:
sparseHotKeys:
type: object
additionalProperties:
format: int32
type: integer
description: A (sparse) mapping from key bucket index to the index of the specific hot row key for that key bucket. The index of the hot row key can be translated to the actual row key via the ScanData.VisualizationData.indexed_keys repeated field.
description: A message representing a (sparse) collection of hot keys for specific key buckets.
type: object
KeyRangeInfo:
properties:
timeOffset:
description: The time offset. This is the time since the start of the time interval.
format: google-duration
type: string
metric:
$ref: '#/components/schemas/LocalizedString'
description: The name of the metric. e.g. "latency".
endKeyIndex:
type: integer
description: The index of the end key in indexed_keys.
format: int32
contextValues:
type: array
items:
$ref: '#/components/schemas/ContextValue'
description: The list of context values for this key range.
value:
type: number
description: The value of the metric.
format: float
keysCount:
description: The number of keys this range covers.
type: string
format: int64
info:
$ref: '#/components/schemas/LocalizedString'
description: Information about this key range, for all metrics.
unit:
$ref: '#/components/schemas/LocalizedString'
description: The unit of the metric. This is an unstructured field and will be mapped as is to the user.
startKeyIndex:
type: integer
description: The index of the start key in indexed_keys.
format: int32
type: object
description: A message representing information for a key range (possibly one key).
DerivedMetric:
description: A message representing a derived metric.
type: object
properties:
denominator:
$ref: '#/components/schemas/LocalizedString'
description: The name of the denominator metric. e.g. "rows".
numerator:
$ref: '#/components/schemas/LocalizedString'
description: The name of the numerator metric. e.g. "latency".
PrefixNode:
type: object
description: A message representing a key prefix node in the key prefix hierarchy. for eg. Bigtable keyspaces are lexicographically ordered mappings of keys to values. Keys often have a shared prefix structure where users use the keys to organize data. Eg ///employee In this case Keysight will possibly use one node for a company and reuse it for all employees that fall under the company. Doing so improves legibility in the UI.
properties:
depth:
format: int32
description: The depth in the prefix hierarchy.
type: integer
word:
description: The string represented by the prefix node.
type: string
endIndex:
description: The index of the end key bucket of the range that this node spans.
format: int32
type: integer
dataSourceNode:
description: Whether this corresponds to a data_source name.
type: boolean
startIndex:
format: int32
type: integer
description: The index of the start key bucket of the range that this node spans.
ScanData:
properties:
data:
$ref: '#/components/schemas/VisualizationData'
description: Cloud Key Visualizer scan data. The range of time this information covers is captured via the above time range fields. Note, this field is not available to the ListScans method.
endTime:
type: string
description: The upper bound for when the contained data is defined.
format: google-datetime
startTime:
description: A range of time (inclusive) for when the contained data is defined. The lower bound for when the contained data is defined.
format: google-datetime
type: string
description: ScanData contains Cloud Key Visualizer scan data used by the caller to construct a visualization.
type: object
Scan:
properties:
scanData:
$ref: '#/components/schemas/ScanData'
description: Output only. Cloud Key Visualizer scan data. Note, this field is not available to the ListScans method.
endTime:
type: string
description: The upper bound for when the scan is defined.
format: google-datetime
startTime:
type: string
description: A range of time (inclusive) for when the scan is defined. The lower bound for when the scan is defined.
format: google-datetime
name:
type: string
description: The unique name of the scan, specific to the Database service implementing this interface.
details:
type: object
description: Additional information provided by the implementer.
additionalProperties:
description: Properties of the object. Contains field @type with type URL.
type: object
description: Scan is a structure which describes Cloud Key Visualizer scan information.
Metric:
properties:
hasNonzeroData:
type: boolean
description: Whether the metric has any non-zero data.
indexedHotKeys:
description: The (sparse) mapping from time index to an IndexedHotKey message, representing those time intervals for which there are hot keys.
additionalProperties:
$ref: '#/components/schemas/IndexedHotKey'
type: object
indexedKeyRangeInfos:
description: The (sparse) mapping from time interval index to an IndexedKeyRangeInfos message, representing those time intervals for which there are informational messages concerning key ranges.
type: object
additionalProperties:
$ref: '#/components/schemas/IndexedKeyRangeInfos'
derived:
$ref: '#/components/schemas/DerivedMetric'
description: The references to numerator and denominator metrics for a derived metric.
info:
$ref: '#/components/schemas/LocalizedString'
description: Information about the metric.
unit:
$ref: '#/components/schemas/LocalizedString'
description: The unit of the metric.
displayLabel:
$ref: '#/components/schemas/LocalizedString'
description: The displayed label of the metric.
matrix:
$ref: '#/components/schemas/MetricMatrix'
description: The data for the metric as a matrix.
category:
$ref: '#/components/schemas/LocalizedString'
description: The category of the metric, e.g. "Activity", "Alerts", "Reads", etc.
aggregation:
enum:
- AGGREGATION_UNSPECIFIED
- MAX
- SUM
description: The aggregation function used to aggregate each key bucket
type: string
visible:
description: Whether the metric is visible to the end user.
type: boolean
hotValue:
description: The value that is considered hot for the metric. On a per metric basis hotness signals high utilization and something that might potentially be a cause for concern by the end user. hot_value is used to calibrate and scale visual color scales.
format: float
type: number
type: object
description: A message representing the actual monitoring data, values for each key bucket over time, of a metric.
VisualizationData:
properties:
indexedKeys:
type: array
items:
type: string
description: Keys of key ranges that contribute significantly to a given metric Can be thought of as heavy hitters.
prefixNodes:
description: The list of extracted key prefix nodes used in the key prefix hierarchy.
items:
$ref: '#/components/schemas/PrefixNode'
type: array
dataSourceSeparatorToken:
description: The token delimiting a datasource name from the rest of a key in a data_source.
type: string
endKeyStrings:
items:
type: string
description: We discretize the entire keyspace into buckets. Assuming each bucket has an inclusive keyrange and covers keys from k(i) ... k(n). In this case k(n) would be an end key for a given range. end_key_string is the collection of all such end keys
type: array
dataSourceEndToken:
type: string
description: The token signifying the end of a data_source.
keyUnit:
type: string
enum:
- KEY_UNIT_UNSPECIFIED
- KEY
- CHUNK
description: 'The unit for the key: e.g. ''key'' or ''chunk''.'
keySeparator:
type: string
description: The token delimiting the key prefixes.
hasPii:
description: Whether this scan contains PII.
type: boolean
metrics:
description: The list of data objects for each metric.
items:
$ref: '#/components/schemas/Metric'
type: array
diagnosticMessages:
type: array
description: The list of messages (info, alerts, ...)
items:
$ref: '#/components/schemas/DiagnosticMessage'
type: object
LocalizedString:
description: A message representing a user-facing string whose value may need to be translated before being displayed.
properties:
args:
type: object
additionalProperties:
type: string
description: A map of arguments used when creating the localized message. Keys represent parameter names which may be used by the localized version when substituting dynamic values.
message:
description: The canonical English version of this message. If no token is provided or the front-end has no message associated with the token, this text will be displayed as-is.
type: string
token:
description: The token identifying the message, e.g. 'METRIC_READ_CPU'. This should be unique within the service.
type: string
type: object
ListScansResponse:
description: Response method from the ListScans method.
type: object
properties:
scans:
type: array
description: Available scans based on the list query parameters.
items:
$ref: '#/components/schemas/Scan'
nextPageToken:
type: string
description: Token to retrieve the next page of results, or empty if there are no more results in the list.
MetricMatrix:
type: object
description: A message representing a matrix of floats.
properties:
rows:
description: The rows of the matrix.
items:
$ref: '#/components/schemas/MetricMatrixRow'
type: array
securitySchemes:
apiKey:
type: apiKey
in: query
name: key
description: API key; accepted by methods that do not need user data.
oauth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://accounts.google.com/o/oauth2/auth
tokenUrl: https://oauth2.googleapis.com/token
scopes:
https://www.googleapis.com/auth/cloud-platform: See, edit, configure, and delete your Google Cloud data and see the email address for your Google Account.
https://www.googleapis.com/auth/spanner.admin: Administer your Spanner databases
https://www.googleapis.com/auth/spanner.data: See, edit, configure, and delete your Google Cloud Spanner data and see the email address for your Google Account
externalDocs:
url: https://cloud.google.com/spanner/
x-provenance:
method: harvested
publisher: Google
source: https://spanner.googleapis.com/$discovery/rest?version=v1
note: converted by discovery-to-openapi.py from Google's Discovery document (revision 20261109)