EthBridge
Calls
depositRelayerBond
Namespace
api.tx.ethBridge.depositRelayerBond
Type
function depositRelayerBond(
)
finaliseAuthoritiesChange
Namespace
api.tx.ethBridge.finaliseAuthoritiesChange
Type
function finaliseAuthoritiesChange(
next_notary_keys: Vec<SeedPrimitivesEthyCryptoAppCryptoPublic>
)
setBridgePaused
Namespace
api.tx.ethBridge.setBridgePaused
Type
function setBridgePaused(
paused: bool
)
setChallengePeriod
Namespace
api.tx.ethBridge.setChallengePeriod
Type
function setChallengePeriod(
blocks: u32
)
setContractAddress
Namespace
api.tx.ethBridge.setContractAddress
Type
function setContractAddress(
contract_address: H160
)
setDelayedEventProofsPerBlock
Namespace
api.tx.ethBridge.setDelayedEventProofsPerBlock
Type
function setDelayedEventProofsPerBlock(
count: u8
)
setEventBlockConfirmations
Namespace
api.tx.ethBridge.setEventBlockConfirmations
Type
function setEventBlockConfirmations(
confirmations: u64
)
setRelayer
Namespace
api.tx.ethBridge.setRelayer
Type
function setRelayer(
relayer: SeedPrimitivesSignatureAccountId20
)
setXrplDoorSigners
Namespace
api.tx.ethBridge.setXrplDoorSigners
Type
function setXrplDoorSigners(
new_signers: Vec<(SeedPrimitivesEthyCryptoAppCryptoPublic,bool)>
)
submitChallenge
Namespace
api.tx.ethBridge.submitChallenge
Type
function submitChallenge(
event_claim_id: u64
)
submitEvent
Namespace
api.tx.ethBridge.submitEvent
Type
function submitEvent(
tx_hash: H256,
event: Bytes
)
submitNotarization
Namespace
api.tx.ethBridge.submitNotarization
Type
function submitNotarization(
payload: PalletEthyNotarizationPayload,
_signature: SeedPrimitivesEthyCryptoAppCryptoSignature
)
withdrawRelayerBond
Namespace
api.tx.ethBridge.withdrawRelayerBond
Type
function withdrawRelayerBond(
)
Storage
authoritiesChangedThisEra
Flag to indicate whether authorities have been changed during the current era
Namespace
api.query.ethBridge.authoritiesChangedThisEra
Type
function authoritiesChangedThisEra(
): bool
bridgePaused
Whether the bridge is paused (e.g. during validator transitions or by governance)
Namespace
api.query.ethBridge.bridgePaused
Type
function bridgePaused(
): bool
challengePeriod
The (optimistic) challenge period after which a submitted event is considered valid
Namespace
api.query.ethBridge.challengePeriod
Type
function challengePeriod(
): u32
challengerAccount
Maps from event claim id to challenger and bond amount paid
Namespace
api.query.ethBridge.challengerAccount
Type
function challengerAccount(
u64
): Option<(SeedPrimitivesSignatureAccountId20,u128)>
contractAddress
The bridge contract address on Ethereum
Namespace
api.query.ethBridge.contractAddress
Type
function contractAddress(
): H160
delayedEventProofsPerBlock
The maximum number of delayed events that can be processed in on_initialize()
Namespace
api.query.ethBridge.delayedEventProofsPerBlock
Type
function delayedEventProofsPerBlock(
): u8
ethCallNotarizations
EthCallOracle notarizations keyed by (Id, Notary)
Namespace
api.query.ethBridge.ethCallNotarizations
Type
function ethCallNotarizations(
u64,
SeedPrimitivesEthyCryptoAppCryptoPublic
): Option<PalletEthyCheckedEthCallResult>
ethCallNotarizationsAggregated
map from EthCallOracle notarizations to an aggregated count
Namespace
api.query.ethBridge.ethCallNotarizationsAggregated
Type
function ethCallNotarizationsAggregated(
u64
): Option<BTreeMap<PalletEthyCheckedEthCallResult, u32>>
ethCallRequestInfo
EthCallOracle request info
Namespace
api.query.ethBridge.ethCallRequestInfo
Type
function ethCallRequestInfo(
u64
): Option<PalletEthyCheckedEthCallRequest>
ethCallRequests
Queue of pending EthCallOracle requests
Namespace
api.query.ethBridge.ethCallRequests
Type
function ethCallRequests(
): Vec<u64>
eventBlockConfirmations
The minimum number of block confirmations needed to notarize an Ethereum event
Namespace
api.query.ethBridge.eventBlockConfirmations
Type
function eventBlockConfirmations(
): u64
eventNotarizations
Notarizations for queued events Either: None = no notarization exists OR Some(yay/nay)
Namespace
api.query.ethBridge.eventNotarizations
Type
function eventNotarizations(
u64,
SeedPrimitivesEthyCryptoAppCryptoPublic
): Option<PalletEthyEventClaimResult>
messagesValidAt
Map from block number to list of EventClaims that will be considered valid and should be forwarded to handlers (i.e after the optimistic challenge period has passed without issue)
Namespace
api.query.ethBridge.messagesValidAt
Type
function messagesValidAt(
u32
): Vec<u64>
nextAuthorityChange
The block in which we process the next authority change
Namespace
api.query.ethBridge.nextAuthorityChange
Type
function nextAuthorityChange(
): Option<u32>
nextEthCallId
Subscription Id for EthCall requests
Namespace
api.query.ethBridge.nextEthCallId
Type
function nextEthCallId(
): u64
nextEventProofId
Id of the next event proof
Namespace
api.query.ethBridge.nextEventProofId
Type
function nextEventProofId(
): u64
nextNotaryKeys
Scheduled notary (validator) public keys for the next session
Namespace
api.query.ethBridge.nextNotaryKeys
Type
function nextNotaryKeys(
): Vec<SeedPrimitivesEthyCryptoAppCryptoPublic>
notaryKeys
Active notary (validator) public keys
Namespace
api.query.ethBridge.notaryKeys
Type
function notaryKeys(
): Vec<SeedPrimitivesEthyCryptoAppCryptoPublic>
notarySetId
The current validator set id
Namespace
api.query.ethBridge.notarySetId
Type
function notarySetId(
): u64
notarySetProofId
The event proof Id generated by the previous validator set to notarize the current set. Useful for syncing the latest proof to Ethereum
Namespace
api.query.ethBridge.notarySetProofId
Type
function notarySetProofId(
): u64
notaryXrplKeys
Active xrpl notary (validator) public keys
Namespace
api.query.ethBridge.notaryXrplKeys
Type
function notaryXrplKeys(
): Vec<SeedPrimitivesEthyCryptoAppCryptoPublic>
pendingClaimChallenges
List of all event ids that are currently being challenged
Namespace
api.query.ethBridge.pendingClaimChallenges
Type
function pendingClaimChallenges(
): Vec<u64>
pendingClaimStatus
Status of pending event claims
Namespace
api.query.ethBridge.pendingClaimStatus
Type
function pendingClaimStatus(
u64
): Option<PalletEthyEventClaimStatus>
pendingEventClaims
Queued event claims, can be challenged within challenge period
Namespace
api.query.ethBridge.pendingEventClaims
Type
function pendingEventClaims(
u64
): Option<PalletEthyEventClaim>
pendingEventProofs
Queued event proofs to be processed once bridge has been re-enabled
Namespace
api.query.ethBridge.pendingEventProofs
Type
function pendingEventProofs(
u64
): Option<PalletEthyEthySigningRequest>
processedMessageIds
Tracks processed message Ids (prevent replay)
Namespace
api.query.ethBridge.processedMessageIds
Type
function processedMessageIds(
): Vec<u64>
relayer
The permissioned relayer
Namespace
api.query.ethBridge.relayer
Type
function relayer(
): Option<SeedPrimitivesSignatureAccountId20>
relayerPaidBond
Maps from relayer account to their paid bond amount
Namespace
api.query.ethBridge.relayerPaidBond
Type
function relayerPaidBond(
SeedPrimitivesSignatureAccountId20
): u128
xrplDoorSigners
Door Signers set by sudo (white list)
Namespace
api.query.ethBridge.xrplDoorSigners
Type
function xrplDoorSigners(
SeedPrimitivesEthyCryptoAppCryptoPublic
): bool
xrplNotarySetProofId
The event proof Id generated by the previous validator set to notarize the current set. Useful for syncing the latest proof to Xrpl
Namespace
api.query.ethBridge.xrplNotarySetProofId
Type
function xrplNotarySetProofId(
): u64
Events
AuthoritySetChange
A notary (validator) set change is in motion (event_id, new_validator_set_id) A proof for the change will be generated with the given event_id
Namespace
api.events.ethBridge.AuthoritySetChange
Type
type AuthoritySetChange = {
param0: u64,
param1: u64
}
Challenged
An event has been challenged (claim_id, challenger)
Namespace
api.events.ethBridge.Challenged
Type
type Challenged = {
param0: u64,
param1: SeedPrimitivesSignatureAccountId20
}
EventSend
An event proof has been sent for signing by ethy-gadget
Namespace
api.events.ethBridge.EventSend
Type
type EventSend = {
event_proof_id: u64,
signing_request: PalletEthyEthySigningRequest
}
EventSubmit
An event has been submitted from Ethereum (event_claim_id, event_claim, process_at)
Namespace
api.events.ethBridge.EventSubmit
Type
type EventSubmit = {
param0: u64,
param1: PalletEthyEventClaim,
param2: u32
}
FinaliseScheduleFail
The schedule to unpause the bridge has failed (scheduled_block)
Namespace
api.events.ethBridge.FinaliseScheduleFail
Type
type FinaliseScheduleFail = {
param0: u32
}
Invalid
Verifying an event failed
Namespace
api.events.ethBridge.Invalid
Type
type Invalid = {
param0: u64
}
ProcessAtExtended
The event is still awaiting consensus. Process block pushed out (claim_id, process_at)
Namespace
api.events.ethBridge.ProcessAtExtended
Type
type ProcessAtExtended = {
param0: u64,
param1: u32
}
ProcessingFailed
Processing an event failed
Namespace
api.events.ethBridge.ProcessingFailed
Type
type ProcessingFailed = {
param0: u64,
param1: SeedPalletCommonEventRouterError
}
ProcessingOk
Processing an event succeeded
Namespace
api.events.ethBridge.ProcessingOk
Type
type ProcessingOk = {
param0: u64
}
ProofDelayed
Generating event proof delayed as bridge is paused
Namespace
api.events.ethBridge.ProofDelayed
Type
type ProofDelayed = {
param0: u64
}
RelayerBondDeposit
An account has deposited a relayer bond
Namespace
api.events.ethBridge.RelayerBondDeposit
Type
type RelayerBondDeposit = {
param0: SeedPrimitivesSignatureAccountId20,
param1: u128
}
RelayerBondWithdraw
An account has withdrawn a relayer bond
Namespace
api.events.ethBridge.RelayerBondWithdraw
Type
type RelayerBondWithdraw = {
param0: SeedPrimitivesSignatureAccountId20,
param1: u128
}
RelayerSet
A new relayer has been set
Namespace
api.events.ethBridge.RelayerSet
Type
type RelayerSet = {
param0: Option<SeedPrimitivesSignatureAccountId20>
}
SetContractAddress
The bridge contract address has been set
Namespace
api.events.ethBridge.SetContractAddress
Type
type SetContractAddress = {
param0: H160
}
Verified
Verifying an event succeeded
Namespace
api.events.ethBridge.Verified
Type
type Verified = {
param0: u64
}
XrplAuthoritySetChange
A notary (validator) set change for Xrpl is in motion (event_id, new_validator_set_id) A proof for the change will be generated with the given event_id
Namespace
api.events.ethBridge.XrplAuthoritySetChange
Type
type XrplAuthoritySetChange = {
param0: u64,
param1: u64
}
XrplAuthoritySetChangeRequestFailed
Xrpl authority set change request failed
Namespace
api.events.ethBridge.XrplAuthoritySetChangeRequestFailed
Type
type XrplAuthoritySetChangeRequestFailed = {
}
XrplDoorSignersSet
Xrpl Door signers are set
Namespace
api.events.ethBridge.XrplDoorSignersSet
Type
type XrplDoorSignersSet = {
}
Errors
BridgePaused
The bridge is paused pending validator set changes (once every era / 24 hours) It will reactive after ~10 minutes
Namespace
api.errors.ethBridge.BridgePaused
CantBondRelayer
The relayer already has a bonded amount
Namespace
api.errors.ethBridge.CantBondRelayer
CantUnbondRelayer
The relayer is active and cant unbond the specified amount
Namespace
api.errors.ethBridge.CantUnbondRelayer
ClaimAlreadyChallenged
There is already a challenge for this claim
Namespace
api.errors.ethBridge.ClaimAlreadyChallenged
EventReplayPending
Event was already submitted and is pending
Namespace
api.errors.ethBridge.EventReplayPending
EventReplayProcessed
Event was already submitted and is complete
Namespace
api.errors.ethBridge.EventReplayProcessed
HttpFetch
Namespace
api.errors.ethBridge.HttpFetch
Internal
Some internal operation failed
Namespace
api.errors.ethBridge.Internal
InvalidClaim
Claim was invalid e.g. not properly ABI encoded
Namespace
api.errors.ethBridge.InvalidClaim
InvalidNotarization
A notarization was invalid
Namespace
api.errors.ethBridge.InvalidNotarization
MaxNewSignersExceeded
Someone tried to set a greater amount of validators than allowed
Namespace
api.errors.ethBridge.MaxNewSignersExceeded
NoBondPaid
The relayer hasn't paid the relayer bond so can't be set as the active relayer
Namespace
api.errors.ethBridge.NoBondPaid
NoClaim
There is no event claim associated with the supplied claim_id
Namespace
api.errors.ethBridge.NoClaim
NoLocalSigningAccount
Namespace
api.errors.ethBridge.NoLocalSigningAccount
NoPermission
Caller does not have permission for that action
Namespace
api.errors.ethBridge.NoPermission
OcwConfig
offchain worker not configured properly
Namespace
api.errors.ethBridge.OcwConfig
OffchainUnsignedTxSignedPayload
Namespace
api.errors.ethBridge.OffchainUnsignedTxSignedPayload
undefined