Try Cobo WaaS Skill in your AI coding assistant (Claude Code, Cursor, etc.). Describe your needs in natural language to auto-generate production-ready SDK code and debug faster 🚀
Webhook event types
Here, transaction refers to all types of transactions, including deposits, withdrawals, contract calls, and message signing.
Payment events
For payment webhook events, please refer to Order Status and Events.
Transaction events (deposits/withdrawals/contract calls/message signing)
The following events apply to all types of transactions, including deposits, withdrawals, contract calls, and message signing.
| Event Type | Event Data Type | When It Occurs |
|---|
wallets.transaction.created | Transaction | A transaction has been detected on the blockchain, generating a transaction record. This event does not indicate that the transaction was successful. |
wallets.transaction.updated | Transaction | There are changes to a transaction’s status or confirmation numbers.The wallets.transaction.updated event covers the entire lifecycle of a transaction, including creation, completion, and failure. If you want to track every status change, you need only subscribe to this event. |
wallets.transaction.succeeded | Transaction | A transaction has been successfully completed. |
wallets.transaction.failed | Transaction | A transaction failed. |
token.suspended.deposit | SuspendedToken | A token deposit has been suspended. |
token.suspended.withdraw | SuspendedToken | A token withdrawal has been suspended. |
Fee Station events
| Event Type | Event Data Type | When It Occurs |
|---|
fee_station.transaction.created | Transaction | A Fee Station transaction has been created. |
fee_station.transaction.updated | Transaction | There are changes to the status of a Fee Station transaction. |
fee_station.transaction.failed | Transaction | A Fee Station transaction failed. |
fee_station.transaction.succeeded | Transaction | A Fee Station transaction has been successfully completed. |
MPC TSS request events
| Event Type | Event Data Type | When It Occurs |
|---|
wallets.mpc.tss_request.created | TSSRequest | A TSS request is created. |
wallets.mpc.tss_request.updated | TSSRequest | There are changes to the status of a TSS request. |
wallets.mpc.tss_request.succeeded | TSSRequest | The requested action has been successfully completed. |
wallets.mpc.tss_request.failed | TSSRequest | The requested action failed. |
Wallet and address management events
| Event Type | Event Data Type | When It Occurs |
|---|
wallets.addresses.created | Addresses | A new wallet address has been created. |
wallets.created | WalletInfo | A new wallet has been created. |
mpc_vaults.created | MPCVault | A new MPC vault has been created. |
Activating a Solana token sub-address (Associated Token Account) does not emit a
wallets.addresses.created event. The rent transfer that funds the activation does not emit any
wallets.transaction.* event and does not produce a deposit or transaction record. As a result, Solana token account activation and its rent are not visible through webhooks. For details, see
Solana token account rent.
Token and chain management events
| Event Type | Event Data Type | When It Occurs |
|---|
wallet.token.enabled | Tokens | One or more tokens have been enabled. |
wallet.token.disabled | Tokens | One or more tokens have been disabled. |
wallet.chain.enabled | Chains | One or more chains have been enabled. |
wallet.chain.disabled | Chains | One or more chains have been disabled. |
wallets.token_listing.failed | TokenListing | A token listing request failed. |
wallets.token_listing.succeeded | TokenListing | A token listing request has been successfully processed and the token is now available. |
Balance update events
| Event Type | Event Data Type | When It Occurs |
|---|
wallet.mpc.balance.updated | BalanceUpdateInfo | The balance of an MPC Wallet has been updated. |
wallet.web3.balance.updated | BalanceUpdateInfo | The balance of a Custodial Wallet (Web3 Wallet) has been updated. |
Compliance events
| Event Type | Event Data Type | When It Occurs |
|---|
compliance.disposition.status.updated | ComplianceDisposition | There are changes to the status of a compliance disposition. |
compliance.kyt.screenings.status.updated | ComplianceKytScreenings | There are changes to the status of a KYT screening case. |
ComplianceKytScreenings event data
The compliance.kyt.screenings.status.updated event carries a ComplianceKytScreenings payload (KytScreeningsEventData). This payload reports two independent status fields, review_status and funds_status. Track them separately: review_status reflects the screening and review progress of the case, and funds_status reflects the state of the associated funds.
review_status (ReviewStatusType)
| Value | Meaning |
|---|
PendingScreening | The screening case has been created and is waiting for AML/KYT screening to run. |
Screened | AML/KYT screening has completed for the case. |
PendingDecision | Screening has completed and the case is awaiting a decision. |
PendingReview | The case requires manual review before a decision is reached. |
Approved | The case has been approved. |
Rejected | The case has been rejected. |
Unsupported | The case involves a chain or token that screening does not support. |
Bypassed | Screening was skipped for the case. |
funds_status (FundsStatusType)
| Value | Meaning |
|---|
Frozen | The associated funds have been frozen. |
Refunding | A refund of the funds is in progress. |
Refunded | The funds have been refunded. |
RefundFailed | The refund attempt failed. |
Unfreezing | The funds are being unfrozen. |
Unfrozen | The funds have been unfrozen. |
UnfreezingFailed | The attempt to unfreeze the funds failed. |
Isolating | The funds are being isolated. |
Isolated | The funds have been isolated. |
IsolationFailed | The attempt to isolate the funds failed. |
CoboDisposition | The funds are being handled through a Cobo disposition. |
Normal | The funds are in a normal state with no compliance action applied. |
The case decision that drives these status changes is represented by KytScreeningsDecisionsType, which has the values Approval, ApprovalWithAlert, Rejection, and ManualReview.
Data structure of webhook events
For a complete introduction of the webhook event data and its data structure, refer to the data property in the response of the Retrieve event information operation or the data.data property in the response of the List all webhook event operation.
Switch between the event data types to view the data structure of each event data type.
Additionally, you can view all webhook events in your organization on Cobo Portal > Developer> Webhook Events.