---
name: "mongoc_gridfs_bucket_open_upload_stream_with_id"
section: "3"
platform: "linux"
package: "libmongoc-doc"
version: "1.30.4-1+deb13u3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/mongoc_gridfs_bucket_open_upload_stream_with_id"
---

# mongoc\_gridfs\_bucket\_open\_upload\_stream\_with\_id(3)

## SYNOPSIS

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

## PARAMETERS

- •

  **bucket**: A *mongoc\_gridfs\_bucket\_t*.

- •

  **file\_id**: A *bson\_value\_t* specifying the id of the created file.

- •

  **filename**: The name of the file to create.

- •

  **opts**: A *bson\_t* or **NULL**.

- •

  **error**: A *bson\_error\_t* to receive any error or **NULL**.

**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.

## DESCRIPTION

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

## RETURNS

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.

**SEE ALSO:**

```
mongoc_gridfs_bucket_open_upload_stream()
```

```
mongoc_gridfs_bucket_stream_error()
```

## AUTHOR

MongoDB, Inc

## COPYRIGHT

2009-present, MongoDB, Inc.
