Runs a query.
HTTP request
POST https://firestore.googleapis.com/v1beta1/{parent=projects/*/databases/*/documents}:runQuery
The URL uses gRPC Transcoding syntax.
Path parameters
| Parameters | |
|---|---|
| parent | 
 Required. The parent resource name. In the format:  | 
Request body
The request body contains data with the following structure:
| JSON representation | 
|---|
| { "explainOptions": { object ( | 
| Fields | |
|---|---|
| explainOptions | 
 Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned. | 
| Union field query_type. The query to run.query_typecan be only one of the following: | |
| structuredQuery | 
 A structured query. | 
| Union field consistency_selector. The consistency mode for this transaction. If not set, defaults to strong consistency.consistency_selectorcan be only one of the following: | |
| transaction | 
 Run the query within an already active transaction. The value here is the opaque transaction ID to execute the query in. A base64-encoded string. | 
| newTransaction | 
 Starts a new transaction and reads the documents. Defaults to a read-only transaction. The new transaction ID will be returned as the first response in the stream. | 
| readTime | 
 Reads documents as they were at the given time. This must be a microsecond precision timestamp within the past one hour, or if Point-in-Time Recovery is enabled, can additionally be a whole minute timestamp within the past 7 days. Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
Response body
The response for Firestore.RunQuery.
If successful, the response body contains data with the following structure:
| JSON representation | 
|---|
| { "transaction": string, "document": { object ( | 
| Fields | |
|---|---|
| transaction | 
 The transaction that was started as part of this request. Can only be set in the first response, and only if  A base64-encoded string. | 
| document | 
 A query result, not set when reporting partial progress. | 
| readTime | 
 The time at which the document was read. This may be monotonically increasing; in this case, the previous documents in the result stream are guaranteed not to have changed between their  If the query returns no results, a response with  Uses RFC 3339, where generated output will always be Z-normalized and use 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples:  | 
| skippedResults | 
 The number of results that have been skipped due to an offset between the last response and the current response. | 
| explainMetrics | 
 Query explain metrics. This is only present when the  | 
| Union field continuation_selector. The continuation mode for the query. If present, it indicates the current query response stream has finished. This can be set with or without adocumentpresent, but when set, no more results are returned.continuation_selectorcan be only one of the following: | |
| done | 
 If present, Firestore has completely finished the request and no more documents will be returned. | 
Authorization scopes
Requires one of the following OAuth scopes:
- https://www.googleapis.com/auth/datastore
- https://www.googleapis.com/auth/cloud-platform
For more information, see the OAuth 2.0 Overview.