Loading...
Loading...
Pyth pull price feeds on Hedera. Use when integrating Pyth on Hedera (testnet 296 / mainnet 295), fetching Hermes update payloads, paying updatePriceFeeds, calling getPriceNoOlderThan, checking confidence, or normalizing signed price + expo to 18 decimals.
npx skill4agent add hedera-dev/hedera-skills pyth-price-feedsgetPriceNoOlderThanHermes → updatePriceFeeds{value: fee}(updateData) → getPriceNoOlderThan(priceId, maxAge)| Piece | Role |
|---|---|
| Pyth contract | Network |
| Price ID | |
| Update | Payable |
| Fee | |
| Read | |
| Confidence | Reject when |
| Scale | Signed |
296295function updatePrice(bytes[] calldata updateData) external payable {
uint256 fee = PYTH.getUpdateFee(updateData);
if (msg.value < fee) revert UpdateFeeTooLow(msg.value, fee);
PYTH.updatePriceFeeds{ value: msg.value }(updateData);
}msg.valuegetPriceUnsafegetPriceNoOlderThan| Check | Why |
|---|---|
| Incomplete |
| Invalid / non-positive |
| Confidence wider than the price |
Normalize | |
PythStructs.Price memory price = PYTH.getPriceNoOlderThan(priceId, maxStaleness);
if (price.publishTime == 0) revert IncompleteRound();
if (price.price <= 0) revert InvalidPrice();
if (price.conf > uint64(price.price)) revert InvalidConfidence();msg.valuegetPriceNoOlderThanexpo295296