Docs Menu
Docs Home
/ /
MongoDB Command Line Interface
/ / / /

mongocli atlas cluster search index create

On this page

  • Syntax
  • Options
  • Output
  • Examples

The search index create command creates an Atlas Search index. You can also create an Atlas Search index through the Atlas UI or API.

mongocli atlas cluster search|fts index create <index-name>
--clusterName <cluster-name>
--collection <collection-name>
--db <database-name>
[ --dynamic ]
[ --field <field-name>:<index-type> ]
[ --output|-o <output-format> ]
[ --profile|-P <profile-name> ]
[ --projectId <project-ID> ]
[ --searchAnalyzer <analyzer-name> ]
Option
Type
Description
Required?
<index-name>
string
Name of the Atlas Search index.
yes
--clusterName
string
Name of the cluster.
yes
--collection
string
Name of the collection for which to create an Atlas Search index.
yes
--db
string
Name of the database that contains the collection.
yes
--dynamic
flag

Whether the Atlas Search index uses dynamic field mappings. This is required if field is not specified. You cannot specify field if this flag is set.

To learn more, see Static and Dynamic Mappings.

no
--field
string

Comma-separated list of fields to index in the following format:

<field-name>:<index-type>

where:

  • <field-name> is the name of the field to index.

  • <index-type> is the type of index. Value can be one of the following: autocomplete, boolean, date, document, geo, number, objectId, string.

This is required if the index uses static mappings. You cannot set the dynamic flag if field names are specified.

no
--output, -o
string

Command output format. Valid values are:

  • json for output in JSON format

  • go-template for custom output using the Go template

  • go-template-file for custom output specified using Go template file

If omitted, the command returns output in the default format.

no
--profile, -P
string
Name of the profile where the public and private keys for the project are set. If omitted, uses the default profile. To learn more about creating a profile, see Configure the MongoDB CLI.
no
--projectId
string

Unique identifier of the project. If omitted, uses the project ID in the profile or environment variable.

no
--searchAnalyzer
string

Analyzer to use when searching the index. Value can be one of the following:

If omitted, defaults to lucene.standard.

no

The command prints the following fields in the specified format to the terminal if the command succeeds. If the command prints an error, see Troubleshooting for recommended solutions.

Field
Type
Description
analyzer
string

Name of the analyzer to use when creating the index. Value can be one of the following:

collectionName
string
Name of the collection.
database
string
Name of the database that contains the collection.
indexID
string
Unique identifier of the Atlas Search index.
mappings
document
Static or dynamic field mappings for the Atlas Search index.
mappings.dynamic
string

Whether the Atlas Search index uses dynamic field mappings. Value can be one of the following:

  • true if the dynamic flag is set, indicating dynamic field mappings.

  • false if the dynamic flag is not set, indicating static field mappings.

mappings.fields
document or array of documents
List of indexed fields.
mappings.fields.[n].type
string
Data type of the indexed field.
name
string
Name of the index.
searchAnalyzer
string

Name of the analyzer to use when searching the indexed field. Value can be one of the following:

The following examples use the mongocli atlas cluster search index create command to create an Atlas Search index named default on the sample_mflix.movies collection in an Atlas cluster named myTestCluster.

The following mongocli atlas cluster search index create command creates an Atlas Search index that uses dynamic field mappings. It uses the egAtlasProfile to access the project.

mongocli atlas cluster search index create default --dynamic --clusterName myTestCluster --db sample_mflix --collection movies --output json --profile egAtlasProfile

The previous command prints the following fields in the specified format to the terminal. To learn more about these fields, see Output.

{
"analyzer": "lucene.standard",
"collectionName": "movies",
"database": "sample_mflix",
"indexID": "5f1f40842f2ac35f49190c20",
"mappings": {
"dynamic": true
},
"name": "dynamic",
"searchAnalyzer": "lucene.standard"
}

The following mongocli atlas cluster search index create command creates an Atlas Search index that indexes the title field of type string using the keyword analyzer and plot field of type string using the keyword analyzer. It uses the default profile to access the project.

mongocli atlas cluster search index create default --clusterName myTestCluster --db sample_mflix --collection movies --field title:string,released:date --output json

The previous command prints the following fields in the specified format to the terminal. To learn more about these fields, see Output.

{
"analyzer": "lucene.standard",
"collectionName": "movies",
"database": "sample_mflix",
"indexID": "5f2099cd683fc55fbb30bef6",
"mappings": {
"dynamic": false,
"fields": {
"released": {
"type": "date"
},
"title": {
"type": "string"
}
}
},
"name": "default",
"searchAnalyzer": "lucene.standard"
}

Back

Atlas Search