ShiftCTRL
  • Introduction
  • Introduction
    • Why ShiftCTRL
    • What is Austrian Economics
    • What is ShiftCTRL
    • Introducing Tabs
  • How it works
    • The core mechanism
    • Reserves
    • Managing vaults
    • Liquidation
    • CTRL+ALT+DEL
  • Guides
    • How to mint Tabs
    • How to withdraw reserves
  • Developer
    • Overview
    • Tab Protocol Smart Contract
      • Governance
      • Oracle
      • Token
      • Reserves
      • Vault
      • Keeper
      • Auction
    • Tab Oracle & Tab Keeper
  • Testnet
    • ShiftCTRL Public Testnet Launch
    • Testnet Participation Guide
    • Feedback
  • Governance
    • Decentralised governance
    • Vote delegation
    • Governance process
  • Download whitepaper
Powered by GitBook
On this page
  • Tab Oracle
  • Tab Oracle API Endpoints:
  • Tab Keeper
  1. Developer

Tab Oracle & Tab Keeper

PreviousAuctionNextShiftCTRL Public Testnet Launch

Last updated 2 months ago

Github repo: &

Oracle feed providers for the ShiftCTRL Tab Protocol are approved through governance. These providers are responsible for submitting feed data at fixed intervals (e.g., every 5 minutes) to the Tab Oracle module. The Tab Oracle processes all submitted feeds to derive the median exchange rates for all active Tab currencies.

A minimum of three providers is required to establish a median rate. If a median rate cannot be determined for three consecutive intervals, the affected Tab is set to a disabled state on-chain, preventing any vault operations involving that Tab. Vault operations can only be re-enabled once a valid median rate is established for three consecutive intervals.

Additionally, the Tab Oracle module tracks the performance of oracle feed providers. Each provider’s submission count is logged on-chain by calling the PriceOracleManager.submitProviderFeedCount function.

Tab Oracle API Endpoints:

Endpoint
Description

/api/v1/auth/create_or_reset_api_token/[provider_pub_address]

Authorized provider calls this endpoint to generate or reset API token to submit currrency rate data

/api/v1/feed_provider/[provider_pub_address]/feed_submission

Authorized provider calls this endpoint to submit currency rate data

/api/v1/tab/list

Retrieve Tab details

/api/v1/peggedTab/list

Retrieve Pegged Tab details

/api/v1/price_history/[currency]

Protected endpoint to retrieve historical prices

/api/v1/median_price/[currency]

Protected endpoint to retrieve latest median price

/api/v1/median_price/[wallet_address]/[currency]

Proteced endpoint to retrieve signed latest median price

/api/v1/feed_provider/list

Protected endpoint reserved for internal usage (e.g. used by tab-ui module)

The Tab Keeper module comprises two submodules that operate at fixed intervals to monitor vault reserve ratios. These submodules are responsible for triggering liquidations when necessary and updating risk penalties onchain.

For detailed information on risk penalty calculations, please refer to the .

Tab Keeper
whitepaper
Tab Oracle
Tab Keeper
Tab Oracle
Tab Oracle & Tab Keeper