NAME
    gcloud firestore indexes composite create - create a new composite index

SYNOPSIS
    gcloud firestore indexes composite create
        --field-config=[array-config=ARRAY-CONFIG],
          [field-path=FIELD-PATH],[order=ORDER]
        (--collection-group=COLLECTION_GROUP : --database=DATABASE)
        [--api-scope=API_SCOPE; default="any-api"] [--async]
        [--query-scope=QUERY_SCOPE; default="collection"]
        [GCLOUD_WIDE_FLAG ...]

DESCRIPTION
    Create a new composite index.

EXAMPLES
    The following command creates a composite index with fields user_id (in
    descending order) followed by timestamp (in descending order) in the Events
    collection group.

        $ gcloud firestore indexes composite create \
            --collection-group=Events \
            --field-config=field-path=user-id,order=descending \
            --field-config=field-path=timestamp,order=descending

        $ gcloud firestore indexes composite create --database=(default) \
            --collection-group=Events \
            --field-config=field-path=user-id,order=descending \
            --field-config=field-path=timestamp,order=descending

REQUIRED FLAGS
     --field-config=[array-config=ARRAY-CONFIG],[field-path=FIELD-PATH],[order=ORDER]
        Configuration for a field.

        This flag must be repeated to provide the ordered list of field
        configurations comprising the composite index. For example:

            $ gcloud firestore indexes composite create \
                --collection-group=Events \
                --field-config field-path=tags,array-config=contains \
                --field-config field-path=user_id,order=descending \
                --field-config field-path=timestamp,order=descending

        The following keys are allowed:

         field-path
            Specifies the field path (e.g. 'address.city'). This is required.

         order
            Specifies the order. Valid options are: 'ascending', 'descending'.
            Exactly one of order or array-config must be specified.

         array-config
            Specifies the configuration for an array field. The only valid
            option is 'contains'. Exactly one of 'order' or 'array-config' must
            be specified.

     Collection group resource - Collection group of the index. The arguments
     in this group can be used to specify the attributes of this resource.
     (NOTE) Some attributes are not given arguments in this group but can be
     set in other ways.

     To set the project attribute:
      ◆ provide the argument --collection-group on the command line with a
        fully specified name;
      ◆ set the property core/project;
      ◆ provide the argument --project on the command line.

     This must be specified.

       --collection-group=COLLECTION_GROUP
          ID of the collection group or fully qualified identifier for the
          collection group.

          To set the collection-group attribute:
          ▸ provide the argument --collection-group on the command line.

          This flag argument must be specified if any of the other arguments in
          this group are specified.

       --database=DATABASE
          Database of the collection group.

          To set the database attribute:
          ▸ provide the argument --collection-group on the command line with
            a fully specified name;
          ▸ provide the argument --database on the command line;
          ▸ the default value of argument [--database] is (default).

OPTIONAL FLAGS
     --api-scope=API_SCOPE; default="any-api"
        Api scope the index applies to. API_SCOPE must be one of: any-api,
        datastore-mode-api.

     --async
        Return immediately, without waiting for the operation in progress to
        complete.

     --query-scope=QUERY_SCOPE; default="collection"
        Query scope the index applies to. QUERY_SCOPE must be one of:
        collection, collection-group, collection-recursive.

GCLOUD WIDE FLAGS
    These flags are available to all commands: --access-token-file, --account,
    --billing-project, --configuration, --flags-file, --flatten, --format,
    --help, --impersonate-service-account, --log-http, --project, --quiet,
    --trace-token, --user-output-enabled, --verbosity.

    Run $ gcloud help for details.

API REFERENCE
    This command uses the firestore/v1 API. The full documentation for this API
    can be found at: https://cloud.google.com/firestore

NOTES
    These variants are also available:

        $ gcloud alpha firestore indexes composite create

        $ gcloud beta firestore indexes composite create

