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);


  • collection: A mongoc_collection_t.

  • selector: A bson_t containing the query to match the document for updating.

  • replacement: A bson_t containing the replacement document.

  • reply: Optional. An uninitialized bson_t populated with the update result, or NULL.

  • error: An optional location for a bson_error_t or NULL.

opts may be NULL or a BSON document with additional command options:


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().


Errors are propagated via the error parameter.


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.