OptionalarrayOptionalauthdbOptionalbsonreturn BSON regular expressions as BSONRegExp instances.
OptionalbypassAllow driver to bypass schema validation.
Optionalcheckthe serializer will check if keys are valid.
OptionalcollationCollation
OptionalcommentComment to apply to the operation.
In server versions pre-4.4, 'comment' must be string. A server error will be thrown if any other type is provided.
In server versions 4.4 and above, 'comment' can be any valid BSON type.
OptionaldbOptionalenableEnable utf8 validation when deserializing BSON documents. Defaults to true.
OptionalexplainSpecifies the verbosity mode for the explain output.
Optionalfieldsallow to specify if there what fields we wish to return as unserialized raw buffer.
OptionalhintAn optional hint for query optimization. See the command reference for more information.
Optionalignoreserialize will not emit undefined fields
note that the driver sets this to false
OptionalincludeReturn the ModifyResult instead of the modified document. Defaults to false
OptionalletMap of parameter names and values that can be accessed using $$var (requires MongoDB 5.0).
OptionalmaxmaxTimeMS is a server-side time limit in milliseconds for processing an operation.
OptionalnoOptionalomitOptionalprojectionLimits the fields to return for all matching documents.
Optionalpromotewhen deserializing a Binary will return it as a node.js Buffer instance.
Optionalpromotewhen deserializing a Long will fit it into a Number if it's smaller than 53 bits.
Optionalpromotewhen deserializing will promote BSON values to their Node.js closest equivalent types.
OptionalrawEnabling the raw option will return a Node.js Buffer which is allocated using allocUnsafe API. See this section from the Node.js Docs here for more detail about what "unsafe" refers to in this context. If you need to maintain your own editable clone of the bytes returned for an extended life time of the process, it is recommended you allocate your own buffer and clone the contents:
const raw = await collection.findOne({}, { raw: true });
const myBuffer = Buffer.alloc(raw.byteLength);
myBuffer.set(raw, 0);
// Only save and use `myBuffer` beyond this point
Please note there is a known limitation where this option cannot be used at the MongoClient level (see NODE-3946).
It does correctly work at Db, Collection, and per operation the same as other BSON options work.
OptionalreadSpecify a read concern and level for the collection. (only MongoDB 3.2 or higher supported)
OptionalreadThe preferred read preference (ReadPreference.primary, ReadPreference.primary_preferred, ReadPreference.secondary, ReadPreference.secondary_preferred, ReadPreference.nearest).
OptionalretryShould retry failed writes
OptionalreturnWhen set to 'after', returns the updated document rather than the original. The default is 'before'.
Optionalserializeserialize the javascript functions
OptionalsessionSpecify ClientSession for this command
OptionalsortDetermines which document the operation modifies if the query selects multiple documents.
Optional ExperimentaltimeoutMSSpecifies the time an operation will run until it throws a timeout error
OptionalupsertUpsert the document if it does not exist.
Optionalusewhen deserializing a Long return as a BigInt.
OptionalwillOptionalwriteWrite Concern as an object
Optional list of array filters referenced in filtered positional operators