Method: projects.locations.instances.keyRings.keys.transactions.recordSignerDecision

Records a signer's decision to authorize or deny a Transaction.

Only allowed while the Transaction is PENDING_AUTHORIZATION. Once enough signers authorize it, the Transaction is signed. Once enough signers deny it that the thresholds can no longer be met, the Transaction moves to REJECTED. Each User can record at most one decision per Transaction.

The deciding User is the User whose principal matches the caller's authenticated identity; that User must hold a key share of the Transaction's Key.

HTTP request

POST https://mpc.googleapis.com/v1beta/{name=projects/*/locations/*/instances/*/keyRings/*/keys/*/transactions/*}:recordSignerDecision

The URL uses gRPC Transcoding syntax.

Path parameters

Parameters
name

string

Required. The name of the Transaction to record the decision for. Format: projects/{project}/locations/{location}/instances/{instance}/keyRings/{keyRing}/keys/{key}/transactions/{transaction} It takes the form projects/{project}/locations/{location}/instances/{instance}/keyRings/{keyring}/keys/{key}/transactions/{transaction}.

Request body

The request body contains data with the following structure:

JSON representation
{
  "decision": enum (Decision),
  "authorizationInfo": {
    object (AuthorizationInfo)
  }
}
Fields
decision

enum (Decision)

Required. The caller's decision.

authorizationInfo

object (AuthorizationInfo)

Required. The caller's authorization over a TransactionSigningPayload, signed with the authorization key of the User whose principal matches the caller, with:

  • transaction: set to name
  • decision: set to decision
  • signing_input: set to the stored Transaction's signing_input

Response body

If successful, the response body contains an instance of Transaction.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/cloud-platform

For more information, see the Authentication Overview.