Cloud Firestore API . projects . databases . collectionGroups . indexes

Instance Methods

close()

Close httplib2 connections.

create(parent, body=None, x__xgafv=None)

Creates a composite index. This returns a google.longrunning.Operation which may be used to track the status of the creation. The metadata for the operation will be the type IndexOperationMetadata.

delete(name, x__xgafv=None)

Deletes a composite index.

get(name, x__xgafv=None)

Gets a composite index.

list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)

Lists composite indexes.

list_next()

Retrieves the next page of results.

Method Details

close()
Close httplib2 connections.
create(parent, body=None, x__xgafv=None)
Creates a composite index. This returns a google.longrunning.Operation which may be used to track the status of the creation. The metadata for the operation will be the type IndexOperationMetadata.

Args:
  parent: string, Required. A parent name of the form `projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}` (required)
  body: object, The request body.
    The object takes the form of:

{ # Cloud Firestore indexes enable simple and complex queries against documents in a database.
  "apiScope": "A String", # The API scope supported by this index.
  "density": "A String", # Immutable. The density configuration of the index.
  "fields": [ # The fields supported by this index. For composite indexes, this requires a minimum of 2 and a maximum of 100 fields. The last field entry is always for the field path `__name__`. If, on creation, `__name__` was not specified as the last field, it will be added automatically with the same direction as that of the last field defined. If the final field in a composite index is not directional, the `__name__` will be ordered ASCENDING (unless explicitly specified). For single field indexes, this will always be exactly one entry with a field path equal to the field path of the associated field.
    { # A field in an index. The field_path describes which field is indexed, the value_mode describes how the field value is indexed.
      "arrayConfig": "A String", # Indicates that this field supports operations on `array_value`s.
      "fieldPath": "A String", # Can be __name__. For single field indexes, this must match the name of the field or may be omitted.
      "order": "A String", # Indicates that this field supports ordering by the specified order or comparing using =, !=, <, <=, >, >=.
      "vectorConfig": { # The index configuration to support vector search operations # Indicates that this field supports nearest neighbor and distance operations on vector.
        "dimension": 42, # Required. The vector dimension this configuration applies to. The resulting index will only include vectors of this dimension, and can be used for vector search with the same dimension.
        "flat": { # An index that stores vectors in a flat data structure, and supports exhaustive search. # Indicates the vector index is a flat index.
        },
      },
    },
  ],
  "multikey": True or False, # Optional. Whether the index is multikey. By default, the index is not multikey. For non-multikey indexes, none of the paths in the index definition reach or traverse an array, except via an explicit array index. For multikey indexes, at most one of the paths in the index definition reach or traverse an array, except via an explicit array index. Violations will result in errors. Note this field only applies to index with IGNITE_API ApiScope.
  "name": "A String", # Output only. A server defined name for this index. The form of this name for composite indexes will be: `projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{composite_index_id}` For single field indexes, this field will be empty.
  "queryScope": "A String", # Indexes with a collection query scope specified allow queries against a collection that is the child of a specific document, specified at query time, and that has the same collection ID. Indexes with a collection group query scope specified allow queries against all collections descended from a specific document, specified at query time, and that have the same collection ID as this index.
  "state": "A String", # Output only. The serving state of the index.
}

  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # This resource represents a long-running operation that is the result of a network API call.
  "done": True or False, # If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available.
  "error": { # The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). Each `Status` message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the [API Design Guide](https://cloud.google.com/apis/design/errors). # The error result of the operation in case of failure or cancellation.
    "code": 42, # The status code, which should be an enum value of google.rpc.Code.
    "details": [ # A list of messages that carry the error details. There is a common set of message types for APIs to use.
      {
        "a_key": "", # Properties of the object. Contains field @type with type URL.
      },
    ],
    "message": "A String", # A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client.
  },
  "metadata": { # Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
  "name": "A String", # The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`.
  "response": { # The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.
    "a_key": "", # Properties of the object. Contains field @type with type URL.
  },
}
delete(name, x__xgafv=None)
Deletes a composite index.

Args:
  name: string, Required. A name of the form `projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id}` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }
}
get(name, x__xgafv=None)
Gets a composite index.

Args:
  name: string, Required. A name of the form `projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{index_id}` (required)
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # Cloud Firestore indexes enable simple and complex queries against documents in a database.
  "apiScope": "A String", # The API scope supported by this index.
  "density": "A String", # Immutable. The density configuration of the index.
  "fields": [ # The fields supported by this index. For composite indexes, this requires a minimum of 2 and a maximum of 100 fields. The last field entry is always for the field path `__name__`. If, on creation, `__name__` was not specified as the last field, it will be added automatically with the same direction as that of the last field defined. If the final field in a composite index is not directional, the `__name__` will be ordered ASCENDING (unless explicitly specified). For single field indexes, this will always be exactly one entry with a field path equal to the field path of the associated field.
    { # A field in an index. The field_path describes which field is indexed, the value_mode describes how the field value is indexed.
      "arrayConfig": "A String", # Indicates that this field supports operations on `array_value`s.
      "fieldPath": "A String", # Can be __name__. For single field indexes, this must match the name of the field or may be omitted.
      "order": "A String", # Indicates that this field supports ordering by the specified order or comparing using =, !=, <, <=, >, >=.
      "vectorConfig": { # The index configuration to support vector search operations # Indicates that this field supports nearest neighbor and distance operations on vector.
        "dimension": 42, # Required. The vector dimension this configuration applies to. The resulting index will only include vectors of this dimension, and can be used for vector search with the same dimension.
        "flat": { # An index that stores vectors in a flat data structure, and supports exhaustive search. # Indicates the vector index is a flat index.
        },
      },
    },
  ],
  "multikey": True or False, # Optional. Whether the index is multikey. By default, the index is not multikey. For non-multikey indexes, none of the paths in the index definition reach or traverse an array, except via an explicit array index. For multikey indexes, at most one of the paths in the index definition reach or traverse an array, except via an explicit array index. Violations will result in errors. Note this field only applies to index with IGNITE_API ApiScope.
  "name": "A String", # Output only. A server defined name for this index. The form of this name for composite indexes will be: `projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{composite_index_id}` For single field indexes, this field will be empty.
  "queryScope": "A String", # Indexes with a collection query scope specified allow queries against a collection that is the child of a specific document, specified at query time, and that has the same collection ID. Indexes with a collection group query scope specified allow queries against all collections descended from a specific document, specified at query time, and that have the same collection ID as this index.
  "state": "A String", # Output only. The serving state of the index.
}
list(parent, filter=None, pageSize=None, pageToken=None, x__xgafv=None)
Lists composite indexes.

Args:
  parent: string, Required. A parent name of the form `projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}` (required)
  filter: string, The filter to apply to list results.
  pageSize: integer, The number of results to return.
  pageToken: string, A page token, returned from a previous call to FirestoreAdmin.ListIndexes, that may be used to get the next page of results.
  x__xgafv: string, V1 error format.
    Allowed values
      1 - v1 error format
      2 - v2 error format

Returns:
  An object of the form:

    { # The response for FirestoreAdmin.ListIndexes.
  "indexes": [ # The requested indexes.
    { # Cloud Firestore indexes enable simple and complex queries against documents in a database.
      "apiScope": "A String", # The API scope supported by this index.
      "density": "A String", # Immutable. The density configuration of the index.
      "fields": [ # The fields supported by this index. For composite indexes, this requires a minimum of 2 and a maximum of 100 fields. The last field entry is always for the field path `__name__`. If, on creation, `__name__` was not specified as the last field, it will be added automatically with the same direction as that of the last field defined. If the final field in a composite index is not directional, the `__name__` will be ordered ASCENDING (unless explicitly specified). For single field indexes, this will always be exactly one entry with a field path equal to the field path of the associated field.
        { # A field in an index. The field_path describes which field is indexed, the value_mode describes how the field value is indexed.
          "arrayConfig": "A String", # Indicates that this field supports operations on `array_value`s.
          "fieldPath": "A String", # Can be __name__. For single field indexes, this must match the name of the field or may be omitted.
          "order": "A String", # Indicates that this field supports ordering by the specified order or comparing using =, !=, <, <=, >, >=.
          "vectorConfig": { # The index configuration to support vector search operations # Indicates that this field supports nearest neighbor and distance operations on vector.
            "dimension": 42, # Required. The vector dimension this configuration applies to. The resulting index will only include vectors of this dimension, and can be used for vector search with the same dimension.
            "flat": { # An index that stores vectors in a flat data structure, and supports exhaustive search. # Indicates the vector index is a flat index.
            },
          },
        },
      ],
      "multikey": True or False, # Optional. Whether the index is multikey. By default, the index is not multikey. For non-multikey indexes, none of the paths in the index definition reach or traverse an array, except via an explicit array index. For multikey indexes, at most one of the paths in the index definition reach or traverse an array, except via an explicit array index. Violations will result in errors. Note this field only applies to index with IGNITE_API ApiScope.
      "name": "A String", # Output only. A server defined name for this index. The form of this name for composite indexes will be: `projects/{project_id}/databases/{database_id}/collectionGroups/{collection_id}/indexes/{composite_index_id}` For single field indexes, this field will be empty.
      "queryScope": "A String", # Indexes with a collection query scope specified allow queries against a collection that is the child of a specific document, specified at query time, and that has the same collection ID. Indexes with a collection group query scope specified allow queries against all collections descended from a specific document, specified at query time, and that have the same collection ID as this index.
      "state": "A String", # Output only. The serving state of the index.
    },
  ],
  "nextPageToken": "A String", # A page token that may be used to request another page of results. If blank, this is the last page.
}
list_next()
Retrieves the next page of results.

        Args:
          previous_request: The request for the previous page. (required)
          previous_response: The response from the request for the previous page. (required)

        Returns:
          A request object that you can call 'execute()' on to request the next
          page. Returns None if there are no more items in the collection.