HCS‑15 API Reference
Sources
- Module folder: GitHub
- base-client.ts: GitHub
- sdk.ts: GitHub
- browser.ts: GitHub
- tx.ts: GitHub
- types.ts: GitHub
Import PathsDirect link to Import Paths
- TypeScript
- Go
- Python
import {
HCS15Client,
HCS15BrowserClient,
type SDKHCS15ClientConfig,
type BrowserHCS15ClientConfig,
buildHcs15BaseAccountCreateTx,
buildHcs15PetalAccountCreateTx,
} from '@hashgraphonline/standards-sdk';
NewClient(config ClientConfig) (*Client, error)
Client.CreateBaseAccount(ctx, BaseAccountCreateOptions) (BaseAccountCreateResult, error)
Client.CreatePetalAccount(ctx, PetalAccountCreateOptions) (PetalAccountCreateResult, error)
Client.VerifyPetalAccount(ctx, ...)
BuildBaseAccountCreateTx(BaseAccountCreateTxParams) (*hedera.AccountCreateTransaction, error)
BuildPetalAccountCreateTx(PetalAccountCreateTxParams) (*hedera.AccountCreateTransaction, error)
# NewClient(config ClientConfig) (*Client, error)
Client.create_base_account(BaseAccountCreateOptions) (BaseAccountCreateResult, error)
Client.create_petal_account(PetalAccountCreateOptions) (PetalAccountCreateResult, error)
Client.verify_petal_account(...)
# BuildBaseAccountCreateTx(BaseAccountCreateTxParams) (*hedera.AccountCreateTransaction, error)
# BuildPetalAccountCreateTx(PetalAccountCreateTxParams) (*hedera.AccountCreateTransaction, error)
Server Client (HCS15Client)Direct link to Server Client (HCS15Client)
- TypeScript
- Go
- Python
constructor(config: SDKHCS15ClientConfig)
getKeyType(): 'ed25519' | 'ecdsa'
close(): Promise<void>
createBaseAccount(options?: { initialBalance?: number; maxAutomaticTokenAssociations?: number; accountMemo?: string }): Promise<{
accountId: string; privateKey: import('@hashgraph/sdk').PrivateKey; privateKeyHex: string; publicKey: import('@hashgraph/sdk').PublicKey; evmAddress: string; receipt: import('@hashgraph/sdk').TransactionReceipt;
}>
createPetalAccount(params: { basePrivateKey: string | import('@hashgraph/sdk').PrivateKey; initialBalance?: number; maxAutomaticTokenAssociations?: number; accountMemo?: string }): Promise<{ accountId: string; receipt: import('@hashgraph/sdk').TransactionReceipt }>
// See standards-sdk-go for full Go API types and methods
from standards_sdk_py.hcs15 import Hcs15Client
# Equivalent Python usage — see Python SDK docs for details
Browser Client (HCS15BrowserClient)Direct link to Browser Client (HCS15BrowserClient)
Wallet‑signed counterparts for creating base and petal accounts. Returns similar shapes; accountId may be provided by wallet flows.
Base ClientDirect link to Base Client
- TypeScript
- Go
- Python
verifyPetalAccount(petalAccountId: string, baseAccountId: string): Promise<boolean> // compares mirror‑node key material
// See standards-sdk-go for full Go API types and methods
from standards_sdk_py.hcs15 import Hcs15Client
# Equivalent Python usage — see Python SDK docs for details
BuildersDirect link to Builders
- TypeScript
- Go
- Python
function buildHcs15BaseAccountCreateTx(params: { publicKey: import('@hashgraph/sdk').PublicKey; initialBalance?: import('@hashgraph/sdk').Hbar|number; maxAutomaticTokenAssociations?: number; accountMemo?: string }): import('@hashgraph/sdk').AccountCreateTransaction;
function buildHcs15PetalAccountCreateTx(params: { publicKey: import('@hashgraph/sdk').PublicKey; initialBalance?: import('@hashgraph/sdk').Hbar|number; maxAutomaticTokenAssociations?: number; accountMemo?: string }): import('@hashgraph/sdk').AccountCreateTransaction;
// See standards-sdk-go for full Go API types and methods
from standards_sdk_py.hcs15 import Hcs15Client
# Equivalent Python usage — see Python SDK docs for details
ErrorsDirect link to Errors
HCS-15 BASE_ACCOUNT_CREATE_FAILEDHCS-15 PETAL_ACCOUNT_CREATE_FAILED
ExampleDirect link to Example
- TypeScript
- Go
- Python
const c = new HCS15Client({ network: 'testnet', operatorId, operatorKey });
const base = await c.createBaseAccount({ initialBalance: 10 });
await c.createPetalAccount({ basePrivateKey: base.privateKey });
// See standards-sdk-go for full Go API types and methods
from standards_sdk_py.hcs15 import Hcs15Client
# Equivalent Python usage — see Python SDK docs for details