Stake Assets - Go Account

Build, sign, and send staking requests for Go Account wallets. See the Guide.

  1. Using the JavaScript SDK, you can build, sign, and send the staking request to BitGo all in one call.

    If your staking request doesn't require approval, BitGo applies the final signature using the BitGo key and broadcasts the transaction to the blockchain. If you Create Policy Rules to require approvals, the staking request remains in a PENDING_APPROVAL status until an admin approves it.

    Prerequisites:

  2. If you have a policy that requires approval, you must approve the staking request before BitGo adds the final signature with the BitGo key. You cannot approve your own transactions — another admin must approve them.

    API Reference

// 1. Build, Sign, and Send Staking Request
// Use the JavaScript SDK for this step (see JavaScript tab)
// 2. Approve Request (Optional)
export APPROVAL_ID="<APPROVAL_ID>"
export ACCESS_TOKEN="<YOUR_ACCESS_TOKEN>"
export OTP="<YOUR_OTP>"

curl -X PUT \
  https://app.bitgo-test.com/api/v2/pendingApprovals/$APPROVAL_ID \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer $ACCESS_TOKEN" \
  -d '{
    "state": "approved",
    "otp": "'"$OTP"'"
  }'
Response
// 1. Build, Sign, and Send Staking Request Response
{
  "id": "5bdeed2f-a173-4ca1-936b-a36399af8152",
  "type": "STAKE",
  "coin": "tsol",
  "status": "NEW",
  "goSpecificStatus": "NEW",
  "statusModifiedDate": "2025-07-25T20:30:57.046379144Z",
  "createdDate": "2025-07-25T20:30:57.046365Z",
  "amount": 1000000,
  "frontTransferSendRequest": {
    "halfSigned": {
      "payload": "{\"coin\":\"ofctsol\",\"recipients\":[{\"address\":\"BpkMFStkryPDkVYqTbEGLqWD3FLoPLCwTV4sdN1XKBPF\",\"amount\":\"1000000\"}]...}",
      "signature": "1f8e22206d9c95cff29154679f9d0b03bbb33e38b1f801090d0fb4f2e9464b969c263497689af974d13915dc72e00ffb3dfdac05c312ba9711e77014ffe2431c75"
    }
  }
}

// 2. Approve Request Response
{
  "id": "e055adbc-66a3-4ccd-9a9d-726a05bca0cf",
  "coin": "hteth",
  "wallet": "2032e75g451052000636831abd797bd3",
  "enterprise": "1032e75c451052000436831deb797af1",
  "state": "approved",
  "approvalsRequired": 1
}