{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/blockdaemon/main/json-schema/blockdaemon-yield-response-schema.json", "title": "YieldResponse", "description": "The yield 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/YieldResponse", "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 validators for the period", "type": "string", "format": "number" }, "apr": { "description": "The APR for validators based on the return, total stake of the network and assuming 82125 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 (Unlikely for ETH but kept in for completeness)", "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/YieldMetadata" }, { "$ref": "#/$defs/ValidatorYieldMetadata" } ] } }, "$defs": { "ValidatorYieldMetadata": { "properties": { "effectiveBalance": { "description": "The effective balance of the validator at the start time", "type": "string", "format": "number" }, "mevBlockReward": { "description": "The total mev block rewards in the period", "type": "string", "format": "number" }, "blockReward": { "description": "The total block rewards in the period", "type": "string", "format": "number" }, "syncCommitteeReward": { "description": "The sync comittee rewards for the period", "type": "string", "format": "number" }, "attestationReward": { "description": "The attestation rewards for the period", "type": "string", "format": "number" } } }, "YieldMetadata": { "properties": { "epoch": { "description": "The epoch number/s that the period covers", "type": "string" }, "protocolRewards": { "description": "The total protocol rewards in the period", "type": "string", "format": "number" }, "mevRewards": { "description": "The total mev block rewards in the period", "type": "string", "format": "number" }, "blockRewards": { "description": "The total block fee rewards in the period", "type": "string", "format": "number" }, "totalBalance": { "description": "The total balance of the validators in the network (including pending withdrawals)", "type": "string", "format": "number" } } } } }