# assertAddPiecesFit

> **assertAddPiecesFit**(`options`): `void`

Defined in: [packages/synapse-core/src/sp/add-pieces-fits.ts:92](https://github.com/FilOzone/synapse-sdk/blob/5a206712436ab6bcc46c2a9e3774fc873b328e0f/packages/synapse-core/src/sp/add-pieces-fits.ts#L92)

Throw if `pieces` is empty, a PieceCID is outside Curio's size bounds, or the
list does not fit in one addPieces / createAndAdd message.

## Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `options` | [`LimiterOptions`](/reference/filoz/synapse-core/sp/type-aliases/limiteroptions/) | [LimiterOptions](/reference/filoz/synapse-core/sp/type-aliases/limiteroptions/) |

## Returns

`void`

## Throws

AtLeastOnePieceRequiredError when `pieces` is empty

## Throws

InvalidUploadSizeError when a PieceCID size is below [SIZE\_CONSTANTS.MIN\_UPLOAD\_SIZE](/reference/filoz/synapse-core/utils/variables/size_constants/#min_upload_size) or above [SIZE\_CONSTANTS.MAX\_UPLOAD\_SIZE](/reference/filoz/synapse-core/utils/variables/size_constants/#max_upload_size)

## Throws

AddPiecesBatchTooLargeError when the estimated message exceeds [SIZE\_CONSTANTS.MAX\_ADD\_PIECES\_MESSAGE\_SIZE](/reference/filoz/synapse-core/utils/variables/size_constants/#max_add_pieces_message_size)