Provided by: libmongoc-doc_2.2.1-1_all 

SYNOPSIS
bool
mongoc_collection_replace_one (mongoc_collection_t *collection,
const bson_t *selector,
const bson_t *replacement,
const bson_t *opts,
bson_t *reply,
bson_error_t *error);
PARAMETERS
• collection: A mongoc_collection_t <>.
• selector: A bson_t <https://www.mongoc.org/libbson/current/bson_t.html> containing the query to match
the document for updating.
• replacement: A bson_t <https://www.mongoc.org/libbson/current/bson_t.html> containing the replacement
document.
• reply: A maybe-NULL pointer to overwritable storage <https://www.mongodb.com/docs/languages/c/c-driver/
current/libbson/guides/lifetimes/#overwritable-storage> for a bson_t <https://www.mongoc.org/libbson/
current/bson_t.html> to contain the results.
• error: An optional location for a bson_error_t <> or NULL.
opts may be NULL or a BSON document with additional command options:
• writeConcern: Construct a mongoc_write_concern_t <> and use mongoc_write_concern_append() <> to add the
write concern to opts. See the example code for mongoc_client_write_command_with_opts() <>.
• sessionId: First, construct a mongoc_client_session_t <> with mongoc_client_start_session() <>. You can
begin a transaction with mongoc_client_session_start_transaction() <>, optionally with a
mongoc_transaction_opt_t <> that overrides the options inherited from collection, and use
mongoc_client_session_append() <> to add the session to opts. See the example code for
mongoc_client_session_t <>.
• validate: Construct a bitwise-or of all desired bson_validate_flags_t <https://www.mongoc.org/libbson/
current/bson_validate_flags_t.html>. Set to false to skip client-side validation of the provided BSON
documents.
• comment: A bson_value_t <https://www.mongoc.org/libbson/current/bson_value_t.html> specifying the
comment to attach to this command. The comment will appear in log messages, profiler output, and
currentOp output. Requires MongoDB 4.4 or later.
• bypassDocumentValidation: Set to true to skip server-side schema validation of the provided BSON
documents.
• collation: Configure textual comparisons. See Setting Collation Order <https://www.mongodb.com/docs/
languages/c/c-driver/current/libmongoc/guides/bulk/#setting-collation-order>, and the MongoDB Manual
entry on Collation <https://www.mongodb.com/docs/manual/reference/collation/>. Collation requires
MongoDB 3.2 or later, otherwise an error is returned.
• hint: A document or string that specifies the index to use to support the query predicate.
• upsert: When true, creates a new document if no document matches the query.
• let: A BSON document consisting of any number of parameter names, each followed by definitions of
constants in the MQL Aggregate Expression language.
• sort: Specify a sort order when matching documents.
DESCRIPTION
This function shall replace documents in collection that match selector with replacement.
If provided, reply will be initialized and populated with the fields matchedCount, modifiedCount,
upsertedCount, and optionally upsertedId if applicable. If there is a server error then reply contains
either a writeErrors array with one subdocument or a writeConcernErrors array. The reply must be freed
with bson_destroy() <https://www.mongoc.org/libbson/current/bson_destroy.html>.
ERRORS
Errors are propagated via the error parameter.
RETURNS
Returns true if successful. Returns false and sets error if there are invalid arguments or a server or
network error.
A write concern timeout or write concern error is considered a failure.
See also:
MongoDB update command documentation <https://www.mongodb.com/docs/manual/reference/command/update/> for more information on the update options.
mongoc_collection_update_one() <>
mongoc_collection_update_many() <>
Author
MongoDB, Inc
Copyright
2009-present, MongoDB, Inc.
2.2.1 Dec 11, 2025 MONGOC_COLLECTION_REPLACE_ONE(3)