Amazon Managed Blockchain · JSON Structure

Amazon Managed Blockchain Approval Threshold Policy Structure

A policy type that defines the voting rules for the network. The rules decide if a proposal is approved. Approval may be based on criteria such as the percentage of YES votes and the duration of the proposal. The policy applies to all proposals and is specified when the network is created.

Applies only to Hyperledger Fabric.

Type: object Properties: 3
BlockchainDistributed LedgerHyperledger FabricEthereum

ApprovalThresholdPolicy is a JSON Structure definition published by Amazon Managed Blockchain, describing 3 properties. It conforms to the https://json-structure.org/meta/core/v0/# meta-schema.

Properties

ThresholdPercentage ProposalDurationInHours ThresholdComparator

Meta-schema: https://json-structure.org/meta/core/v0/#

JSON Structure

Raw ↑
{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/amazon-managed-blockchain/refs/heads/main/json-structure/amazon-managed-blockchain-approval-threshold-policy-structure.json",
  "name": "ApprovalThresholdPolicy",
  "description": "<p>A policy type that defines the voting rules for the network. The rules decide if a proposal is approved. Approval may be based on criteria such as the percentage of <code>YES</code> votes and the duration of the proposal. The policy applies to all proposals and is specified when the network is created.</p> <p>Applies only to Hyperledger Fabric.</p>",
  "type": "object",
  "properties": {
    "ThresholdPercentage": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ThresholdPercentageInt"
        },
        {
          "description": "The percentage of votes among all members that must be <code>YES</code> for a proposal to be approved. For example, a <code>ThresholdPercentage</code> value of <code>50</code> indicates 50%. The <code>ThresholdComparator</code> determines the precise comparison. If a <code>ThresholdPercentage</code> value of <code>50</code> is specified on a network with 10 members, along with a <code>ThresholdComparator</code> value of <code>GREATER_THAN</code>, this indicates that 6 <code>YES</code> votes are required for the proposal to be approved."
        }
      ]
    },
    "ProposalDurationInHours": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ProposalDurationInt"
        },
        {
          "description": "The duration from the time that a proposal is created until it expires. If members cast neither the required number of <code>YES</code> votes to approve the proposal nor the number of <code>NO</code> votes required to reject it before the duration expires, the proposal is <code>EXPIRED</code> and <code>ProposalActions</code> aren't carried out."
        }
      ]
    },
    "ThresholdComparator": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ThresholdComparator"
        },
        {
          "description": "Determines whether the vote percentage must be greater than the <code>ThresholdPercentage</code> or must be greater than or equal to the <code>ThreholdPercentage</code> to be approved."
        }
      ]
    }
  }
}