SPRegistryService
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:41
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new SPRegistryService(
options):SPRegistryService
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:49
Constructor for SPRegistryService
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { client: Client<Transport, Chain, Account>; } | Options for the SPRegistryService |
options.client | Client<Transport, Chain, Account> | Wallet client used for read and write operations |
Returns
Section titled “Returns”SPRegistryService
Methods
Section titled “Methods”activeProviderCount()
Section titled “activeProviderCount()”activeProviderCount():
Promise<bigint>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:270
Get number of active providers
Returns
Section titled “Returns”Promise<bigint>
Active provider count
addPDPProduct()
Section titled “addPDPProduct()”addPDPProduct(
options):Promise<`0x${string}`>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:283
Add PDP product to provider
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { capabilities?: Record<string, string>; pdpOffering: PDPOffering; } | Options for adding a PDP product |
options.capabilities? | Record<string, string> | Optional capability keys |
options.pdpOffering | PDPOffering | PDP offering details |
Returns
Section titled “Returns”Promise<`0x${string}`>
Transaction hash
getActiveProvidersByProductType()
Section titled “getActiveProvidersByProductType()”getActiveProvidersByProductType(
options):Promise<object[]>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:213
Get active providers by product type (handles pagination internally)
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { productType: 0; } | Options for provider filtering |
options.productType | 0 | Product type to filter by |
Returns
Section titled “Returns”Promise<object[]>
List of providers with specified product type
getAllActiveProviders()
Section titled “getAllActiveProviders()”getAllActiveProviders():
Promise<PDPProvider[]>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:185
Get all active providers (handles pagination internally)
Returns
Section titled “Returns”List of all active providers
getProvider()
Section titled “getProvider()”getProvider(
options):Promise<PDPProvider|null>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:145
Get provider information by ID
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { providerId: bigint; } | Options for provider lookup |
options.providerId | bigint | Provider ID |
Returns
Section titled “Returns”Promise<PDPProvider | null>
Provider info with decoded products
getProviderByAddress()
Section titled “getProviderByAddress()”getProviderByAddress(
options):Promise<PDPProvider|null>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:162
Get provider information by address
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { address: `0x${string}`; } | Options for provider lookup |
options.address | `0x${string}` | Provider address |
Returns
Section titled “Returns”Promise<PDPProvider | null>
Provider info with decoded products
getProviderCount()
Section titled “getProviderCount()”getProviderCount():
Promise<bigint>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:262
Get total number of providers
Returns
Section titled “Returns”Promise<bigint>
Total provider count
getProviderIdByAddress()
Section titled “getProviderIdByAddress()”getProviderIdByAddress(
options):Promise<bigint>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:177
Get provider ID by address
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { address: `0x${string}`; } | Options for provider ID lookup |
options.address | `0x${string}` | Provider address |
Returns
Section titled “Returns”Promise<bigint>
Provider ID (0 if not found)
getProviders()
Section titled “getProviders()”getProviders(
options):Promise<PDPProvider[]>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:330
Get multiple providers by IDs using Multicall3 for efficiency
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { providerIds: bigint[]; } | Options for provider batch lookup |
options.providerIds | bigint[] | Array of provider IDs |
Returns
Section titled “Returns”Array of provider info
isProviderActive()
Section titled “isProviderActive()”isProviderActive(
options):Promise<boolean>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:244
Check if provider is active
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { providerId: bigint; } | Options for provider status lookup |
options.providerId | bigint | Provider ID |
Returns
Section titled “Returns”Promise<boolean>
Whether provider is active
isRegisteredProvider()
Section titled “isRegisteredProvider()”isRegisteredProvider(
options):Promise<boolean>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:254
Check if address is a registered provider
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { address: `0x${string}`; } | Options for provider registration lookup |
options.address | `0x${string}` | Address to check |
Returns
Section titled “Returns”Promise<boolean>
Whether address is registered
registerProvider()
Section titled “registerProvider()”registerProvider(
options):Promise<`0x${string}`>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:103
Register as a new service provider with optional PDP product
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { info: ProviderRegistrationInfo; } | Options for provider registration |
options.info | ProviderRegistrationInfo | Provider registration information |
Returns
Section titled “Returns”Promise<`0x${string}`>
Transaction hash
Example
Section titled “Example”const hash = await spRegistry.registerProvider({ info: { payee: '0x...', // Address that will receive payments name: 'My Storage Provider', description: 'High-performance storage service', pdpOffering: { serviceURL: 'https://provider.example.com', minPieceSizeInBytes: SIZE_CONSTANTS.KiB, maxPieceSizeInBytes: SIZE_CONSTANTS.GiB, // ... other PDP fields }, capabilities: { 'region': 'us-east', 'tier': 'premium' } }})
console.log(hash)removeProduct()
Section titled “removeProduct()”removeProduct(
options):Promise<`0x${string}`>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:314
Remove product from provider
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { productType: 0; } | Options for product removal |
options.productType | 0 | Type of product to remove |
Returns
Section titled “Returns”Promise<`0x${string}`>
Transaction hash
removeProvider()
Section titled “removeProvider()”removeProvider():
Promise<`0x${string}`>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:133
Remove provider registration
Returns
Section titled “Returns”Promise<`0x${string}`>
Transaction response
updatePDPProduct()
Section titled “updatePDPProduct()”updatePDPProduct(
options):Promise<`0x${string}`>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:299
Update PDP product with capabilities
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { capabilities?: Record<string, string>; pdpOffering: PDPOffering; } | Options for updating a PDP product |
options.capabilities? | Record<string, string> | Updated capability key-value pairs |
options.pdpOffering | PDPOffering | Updated PDP offering |
Returns
Section titled “Returns”Promise<`0x${string}`>
Transaction hash
updateProviderInfo()
Section titled “updateProviderInfo()”updateProviderInfo(
options):Promise<`0x${string}`>
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:122
Update provider information
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { description: string; name: string; } | Options for provider info updates |
options.description | string | New description |
options.name | string | New name |
Returns
Section titled “Returns”Promise<`0x${string}`>
Transaction response
create()
Section titled “create()”
staticcreate(options):SPRegistryService
Defined in: packages/synapse-sdk/src/sp-registry/service.ts:60
Create a new SPRegistryService instance
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
options | { account: Account; chain?: Chain; transport?: Transport; } | Options for the SPRegistryService |
options.account | Account | Viem account (required) |
options.chain? | Chain | Filecoin chain (optional, defaults to DEFAULT_CHAIN) |
options.transport? | Transport | Viem transport (optional, defaults to http()) |
Returns
Section titled “Returns”SPRegistryService