On this page

Events

Subscribe to the configured Omnisea router address on each chain. Protocol library events are emitted in its context. Standard OFT/ERC-20 facade events are separate and are not another protocol transfer.

Router eventMeaning
AssetRegisteredLocal facade registered; includes the complete packed descriptor
AssetCreatedOrigin creation by a creator
ChainEnabledOrigin approved a destination
SyncSent / SyncReceivedDescriptor, enabled chains and optional compliance synchronization
OwnerMessageSentRemote fee update or fee withdrawal requested
TransferSent / TransferReceivedSource debit / destination credit, correlated by GUID
MessageDeliveredRouter execution completed, including non-transfer messages
MessageFailedRouter recorded a failed message and error selector
MessageRetriedA recorded failure was successfully retried
MessageRestoredRestore requested; links original GUID to a new restore GUID
FeesUpdated / ComplianceUpdatedApplied local asset configuration
OwnerActionRejected / StaleConfigIgnoredDelivered action not applied
OwnerFeesClaimedCreator fee payout
PeerSetPermanent peer added, with its VM type
MinGasSet / ReceiveValueSet / TreasurySetProtocol administration
ProtocolFeesClaimed / ProtocolNativeFeesClaimedTreasury payout

Use the router ABI for exact indexed fields and types. Do not reconstruct event signatures by hand.

Indexing rules

Deduplicate by chain, contract, transaction hash and log index. Order updates by block and log index, not webhook arrival time. Source and destination events can arrive in either order. Keep original logs and timestamps so projections can be reconciled.

Asset IDs are creator-specific. Store token amounts as decimal strings or arbitrary-precision integers. A delivered owner message does not necessarily mean its requested change applied; also inspect rejection or stale-update events.

Exact router event signatures

Generated from the release ABI.

AssetCreated(bytes32,address,address,address,bool,uint32[])
AssetRegistered(bytes32,uint32,bytes32,bytes32,address,bytes)
ChainEnabled(bytes32,uint32)
ComplianceUpdated(bytes32,address)
ConfigurationResult(bytes32,bytes32,uint8,uint8)
FeesUpdated(bytes32,uint128,uint16)
MessageDelivered(bytes32,uint32,uint8)
MessageFailed(bytes32,uint32,bytes4)
MessageRestored(bytes32,bytes32,uint32)
MessageRetried(bytes32)
MinGasSet(uint32,uint8,uint128)
OwnerActionRejected(bytes32,uint8)
OwnerFeesClaimed(bytes32,address,uint256,uint256)
OwnerMessageSent(bytes32,uint32,bytes32,uint8)
OwnershipTransferStarted(address,address)
OwnershipTransferred(address,address)
PeerSet(uint32,bytes32,uint8)
ProtocolFeesClaimed(bytes32,address,uint256)
ProtocolNativeFeesClaimed(address,uint256)
ReceiveValueSet(uint32,uint128)
RouteConfigured(uint32,bytes32)
RouteFrozen(uint32,bytes32)
RouteThresholdSet(uint32,uint8,bytes32)
StaleConfigIgnored(bytes32,uint8,uint64)
SyncReceived(bytes32,uint32,uint32[])
SyncSent(bytes32,uint32,bytes32,bytes32)
TransferReceived(bytes32,bytes32,uint32,bytes32,address,uint256,bool)
TransferSent(bytes32,bytes32,uint32,address,bytes32,uint256,uint256,uint256,uint256)
TreasurySet(address)