{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "title": "Microblock",
  "description": "A microblock",
  "type": "object",
  "required": ["canonical", "microblock_canonical", "microblock_hash", "microblock_sequence", "microblock_parent_hash", "parent_index_block_hash", "block_height", "parent_block_height", "parent_block_hash", "block_hash", "txs", "parent_burn_block_time", "parent_burn_block_time_iso", "parent_burn_block_hash", "parent_burn_block_height"],
  "additionalProperties": false,
  "properties": {
    "canonical": {
      "type": "boolean",
      "description": "Set to `true` if the microblock corresponds to the canonical chain tip."
    },
    "microblock_canonical": {
      "type": "boolean",
      "description": "Set to `true` if the microblock was not orphaned in a following anchor block. Defaults to `true` if the following anchor block has not yet been created."
    },
    "microblock_hash": {
      "type": "string",
      "description": "The SHA512/256 hash of this microblock."
    },
    "microblock_sequence": {
      "type": "integer",
      "description": "A hint to describe how to order a set of microblocks. Starts at 0."
    },
    "microblock_parent_hash": {
      "type": "string",
      "description": "The SHA512/256 hash of the previous signed microblock in this stream."
    },
    "block_height": {
      "type": "integer",
      "description": "The anchor block height that confirmed this microblock."
    },
    "parent_block_height": {
      "type": "integer",
      "description": "The height of the anchor block that preceded this microblock."
    },
    "parent_block_hash": {
      "type": "string",
      "description": "The hash of the anchor block that preceded this microblock."
    },
    "parent_burn_block_hash": {
      "type": "string",
      "description": "The hash of the Bitcoin block that preceded this microblock."
    },
    "parent_burn_block_time": {
      "type": "integer",
      "description": "The block timestamp of the Bitcoin block that preceded this microblock."
    },
    "parent_burn_block_time_iso": {
      "type": "string",
      "description": "The ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) formatted block time of the bitcoin block that preceded this microblock."
    },
    "parent_burn_block_height": {
      "type": "integer",
      "description": "The height of the Bitcoin block that preceded this microblock."
    },
    "block_hash": {
      "type": "string",
      "description": "The hash of the anchor block that confirmed this microblock. This wil be empty for unanchored microblocks",
      "nullable": true
    },
    "txs": {
      "type": "array",
      "description": "List of transactions included in the microblock",
      "items": {
        "type": "string",
        "description": "Transaction ID"
      }
    }
  }
}
