generateExternalPartyTopology is step one of external-key onboarding: it emits topology payloads your KMS signs before submission via submitExternalPartyTopology.
Setup
import { Canton } from '@fairmint/canton-node-sdk';
const canton = new Canton({
network: 'devnet',
provider: '5n',
partyId: 'OWN_PARTY_ID',
});
Import and receiver
import { Canton } from '@fairmint/canton-node-sdk';
Receiver: canton.validator.generateExternalPartyTopology.
Minimal example
const topo = await canton.validator.generateExternalPartyTopology({
party_hint: 'alice',
public_key: '<hex-encoded-ed25519-public-key>',
});
// Sign returned payloads offline, then call submitExternalPartyTopology with signatures.
Parameters
party_hint(required, string) — Hint incorporated into external-party naming rules on your sync domain.public_key(required, string) — Hex-encoded public key supplied alongside Canton topology guidelines.
Returns
JSON body from generateExternalPartyTopology: topology transactions requiring hashes/signatures before activation.
Errors and pitfalls
- Malformed key: Hex decoding failures bubble through validator responses as
ApiError. - Naming collisions: Popular hints may be denied depending on policy.
Auth and party
Bearer token permitted on validator /admin/external-party/topology/generate.
See also
Source
src/clients/validator-api/operations/v0/admin/generate-external-party-topology.ts on GitHub.