Express

POST

Share wallet with an existing BitGo user

Path Params

  • coin string required
    A cryptocurrency or token ticker symbol.
  • walletId string required
    The wallet ID.

    matches ^[0-9a-f]{32}$

Body Params

object

  • email string required
    Email address of the user being invited
  • permissions string enum required

    Comma-separated list of privileges for a wallet. Includes:

      - `admin` - Can manage wallet policies and users and approve or reject pending approvals.
      - `freeze` - Can freeze a wallet, disabling all withdrawals.
      - `spend` - Can initiate withdrawals and generate new receive addresses.
      - `trade` - Can initiate trades from a Go Account (`trading` wallet type).
      - `view` - Can view balances and transactions.
    

    Permissions don't overlap. Required parameter if 'reshare' is false.

    adminspendtradeview
  • walletPassphrase string
    Wallet passphrase of the user sharing the wallet
  • message string
    User readable message to display to the share recipient
  • reshare boolean
    Flag for reinviting a user to the wallet. This is required if the invitee has already been invited to the wallet, but has changed their password and needs a new invite
  • skipKeychain boolean
    If true, skips using a shared key (for when the wallet is shared without spend permission).
  • disableEmail boolean
    Flag for disabling invite notification email

Responses

200
OK

Response Body

object

Wallet share object
  • id string
    Wallet share id
  • coin string
    Coin of the wallet
  • wallet string
    Wallet id
  • walletLabel string
  • fromUser string
    Id of the user sharing the wallet
  • toUser string
    Id of the user receiving the share
  • permissions string enum

    Comma-separated list of privileges for a wallet. Includes:

      - `admin` - Can manage wallet policies and users and approve or reject pending approvals.
      - `freeze` - Can freeze a wallet, disabling all withdrawals.
      - `spend` - Can initiate withdrawals and generate new receive addresses.
      - `trade` - Can initiate trades from a Go Account (`trading` wallet type).
      - `view` - Can view balances and transactions.
    

    Permissions don't overlap. Required parameter if 'reshare' is false.

    adminspendtradeview
  • message string
    Message for the user receiving the share
  • state string enum
    State of the share
    pendingapprovalactiveacceptedcanceledrejected
  • enterprise string
    If the wallet belongs to an enterprise, the id of that enterprise
  • pendingApprovalId string
    If the share generated a pending approval, the id of that pending approval
  • keychain object
    Key passed to the receiving user, included if the wallet was shared with spend permission
    keychain object
    • pub string
      One of wallet pub (onchain) or commonKeychain (MPC)
    • encryptedPrv string
      Private key of the user sharing the wallet encrypted under their wallet passphrase
    • fromPubKey string
      Derived public key of the user sharing the wallet
    • toPubKey string
      Derived public key of the user receiving the share
    • path string
      BIP32 HD path of the derived public keys (fromPubKey and toPubKey)