/api/v1/sign-psbtSign a transaction proposal
Records the caller's approval on a transaction proposal, and finalises and submits the transaction automatically once the vault's threshold is met.
An approval is a signature. You sign the proposal's PSBT with your own key, outside the platform, and send the signed result here. Private keys never leave your device, so the platform only ever receives the signature you produced. Approvals accumulate on the proposal until the vault's threshold is met, which is the workflow The signing workflow describes for operators.
Pass the id of the registered key you signed with in key_id, and the whole
proposal in signed_psbt_base64 once your signature has been added. The response
tells you whether the signature was recorded (accepted) and whether your
approval was the one that completed the proposal (finalized). Read the
proposal's recipients, threshold, and outstanding approvals with
GET /api/v1/psbt before you sign.
Once the required number of approvals is reached, the proposal is finalised and submitted to the Bitcoin network automatically. There is no separate confirmation step and no window in which to hold it back. Once broadcast, the transaction cannot be reversed or cancelled. Check the recipients and the amount before you send the approval that meets the threshold.
workspace_idnumberrequiredpsbt_idstringrequiredkey_idstringrequiredsigned_psbt_base64stringrequired#What happens next
While finalized is false the proposal keeps waiting, and the remaining
approvers sign the same PSBT through this endpoint. The approval that meets the
threshold comes back with finalized set to true, and the transaction is
submitted without any further call.
GET /api/v1/psbt reports the proposal's status throughout and
carries the Bitcoin transaction id once it has been broadcast.