Ejecuta una consulta.
Solicitud HTTP
POST https://firestore.googleapis.com/v1/{parent=projects/*/databases/*/documents}:runQuery
La URL usa la sintaxis de la transcodificación gRPC.
Parámetros de ruta de acceso
Parámetros | |
---|---|
parent |
Obligatorio. El nombre del recurso superior. Tiene el formato |
Cuerpo de la solicitud
El cuerpo de la solicitud contiene datos con la siguiente estructura:
Representación JSON |
---|
{ "explainOptions": { object ( |
Campos | |
---|---|
explainOptions |
Opcional. Explicar las opciones de la consulta. Si se establece, se mostrarán estadísticas adicionales de las consultas. De lo contrario, solo se devolverán los resultados de la consulta. |
Campo de unión query_type . La consulta que se ejecutará. query_type puede ser solo uno de los siguientes: |
|
structuredQuery |
Una consulta estructurada. |
Campo de unión consistency_selector . El modo de coherencia de esta transacción. Si no está configurado, se establece de forma predeterminada en la coherencia sólida. consistency_selector puede ser solo uno de los siguientes: |
|
transaction |
Ejecutar la consulta dentro de una transacción ya activa El valor aquí es el ID de transacción opaco en el que se ejecutará la consulta. String codificada en base64. |
newTransaction |
Inicia una nueva transacción y lee los documentos. La configuración predeterminada es una transacción de solo lectura. El nuevo ID de transacción se mostrará como la primera respuesta en la transmisión. |
readTime |
Lee los documentos tal como estaban en un momento determinado. Debe ser una marca de tiempo con precisión de microsegundos dentro de la última hora o, si se habilitó la recuperación de un momento determinado, también puede ser una marca de tiempo de un minuto completo dentro de los últimos 7 días. Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
Cuerpo de la respuesta
La respuesta para Firestore.RunQuery
.
Si se ejecuta correctamente, el cuerpo de la respuesta contiene datos con la siguiente estructura:
Representación JSON |
---|
{ "transaction": string, "document": { object ( |
Campos | |
---|---|
transaction |
Es la transacción que se inició como parte de esta solicitud. Solo se puede configurar en la primera respuesta y solo si se configuró String codificada en base64. |
document |
Es un resultado de la consulta, no se establece cuando se informa el progreso parcial. |
readTime |
Indica la hora a la que se leyó el documento. Esto puede aumentar de forma monótona; En este caso, se garantiza que los documentos anteriores del flujo de resultados no hayan cambiado entre su Si la consulta no muestra resultados, se enviará una respuesta con Una marca de tiempo en formato RFC3339 UTC “Zulú”, con una resolución de nanosegundos y hasta nueve dígitos fraccionarios. Ejemplos: |
skippedResults |
La cantidad de resultados que se omitieron debido al desplazamiento entre la última respuesta y la respuesta actual. |
explainMetrics |
Métricas de explicación de consultas. Esto solo está presente cuando se proporciona el |
Campo de unión continuation_selector . El modo de continuación de la consulta. Si está presente, indica que finalizó el flujo de respuesta de la consulta actual. Se puede configurar con o sin un document presente, pero cuando se configura, no se muestran más resultados. continuation_selector puede ser solo uno de los siguientes: |
|
done |
Si está presente, Firestore finalizó la solicitud por completo y no se mostrarán más documentos. |
Alcances de autorización
Se necesita uno de los siguientes permisos de OAuth:
https://www.googleapis.com/auth/datastore
https://www.googleapis.com/auth/cloud-platform
Para obtener más información, consulta Descripción general de la autenticación.