{"openapi":"3.1.0","info":{"title":"Chain Data Agent","version":"0.1.0","description":"On-chain data for AI agents, computed live from public chain state. Paid operations use x402 (USDC, no signup). Every response includes an attribution object that must be kept."},"servers":[{"url":"https://chain-data-agent.wangzuo305.workers.dev"}],"externalDocs":{"description":"Agent-oriented docs","url":"https://chain-data-agent.wangzuo305.workers.dev/llms.txt"},"x-agentcash-guidance":{"llmsTxtUrl":"https://chain-data-agent.wangzuo305.workers.dev/llms.txt"},"tags":[{"name":"solana-validators","description":"Solana validator stats. Live Solana network health and per-validator stats: stake and rank, commission, vote credits per SOL over the last 5 epochs relative to the cluster median, current-epoch block production and skip rate, delinquency. Computed from public chain state on each call (at most a minute old); no history is stored yet."}],"paths":{"/v1/solana-validators/summary":{"get":{"operationId":"solana_validators_get_network_summary","summary":"Get live Solana network health: epoch progress, validator counts, stake concentration and skip rate.","description":"Returns the current epoch and its progress, active and delinquent validator counts, total active stake in SOL, the delinquent stake share, the Nakamoto coefficient (fewest validators holding over a third of stake), median commission, cluster block production and skip rate so far this epoch, and median and best vote credits per SOL staked in the last complete epoch. Use it as the baseline when judging a single validator.","tags":["solana-validators"],"parameters":[],"security":[],"responses":{"200":{"description":"Data with attribution: { data, meta, attribution }","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataEnvelope"},"example":{"data":{"epoch":{"epoch":1086,"slot":469241436,"slot_index":89436,"slots_in_epoch":432000,"progress_pct":20.7},"validators":{"total":699,"active":660,"delinquent":39},"stake":{"total_active_sol":429651630.953,"delinquent_pct":0.14,"nakamoto_coefficient":18},"commission":{"median_pct":5,"zero_commission_validators":229},"block_production_current_epoch":{"leader_slots":89435,"blocks_produced":89392,"skip_rate_pct":0.05},"vote_credits_last_epoch":{"epoch":1085,"median_credits_per_sol":142934.2}},"meta":{},"attribution":{"publisher":"Solana mainnet-beta (public chain state via JSON-RPC)","licence":"Public on-chain data"}}}}},"400":{"description":"Invalid parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/solana-validators/validator":{"get":{"operationId":"solana_validators_get_validator","summary":"Get live stats for one Solana validator by vote account or identity pubkey.","description":"Pass vote (vote account pubkey) or identity (node identity pubkey). Returns stake in SOL with share and rank, commission, delinquency, how many slots its last vote is behind the cluster, vote credits for each of the last 5 epochs per SOL staked, as a percentage of the cluster median (100 = median; approximate, as it uses today's stake), and current-epoch leader slots, blocks produced and skip rate next to the cluster's. Unknown keys return 404.","tags":["solana-validators"],"parameters":[{"name":"vote","in":"query","required":false,"description":"Vote account pubkey (base58)","schema":{"type":"string"},"example":"JDMq8hxZnad2smKLGkFbfg8zVMZHKQcMugD4tMR9u2da"},{"name":"identity","in":"query","required":false,"description":"Validator identity (node) pubkey (base58); use instead of vote","schema":{"type":"string"}}],"security":[],"responses":{"200":{"description":"Data with attribution: { data, meta, attribution }","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataEnvelope"},"example":{"data":{"vote_pubkey":"JDMq8hxZnad2smKLGkFbfg8zVMZHKQcMugD4tMR9u2da","identity_pubkey":"DUND26mEDfFeaPsVof3YvbXDRvpuQX7HMUJrLgEWzYw4","delinquent":false,"epoch":{"epoch":1086,"slot":469241436,"slot_index":89436,"slots_in_epoch":432000,"progress_pct":20.7},"stake":{"active_sol":2500000.992,"share_pct":0.5819,"rank":43,"of_validators":699},"commission_pct":100,"inflation_rewards_commission_bps":10000,"voting":{"last_vote_slot":469241425,"root_slot":469241407,"slots_behind_tip":7,"epoch_credits":[{"epoch":1086,"credits":75116475950,"credits_per_sol":30046.6,"pct_of_median":101.56,"complete":false},{"epoch":1085,"credits":350729897051,"credits_per_sol":140291.9,"pct_of_median":98.15,"complete":true}]},"block_production_current_epoch":{"leader_slots":528,"blocks_produced":528,"skip_rate_pct":0,"cluster_skip_rate_pct":0.05}},"meta":{},"attribution":{"publisher":"Solana mainnet-beta (public chain state via JSON-RPC)","licence":"Public on-chain data"}}}}},"400":{"description":"Invalid parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Payment required (x402). Payment requirements are in the PAYMENT-REQUIRED header; retry with a PAYMENT-SIGNATURE header."},"503":{"description":"Payments not configured on this deployment"}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.001"},"protocols":[{"x402":{}}]},"x-x402":{"price":"$0.001","scheme":"exact","network":"eip155:8453","payTo":"0x2D6F7D1e969a3C6218599B348EbBBDdc7f583948"}}},"/v1/solana-validators/validators":{"get":{"operationId":"solana_validators_list_validators","summary":"List Solana validators ranked by stake, vote credits, skip rate or commission, with filters.","description":"For choosing where to stake or comparing validators. sort is stake (default), credits (vote credits per SOL in the last complete epoch, as % of the cluster median), skip_rate (current epoch, lowest first; validators with no leader slots yet come last) or commission (lowest first). Filters: max_commission (percent), min_stake_sol, include_delinquent (default false). Returns up to limit rows (default 20, max 50) and the number matched.","tags":["solana-validators"],"parameters":[{"name":"sort","in":"query","required":false,"description":"One of stake, credits, skip_rate, commission (default stake)","schema":{"type":"string"},"example":"credits"},{"name":"max_commission","in":"query","required":false,"description":"Only validators with commission at most this percent","schema":{"type":"string"},"example":"5"},{"name":"min_stake_sol","in":"query","required":false,"description":"Only validators with at least this much active stake in SOL","schema":{"type":"string"},"example":"100000"},{"name":"include_delinquent","in":"query","required":false,"description":"true to include delinquent validators (default false)","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Rows to return, 1 to 50 (default 20)","schema":{"type":"string"},"example":"10"}],"security":[],"responses":{"200":{"description":"Data with attribution: { data, meta, attribution }","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DataEnvelope"},"example":{"data":[{"vote_pubkey":"4jEHuQZTNTRYAhxRYEjV3HJ1b4wqdQjnBRdPzFWzkCft","identity_pubkey":"HW4zorvt6xDwhU36RqjcWNwU8YMj9tiqnAafBKW4cqV","stake_rank":276,"active_stake_sol":206930.65,"stake_share_pct":0.0482,"commission_pct":0,"last_epoch_credits_pct_of_median":268.41,"skip_rate_pct":0,"leader_slots":168,"delinquent":false},{"vote_pubkey":"4tuMshQNpAFpy1YtEHnSsE5EPN1mAT8FevWvn2UPJHNM","identity_pubkey":"ALp2GdA1eJV8vZHMHazCtTxNXe3BLUSco9LDASgjDs8R","stake_rank":252,"active_stake_sol":227486.507,"stake_share_pct":0.0529,"commission_pct":0,"last_epoch_credits_pct_of_median":241.98,"skip_rate_pct":0,"leader_slots":88,"delinquent":false}],"meta":{"matched":408,"returned":10,"sort":"credits","credits_epoch":1085,"epoch":1086},"attribution":{"publisher":"Solana mainnet-beta (public chain state via JSON-RPC)","licence":"Public on-chain data"}}}}},"400":{"description":"Invalid parameters","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"402":{"description":"Payment required (x402). Payment requirements are in the PAYMENT-REQUIRED header; retry with a PAYMENT-SIGNATURE header."},"503":{"description":"Payments not configured on this deployment"}},"x-payment-info":{"price":{"mode":"fixed","currency":"USD","amount":"0.002"},"protocols":[{"x402":{}}]},"x-x402":{"price":"$0.002","scheme":"exact","network":"eip155:8453","payTo":"0x2D6F7D1e969a3C6218599B348EbBBDdc7f583948"}}}},"components":{"schemas":{"DataEnvelope":{"type":"object","required":["data","meta","attribution"],"properties":{"data":{},"meta":{"type":"object"},"attribution":{"type":"object","properties":{"publisher":{"type":"string"},"licence":{"type":"string"},"licenceUrl":{"type":"string"},"text":{"type":"string"}}}}},"Error":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}}}}}}