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

# bson\_append\_binary(3)

## SYNOPSIS

```
#define BSON_APPEND_BINARY(b, key, subtype, val, len) \
   bson_append_binary (b, key, (int) strlen (key), subtype, val, len)
bool
bson_append_binary (bson_t *bson,
                    const char *key,
                    int key_length,
                    bson_subtype_t subtype,
                    const uint8_t *binary,
                    uint32_t length);
```

## PARAMETERS

- •

  **bson**: A *bson\_t*.

- •

  **key**: The key name.

- •

  **key\_length**: The length of **key** in bytes or -1 to use strlen().

- •

  **subtype**: A bson\_subtype\_t indicating the binary subtype.

- •

  **binary**: A buffer to embed as binary data. May be **NULL** for an empty binary value.

- •

  **length**: The length of **buffer** in bytes. Must be **0** if **binary** is NULL.

## DESCRIPTION

The *bson\_append\_binary()* function shall append a new element to **bson** containing the binary data provided.

## RETURNS

Returns **true** if the operation was applied successfully. The function will fail if appending **binary** grows **bson** larger than INT32\_MAX.

## AUTHOR

MongoDB, Inc

## COPYRIGHT

2009-present, MongoDB, Inc.
