char **
mongoc_client_get_database_names_with_opts (mongoc_client_t *client,
                                            const bson_t *opts,
                                            bson_error_t *error)

This function queries the MongoDB server for a list of known databases.

This function is considered a retryable read operation. Upon a transient error (a network error, errors due to replica set failover, etc.) the operation is safely retried once. If retryreads is false in the URI (see mongoc_uri_t) the retry behavior does not apply.


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

For a list of all options, see the MongoDB Manual entry on the listDatabases command.


Errors are propagated via the error parameter.


A NULL terminated vector of NULL-byte terminated strings. The result should be freed with bson_strfreev().

NULL is returned upon failure and error is set.


   bson_error_t error;
   char **strv;
   unsigned i;

   if ((strv = mongoc_client_get_database_names_with_opts (client, NULL, &error))) {
      for (i = 0; strv[i]; i++)
         printf ("%s\n", strv[i]);
      bson_strfreev (strv);
   } else {
      fprintf (stderr, "Command failed: %s\n", error.message);