mongoc_collection_find_and_modify_with_opts(3)

MONGOC_COLLECTION_FIND_AND_MODIFY_WITH_OPTS(3) libmongoc MONGOC_COLLECTION_FIND_AND_MODIFY_WITH_OPTS(3)

SYNOPSIS

bool
mongoc_collection_find_and_modify_with_opts (

mongoc_collection_t *collection,
const bson_t *query,
const mongoc_find_and_modify_opts_t *opts,
bson_t *reply,
bson_error_t *error);


PARAMETERS

  • collection: A mongoc_collection_t <>.
  • query: A bson_t <https://www.mongoc.org/libbson/current/bson_t.html> containing the query to locate target document(s).
  • opts: A find and modify options <>. Must not be NULL.
  • 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.

DESCRIPTION

Update and return an object.

reply is always initialized, and must be freed with bson_destroy() <https://www.mongoc.org/libbson/current/bson_destroy.html>.

If an unacknowledged write concern is set (through mongoc_find_and_modify_opts_append() <>), the output reply is always an empty document.

On success, the output reply contains the full server reply to the findAndModify command. See the MongoDB Manual page for findAndModify <https://www.mongodb.com/docs/manual/reference/command/findAndModify/#output> for the expected server reply.

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.

EXAMPLE

See the example code for mongoc_find_and_modify_opts_t <#mongoc-collection-find-and-modify-with-opts-example>.

Author

MongoDB, Inc

Copyright

2009-present, MongoDB, Inc.

February 10, 2026 1.30.7