Skip to main content
As part of our migration to DIA’s next-generation oracle infrastructure, Lumina, the hosted DIA GraphQL API is being deprecated and will be discontinued on 20 December 2026. This affects the GraphQL endpoint at https://api.diadata.org/graphql.If your protocol relies on this, please email support@diadata.org and confirm that you are using it. We will provide you with a migration path so you can continue accessing the same data through Lumina without interruption. Integrations that don’t reach out may lose access after the deprecation date.
You can use the following link to send GraphQL requests: https://api.diadata.org/graphql/query Also you can use a dedicated front-end to try out queries: https://api.diadata.org/graphql/ Currently only tokens price feed data is available on GraphQL. Example of schema that can be used for quoting data:
The schema will return the moving average price of ETH calculated every 5min (300 sec) by counting 2min trade blocks.

Query parameters rundown

FeedSelection filtering options

There are a number of ways to filter out exchanges with DIA’s GraphQL endpoints. First of all, you should define the desired asset. DIA uses blockchain-address asset identification methodology. You can search for available assets and find out blockchain/address information in the DIA APP asset explorer. Here’s an example how to define FeedSelection query to return a price for a given range with all sources included:
There are number of ways to filter desired sources from the entire sources library for a given asset. We’ll go over examples of these filters. To select specific exchanges you can use the following format:
It is also possible to select specific pairs from a given exchange. The query would look as follows:
Another filtering option is to include sources based on available liquidity in the pool. For example if you select a liquidity threshold of 5000000,theresponsewillcalculatethepriceofanassetonlybyincludingliquiditypoolsfromDEXeswhichhavehigherthan5 000 000, the response will calculate the price of an asset only by including liquidity pools from DEXes which have higher than 5 000 000 liquidity. The query looks as follows:
It is also possible to merge pairs selection with LiquidityThreshold, which would result in such query:
One more option is to use two different assets to calculate one unified price. It might be useful for cross-chain assets, e.g. DAI on ETH mainnet & DAI on Arbitrum One. The query which can be used for such cases would look as follows:

Response fields

In the table below you can find the description of response fields: