Skip to content

Reference

generateExternalPartyTopology

Ledger helper invoking generateExternalPartyTopology before signatures exist — produces onboarding transactions for allocateExternalParty.

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.

See also

Source

src/utils/external-signing/generate-external-party.ts