w3-io/W3 BitGo Action

BitGo institutional custody operations for W3 workflows — custodial wallet management, sends (TSS + multi-sig), policy approval workflows, transfers, and webhooks.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
commandOperation to perform. Session: unlock. Wallets: list-wallets, get-wallet, create-wallet, delete-wallet, share-wallet, freeze-wallet, get-balance, list-addresses, create-address, maximum-spendable, fee-estimate. Sends and tx queries: send-transaction, get-transaction, list-transactions, get-transfer, list-transfers. TSS tx requests: get-tx-request, list-tx-requests. Policy and approval: list-policies, set-policy-rule, remove-policy-rule, list-pending-approvals, get-pending-approval, approve-pending, reject-pending, wait-for-approval. Webhooks: add-webhook, create-webhook, list-webhooks, remove-webhook, delete-webhook. yes
access-tokenBitGo access token (sent as Bearer auth)yes
enterprise-idBitGo enterprise ID (required for create/list operations scoped to an enterprise)no
api-urlBitGo API base URL. Default is production; override to https://app.bitgo-test.com/api/v2 for the test environment.nohttps://app.bitgo.com/api/v2
otpOne-time password for /user/unlock and approve-pending. Required by BitGo for sensitive operations. Test environment accepts the magic OTP "000000"; production needs a real TOTP from the user authenticator.no
durationUnlock session duration in seconds (default 600).no600
coinCoin ticker (btc, eth, sol, hteth, etc.). BitGo supports the full coin catalog; this value is passed through to the API.no
wallet-idWallet IDno
addressDestination address for send-transaction (single-recipient shortcut)no
amountAmount in base units (satoshis for BTC, wei for ETH, lamports for SOL, etc.) for single-recipient sendsno
recipientsJSON array of recipients for batch sends: [{"address": "0x...", "amount": "1000"}, {"address": "0x...", "amount": "2000"}]. When provided, takes precedence over address/amount. Works on both TSS and multi-sig wallets, and on both native and token coins (e.g. coin: hteth:tusdc for tokens).no
commentOptional comment to attach to a send. The action embeds the correlation-id automatically.no
sequence-idOptional client sequence ID for idempotent sends.no
tx-idTransaction ID for get-transactionno
transfer-idTransfer ID for get-transferno
tx-request-idTSS transaction request ID for get-tx-requestno
fee-rateFee rate hint for maximum-spendableno
labelOptional label for create-addressno
chainOptional address chain index for create-address (UTXO coins)no
policy-rule-idPolicy rule ID for remove-policy-ruleno
pending-approval-idPending approval ID for get-pending-approval / approve-pending / reject-pending / wait-for-approvalno
timeoutPolling timeout in seconds for wait-for-approval (default 300, max 3600)no300
register-webhook-on-pendingIf set to "true" and send-transaction returns a pending approval, automatically register a webhook against the supplied webhook-url so the resolution can fire a follow-up workflow.nofalse
webhook-urlWebhook callback URL for add-webhook / register-webhook-on-pendingno
webhook-idWebhook ID for remove-webhookno
webhook-typeWebhook event type (transfer, pendingApproval, address_confirmation). Default: pendingApprovalnopendingApproval
share-with-userBitGo user ID to share a wallet with (share-wallet)no
share-permissionsComma-separated permissions for share-wallet (view, spend, admin)no
limitResult limit for list operationsno
prev-idPagination cursor for list operationsno
bodyJSON body for commands that need rich input (policy rules, create-wallet config). Parsed and forwarded.no
correlation-idOptional correlation ID embedded in the BitGo comment field so a future webhook can match the approval back to the workflow that initiated it. If omitted, the action generates one.no
namedescription
resultJSON result of the operation. Schema documented per command in docs/guide.md.