For AI agents: a documentation index is available at https://www.mongodb.com/docs/llms.txt — markdown versions of all pages are available by appending .md to any URL path.

Specify Connection Options

This page describes the MongoDB connection and authentication options available in the C++ driver.

You can configure your connection by specifying options in the connection URI or by passing an instance of the mongocxx::options::client class as the client_options parameter to the mongocxx::client constructor.

Note

You can specify some connection options only in the connection URI, and others only in an the client_options parameter. You might need to combine these methods to specify all the options that you need.

When you construct a mongocxx::client object, you can pass in a mongocxx::uri object that represents your connection URI. This connection URI can include connection options as <name>=<value> pairs. In the following example, the connection URI contains the tls option with a value of true and the tlsCertificateKeyFile option with a value of path/to/file.pem:

#include <mongocxx/uri.hpp>#include <mongocxx/client.hpp>#include <mongocxx/instance.hpp> int main(){ mongocxx::instance instance; mongocxx::uri uri("mongodb://<hostname>:<port>/?tls=true&tlsCertificateKeyFile=path/to/file.pem"); mongocxx::client client(uri);}

The mongocxx::client constructor includes a client_options parameter that accepts an instance of the mongocxx::options::client class. You can specify certain options in the client_options parameter instead of including them in your connection URI.

The following example shows how to use the client_options parameter to set connection options:

#include <mongocxx/uri.hpp>#include <mongocxx/client.hpp>#include <mongocxx/instance.hpp> int main(){ mongocxx::instance instance; mongocxx::options::client client_options; mongocxx::options::tls tls_options; tls_options.pem_file("/path/to/file.pem"); client_options.tls_opts(tls_options); mongocxx::uri uri("mongodb://<hostname>:<port>/?tls=true"); mongocxx::client client(uri, client_options);}

After constructing a mongocxx::client object, you can read the values of certain connection options by using properties of the mongocxx::uri object.

The following example shows how to read the value of the tls connection options by using the tls() property:

#include <mongocxx/uri.hpp>#include <mongocxx/client.hpp>#include <mongocxx/instance.hpp> int main(){ mongocxx::instance instance; mongocxx::uri uri("mongodb://<hostname>:<port>/?tls=true"); mongocxx::client client(uri); auto is_tls_enabled = uri.tls();}

The following sections show the corresponding mongocxx::uri property for each connection option that supports it.

The following sections describe the connection options that you can set in the connection URI passed to the C++ driver. Each connection option links to the MongoDB Server manual and to its corresponding mongocxx::uri property, if supported.

Connection URI Option
mongocxx::uri Member

Tip

You can set most TLS options by using the client_options parameter. See the mongocxx::options::tls API documentation for more information.

Connection URI Option
mongocxx::uri Member

N/A

N/A

Connection URI Option
mongocxx::uri Member
Connection URI Option
mongocxx::uri Member

N/A

N/A