diff --git a/docs/dyn/firestore_v1.projects.databases.backupSchedules.html b/docs/dyn/firestore_v1.projects.databases.backupSchedules.html index 77a5d7592b..4e8b99b09b 100644 --- a/docs/dyn/firestore_v1.projects.databases.backupSchedules.html +++ b/docs/dyn/firestore_v1.projects.databases.backupSchedules.html @@ -109,7 +109,7 @@

Method Details

{ # A backup schedule for a Cloud Firestore Database. This resource is owned by the database it is backing up, and is deleted along with the database. The actual backups are not though. "createTime": "A String", # Output only. The timestamp at which this backup schedule was created and effective since. No backups will be created for this schedule before this time. - "dailyRecurrence": { # Represent a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. + "dailyRecurrence": { # Represents a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. }, "name": "A String", # Output only. The unique backup schedule identifier across all locations and databases for the given project. This will be auto-assigned. Format is `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}` "retention": "A String", # At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days. @@ -129,7 +129,7 @@

Method Details

{ # A backup schedule for a Cloud Firestore Database. This resource is owned by the database it is backing up, and is deleted along with the database. The actual backups are not though. "createTime": "A String", # Output only. The timestamp at which this backup schedule was created and effective since. No backups will be created for this schedule before this time. - "dailyRecurrence": { # Represent a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. + "dailyRecurrence": { # Represents a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. }, "name": "A String", # Output only. The unique backup schedule identifier across all locations and databases for the given project. This will be auto-assigned. Format is `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}` "retention": "A String", # At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days. @@ -145,7 +145,7 @@

Method Details

Deletes a backup schedule.
 
 Args:
-  name: string, Required. The name of backup schedule. Format `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}` (required)
+  name: string, Required. The name of the backup schedule. Format `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}` (required)
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -174,7 +174,7 @@ 

Method Details

{ # A backup schedule for a Cloud Firestore Database. This resource is owned by the database it is backing up, and is deleted along with the database. The actual backups are not though. "createTime": "A String", # Output only. The timestamp at which this backup schedule was created and effective since. No backups will be created for this schedule before this time. - "dailyRecurrence": { # Represent a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. + "dailyRecurrence": { # Represents a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. }, "name": "A String", # Output only. The unique backup schedule identifier across all locations and databases for the given project. This will be auto-assigned. Format is `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}` "retention": "A String", # At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days. @@ -203,7 +203,7 @@

Method Details

"backupSchedules": [ # List of all backup schedules. { # A backup schedule for a Cloud Firestore Database. This resource is owned by the database it is backing up, and is deleted along with the database. The actual backups are not though. "createTime": "A String", # Output only. The timestamp at which this backup schedule was created and effective since. No backups will be created for this schedule before this time. - "dailyRecurrence": { # Represent a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. + "dailyRecurrence": { # Represents a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. }, "name": "A String", # Output only. The unique backup schedule identifier across all locations and databases for the given project. This will be auto-assigned. Format is `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}` "retention": "A String", # At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days. @@ -227,7 +227,7 @@

Method Details

{ # A backup schedule for a Cloud Firestore Database. This resource is owned by the database it is backing up, and is deleted along with the database. The actual backups are not though. "createTime": "A String", # Output only. The timestamp at which this backup schedule was created and effective since. No backups will be created for this schedule before this time. - "dailyRecurrence": { # Represent a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. + "dailyRecurrence": { # Represents a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. }, "name": "A String", # Output only. The unique backup schedule identifier across all locations and databases for the given project. This will be auto-assigned. Format is `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}` "retention": "A String", # At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days. @@ -248,7 +248,7 @@

Method Details

{ # A backup schedule for a Cloud Firestore Database. This resource is owned by the database it is backing up, and is deleted along with the database. The actual backups are not though. "createTime": "A String", # Output only. The timestamp at which this backup schedule was created and effective since. No backups will be created for this schedule before this time. - "dailyRecurrence": { # Represent a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. + "dailyRecurrence": { # Represents a recurring schedule that runs at a specific time every day. The time zone is UTC. # For a schedule that runs daily at a specified time. }, "name": "A String", # Output only. The unique backup schedule identifier across all locations and databases for the given project. This will be auto-assigned. Format is `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}` "retention": "A String", # At what relative time in the future, compared to its creation time, the backup should be deleted, e.g. keep backups for 7 days. diff --git a/docs/dyn/firestore_v1.projects.databases.documents.html b/docs/dyn/firestore_v1.projects.databases.documents.html index e91bcffb56..33a0c3af4f 100644 --- a/docs/dyn/firestore_v1.projects.databases.documents.html +++ b/docs/dyn/firestore_v1.projects.databases.documents.html @@ -1750,6 +1750,9 @@

Method Details

The object takes the form of: { # The request for Firestore.RunAggregationQuery. + "explainOptions": { # Explain options for the query. # Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned. + "analyze": True or False, # Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics. + }, "newTransaction": { # Options for creating a new transaction. # Starts a new transaction as part of the query, defaulting to read-only. The new transaction ID will be returned as the first response in the stream. "readOnly": { # Options for a transaction that can only be used to read documents. # The transaction can only be used for read operations. "readTime": "A String", # Reads documents 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. @@ -1918,6 +1921,23 @@

Method Details

An object of the form: { # The response for Firestore.RunAggregationQuery. + "explainMetrics": { # Explain metrics for the query. # Query explain metrics. This is only present when the RunAggregationQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream. + "executionStats": { # Execution statistics for the query. # Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true. + "debugStats": { # Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { "indexes_entries_scanned": "1000", "documents_scanned": "20", "billing_details" : { "documents_billable": "20", "index_entries_billable": "1000", "min_query_cost": "0" } } + "a_key": "", # Properties of the object. + }, + "executionDuration": "A String", # Total time to execute the query in the backend. + "readOperations": "A String", # Total billable read operations. + "resultsReturned": "A String", # Total number of results returned, including documents, projections, aggregation results, keys. + }, + "planSummary": { # Planning phase information for the query. # Planning phase information for the query. + "indexesUsed": [ # The indexes selected for the query. For example: [ {"query_scope": "Collection", "properties": "(foo ASC, __name__ ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, __name__ ASC)"} ] + { + "a_key": "", # Properties of the object. + }, + ], + }, + }, "readTime": "A String", # The time at which the aggregate result was computed. This is always monotonically increasing; in this case, the previous AggregationResult in the result stream are guaranteed not to have changed between their `read_time` and this one. If the query returns no results, a response with `read_time` and no `result` will be sent, and this represents the time at which the query was run. "result": { # The result of a single bucket from a Firestore aggregation query. The keys of `aggregate_fields` are the same for all results in an aggregation query, unlike document queries which can have different fields present for each result. # A single aggregation result. Not present when reporting partial progress. "aggregateFields": { # The result of the aggregation functions, ex: `COUNT(*) AS total_docs`. The key is the alias assigned to the aggregation function on input and the size of this map equals the number of aggregation functions in the query. @@ -1961,6 +1981,9 @@

Method Details

The object takes the form of: { # The request for Firestore.RunQuery. + "explainOptions": { # Explain options for the query. # Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned. + "analyze": True or False, # Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics. + }, "newTransaction": { # Options for creating a new transaction. # 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. "readOnly": { # Options for a transaction that can only be used to read documents. # The transaction can only be used for read operations. "readTime": "A String", # Reads documents 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. @@ -2141,6 +2164,23 @@

Method Details

"updateTime": "A String", # Output only. The time at which the document was last changed. This value is initially set to the `create_time` then increases monotonically with each change to the document. It can also be compared to values from other documents and the `read_time` of a query. }, "done": True or False, # If present, Firestore has completely finished the request and no more documents will be returned. + "explainMetrics": { # Explain metrics for the query. # Query explain metrics. This is only present when the RunQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream. + "executionStats": { # Execution statistics for the query. # Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true. + "debugStats": { # Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { "indexes_entries_scanned": "1000", "documents_scanned": "20", "billing_details" : { "documents_billable": "20", "index_entries_billable": "1000", "min_query_cost": "0" } } + "a_key": "", # Properties of the object. + }, + "executionDuration": "A String", # Total time to execute the query in the backend. + "readOperations": "A String", # Total billable read operations. + "resultsReturned": "A String", # Total number of results returned, including documents, projections, aggregation results, keys. + }, + "planSummary": { # Planning phase information for the query. # Planning phase information for the query. + "indexesUsed": [ # The indexes selected for the query. For example: [ {"query_scope": "Collection", "properties": "(foo ASC, __name__ ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, __name__ ASC)"} ] + { + "a_key": "", # Properties of the object. + }, + ], + }, + }, "readTime": "A String", # 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 `read_time` and this one. If the query returns no results, a response with `read_time` and no `document` will be sent, and this represents the time at which the query was run. "skippedResults": 42, # The number of results that have been skipped due to an offset between the last response and the current response. "transaction": "A String", # The transaction that was started as part of this request. Can only be set in the first response, and only if RunQueryRequest.new_transaction was set in the request. If set, no other fields will be set in this response. diff --git a/docs/dyn/firestore_v1beta1.projects.databases.documents.html b/docs/dyn/firestore_v1beta1.projects.databases.documents.html index 11ff075e4d..87635483f5 100644 --- a/docs/dyn/firestore_v1beta1.projects.databases.documents.html +++ b/docs/dyn/firestore_v1beta1.projects.databases.documents.html @@ -1750,6 +1750,9 @@

Method Details

The object takes the form of: { # The request for Firestore.RunAggregationQuery. + "explainOptions": { # Explain options for the query. # Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned. + "analyze": True or False, # Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics. + }, "newTransaction": { # Options for creating a new transaction. # Starts a new transaction as part of the query, defaulting to read-only. The new transaction ID will be returned as the first response in the stream. "readOnly": { # Options for a transaction that can only be used to read documents. # The transaction can only be used for read operations. "readTime": "A String", # Reads documents 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. @@ -1918,6 +1921,23 @@

Method Details

An object of the form: { # The response for Firestore.RunAggregationQuery. + "explainMetrics": { # Explain metrics for the query. # Query explain metrics. This is only present when the RunAggregationQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream. + "executionStats": { # Execution statistics for the query. # Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true. + "debugStats": { # Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { "indexes_entries_scanned": "1000", "documents_scanned": "20", "billing_details" : { "documents_billable": "20", "index_entries_billable": "1000", "min_query_cost": "0" } } + "a_key": "", # Properties of the object. + }, + "executionDuration": "A String", # Total time to execute the query in the backend. + "readOperations": "A String", # Total billable read operations. + "resultsReturned": "A String", # Total number of results returned, including documents, projections, aggregation results, keys. + }, + "planSummary": { # Planning phase information for the query. # Planning phase information for the query. + "indexesUsed": [ # The indexes selected for the query. For example: [ {"query_scope": "Collection", "properties": "(foo ASC, __name__ ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, __name__ ASC)"} ] + { + "a_key": "", # Properties of the object. + }, + ], + }, + }, "readTime": "A String", # The time at which the aggregate result was computed. This is always monotonically increasing; in this case, the previous AggregationResult in the result stream are guaranteed not to have changed between their `read_time` and this one. If the query returns no results, a response with `read_time` and no `result` will be sent, and this represents the time at which the query was run. "result": { # The result of a single bucket from a Firestore aggregation query. The keys of `aggregate_fields` are the same for all results in an aggregation query, unlike document queries which can have different fields present for each result. # A single aggregation result. Not present when reporting partial progress. "aggregateFields": { # The result of the aggregation functions, ex: `COUNT(*) AS total_docs`. The key is the alias assigned to the aggregation function on input and the size of this map equals the number of aggregation functions in the query. @@ -1961,6 +1981,9 @@

Method Details

The object takes the form of: { # The request for Firestore.RunQuery. + "explainOptions": { # Explain options for the query. # Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned. + "analyze": True or False, # Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics. + }, "newTransaction": { # Options for creating a new transaction. # 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. "readOnly": { # Options for a transaction that can only be used to read documents. # The transaction can only be used for read operations. "readTime": "A String", # Reads documents 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. @@ -2141,6 +2164,23 @@

Method Details

"updateTime": "A String", # Output only. The time at which the document was last changed. This value is initially set to the `create_time` then increases monotonically with each change to the document. It can also be compared to values from other documents and the `read_time` of a query. }, "done": True or False, # If present, Firestore has completely finished the request and no more documents will be returned. + "explainMetrics": { # Explain metrics for the query. # Query explain metrics. This is only present when the RunQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream. + "executionStats": { # Execution statistics for the query. # Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true. + "debugStats": { # Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { "indexes_entries_scanned": "1000", "documents_scanned": "20", "billing_details" : { "documents_billable": "20", "index_entries_billable": "1000", "min_query_cost": "0" } } + "a_key": "", # Properties of the object. + }, + "executionDuration": "A String", # Total time to execute the query in the backend. + "readOperations": "A String", # Total billable read operations. + "resultsReturned": "A String", # Total number of results returned, including documents, projections, aggregation results, keys. + }, + "planSummary": { # Planning phase information for the query. # Planning phase information for the query. + "indexesUsed": [ # The indexes selected for the query. For example: [ {"query_scope": "Collection", "properties": "(foo ASC, __name__ ASC)"}, {"query_scope": "Collection", "properties": "(bar ASC, __name__ ASC)"} ] + { + "a_key": "", # Properties of the object. + }, + ], + }, + }, "readTime": "A String", # 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 `read_time` and this one. If the query returns no results, a response with `read_time` and no `document` will be sent, and this represents the time at which the query was run. "skippedResults": 42, # The number of results that have been skipped due to an offset between the last response and the current response. "transaction": "A String", # The transaction that was started as part of this request. Can only be set in the first response, and only if RunQueryRequest.new_transaction was set in the request. If set, no other fields will be set in this response. diff --git a/googleapiclient/discovery_cache/documents/firestore.v1.json b/googleapiclient/discovery_cache/documents/firestore.v1.json index fe5c7b6875..340fcb54bd 100644 --- a/googleapiclient/discovery_cache/documents/firestore.v1.json +++ b/googleapiclient/discovery_cache/documents/firestore.v1.json @@ -394,7 +394,7 @@ ], "parameters": { "name": { -"description": "Required. The name of backup schedule. Format `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}`", +"description": "Required. The name of the backup schedule. Format `projects/{project}/databases/{database}/backupSchedules/{backup_schedule}`", "location": "path", "pattern": "^projects/[^/]+/databases/[^/]+/backupSchedules/[^/]+$", "required": true, @@ -1672,7 +1672,7 @@ } } }, -"revision": "20240307", +"revision": "20240317", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -2158,6 +2158,36 @@ "properties": {}, "type": "object" }, +"ExecutionStats": { +"description": "Execution statistics for the query.", +"id": "ExecutionStats", +"properties": { +"debugStats": { +"additionalProperties": { +"description": "Properties of the object.", +"type": "any" +}, +"description": "Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { \"indexes_entries_scanned\": \"1000\", \"documents_scanned\": \"20\", \"billing_details\" : { \"documents_billable\": \"20\", \"index_entries_billable\": \"1000\", \"min_query_cost\": \"0\" } }", +"type": "object" +}, +"executionDuration": { +"description": "Total time to execute the query in the backend.", +"format": "google-duration", +"type": "string" +}, +"readOperations": { +"description": "Total billable read operations.", +"format": "int64", +"type": "string" +}, +"resultsReturned": { +"description": "Total number of results returned, including documents, projections, aggregation results, keys.", +"format": "int64", +"type": "string" +} +}, +"type": "object" +}, "ExistenceFilter": { "description": "A digest of all the documents that match a given target.", "id": "ExistenceFilter", @@ -2179,6 +2209,32 @@ }, "type": "object" }, +"ExplainMetrics": { +"description": "Explain metrics for the query.", +"id": "ExplainMetrics", +"properties": { +"executionStats": { +"$ref": "ExecutionStats", +"description": "Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true." +}, +"planSummary": { +"$ref": "PlanSummary", +"description": "Planning phase information for the query." +} +}, +"type": "object" +}, +"ExplainOptions": { +"description": "Explain options for the query.", +"id": "ExplainOptions", +"properties": { +"analyze": { +"description": "Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics.", +"type": "boolean" +} +}, +"type": "object" +}, "FieldFilter": { "description": "A filter on a specific field.", "id": "FieldFilter", @@ -2416,7 +2472,7 @@ "type": "object" }, "GoogleFirestoreAdminV1DailyRecurrence": { -"description": "Represent a recurring schedule that runs at a specific time every day. The time zone is UTC.", +"description": "Represents a recurring schedule that runs at a specific time every day. The time zone is UTC.", "id": "GoogleFirestoreAdminV1DailyRecurrence", "properties": {}, "type": "object" @@ -3705,6 +3761,24 @@ }, "type": "object" }, +"PlanSummary": { +"description": "Planning phase information for the query.", +"id": "PlanSummary", +"properties": { +"indexesUsed": { +"description": "The indexes selected for the query. For example: [ {\"query_scope\": \"Collection\", \"properties\": \"(foo ASC, __name__ ASC)\"}, {\"query_scope\": \"Collection\", \"properties\": \"(bar ASC, __name__ ASC)\"} ]", +"items": { +"additionalProperties": { +"description": "Properties of the object.", +"type": "any" +}, +"type": "object" +}, +"type": "array" +} +}, +"type": "object" +}, "Precondition": { "description": "A precondition on a document, used for conditional operations.", "id": "Precondition", @@ -3790,6 +3864,10 @@ "description": "The request for Firestore.RunAggregationQuery.", "id": "RunAggregationQueryRequest", "properties": { +"explainOptions": { +"$ref": "ExplainOptions", +"description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." +}, "newTransaction": { "$ref": "TransactionOptions", "description": "Starts a new transaction as part of the query, defaulting to read-only. The new transaction ID will be returned as the first response in the stream." @@ -3815,6 +3893,10 @@ "description": "The response for Firestore.RunAggregationQuery.", "id": "RunAggregationQueryResponse", "properties": { +"explainMetrics": { +"$ref": "ExplainMetrics", +"description": "Query explain metrics. This is only present when the RunAggregationQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." +}, "readTime": { "description": "The time at which the aggregate result was computed. This is always monotonically increasing; in this case, the previous AggregationResult in the result stream are guaranteed not to have changed between their `read_time` and this one. If the query returns no results, a response with `read_time` and no `result` will be sent, and this represents the time at which the query was run.", "format": "google-datetime", @@ -3836,6 +3918,10 @@ "description": "The request for Firestore.RunQuery.", "id": "RunQueryRequest", "properties": { +"explainOptions": { +"$ref": "ExplainOptions", +"description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." +}, "newTransaction": { "$ref": "TransactionOptions", "description": "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." @@ -3869,6 +3955,10 @@ "description": "If present, Firestore has completely finished the request and no more documents will be returned.", "type": "boolean" }, +"explainMetrics": { +"$ref": "ExplainMetrics", +"description": "Query explain metrics. This is only present when the RunQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." +}, "readTime": { "description": "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 `read_time` and this one. If the query returns no results, a response with `read_time` and no `document` will be sent, and this represents the time at which the query was run.", "format": "google-datetime", diff --git a/googleapiclient/discovery_cache/documents/firestore.v1beta1.json b/googleapiclient/discovery_cache/documents/firestore.v1beta1.json index dfa040d111..fc67269b35 100644 --- a/googleapiclient/discovery_cache/documents/firestore.v1beta1.json +++ b/googleapiclient/discovery_cache/documents/firestore.v1beta1.json @@ -950,7 +950,7 @@ } } }, -"revision": "20240307", +"revision": "20240317", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Aggregation": { @@ -1436,6 +1436,36 @@ "properties": {}, "type": "object" }, +"ExecutionStats": { +"description": "Execution statistics for the query.", +"id": "ExecutionStats", +"properties": { +"debugStats": { +"additionalProperties": { +"description": "Properties of the object.", +"type": "any" +}, +"description": "Debugging statistics from the execution of the query. Note that the debugging stats are subject to change as Firestore evolves. It could include: { \"indexes_entries_scanned\": \"1000\", \"documents_scanned\": \"20\", \"billing_details\" : { \"documents_billable\": \"20\", \"index_entries_billable\": \"1000\", \"min_query_cost\": \"0\" } }", +"type": "object" +}, +"executionDuration": { +"description": "Total time to execute the query in the backend.", +"format": "google-duration", +"type": "string" +}, +"readOperations": { +"description": "Total billable read operations.", +"format": "int64", +"type": "string" +}, +"resultsReturned": { +"description": "Total number of results returned, including documents, projections, aggregation results, keys.", +"format": "int64", +"type": "string" +} +}, +"type": "object" +}, "ExistenceFilter": { "description": "A digest of all the documents that match a given target.", "id": "ExistenceFilter", @@ -1457,6 +1487,32 @@ }, "type": "object" }, +"ExplainMetrics": { +"description": "Explain metrics for the query.", +"id": "ExplainMetrics", +"properties": { +"executionStats": { +"$ref": "ExecutionStats", +"description": "Aggregated stats from the execution of the query. Only present when ExplainOptions.analyze is set to true." +}, +"planSummary": { +"$ref": "PlanSummary", +"description": "Planning phase information for the query." +} +}, +"type": "object" +}, +"ExplainOptions": { +"description": "Explain options for the query.", +"id": "ExplainOptions", +"properties": { +"analyze": { +"description": "Optional. Whether to execute this query. When false (the default), the query will be planned, returning only metrics from the planning stages. When true, the query will be planned and executed, returning the full query results along with both planning and execution stage metrics.", +"type": "boolean" +} +}, +"type": "object" +}, "FieldFilter": { "description": "A filter on a specific field.", "id": "FieldFilter", @@ -2223,6 +2279,24 @@ }, "type": "object" }, +"PlanSummary": { +"description": "Planning phase information for the query.", +"id": "PlanSummary", +"properties": { +"indexesUsed": { +"description": "The indexes selected for the query. For example: [ {\"query_scope\": \"Collection\", \"properties\": \"(foo ASC, __name__ ASC)\"}, {\"query_scope\": \"Collection\", \"properties\": \"(bar ASC, __name__ ASC)\"} ]", +"items": { +"additionalProperties": { +"description": "Properties of the object.", +"type": "any" +}, +"type": "object" +}, +"type": "array" +} +}, +"type": "object" +}, "Precondition": { "description": "A precondition on a document, used for conditional operations.", "id": "Precondition", @@ -2308,6 +2382,10 @@ "description": "The request for Firestore.RunAggregationQuery.", "id": "RunAggregationQueryRequest", "properties": { +"explainOptions": { +"$ref": "ExplainOptions", +"description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." +}, "newTransaction": { "$ref": "TransactionOptions", "description": "Starts a new transaction as part of the query, defaulting to read-only. The new transaction ID will be returned as the first response in the stream." @@ -2333,6 +2411,10 @@ "description": "The response for Firestore.RunAggregationQuery.", "id": "RunAggregationQueryResponse", "properties": { +"explainMetrics": { +"$ref": "ExplainMetrics", +"description": "Query explain metrics. This is only present when the RunAggregationQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." +}, "readTime": { "description": "The time at which the aggregate result was computed. This is always monotonically increasing; in this case, the previous AggregationResult in the result stream are guaranteed not to have changed between their `read_time` and this one. If the query returns no results, a response with `read_time` and no `result` will be sent, and this represents the time at which the query was run.", "format": "google-datetime", @@ -2354,6 +2436,10 @@ "description": "The request for Firestore.RunQuery.", "id": "RunQueryRequest", "properties": { +"explainOptions": { +"$ref": "ExplainOptions", +"description": "Optional. Explain options for the query. If set, additional query statistics will be returned. If not, only query results will be returned." +}, "newTransaction": { "$ref": "TransactionOptions", "description": "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." @@ -2387,6 +2473,10 @@ "description": "If present, Firestore has completely finished the request and no more documents will be returned.", "type": "boolean" }, +"explainMetrics": { +"$ref": "ExplainMetrics", +"description": "Query explain metrics. This is only present when the RunQueryRequest.explain_options is provided, and it is sent only once with the last response in the stream." +}, "readTime": { "description": "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 `read_time` and this one. If the query returns no results, a response with `read_time` and no `document` will be sent, and this represents the time at which the query was run.", "format": "google-datetime", diff --git a/googleapiclient/discovery_cache/documents/firestore.v1beta2.json b/googleapiclient/discovery_cache/documents/firestore.v1beta2.json index b1f5436d10..0e36503e93 100644 --- a/googleapiclient/discovery_cache/documents/firestore.v1beta2.json +++ b/googleapiclient/discovery_cache/documents/firestore.v1beta2.json @@ -415,7 +415,7 @@ } } }, -"revision": "20240307", +"revision": "20240317", "rootUrl": "https://firestore.googleapis.com/", "schemas": { "Empty": {