# parseGetActivePiecesByCursor

> **parseGetActivePiecesByCursor**(`data`): [`OutputType`](/reference/filoz/synapse-core/pdp-verifier/namespaces/getactivepiecesbycursor/type-aliases/outputtype/)

Defined in: [packages/synapse-core/src/pdp-verifier/get-active-pieces-by-cursor.ts:159](https://github.com/FilOzone/synapse-sdk/blob/e6fb33f57d00c5c775ea37a127e65446e2eee635/packages/synapse-core/src/pdp-verifier/get-active-pieces-by-cursor.ts#L159)

Parse raw `getActivePiecesByCursor` contract output into a normalized page.

Piece data is converted to [PieceCID](/reference/filoz/synapse-core/piece/classes/piececid/), piece IDs are paired by their
matching array index, and the contract's `hasMore` flag is translated into
an opaque `nextCursor`. The cursor is omitted when the contract reports that
no more active pieces remain.

## Parameters

| Parameter | Type | Description |
| ------ | ------ | ------ |
| `data` | readonly \[readonly `object`[], readonly `bigint`[], `boolean`\] | Raw contract output [getActivePiecesByCursor.ContractOutputType](/reference/filoz/synapse-core/pdp-verifier/namespaces/getactivepiecesbycursor/type-aliases/contractoutputtype/) |

## Returns

[`OutputType`](/reference/filoz/synapse-core/pdp-verifier/namespaces/getactivepiecesbycursor/type-aliases/outputtype/)

A normalized page of active pieces [getActivePiecesByCursor.OutputType](/reference/filoz/synapse-core/pdp-verifier/namespaces/getactivepiecesbycursor/type-aliases/outputtype/)