Skip to main content
Version: 1.13.1

Type Alias: CantonConfig

CantonConfig = { ccipParty: string; ccvs?: string[]; chainId?: string; defaultSendGasLimit?: number | bigint; edsUrl: string; externalEdsUrlsByOwner?: Record<string, string>; feeTransferFactoryAmount?: string; indexerUrl?: string; jwt?: string; packages?: Partial<{ ccipReceiver: string; ccipSender: string; perPartyRouter: string; }>; party: string; senderInstanceId?: string; tokenGetter?: () => Promise<string>; transferInstructionUrl: string; }

Defined in: chain.ts:206

Configuration for connecting to a Canton Ledger API and fetch CCIP disclosures.

Properties

ccipParty

ccipParty: string

Defined in: chain.ts:211

CCIP operator party (CCIPSender signatory / fee recipient on ledger).


ccvs?

optional ccvs?: string[]

Defined in: chain.ts:295

Optional Canton CCV instance addresses (hex hashes and/or raw instanceId@party). Used for execute (EDS disclosures + receiver matching) and as the default for Canton send senderRequiredCCVs when extraArgs.ccvRawAddresses is omitted. CLI -x ccvRawAddresses=… overrides this list for send.


chainId?

optional chainId?: string

Defined in: chain.ts:258

Optional CCIP Canton chain ID (e.g. canton:TestNet). When set, skips synchronizer-alias detection — required when the ledger reports a generic alias such as global.


defaultSendGasLimit?

optional defaultSendGasLimit?: number | bigint

Defined in: chain.ts:281

Default gas limit for Canton → destination sends when message.extraArgs.gasLimit is omitted. ccip-cli --gas-limit and extraArgs.gasLimit override this.


edsUrl

edsUrl: string

Defined in: chain.ts:235

Base URL for the EDS (Explicit Disclosure Service) API.


externalEdsUrlsByOwner?

optional externalEdsUrlsByOwner?: Record<string, string>

Defined in: chain.ts:242

Optional mapping from a Canton RawInstanceAddress owner party to that owner's external EDS base URL. When absent, edsUrl is used for both global and external EDS endpoints.


feeTransferFactoryAmount?

optional feeTransferFactoryAmount?: string

Defined in: chain.ts:287

Transfer-factory preview amount for Canton fee-token payments. Rarely needs changing; defaults to "1.0".


indexerUrl?

optional indexerUrl?: string

Defined in: chain.ts:251

Optional base URL for a transaction indexer to fetch CCV verifications. Used when --indexer is omitted on ccip-cli (CLI --indexer overrides this).


jwt?

optional jwt?: string

Defined in: chain.ts:220

JSON Web Token for authentication with the Canton Ledger API.

When tokenGetter is provided, jwt is optional — the SDK calls the getter per request to obtain a fresh JWT (enabling automatic refresh). When both are set, jwt takes precedence as a static override.


packages?

optional packages?: Partial<{ ccipReceiver: string; ccipSender: string; perPartyRouter: string; }>

Defined in: chain.ts:264

Optional DAR package names for ACS template filters. Prod testnet bundles PerPartyRouter in ccip-runtime instead of the dev default ccip-perpartyrouter.


party

party: string

Defined in: chain.ts:208

User ledger party for actAs, ACS queries, and transaction visibility (often differs from ccipParty).


senderInstanceId?

optional senderInstanceId?: string

Defined in: chain.ts:275

Optional CCIPSender instance id for Canton-source sends (ccip-cli -r on Canton lanes). Used only for CLI/SDK routing; on-ledger Send resolves CCIPSender from party via ACS. CLI -r overrides this value.


tokenGetter?

optional tokenGetter?: () => Promise<string>

Defined in: chain.ts:232

Optional token getter invoked per Canton Ledger API request to obtain a fresh JWT.

Use this when the token may expire and must be refreshed (e.g. OAuth2 client-credentials or authorization-code flows). The CLI resolves auth upfront and injects a getter backed by a caching provider; web/Electron embedders inject their own. When set, this takes precedence over jwt only when jwt is absent.

Returns

Promise<string>


transferInstructionUrl

transferInstructionUrl: string

Defined in: chain.ts:245

Base URL for the Transfer Instruction API.