GraphQL API v2 is live!

Your bridge to the CosmosCosmos

Real-time, enriched and aggregated blockchain data for the Dymension rollapps and Cosmos networks

App screenshot

Compatible or enabled networks

Akash
Celestia
Crypto.com
dYdX
Dymension
Injective
Nim
Osmosis
Secret
Stargaze
Stride
Akash
Celestia
Crypto.com
dYdX
Dymension
Injective
Nim
Osmosis
Secret
Stargaze
Stride

Raw blockchain data is complexcomplex

We handle the heavy lifting so you can focus on your core business.
Access the data effortlessly through a range of products and entry points

Global EdgeGlobal Edge

Replicated network of indexers

The Orbit Codes Indexer is a custom-built software designed to efficiently index blockchain data. It operates as a distributed system, replicated globally to ensure fast, reliable service.

Real-time data access

Historical data access

Enriched data (holders, NFCs, etc...)

Webhooks & events notifications

Developer ExperienceDeveloper Experience

API & SDKs

The GraphQL and REST endpoints delivers fast, accurate, and enriched data, carefully structured for seamless integration into your application.

SDKs are available in Javascript / PHP / Golang, simplifying the integration process.

Cloud Integrations & Custom DevelopmentCloud Integrations & Custom Development

Rollapp Scan

Orbit Codes' network of data indexers is actively used in production to power the Dymension Hub rollapps, delivering a reliable explorer for users to search and view transactions seamlessly.

INGESTED BLOCKS
INGESTED TRANSACTIONS
ACTIVE ACCOUNTS
Sample usecases

Many ways to consume the data

Choose your preferred method of consuming the data.
GraphQL offers instantly available to a pre-implemented set of queries and datapoints.
But if you need more flexibility, you can directly query the raw dataset with SQL on PostgreSQL or ClickHouse.

Get an account with GraphQL

Use GraphQL to query an account and retrieve its balances, rewards, and delegation metrics from the chain.

Fetch historical metrics with GraphQL

Use GraphQL to query pre-computed historical metrics for block time and active accounts from our datastores.

List the richest accounts with ClickHouse

Directly query the raw dataset to find the list of richest accounts by total balance.

Find the related addresses with ClickHouse

Directly query the raw dataset to find the list of related addresses to a given address, ordered by count of transactions.

  • 
    query Account {
        account(dataset: "nim", address: "nim1junvqfg7lvvge8v3kxth5pkv42728gqr0z37jh") {
            account_number
            account_sequence
            address
            address_hex
            withdraw_address
            withdraw_address_hex
            name
            balances {
                denom
                amount
            }
            metrics {
                delegations
                undelegations
            }
            rewards {
                total {
                    denom
                    amount
                }
                validators {
                    validator_address
                    rewards {
                        denom
                        amount
                    }
                }
            }
        }
    }
        
  • 
    query MetricsHistorical {
        metricsHistoricalBlockTime(dataset: "nim") {
            date
            avg_value
            diff_value
        }
        metricsHistoricalActiveAccount(dataset: "nim") {
            date
            avg_value
            diff_value
        }
    }
        
  • 
    WITH filtered_accounts AS (
        SELECT
            *,
            arraySum(
                arrayMap(
                    x -> toDecimal128(x.amount, 0),
                    arrayFilter(
                        x -> x.denom = {denom:String},
                        last_balances
                    )
                )
            ) as total_balance
        FROM accounts
        WHERE length(last_balances) > 0
    )
    SELECT *
    FROM filtered_accounts
    ORDER BY total_balance DESC
    LIMIT 1 BY address
    LIMIT 50;
        
  • 
    SELECT
        related_address AS address,
        count(*) AS count
    FROM (
        SELECT
            arrayJoin(arrayFilter(
                x -> x != {address:String},
                addresses
            )) AS related_address
        FROM transactions
        WHERE has(addresses, {address:String})
        AND length(addresses) > 1
    )
    GROUP BY related_address
    ORDER BY count DESC
    

Get started with Orbit Codes
In 5 minutes, for freefree

Sign up now for instant free access to real-time and historical data, including blocks, transactions, IBC transfers, and more.

© 2024 Orbit Codes SAS. All rights reserved.