Data Publishing
Anyone can contribute to publishing updates to destination chains, ensuring a constant stream of data. To participate, use the pull-update-publisher tool. Clone the pull-oracle-publisher repository and launch the daemon to start streaming updates to destination chains.
Clone repo -
git clone
Change config.yaml in repo’s root, select data keys for which you want to secure updates, set private key, optionally set your node URLs.
Run pull-oracle-publisher cmd -
go run ./cmd/pull-update-publisher
. Or build and run docker container -docker compose -f ./docker/docker-compose.yml up
The pull-update-publisher executable when run, tries to publish update on publisher.updateInterval
interval option, in concrete steps it does the following:
Fetch latest updates for keys in the config from finalized-data-snap (spotter's assets list in calldata in Finalized Data API)
Select updates that has either of the following properties:
Latest on-chain update is older than value specified by
publisher.updateThreshold
option in the configLatest on-chain update value differs by more than (
`publisher.priceDiffThreshold` / 10000 %
) from fetched update value.
Send selected updates to the PullOracle contract.
Finalized Data API
Last updated