V12 Docs
Launch Spark
  • Overview
  • Trade
    • 🚀 Getting Started as a Trader
      • Wallet Setup
        • Fuel Wallet
        • Fuelet Wallet
        • Ethereum Wallets
      • Bridging Assets Using the Fuel Bridge
      • Deposit Assets using Testnet Faucet
      • Creating Orders
        • Order Book
          • Limit Order
          • Market Order
          • Cancelling an order
        • Swap
      • Fee Structure
  • Provide Liquidity
    • 📈 Getting Started as a Market Maker
      • Market Maker Incentive Program
      • Fee Structure
      • SLAs for Market Makers
  • Build
    • 👩‍💻 Getting Started as a Developer
      • Rust Integration Guide
        • Fuel and V12 Market Setup Tutorial
        • V12 Rust SDK
      • TypeScript SDK
      • Data Indexing
        • Envio Indexer Setup Guide
        • Indexer Queries
        • Connecting to the indexer via WebSocket
      • Order Book Technical Reference
  • Security
    • 🔐 Audit Report
  • More
    • 🏗️ V12 Architecture Overview
    • 🏆 Point Rewards Program
    • ⚖️ Terms
  • Community
    • Twitter
    • Telegram
    • Discord
    • GitHub
Powered by GitBook
On this page
  • Query 1: Get All Open Orders With BTC Amount Greater Than 0.00002 BTC
  • Query 2: Get All Users Who Have Opened an Order
  • Query 3: Get All Open Markets
  1. Build
  2. 👩‍💻 Getting Started as a Developer
  3. Data Indexing

Indexer Queries

PreviousEnvio Indexer Setup GuideNextConnecting to the indexer via WebSocket

Last updated 8 months ago

After completing the steps in the Envio Indexer Setup Guide, you can access the Hasura console by navigating to .

The Hasura UI provides an intuitive way to test queries to the indexer. Below are examples of common queries:

Query 1: Get All Open Orders With BTC Amount Greater Than 0.00002 BTC

This query retrieves all open orders where the amount of BTC exceeds 0.00002 (equivalent to 2000 satoshis):

query GetOrderQuery {
  Order(where: {id: {}, amount: {_gt: "2000"}}) {
    price
    timestamp
    user
    market
    id
    asset
    amount
    status
    order_type
  }
}

Query 2: Get All Users Who Have Opened an Order

This query retrieves all users who have opened at least one order:

query GetAllUsersQuery {
  DepositEvent(distinct_on: user) {
    user
  }
  OpenOrderEvent(distinct_on: user) {
    id
  }
}

Query 3: Get All Open Markets

This query returns all open markets:

query GetOpenMarkets {
  MarketRegisterEvent(distinct_on: id) {
    base_asset
    quote_asset
    timestamp
    id
  }
}

http://localhost:8080