Deallocate Assets

Note: This feature is currently available only in the test environment. BitGo will release code-breaking changes to this feature leading up to the production release. If you integrate this feature now, be aware that you will need to update your integration accordingly.

Overview

Clients can initiate deallocations of their assets from their account on your platform to their BitGo Network account. Deallocating assets unlocks them at BitGo, making them available for clients to do any other actions, such as rebalancing or withdrawing. Deallocations occur synchronously. You can view deallocated balances from the BitGo web UI or programmatically.

Prerequisites

Steps

1. Reserve Assets

BitGo sends you the following request for each client-initiated deallocation:

  • API
1 2 3 4 5 6 7 8 9 10 11 12 POST /bitgo/v1/deallocations Request Body { "deallocationId": UUID // Amount in base units. For example, satoshis. "amount": { currency: string, quantity: string } "clientId": UUID "connectionId": UUID "partnersConnectionId": NonEmptyString "partnerClientId": string }

Step Result

You put the requested amount into a RESERVED state that you can then credit (confirm or clear) once the assets are released in the next step.

1 2 3 4 5 6 7 8 9 10 11 { "deallocationId": UUID // Amount in base units. For example, satoshis. "amount": { currency: string, quantity: number } "clientId": UUID "connectionId": UUID "partnersConnectionId": string "partnerClientId": string "partnerDeallocationId": string "rejectionReason?": string }

2. Clear Assets

BitGo sends you the following PUT call, notifying you that it's now safe to credit the client's account with the reserved assets. This enables clients to withdraw their deallocated assets from your platform.

  • API
1 PUT /bitgo/v1/deallocation/{deallocationId}/clear

Step Result

Clients can now trade their allocated assets on your platform.

1 2 3 4 5 6 7 8 9 10 { "deallocationId": UUID "partnerDeallocationId": string // Amount in base units. For example, satoshis. "amount": { currency: string, quantity: number } "clientId": UUID "connectionId": UUID "partnersConnectionId": string "partnerClientId": string }

Next Steps

View Network Details