asyncapi: "2.6.0" info: title: Blockchain Watcher API version: "0.0.1" description: | Platform service that allows to extract, transform and load data from different blockchains platforms. servers: staging-testnet: url: notification-chain-events-dev-testnet.fifo protocol: sns staging-mainnet: url: notification-chain-events-dev-mainnet.fifo protocol: sns prod-testnet: url: notification-chain-events-prod-testnet.fifo protocol: sns prod-mainnet: url: notification-chain-events-prod-mainnet.fifo protocol: sns defaultContentType: application/json channels: LogMessagePublished: description: Wormhole core contract emitted event subscribe: message: $ref: "#/components/messages/logMessagePublished" EvmRedeemedTransactionFound: description: Token bridge emitted event subscribe: message: $ref: "#/components/messages/evmRedeemedTransactionFound" TransferRedeemed: description: Token bridge transfer redeem event subscribe: message: $ref: "#/components/messages/transferRedeemed" SolanaTransferRedeemed: description: Token bridge emitted event subscribe: message: $ref: "#/components/messages/solanaTransferRedeemed" components: messages: logMessagePublished: name: LogMessagePublished title: LogMessagePublished contentType: application/json payload: $ref: "#/components/schemas/logMessagePublished" evmRedeemedTransactionFound: name: EvmRedeemedTransactionFound title: EvmRedeemedTransactionFound contentType: application/json payload: $ref: "#/components/schemas/evmRedeemedTransactionFound" examples: - name: EvmRedeemedTransactionFound from Ethereum payload: name: "transfer-redeemed" address: "wormDTUJ6AWPNvk59vGQbDvGJmqbDTdgWgAqcLBCgUb" chainId: 2 txHash: "3FySmshUgVCM2N158oNYbeTfZt2typEU32c9ZxdAXiXURFHuTmeJHhc7cSUtqHdwAsbVWWvEsEddWNAKzkjVPSg2" blockHeight: 234015120 blockTime: 1701724272 attributes: blockHash: "0x1359819238ea89f49c20e42eb5603bf0541589d838d971984b60c7cdb391d9c2" blockNumber: 0x11ec2bc from: 0xfb070adcd21361a3946a0584dc84a7b89faa68e3 gas: 0x14485 gasPrice: xfc518561e input: "0x9981509f000000000000" maxFeePerGas: 0x1610f75b9a maxPriorityFeePerGas: 0x5f5e100 methodsByAddress: MethodCompleteTransfer name: transfer-redeemed nonce: 0x1 r: 0xf5794b0970386d73b693b17f147fae0427db278e951e45465ac2c9835537e5a9 s: 0x6dccc8cfee216bc43a9d66525fa94905da234ad32d6cc3220845bef78f25dd42 status: completed timestamp: 1702663079 to: 0x3ee18b2214aff97000d974cf647e7c347e8fa585 transactionIndex: 0x6f type: 0x2 v: 0x1 value: 0x5b09cd3e5e90000 transferRedeemed: name: TransferRedeemed title: TransferRedeemed contentType: application/json payload: $ref: "#/components/schemas/transferRedeemed" examples: - name: Transfer redeemed from Ethereum on Sui payload: name: "transfer-redeemed" address: "0x26efee2b51c911237888e5dc6702868abca3c7ac12c53f76ef8eba0697695e3d" chainId: 21 txHash: "ByTJkz9tV1cxkPYBk6XcfWGThWhsyeq3QCzFcTSG4Fwk" blockHeight: 1706701700 blockTime: "25005997" attributes: from: "0xaf5a8efe63a4e53622efcbb981293b3ef01b7ce73ae3fbd72779e41f18d2a68a" emitterChain: 2 emitterAddress: "0000000000000000000000003ee18b2214aff97000d974cf647e7c347e8fa585" sequence: 206647 status: "completed" solanaTransferRedeemed: name: SolanaTransferRedeemed title: SolanaTransferRedeemed contentType: application/json payload: $ref: "#/components/schemas/solanaTransferRedeemed" examples: - name: SolanaTransferRedeemed from Ethereum payload: name: "transfer-redeemed" address: "wormDTUJ6AWPNvk59vGQbDvGJmqbDTdgWgAqcLBCgUb" chainId: 1 txHash: "3FySmshUgVCM2N158oNYbeTfZt2typEU32c9ZxdAXiXURFHuTmeJHhc7cSUtqHdwAsbVWWvEsEddWNAKzkjVPSg2" blockHeight: 234015120 blockTime: 1701724272 attributes: methodsByAddress: "0x1359819238ea89f49c20e42eb5603bf0541589d838d971984b60c7cdb391d9c2" status: "completed" emitterChain: 4 emitterAddress: "0000000000000000000000009dcf9d205c9de35334d646bee44b2d2859712a09" sequence: 5185 protocol: "Token Bridge" schemas: base: type: object properties: trackId: type: string source: type: string event: type: string version: type: number timestamp: $ref: "#/components/schemas/sentAt" chainEventBase: type: object properties: chainId: type: number emitter: type: string txHash: type: string blockHeight: type: number blockTime: $ref: "#/components/schemas/sentAt" logMessagePublished: allOf: - $ref: "#/components/schemas/base" type: object properties: data: allOf: - $ref: "#/components/schemas/chainEventBase" type: object properties: attributes: type: object properties: sender: type: string sequence: type: number nonce: type: number payload: type: string consistencyLevel: type: number transferRedeemed: allOf: - $ref: "#/components/schemas/base" type: object properties: data: type: object allOf: - $ref: "#/components/schemas/chainEventBase" properties: attributes: type: object properties: from: type: string emitterChain: type: number emitterAddress: type: string sequence: type: number status: type: string evmRedeemedTransactionFound: allOf: - $ref: "#/components/schemas/base" type: object properties: data: type: object allOf: - $ref: "#/components/schemas/chainEventBase" properties: attributes: type: object properties: name: type: string from: type: string to: type: string status: type: string blockNumber: type: number input: type: string methodsByAddress: type: string timestamp: type: number blockHash: type: string gas: type: string gasPrice: type: string maxFeePerGas: type: string maxPriorityFeePerGas: type: string nonce: type: string r: type: string s: type: string transactionIndex: type: string type: type: string v: type: string value: type: string solanaTransferRedeemed: allOf: - $ref: "#/components/schemas/base" type: object properties: data: type: object allOf: - $ref: "#/components/schemas/chainEventBase" properties: attributes: type: object properties: methodsByAddress: type: string status: type: string emitterChain: type: number emitterAddress: type: string sequence: type: number protocol: type: string sentAt: type: string format: date-time description: Date and time when the message was sent.