Skip to content

findPieceIdsByCid

findPieceIdsByCid(client, options): Promise<OutputType>

Defined in: packages/synapse-core/src/pdp-verifier/find-piece-ids-by-cid.ts:89

Find one bounded page of piece IDs matching a PieceCID in a data set.

Uses the on-chain findPieceIdsByCid function for efficient CID-to-ID lookup. Pass nextCursor back unchanged; use paginate to collect every match. The default page size is one match.

ParameterTypeDescription
clientClient<Transport, Chain>The client to use to find piece IDs.
optionsOptionsTypefindPieceIdsByCid.OptionsType

Promise<OutputType>

A page of piece IDs matching the CID findPieceIdsByCid.OutputType

Read the first page

import { findPieceIdsByCid } from '@filoz/synapse-core/pdp-verifier'
import { calibration } from '@filoz/synapse-core/chains'
import { createPublicClient, http } from 'viem'
import * as Piece from '@filoz/synapse-core/piece'
const client = createPublicClient({
chain: calibration,
transport: http(),
})
const pieceCid = Piece.from('bafkzcibcd4bdomn3tgwgrh3g532zopskstnbrd2n3sxfqbze7rxt7vqn7veigmy')
const page = await findPieceIdsByCid(client, { dataSetId: 1n, pieceCid })
console.log(page.items, page.nextCursor)

Iterate over every page

import { paginate } from '@filoz/synapse-core'
import { findPieceIdsByCid } from '@filoz/synapse-core/pdp-verifier'
for await (const pieceId of paginate(({ cursor }) =>
findPieceIdsByCid(client, { dataSetId: 1n, pieceCid, cursor })
)) {
console.log(pieceId)
}

Errors findPieceIdsByCid.ErrorType