StorageManagerUploadOptions
Defined in: packages/synapse-sdk/src/storage/manager.ts:110
Upload options for StorageManager.upload()
Extends CreateContextsOptions to inherit multi-copy provider selection. Adds upload-specific options: explicit contexts, pre-calculated PieceCID, and abort signal.
Usage patterns:
- With explicit contexts:
{ contexts }- uses the given contexts directly - Auto-create contexts:
{ providerIds?, dataSetIds?, copies? }- creates/reuses contexts - Use default contexts: no options - uses cached default contexts (2 copies)
Extends
Section titled “Extends”Properties
Section titled “Properties”callbacks?
Section titled “callbacks?”
optionalcallbacks?:Partial<CombinedCallbacks>
Defined in: packages/synapse-sdk/src/storage/manager.ts:115
Callbacks for both context creation and upload lifecycle
Overrides
Section titled “Overrides”CreateContextsOptions.callbacks
contexts?
Section titled “contexts?”
optionalcontexts?:StorageContext[]
Defined in: packages/synapse-sdk/src/storage/manager.ts:112
Pre-created contexts to use. If provided, other selection options are invalid.
copies?
Section titled “copies?”
optionalcopies?:number
Defined in: packages/synapse-sdk/src/types.ts:344
Number of storage copies to create (optional, defaults to 2)
Inherited from
Section titled “Inherited from”dataSetIds?
Section titled “dataSetIds?”
optionaldataSetIds?:bigint[]
Defined in: packages/synapse-sdk/src/types.ts:354
Specific data set IDs to target. Each must be an active data set owned by
the caller. Mutually exclusive with providerIds.
Use this only when resuming into a known data set from a prior operation.
For first-time uploads to specific providers, use providerIds instead,
the SDK handles data set creation automatically.
Inherited from
Section titled “Inherited from”CreateContextsOptions.dataSetIds
excludeProviderIds?
Section titled “excludeProviderIds?”
optionalexcludeProviderIds?:bigint[]
Defined in: packages/synapse-sdk/src/types.ts:372
Do not select any of these providers
Inherited from
Section titled “Inherited from”CreateContextsOptions.excludeProviderIds
metadata?
Section titled “metadata?”
optionalmetadata?:Record<string,string>
Defined in: packages/synapse-sdk/src/types.ts:325
Custom metadata for data sets (key-value pairs). Used to match existing data sets during provider selection.
Inherited from
Section titled “Inherited from”CreateContextsOptions.metadata
pieceCid?
Section titled “pieceCid?”
optionalpieceCid?:PieceLink
Defined in: packages/synapse-sdk/src/storage/manager.ts:118
Optional pre-calculated PieceCID to skip CommP calculation (verified by server)
pieceMetadata?
Section titled “pieceMetadata?”
optionalpieceMetadata?:Record<string,string>
Defined in: packages/synapse-sdk/src/storage/manager.ts:124
Custom metadata for pieces being uploaded (key-value pairs)
providerIds?
Section titled “providerIds?”
optionalproviderIds?:bigint[]
Defined in: packages/synapse-sdk/src/types.ts:369
Specific provider IDs to upload to. The SDK resolves or creates data sets
on each provider automatically. Mutually exclusive with dataSetIds.
This is the recommended way to target specific providers. Do not call
createContext() to resolve data sets first, pass provider IDs here
and the SDK handles the rest.
Example
Section titled “Example”await synapse.storage.upload(data, { providerIds: [4n, 9n] })Inherited from
Section titled “Inherited from”CreateContextsOptions.providerIds
signal?
Section titled “signal?”
optionalsignal?:AbortSignal
Defined in: packages/synapse-sdk/src/storage/manager.ts:121
Optional AbortSignal to cancel the upload
withCDN?
Section titled “withCDN?”
optionalwithCDN?:boolean
Defined in: packages/synapse-sdk/src/types.ts:319
Whether to enable CDN services