generateExternalPartyTopology forwards to ledgerClient.generateExternalPartyTopology, expanding optional participant UID arrays defensively (readonly clones).
Use directly when integrating custom signing pipelines distinct from createExternalParty.
Setup
import { generateExternalPartyTopology } from '@fairmint/canton-node-sdk';
const canton = new Canton({
network: 'NETWORK_NAME',
partyId: 'PARTY_ID',
});
Minimal example
const topology = await generateExternalPartyTopology({
ledgerClient: canton.ledger,
synchronizerId: 'SYNCHRONIZER_ID',
partyHint: 'alice',
publicKey: PUBLIC_KEY_PAYLOAD_PLACEHOLDER,
});
console.log(topology.partyId, topology.multiHash);
Parameters
GenerateExternalPartyOptions:
ledgerClient,synchronizerId,partyHint,publicKey(required) — Mirrors ledger schema (CRYPTO_KEY_FORMAT_*).- Additional participant knobs identical to
createExternalParty(localParticipantObservationOnly, …).
Returns
Promise<GenerateExternalPartyTopologyResponse> — Contains partyId, multiHash, topologyTransactions.
Errors
Propagates ledger ApiError during topology preparation.
Auth and party
Requires ledger credentials authorized for topology RPC.