/api/v2/{coin}/admin/wallet/{walletId}/webhooksAdd a webhook to a wallet that sends an HTTP callback from BitGo to a specified URL when specific conditions occur. There is no limit to the amount of internal webhooks a wallet can have.
Wallet-webhook types:
Address confirmation - An address initializes on chain (ETH and XRP only).
Pending approval - A wallet-level policy-triggering event occurs (such as a withdrawal, user change, policy change, pending approval state updates, and so forth).
Transaction request - A transaction request state changes.
Transfer - Any transfer occurs.
Note: Unconfirmed webhook notifications don't trigger for RBF transactions, or if a transaction confirms on chain immediately after it's sent. BitGo doesn't send 'unconfirmed' notifications in these cases.
coinstringRequiredbtc>= 1 characterswalletIdstringRequired59cd72485007a239fb00282ed480da1f^[0-9a-f]{32}$>= 1 characterstype string required txRequest txRequestTransaction transfer transaction transactionRemoved transactionExpire pendingapproval block admin address_confirmation lowFee circuitBreaker lowFeeAddressBalance transaction_finality_on_l1 fundsDeposited stuckTx unspentExpiry twoStepTransferurl string <uri>required >= 1 charactershttps://your.server.com/webhooklabel string numConfirmations number 6allToken boolean falselistenToFailureStates boolean txRequestStates array[string] pendingApproval canceled rejected initialized pendingDelivery delivered pendingUserSignature pendingUserCommitment pendingUserRShare pendingUserGShare readyToSend signed failedtxRequestTransactionStates array[string] initialized pendingSignature eddsaPendingCommitment eddsaPendingRShare eddsaPendingGShare ecdsaMPCv2Round1 ecdsaMPCv2Round2 ecdsaMPCv2Round3 readyToCombineShares signed held delivered invalidSignature rejectedcustomHttpHeaders dictionary<string, string> string id string required 59cd72485007a239fb00282ed480da1f^[0-9a-f]{32}$created string <date-time>required 2021-01-01T00:00:00.000Zcoin string required btcurl string <uri>required https://your.server.com/webhookversion number required 2scope string required wallet enterprise organizationstate string required active suspendedactivesuccessiveFailedAttempts number required 0listenToFailureStates boolean required label string walletId string enterpriseId string organizationId string 59cd72485007a239fb00282ed480da1f^[0-9a-f]{32}$userId string type string txRequest txRequestTransaction transfer transaction transactionRemoved transactionExpire pendingapproval block admin address_confirmation lowFee circuitBreaker lowFeeAddressBalance wallet_confirmation bankAccount userKycState enterpriseKycState identityStatus accessToken accountCreated contractSigned fundsDeposited kycResult policyBalanceChange reversal transaction_finality_on_l1 stuckTx tradeOrder unspentExpiry twoStepTransfernumConfirmations number 6lastAttempt string <date-time>2021-01-01T00:00:00.000ZfailingSince string <date-time>2021-01-01T00:00:00.000ZallToken boolean txRequestStates array[string] pendingApproval canceled rejected initialized pendingDelivery delivered pendingUserSignature pendingUserCommitment pendingUserRShare pendingUserGShare readyToSend signed failedtxRequestTransactionStates array[string] initialized pendingSignature eddsaPendingCommitment eddsaPendingRShare eddsaPendingGShare ecdsaMPCv2Round1 ecdsaMPCv2Round2 ecdsaMPCv2Round3 readyToCombineShares signed held delivered invalidSignature rejectedname string context object required error string required requestId string required name string context object required error string required requestId string required name string context object required error string required requestId string required name string context object required error string required requestId string required name string context object required error string required requestId string required