Skip to main content
Version: 1.17.0

Type Alias: CantonConfig

CantonConfig = { ccipParty?: string; ccvs?: string[]; defaultSendGasLimit?: number | bigint; disableAutomaticContractCreation?: boolean; externalEdsUrlsByOwner?: Record<string, string>; externalTokenStandardUrlsByOwner?: Record<string, string>; indexerUrl?: string; provider?: CantonRpcProvider; }

Defined in: chain.ts:251

SDK-side configuration for connecting to a Canton Ledger API and fetch CCIP disclosures. The SDK consumes only what it's given: the CantonRpcProvider (constructed by the embedder — the CLI builds one from its own CantonCliConfig) plus the operational overrides below.

Properties​

ccipParty?​

optional ccipParty?: string

Defined in: chain.ts:268

CCIP operator party. Optional: overrides the network's default CCIP owner party; falls back to the chain default when omitted.


ccvs?​

optional ccvs?: string[]

Defined in: chain.ts:324

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.


defaultSendGasLimit?​

optional defaultSendGasLimit?: number | bigint

Defined in: chain.ts:316

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


disableAutomaticContractCreation?​

optional disableAutomaticContractCreation?: boolean

Defined in: chain.ts:277

If enabled, CantonChain will not automatically create contracts and instead throw an error if it encounters a missing contract. CCIPSender, CCIPReceiver, PerPartyRouter

Default: false


externalEdsUrlsByOwner?​

optional externalEdsUrlsByOwner?: Record<string, string>

Defined in: chain.ts:293

Optional mapping from a Canton RawInstanceAddress owner party to that owner's EDS base URL, merged over (and overriding, per key) the SDK's built-in per-network defaults. Supported keys:

  • a party ID, e.g. 'partyOwner::1220deadbeef…' => 'https://eds.other-owner.example.com': dedicated EDS base URL for that party
  • '{party}', e.g. '{party}' => 'https://eds.example.com/{party}': URL template applied to any party without an explicit entry; the {party} placeholder is replaced with the resolved party (e.g. for DA Registry URLs embedding the party)
  • '*', e.g. '*' => 'https://eds.example.com': plain fallback used when the party cannot be determined (e.g. an opaque hashed InstanceAddress)

externalTokenStandardUrlsByOwner?​

optional externalTokenStandardUrlsByOwner?: Record<string, string>

Defined in: chain.ts:303

Optional mapping from a Canton instrument admin party to that admin's Token Standard API base URL, merged over (and overriding, per key) the SDK's built-in per-network defaults. Supports the same keys as externalEdsUrlsByOwner: party IDs, the '{party}' URL template (placeholder replaced with the resolved admin party, e.g. for DA Registry URLs embedding the party) and the '*' plain fallback.


indexerUrl?​

optional indexerUrl?: string

Defined in: chain.ts:310

Optional base URL for a transaction indexer to fetch CCV verifications, overriding the network's built-in default. A per-call indexer option still wins over this.


provider?​

optional provider?: CantonRpcProvider

Defined in: chain.ts:261

Canton RPC provider, supplying connectivity and JWT-authenticated requests.

Required when constructing a chain via CantonChain.fromUrl — the provider is built by the embedder (the CLI builds one from its own CantonCliConfig). Optional when the provider is passed directly to CantonChain.fromProvider: its context then only carries the operational overrides below.