Skip to content

Commit

Permalink
rpc: add getFeeStats method
Browse files Browse the repository at this point in the history
  • Loading branch information
2opremio committed Jun 7, 2024
1 parent 4c25859 commit aef181d
Show file tree
Hide file tree
Showing 2 changed files with 150 additions and 0 deletions.
83 changes: 83 additions & 0 deletions openrpc/src/methods/getFeeStats.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
{
"name": "getFeeStats",
"summary": "returns statistics about charged transaction fees",
"description": "Statistics about charged transaction fees.",
"externalDocs": {
"url": "https://developers.stellar.org/network/soroban-rpc/api-reference/methods/getFeeStats"
},
"paramStructure": "by-name",
"params": [],
"result": {
"name": "getFeeStatsResult",
"schema": {
"type": "object",
"properties": {
"sorobanInclusionFee": {
"description": "Inclusion fee distribution statistics for Soroban transactions",
"schema": {
"$ref": "#/components/schemas/FeeDistribution"
}
},
"inclusionFee": {
"description": "Fee distribution statistics for classic (i.e. non-Soroban) transactions. Statistics are normalized per operation.",
"schema": {
"$ref": "#/components/schemas/FeeDistribution"
}
},
"latestLedger": {
"$ref": "#/components/schemas/LatestLedger"
}
}
}
},
"examples": [
{
"name": "Statistics about charged transaction fees.",
"description": "Example request to the `getFeeStats` method",
"params": [],
"result": {
"name": "getFeeStatsResult",
"value": {
"sorobanInclusionFee": {
"max": "210",
"min": "100",
"mode": "100",
"p10": "100",
"p20": "100",
"p30": "100",
"p40": "100",
"p50": "100",
"p60": "100",
"p70": "100",
"p80": "100",
"p90": "120",
"p95": "190",
"p99": "200",
"transactionCount": "10",
"ledgerCount": 50
},
"inclusionFee": {
"max": "100",
"min": "100",
"mode": "100",
"p10": "100",
"p20": "100",
"p30": "100",
"p40": "100",
"p50": "100",
"p60": "100",
"p70": "100",
"p80": "100",
"p90": "100",
"p95": "100",
"p99": "100",
"transactionCount": "7",
"ledgerCount": 10
},
"latestLedger": 4519945
}

}
}
]
}
67 changes: 67 additions & 0 deletions openrpc/src/schemas/FeeDistribution.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
{
"FeeDistribution": {
"type": "object",
"properties": {
"max": {
"description": "Maximum fee.",
"type": "string"
},
"min": {
"description": "Minimum fee",
"type": "string"
},
"mode": {
"description": "Fee value which occurs the most often",
"type": "string"
},
"p10": {
"description": "10th nearest-rank fee percentile",
"type": "string"
},
"p20": {
"description": "20th nearest-rank fee percentile",
"type": "string"
},
"p30": {
"description": "30th nearest-rank fee percentile",
"type": "string"
},
"p40": {
"description": "40th nearest-rank fee percentile",
"type": "string"
},
"p50": {
"description": "50th nearest-rank fee percentile",
"type": "string"
},
"p60": {
"description": "60th nearest-rank fee percentile",
"type": "string"
},
"p70": {
"description": "70th nearest-rank fee percentile",
"type": "string"
},
"p80": {
"description": "80th nearest-rank fee percentile",
"type": "string"
},
"p90": {
"description": "90th nearest-rank fee percentile.",
"type": "string"
},
"p99": {
"description": "99th nearest-rank fee percentile",
"type": "string"
},
"transactionCount": {
"description": "How many transactions are part of the distribution",
"type": "number"
},
"ledgerCount": {
"description": "How many consecutive ledgers form the distribution",
"type": "number"
}
}
}
}

0 comments on commit aef181d

Please sign in to comment.