mongoc_stream_t *
mongoc_gridfs_bucket_open_upload_stream_with_id (mongoc_gridfs_bucket_t *bucket,
                                                 const bson_value_t *file_id,
                                                 const char *filename,
                                                 const bson_t *opts,
                                                 bson_error_t *error);


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

  • chunkSizeBytes: An int32 chunk size to use for this file. Overrides the chunkSizeBytes set on bucket.

  • metadata: A bson_t representing metadata to include with the file.


Opens a stream for writing to a new file in GridFS for a specified file id. To have libmongoc generate an id, use mongoc_gridfs_bucket_open_upload_stream().


A mongoc_stream_t that can be written to or NULL on failure. Errors on this stream can be retrieved with mongoc_gridfs_bucket_stream_error(). After calling mongoc_stream_close() the file is completely written in GridFS.