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