{"uid":"cap_Q2HDm9fsQTCSQNgw959s9","slug":"rigoblock-oracle-refresh-15aff1d7","name":"Rigoblock Oracle Refresh","description":"Build an unsigned operator EOA transaction that swaps ETH on the on-chain oracle's dedicated Uniswap V4 pool to create a fresh price observation and fix a stale TWAP feed. Use when the Swap Shield blocks a trade due to oracle price divergence.","url":"https://trader.rigoblock.com/api/oracle/refresh","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"token":{"type":"string","description":"ERC-20 token symbol or address whose oracle feed is stale. Never the native token."},"amount":{"type":"string","description":"Exact INPUT amount in tokenIn units (e.g. '0.001'). Required; no default."},"chainId":{"type":"integer","description":"EVM chain ID where the oracle pool lives (e.g. 42161, 8453)"},"tokenIn":{"type":"string","description":"Token the trader pays: the chain native token (ETH/POL/BNB) or the ERC-20 'token'."},"tokenOut":{"type":"string","description":"Token the trader receives: the chain native token (ETH/POL/BNB) or the ERC-20 'token'."}}},"responseSchema":null,"example":null,"exampleRequest":null,"tags":["x402"],"displayCostAmount":"0.0023","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"probe","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.0023/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.0023","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.0023","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_a39jTSB4hGrWPYxPA5WRS","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.0023","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Builds an unsigned operator EOA transaction that swaps ETH on a Uniswap V4 pool to refresh a stale on-chain TWAP oracle price feed","exampleAgentPrompt":"My Rigoblock vault trade on Arbitrum (chain ID 42161) is being blocked by the Swap Shield because the USDC oracle feed is stale — can you build a transaction that swaps 0.001 ETH on the Uniswap V4 pool to refresh the USDC TWAP price observation?","exampleUseCases":[{"title":"Unblock stale oracle on Arbitrum","prompt":"My Rigoblock Swap Shield is blocking my trade because the WBTC oracle is stale on Arbitrum. Build me a refresh transaction using 0.001 ETH as tokenIn to fix the WBTC TWAP feed on chain 42161."},{"title":"Fix TWAP divergence on Base","prompt":"I'm getting an oracle price divergence error on Base when trying to trade USDC in my Rigoblock vault. Can you create an unsigned ETH swap transaction for 0.002 ETH on chain 8453 to push a fresh USDC price observation through the Uniswap V4 oracle pool?"},{"title":"Refresh stale LINK feed on Polygon","prompt":"The LINK oracle feed on Polygon (chain ID 137) is too stale for my Rigoblock vault to execute a swap. Build me an unsigned operator transaction that swaps 0.005 POL for LINK to create a new on-chain price observation."}],"resultDescription":"An unsigned operator EOA transaction object ready to be signed and submitted on-chain; the transaction performs a small ETH swap on the Uniswap V4 oracle pool for the specified token pair, generating a fresh price observation that updates the stale TWAP feed and allows the Swap Shield to clear the blocked trade.","failureModes":["Invalid or unsupported token symbol/address — returns error indicating unrecognized token","Unsupported chainId — returns error for chains not hosting an oracle pool","Amount too small to generate a meaningful price observation — may return validation error","Missing required fields (token, amount, chainId, tokenIn, tokenOut) — returns 400 bad request","Oracle pool not yet deployed for token on specified chain — returns not-found error","Payment failure (x402) — call is rejected if the $0.0023 USDC fee is not satisfied"],"whenToPreferThis":"Use this endpoint specifically when a Rigoblock Swap Shield has blocked a trade due to on-chain TWAP oracle price divergence or staleness; it is purpose-built for the Rigoblock oracle refresh flow on Uniswap V4 pools and should not be used as a general-purpose swap builder or for refreshing oracles on other DEX protocols.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-14T00:31:22.779Z","isFirstParty":false}