{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/avalanche/main/json-schema/PChainUtxo.json",
  "title": "PChainUtxo",
  "type": "object",
  "properties": {
    "addresses": {
      "description": "Addresses that are eligible to sign the consumption of this output.",
      "examples": [
        [
          "avax1qm2a25eytsrj235hxg6jc0mwk99tss64eqevsw"
        ]
      ],
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "asset": {
      "$ref": "#/components/schemas/AssetAmount"
    },
    "consumedOnChainId": {
      "type": "string",
      "description": "Blockchain ID on which this output is consumed on.",
      "examples": [
        "2oYMBNV4eNHyqk2fjjV5nVQLDbtmNJzq5s3qs3Lo6ftnC6FByM"
      ]
    },
    "consumingTxHash": {
      "type": "string",
      "description": "Transaction ID that consumed this output.",
      "examples": [
        "3j9JpF1aGuQtLLbo3YkvvKkWrCZViXZjdeJQWUSEY5hcqUn2c"
      ]
    },
    "createdOnChainId": {
      "type": "string",
      "description": "Blockchain ID on which this output is created on.",
      "examples": [
        "2oYMBNV4eNHyqk2fjjV5nVQLDbtmNJzq5s3qs3Lo6ftnC6FByM"
      ]
    },
    "utxoId": {
      "type": "string",
      "description": "UTXO ID for this output.",
      "examples": [
        "68vLva9kfKUsX88ZPM8jdbf8qHUZRoZSFH6NdpAVTspkfrXDC"
      ]
    },
    "utxoBytes": {
      "type": "string",
      "description": "The bytes of the UTXO"
    },
    "amount": {
      "type": "string",
      "deprecated": true
    },
    "assetId": {
      "type": "string",
      "deprecated": true
    },
    "blockNumber": {
      "type": "string"
    },
    "blockTimestamp": {
      "type": "number"
    },
    "consumingBlockNumber": {
      "type": "string",
      "description": "Block height in which the transaction consuming this UTXO was included"
    },
    "consumingBlockTimestamp": {
      "type": "number",
      "description": "Timestamp in seconds at which this UTXO is used in a consuming transaction"
    },
    "platformLocktime": {
      "type": "number",
      "description": "Timestamp in seconds after which this UTXO can be consumed"
    },
    "outputIndex": {
      "type": "number",
      "description": "The index of the UTXO in the transaction"
    },
    "rewardType": {
      "$ref": "#/components/schemas/RewardType"
    },
    "stakeableLocktime": {
      "type": "number",
      "description": "Timestamp in seconds before which a UTXO can only be used for staking transactions. After stakeable locktime, a UTXO can be used for anything"
    },
    "staked": {
      "type": "boolean"
    },
    "threshold": {
      "type": "number",
      "description": "The minimum number of signatures required to spend this UTXO"
    },
    "txHash": {
      "type": "string",
      "description": "The hash of the transaction that created this UTXO"
    },
    "utxoEndTimestamp": {
      "type": "number",
      "description": "Timestamp in seconds after which the staked UTXO will be unlocked."
    },
    "utxoStartTimestamp": {
      "type": "number",
      "description": "Timestamp in seconds at which the staked UTXO was locked."
    },
    "utxoType": {
      "$ref": "#/components/schemas/UtxoType"
    }
  },
  "required": [
    "addresses",
    "asset",
    "consumedOnChainId",
    "createdOnChainId",
    "utxoId",
    "amount",
    "assetId",
    "blockNumber",
    "blockTimestamp",
    "outputIndex",
    "txHash",
    "utxoType"
  ]
}