Skip to content

Latest commit

 

History

History
57 lines (42 loc) · 1.28 KB

File metadata and controls

57 lines (42 loc) · 1.28 KB

@soroprotocol/sdk — API Reference

SoroProtocolClient

Main entry point. Wraps all stream and vesting operations.

const client = new SoroProtocolClient({
  network:    'TESTNET',
  contractId: 'C...',
});

Stream Methods

Method Description
createStream(params) Create a new payment stream
cancelStream(id, sender) Cancel stream, splits balance
withdrawStream(id, recipient) Withdraw accrued balance
getStreamBalance(id) Read real-time balance (no wallet)

Vesting Methods

Method Description
createVesting(params) Create a vesting schedule
claimVesting(id, beneficiary) Claim vested tokens

React Hooks

// Real-time balance polling
const { balance } = useStreamBalance(streamId, fetchBalance, 5000);

// Stream data
const { stream, loading } = useStream(streamId, fetchFn);

// Wallet connection
const { wallet, connect, disconnect } = useWallet();

Error Handling

All methods throw SoroProtocolError on failure:

try {
  await client.createStream(params);
} catch (err) {
  if (err instanceof SoroProtocolError) {
    console.error(err.code, err.message);
  }
}

Error codes: RPC_ERROR, CONTRACT_ERROR, VALIDATION_ERROR, NOT_FOUND.