{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/blockdaemon/main/json-schema/blockdaemon-yield-response-solana-schema.json",
  "title": "YieldResponseSolana",
  "description": "The reward response object",
  "x-generated": "2026-10-14",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/blockdaemon-staking-reporting-api-openapi.yml#/components/schemas/YieldResponseSolana",
  "type": "object",
  "properties": {
    "startTime": {
      "description": "Epoch-based start time for reward queries.",
      "type": "number"
    },
    "endTime": {
      "description": "Epoch-based end time for reward queries.",
      "type": "number"
    },
    "return": {
      "description": "The staking return for all delegators or validators for the period",
      "type": "string",
      "format": "number"
    },
    "apr": {
      "description": "The APR for delegators or validators based on the return, total stake of the network and assuming 180 epochs a year",
      "type": "string",
      "format": "number"
    },
    "aprPercentage": {
      "description": "The same as above but in percentage form",
      "type": "string",
      "format": "number"
    },
    "apy": {
      "description": "The APY based on the above and assuming re-staking of all rewards after each epoch",
      "type": "string",
      "format": "number"
    },
    "apyPercentage": {
      "description": "The same as above but in percentage form",
      "type": "string",
      "format": "number"
    },
    "denomination": {
      "description": "the denomination the reward is in",
      "type": "string"
    },
    "stake": {
      "description": "the total stake across the full network",
      "type": "string",
      "format": "number"
    },
    "metadata": {
      "oneOf": [
        {
          "$ref": "#/$defs/ValidatorYieldMetadataSolana"
        },
        {
          "$ref": "#/$defs/DelegatorYieldMetadataSolana"
        }
      ]
    }
  },
  "$defs": {
    "DelegatorYieldMetadataSolana": {
      "properties": {
        "fee": {
          "description": "the amount of rewards from fees",
          "type": "string",
          "format": "number"
        },
        "epoch": {
          "description": "Only present for protocol yield, The epoch number/s that the period covers",
          "type": "string",
          "format": "number"
        },
        "mev": {
          "description": "the amount of rewards from jito mev",
          "type": "string",
          "format": "number"
        },
        "staking": {
          "description": "the amount of rewards from staking",
          "type": "string",
          "format": "number"
        }
      }
    },
    "ValidatorYieldMetadataSolana": {
      "properties": {
        "fee": {
          "description": "the amount of rewards from fees",
          "type": "string",
          "format": "number"
        },
        "epoch": {
          "description": "Only present for protocol yield, The epoch number/s that the period covers",
          "type": "string",
          "format": "number"
        },
        "mev": {
          "description": "the amount of rewards from jito mev",
          "type": "string",
          "format": "number"
        },
        "voting": {
          "description": "the amount of rewards from voting",
          "type": "string",
          "format": "number"
        }
      }
    }
  }
}