# assertAddPiecesFit

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

Defined in: [packages/synapse-core/src/sp/add-pieces-fits.ts:109](https://github.com/FilOzone/synapse-sdk/blob/2e357180d354970e2a091ff7ef0f3021c8357d4f/packages/synapse-core/src/sp/add-pieces-fits.ts#L109)

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 a piece-count or message-size limit is exceeded