# Table of Contents - [Auto Slippage Tolerance - DFlow](#auto-slippage-tolerance-dflow) - [Concurrent Liquidity Programs - DFlow](#concurrent-liquidity-programs-dflow) - [Concurrent Trading - DFlow](#concurrent-trading-dflow) - [Custom Slippage Tolerance - DFlow](#custom-slippage-tolerance-dflow) - [Max Priority Fee - DFlow](#max-priority-fee-dflow) - [Imperative Swaps - DFlow](#imperative-swaps-dflow) - [Declarative Swaps - DFlow](#declarative-swaps-dflow) - [Exact Priority Fee - DFlow](#exact-priority-fee-dflow) - [Platform Fees Overview - DFlow](#platform-fees-overview-dflow) - [Prediction Market Terminology - DFlow](#prediction-market-terminology-dflow) - [Overview - DFlow](#overview-dflow) - [Increase Position - DFlow](#increase-position-dflow) - [Reduce Position - DFlow](#reduce-position-dflow) - [Priority Fee Overview - DFlow](#priority-fee-overview-dflow) - [Slippage Tolerance Overview - DFlow](#slippage-tolerance-overview-dflow) - [From Spot Tokens to Prediction Market Positions - DFlow](#from-spot-tokens-to-prediction-market-positions-dflow) - [DFlow Trade API Overview - DFlow](#dflow-trade-api-overview-dflow) - [Event Settlement and Redemption - DFlow](#event-settlement-and-redemption-dflow) - [Series, Events, and Markets - DFlow](#series-events-and-markets-dflow) - [Welcome to DFlow - DFlow](#welcome-to-dflow-dflow) - [Privacy Policy - DFlow](#privacy-policy-dflow) - [Prediction Markets Overview - DFlow](#prediction-markets-overview-dflow) - [Authenticating Requests: API Keys - DFlow](#authenticating-requests-api-keys-dflow) - [Cookbook - DFlow](#cookbook-dflow) - [Swap Tokens with Imperative Swaps - DFlow](#swap-tokens-with-imperative-swaps-dflow) - [Introduction - DFlow](#introduction-dflow) - [Submit Intent Swap - DFlow](#submit-intent-swap-dflow) - [Get Token List with Decimals - DFlow](#get-token-list-with-decimals-dflow) - [Get Token List - DFlow](#get-token-list-dflow) - [Swap Tokens with Declarative Swaps - DFlow](#swap-tokens-with-declarative-swaps-dflow) - [Terms of Service - DFlow](#terms-of-service-dflow) - [Get Intent Quote - DFlow](#get-intent-quote-dflow) - [Get Order Status - DFlow](#get-order-status-dflow) - [Trade Tokens with the DFlow Trade API - DFlow](#trade-tokens-with-the-dflow-trade-api-dflow) - [Get Venue List - DFlow](#get-venue-list-dflow) - [Get Quote - DFlow](#get-quote-dflow) - [Implement Platform Fees - DFlow](#implement-platform-fees-dflow) - [Retrieve User Prediction Market Positions - DFlow](#retrieve-user-prediction-market-positions-dflow) - [Introduction - DFlow](#introduction-dflow) - [Get Event Forecast Percentile History - DFlow](#get-event-forecast-percentile-history-dflow) - [Get Event Candlesticks - DFlow](#get-event-candlesticks-dflow) - [Get Event - DFlow](#get-event-dflow) - [Create Swap - DFlow](#create-swap-dflow) - [Get Event Forecast Percentile History by Mint - DFlow](#get-event-forecast-percentile-history-by-mint-dflow) - [Get Live Data - DFlow](#get-live-data-dflow) - [Get Market Candlesticks by Mint - DFlow](#get-market-candlesticks-by-mint-dflow) - [Filter Outcome Mints - DFlow](#filter-outcome-mints-dflow) - [Get Market Candlesticks - DFlow](#get-market-candlesticks-dflow) - [Get Outcome Mints - DFlow](#get-outcome-mints-dflow) - [Get Live Data by Event - DFlow](#get-live-data-by-event-dflow) - [Get Live Data by Mint - DFlow](#get-live-data-by-mint-dflow) - [Get Order - DFlow](#get-order-dflow) - [Get Tags by Categories - DFlow](#get-tags-by-categories-dflow) - [Get Events - DFlow](#get-events-dflow) - [Redeem Determined Market Outcome Tokens - DFlow](#redeem-determined-market-outcome-tokens-dflow) - [Get Series - DFlow](#get-series-dflow) - [Get Market by Mint - DFlow](#get-market-by-mint-dflow) - [Get Markets Batch - DFlow](#get-markets-batch-dflow) - [Get Market - DFlow](#get-market-dflow) - [Get Trades - DFlow](#get-trades-dflow) - [Get Filters by Sports - DFlow](#get-filters-by-sports-dflow) - [Create Swap Instructions - DFlow](#create-swap-instructions-dflow) - [Get Trades by Mint - DFlow](#get-trades-by-mint-dflow) - [Get Series by Ticker - DFlow](#get-series-by-ticker-dflow) - [Get Markets - DFlow](#get-markets-dflow) - [Search Events - DFlow](#search-events-dflow) - [Discover Prediction Market Tokens - DFlow](#discover-prediction-market-tokens-dflow) - [Page Not Found](#page-not-found) --- # Auto Slippage Tolerance - DFlow [Skip to main content](https://pond.dflow.net/concepts/auto-slippage-tolerance#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Slippage Tolerance Auto Slippage Tolerance [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [How Auto Slippage Works](https://pond.dflow.net/concepts/auto-slippage-tolerance#how-auto-slippage-works) * [Sequence of Events](https://pond.dflow.net/concepts/auto-slippage-tolerance#sequence-of-events) * [Frequently Asked Questions](https://pond.dflow.net/concepts/auto-slippage-tolerance#frequently-asked-questions) * [Get Started with the Swap API Today](https://pond.dflow.net/concepts/auto-slippage-tolerance#get-started-with-the-swap-api-today) Auto Slippage Tolerance lets DFlow dynamically determine the optimal slippage for each swap based on market conditions. This ensures trades have a high probability of success while maintaining price protection. To use Auto Slippage Tolerance, set the `slippageBps` parameter to `auto` when calling the DFlow Swap API’s [Get Quote](https://pond.dflow.net/swap-api-reference/imperative/quote) or [Get Intent Quote](https://pond.dflow.net/swap-api-reference/declarative/quote) . The DFlow Aggregator will then determine the slippage automatically. [​](https://pond.dflow.net/concepts/auto-slippage-tolerance#how-auto-slippage-works) How Auto Slippage Works --------------------------------------------------------------------------------------------------------------- Auto slippage calculates an optimal tolerance using factors such as market volatility, liquidity depth, and network congestion. This reduces the chance of failed trades while minimizing potential negative price impact. Auto slippage values are continuously updated server-side by the DFlow Aggregator, so they reflect the latest onchain conditions. [​](https://pond.dflow.net/concepts/auto-slippage-tolerance#sequence-of-events) Sequence of Events ----------------------------------------------------------------------------------------------------- 1. A trader submits a swap via the API or UI. 2. DFlow evaluates market conditions to determine the optimal slippage tolerance. 3. The swap is executed with this calculated tolerance, maximizing execution probability while protecting the trader from excessive price movement. [​](https://pond.dflow.net/concepts/auto-slippage-tolerance#frequently-asked-questions) Frequently Asked Questions --------------------------------------------------------------------------------------------------------------------- What is Auto Slippage Tolerance? Auto Slippage Tolerance allows DFlow to automatically select a slippage tolerance that balances trade execution probability with price protection. How does DFlow calculate auto slippage? The DFlow Aggregator evaluates market volatility, liquidity depth, and network conditions to determine an optimal tolerance for each swap. Can I override auto slippage? Yes — if you prefer precise control, use [Custom Slippage Tolerance](https://pond.dflow.net/concepts/custom-slippage-tolerance) instead. Does auto slippage guarantee a successful swap? It increases the likelihood, but extreme market movements or low liquidity may still cause the swap to fail. [​](https://pond.dflow.net/concepts/auto-slippage-tolerance#get-started-with-the-swap-api-today) Get Started with the [Swap API](https://pond.dflow.net/swap-api-reference/introduction) Today ================================================================================================================================================================================================== [Slippage Tolerance Overview](https://pond.dflow.net/concepts/slippage-tolerance-overview) [Custom Slippage Tolerance](https://pond.dflow.net/concepts/custom-slippage-tolerance) ⌘I --- # Concurrent Liquidity Programs - DFlow [Skip to main content](https://pond.dflow.net/concepts/concurrency/clp#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trade API Concurrent Liquidity Programs [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Concurrent Liquidity Programs (CLP) are a new liquidity provision framework on the Solana network that aims to expand the surface area of liquidity that Solana users are natively able to interact with. Specifically, Solana users are unable to access liquidity that exists offchain with their self-custodied SPL tokens. The CLP design addresses this by introducing a multi-transaction trading standard that writes limit prices onchain that are filled in a separate transaction. [​](https://pond.dflow.net/concepts/concurrency/clp#motivation) Motivation ----------------------------------------------------------------------------- Solana users are used to a Solana-native trading experience, wherein they can buy and sell SPL tokens with other tokens in their wallet. However, they’re unable to interact with liquidity that exists elsewhere. [​](https://pond.dflow.net/concepts/concurrency/clp#description) Description ------------------------------------------------------------------------------- ### [​](https://pond.dflow.net/concepts/concurrency/clp#concurrency-&-counterparties) Concurrency & Counterparties The liquidity that Solana users are interacting with resides offchain. In contrast to the atomic behavior of trades that interact with liquidity that is natively on Solana, clients need to handle asynchronous behavior: multiple transactions that can land over several Solana slots fill the open order transaction. ![Concurrent Liquidity Programs](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/CLP.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=0e54cee618561ea9fa08653ed962dc06) There are two parties involved in the lifecycle of a CLP trade: the liquidity provider and the taker. The taker and the LP interact in a permissionless multi-transaction trade. In order to increase or reduce positions, the taker writes the limit price and trade side to the CLP contract. ### [​](https://pond.dflow.net/concepts/concurrency/clp#increasing-positions) Increasing Positions The LP reads the limit price and side written onchain through the first transaction and mints SPL tokens representing the position entered into at a price that is equal to or better than the limit price. ![Concurrent Liquidity Programs](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/Token%20Minting.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=81e1070a622242627c56818f7c256e3b) ### [​](https://pond.dflow.net/concepts/concurrency/clp#reducing-positions) Reducing Positions The LP reads the limit price and side written onchain through the first transaction and transfers stablecoins to the taker equivalent in value to the size of the position reduced at the limit price or better. ![Concurrent Liquidity Programs](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/Token%20Burning.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=bdd5688bba45a6dc49dae0d7ce340b3d) [DFlow Trade API Overview](https://pond.dflow.net/concepts/trade-api) [Concurrent Trading](https://pond.dflow.net/concepts/concurrency/concurrent-trading) ⌘I --- # Concurrent Trading - DFlow [Skip to main content](https://pond.dflow.net/concepts/concurrency/concurrent-trading#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trade API Concurrent Trading [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) The new DFlow Trading API exposes two types of transactions that users are able to send: async trade transactions and sync trade transactions. These transactions provide additional expressiveness in the types of liquidity traders are able to interact with. Specifically, traders using the DFlow Trading API are now able to interact with offchain liquidity through Concurrent Liquidity Program instances. [​](https://pond.dflow.net/concepts/concurrency/concurrent-trading#sync-trade-transactions) Sync Trade Transactions ====================================================================================================================== Transactions that execute the full trade atomically in a single transaction are known as sync trade transactions. In these transactions, the user is signing a route plan which may adjust just-in-time (JIT) through DFlow JIT routing onchain. Sync trade transactions are fully backwards compatible with a UX that network users are familiar with today. ![Sync Trade Transaction](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/concurrency/Sync%20Trade.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=47dd663b6a07a81932a3040989f353ec) [​](https://pond.dflow.net/concepts/concurrency/concurrent-trading#async-trade-transactions) Async Trade Transactions ======================================================================================================================== Transactions that execute in two or more transactions are known as async trade transactions. In the first of these transactions, the user is signing an instruction to escrow funds into a permissionless and frozen escrow contract. This first transaction may also optionally contain a route plan that converts their input token into a different mint at the fair market rate prior to escrow. All subsequent transactions either contain zero or more fills. If there are zero fills, the order is canceled, the trade is reverted, with the funds returning to the user entirely. If the first transaction contains a route plan to convert an input mint into an escrow mint, the tokens which are escrowed are returned as-is. For the avoidance of doubt, in this case, the tokens are not returned in the same mint as originally held by the user. ![Async Trade Transaction](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/concurrency/Async%20Trade.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=aec88e90aa48f6216dea4f303d6143de) [Concurrent Liquidity Programs](https://pond.dflow.net/concepts/concurrency/clp) [Declarative Swaps](https://pond.dflow.net/concepts/declarative-swaps) ⌘I --- # Custom Slippage Tolerance - DFlow [Skip to main content](https://pond.dflow.net/concepts/custom-slippage-tolerance#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Slippage Tolerance Custom Slippage Tolerance [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [How Custom Slippage Works](https://pond.dflow.net/concepts/custom-slippage-tolerance#how-custom-slippage-works) * [Sequence of Events](https://pond.dflow.net/concepts/custom-slippage-tolerance#sequence-of-events) * [Frequently Asked Questions](https://pond.dflow.net/concepts/custom-slippage-tolerance#frequently-asked-questions) * [Get Started with the Swap API Today](https://pond.dflow.net/concepts/custom-slippage-tolerance#get-started-with-the-swap-api-today) Custom Slippage Tolerance gives traders full control over the maximum price deviation they are willing to accept. This allows users to tailor risk and execution behavior to their specific needs. To use Custom Slippage Tolerance, set the `slippageBps` parameter to a non-negative integer (u16) when calling the DFlow Swap API’s [Get Quote](https://pond.dflow.net/swap-api-reference/imperative/quote) or [Get Intent Quote](https://pond.dflow.net/swap-api-reference/declarative/quote) . The value is specified in basis points (1 bp = 0.01%) and defines the maximum allowed slippage for the swap. [​](https://pond.dflow.net/concepts/custom-slippage-tolerance#how-custom-slippage-works) How Custom Slippage Works --------------------------------------------------------------------------------------------------------------------- When using custom slippage, the trader explicitly sets the maximum allowed deviation from the quoted price. The swap will only execute if the final execution price is within this range. Choosing a very low slippage value may cause swaps to fail during periods of high market volatility. [​](https://pond.dflow.net/concepts/custom-slippage-tolerance#sequence-of-events) Sequence of Events ------------------------------------------------------------------------------------------------------- 1. The trader sets a custom slippage tolerance. 2. The swap is submitted via the API or UI. 3. DFlow validates that the execution price does not exceed the specified tolerance. 4. If the execution price is within tolerance, the swap executes; otherwise, it fails safely. [​](https://pond.dflow.net/concepts/custom-slippage-tolerance#frequently-asked-questions) Frequently Asked Questions ----------------------------------------------------------------------------------------------------------------------- What is Custom Slippage Tolerance? Custom Slippage Tolerance allows traders to manually define the maximum acceptable price deviation for a swap. How do I choose a slippage value? Consider market volatility, trade size, and liquidity depth. Higher values increase execution probability, lower values reduce potential price impact. What happens if the swap exceeds my tolerance? The swap fails safely without executing, protecting you from an unfavorable price. Can I use custom slippage with auto slippage? No — you must choose one method per swap. Auto slippage is fully managed by DFlow, while custom slippage is fully controlled by the trader. [​](https://pond.dflow.net/concepts/custom-slippage-tolerance#get-started-with-the-swap-api-today) Get Started with the [Swap API](https://pond.dflow.net/swap-api-reference/introduction) Today ==================================================================================================================================================================================================== [Auto Slippage Tolerance](https://pond.dflow.net/concepts/auto-slippage-tolerance) [Priority Fee Overview](https://pond.dflow.net/concepts/priority-fee-overview) ⌘I --- # Max Priority Fee - DFlow [Skip to main content](https://pond.dflow.net/concepts/max-priority-fee#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Priority Fees Max Priority Fee [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [How It Works](https://pond.dflow.net/concepts/max-priority-fee#how-it-works) * [Frequently Asked Questions](https://pond.dflow.net/concepts/max-priority-fee#frequently-asked-questions) * [Get Started with the Swap API Today](https://pond.dflow.net/concepts/max-priority-fee#get-started-with-the-swap-api-today) Max Priority Fee allows DFlow to dynamically choose an optimal fee, up to the maximum you specify. This balances execution speed with cost, ensuring you never pay more than your set limit. To use Max Priority Fee on the [Create Swap](https://pond.dflow.net/swap-api-reference/imperative/swap#body-prioritization-fee-lamports) endpoint, set the `prioritizationFeeLamports` parameter to `"auto"` (capped at 0.005 SOL) or to an object with `priorityLevelWithMaxLamports` containing `priorityLevel` and your chosen `maxLamports`.On the [Get Intent Quote](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-max-auto-fee-budget) endpoint, you can cap auto fees by setting the `maxAutoFeeBudget` parameter. [​](https://pond.dflow.net/concepts/max-priority-fee#how-it-works) How It Works ---------------------------------------------------------------------------------- * `priorityLevel` (medium, high, veryHigh) tells DFlow how aggressively to prioritize the swap. * `maxLamports` defines the maximum fee you are willing to pay. * DFlow selects an optimal fee based on network congestion, capped by your maximum. If both `computeUnitPriceMicroLamports` and `prioritizationFeeLamports` are unspecified, the default is `prioritizationFeeLamports: "auto"` (capped at 0.005 SOL). [​](https://pond.dflow.net/concepts/max-priority-fee#frequently-asked-questions) Frequently Asked Questions -------------------------------------------------------------------------------------------------------------- What is Max Priority Fee? A mode where DFlow automatically selects the optimal fee but ensures it never exceeds the cap you set. How should I set maxLamports? Choose a value high enough for fast execution under congestion, but not so high that you risk overpaying. What happens if the optimal fee is above my max? The swap may be delayed if your maximum is too low for current conditions. [​](https://pond.dflow.net/concepts/max-priority-fee#get-started-with-the-swap-api-today) Get Started with the [Swap API](https://pond.dflow.net/swap-api-reference/introduction) Today =========================================================================================================================================================================================== [Priority Fee Overview](https://pond.dflow.net/concepts/priority-fee-overview) [Exact Priority Fee](https://pond.dflow.net/concepts/exact-priority-fee) ⌘I --- # Imperative Swaps - DFlow [Skip to main content](https://pond.dflow.net/concepts/imperative-swaps#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Swap Modes Imperative Swaps [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) DFlow Swap API allows traders on the Solana network to swap tokens with the best trade routes instantly. Imperative Swaps, in contrast to [Declarative Swaps](https://pond.dflow.net/concepts/declarative-swaps) , give traders precise control over the route plan at signature time. ![Imperative Swaps](https://mintcdn.com/dflow/inKA-1NiPnQqEiVP/images/imperative-swaps-light.svg?w=2500&fit=max&auto=format&n=inKA-1NiPnQqEiVP&q=85&s=885007913f93d2a54e391d779e768848) ![Imperative Swaps](https://mintcdn.com/dflow/inKA-1NiPnQqEiVP/images/imperative-swaps-dark.svg?w=2500&fit=max&auto=format&n=inKA-1NiPnQqEiVP&q=85&s=088a4d06bcfd33f329378d490a99e539) [​](https://pond.dflow.net/concepts/imperative-swaps#get-started-with-the-swap-api-today) Get Started with the [Swap API](https://pond.dflow.net/swap-api-reference/introduction) Today =========================================================================================================================================================================================== [Declarative Swaps](https://pond.dflow.net/concepts/declarative-swaps) [Slippage Tolerance Overview](https://pond.dflow.net/concepts/slippage-tolerance-overview) ⌘I --- # Declarative Swaps - DFlow [Skip to main content](https://pond.dflow.net/concepts/declarative-swaps#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Swap Modes Declarative Swaps [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Declarative Swaps Transaction Structure](https://pond.dflow.net/concepts/declarative-swaps#declarative-swaps-transaction-structure) * [Open Order Transaction](https://pond.dflow.net/concepts/declarative-swaps#open-order-transaction) * [Fill Order Transaction](https://pond.dflow.net/concepts/declarative-swaps#fill-order-transaction) * [Sequence of Events](https://pond.dflow.net/concepts/declarative-swaps#sequence-of-events) * [Frequently Asked Questions](https://pond.dflow.net/concepts/declarative-swaps#frequently-asked-questions) * [Get Started with the Swap API Today](https://pond.dflow.net/concepts/declarative-swaps#get-started-with-the-swap-api-today) Declarative Swaps are lightweight multi-transaction swaps that offer a new trading paradigm on Solana that incurs less slippage, has greater sandwich protection, and is more flexible than imperative swaps. Declarative Swaps are a form of intent-based trading. [DFlow Swap API](https://pond.dflow.net/swap-api-reference/introduction) allows traders on Solana to swap tokens with Declarative Swaps. Read the [Declarative Swaps Token Quickstart](https://pond.dflow.net/quickstart/swap-tokens-declarative) to learn how to programmatically send Declarative Swaps on Solana. [​](https://pond.dflow.net/concepts/declarative-swaps#declarative-swaps-transaction-structure) Declarative Swaps Transaction Structure ----------------------------------------------------------------------------------------------------------------------------------------- Declarative Swaps are built on top of Jito bundles. The bundle structure contains an open order transaction followed by a fill transaction. ### [​](https://pond.dflow.net/concepts/declarative-swaps#open-order-transaction) Open Order Transaction The open order transaction is a trader-signed intention to trade. It contains a guaranteed minimum quote and slippage tolerance that must be met when the fill transaction is executed. The guaranteed minimum quote is calculated by a sophisticated split-route algorithm hosted by the DFlow Aggregator at the time of the quote request, and exclusively uses onchain prices from reliable DEXs like Raydium, Orca, Phoenix, Lifinity, and many more. The open order transaction transfers the trader’s funds to an escrow contract until the fill transaction is executed. The [DFlow Swap Orchestrator contract](https://solscan.io/account/DF1ow3DqMj3HvTj8i8J9yM2hE9hCrLLXpdbaKZu4ZPnz) acts as an escrow for the source token until the fill transaction is executed. DFlow Swap API’s quote endpoint returns an [open order transaction](https://pond.dflow.net/swap-api-reference/declarative/quote#response-open-transaction) that can be signed and sent to the DFlow Aggregator to be filled. When submitting the open order transaction to the DFlow Aggregator, the [submit endpoint](https://pond.dflow.net/swap-api-reference/declarative/submit#response-program-id) returns which program ID will act as the escrow for the source token. Developers should avoid hardcoding the Swap Orchestrator Program ID in their codebase. ### [​](https://pond.dflow.net/concepts/declarative-swaps#fill-order-transaction) Fill Order Transaction After the open order transaction is submitted to the DFlow Aggregator through the [submit-intent](https://pond.dflow.net/swap-api-reference/declarative/submit-intent) endpoint, the DFlow Aggregator will construct a fill transaction containing a fresh route plan. The fill transaction is then bundled with the open order transaction and sent to the network as a Jito bundle. This sequence of events minimizes latency between the route plan calculation and the transaction execution. An example of a Declarative Swap transaction can be found on [Solscan](https://solscan.io/account/FpB5223BuBTSkASpN43dnKnwtNgfwj15CKy9qZqu3UG7) . [​](https://pond.dflow.net/concepts/declarative-swaps#sequence-of-events) Sequence of Events ----------------------------------------------------------------------------------------------- Declarative swaps, in contrast to [imperative swaps](https://pond.dflow.net/concepts/imperative-swaps) , allow traders to declare an intent to swap, and then use a filler to execute the swap. ![Declarative Swaps](https://mintcdn.com/dflow/inKA-1NiPnQqEiVP/images/declarative-swaps-light.svg?w=2500&fit=max&auto=format&n=inKA-1NiPnQqEiVP&q=85&s=36f73423bf1351b88f12d5bf64c737ea) ![Declarative Swaps](https://mintcdn.com/dflow/inKA-1NiPnQqEiVP/images/declarative-swaps-dark.svg?w=2500&fit=max&auto=format&n=inKA-1NiPnQqEiVP&q=85&s=f3e1391c222ca704070371aa55760c3d) Declarative swaps are able to **incur less slippage and are protected against sandwiches**. These swaps calculate a final route adhering to the promised quote server-side immediately prior to the transaction being sent to the network. These swap transactions incur significantly less slippage due to the minimal latency between route calculation and the transaction execution onchain. [​](https://pond.dflow.net/concepts/declarative-swaps#frequently-asked-questions) Frequently Asked Questions --------------------------------------------------------------------------------------------------------------- What are Declarative Swaps? Declarative Swaps are lightweight multi-transaction swaps that offer a new trading paradigm on Solana that incurs less slippage, has greater sandwich protection, and is more flexible than imperative swaps. How are Declarative Swaps different from regular swaps? Declarative Swaps are built with intents. An intent is a transaction that contains an intention to trade at a guaranteed minimum price with a slippage tolerance. Where do quotes come from? Quotes come from the DFlow Aggregator. The Aggregator is a server-side program that calculates high-quality routes for a given swap through a series of DEXs including Raydium, Orca, Lifinity, and many more. Where does the liquidity come from? The liquidity is sourced exclusively from onchain DEXs. How do Declarative Swaps achieve lower slippage? Declarative Swaps defer route calculation until after the open order transaction is submitted to the DFlow Aggregator. This allows the Aggregator to calculate a final route adhering to the promised quote server-side immediately prior to the transaction being sent to the network. These swap transactions incur significantly less slippage due to the minimal latency between route calculation and the transaction execution onchain. What happens if the Jito bundle is unbundled? If the Jito bundle is unbundled, the Aggregator will automatically close the open order transaction and refund the trader. Traders can also manually close the open order and permissionlessly reclaim their source token funds. [​](https://pond.dflow.net/concepts/declarative-swaps#get-started-with-the-swap-api-today) Get Started with the [Swap API](https://pond.dflow.net/swap-api-reference/introduction) Today ============================================================================================================================================================================================ [Concurrent Trading](https://pond.dflow.net/concepts/concurrency/concurrent-trading) [Imperative Swaps](https://pond.dflow.net/concepts/imperative-swaps) ⌘I --- # Exact Priority Fee - DFlow [Skip to main content](https://pond.dflow.net/concepts/exact-priority-fee#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Priority Fees Exact Priority Fee [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [How It Works](https://pond.dflow.net/concepts/exact-priority-fee#how-it-works) * [Frequently Asked Questions](https://pond.dflow.net/concepts/exact-priority-fee#frequently-asked-questions) * [Get Started with the Swap API Today](https://pond.dflow.net/concepts/exact-priority-fee#get-started-with-the-swap-api-today) Exact Priority Fee lets traders specify a fixed fee in lamports. This fee will be used for every swap, regardless of network congestion. To use Exact Priority Fee on the [Create Swap](https://pond.dflow.net/swap-api-reference/imperative/swap#body-prioritization-fee-lamports) endpoint, set the `prioritizationFeeLamports` parameter to your desired priority fee.To set an Exact Priority Fee using the [Get Intent Quote](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-fee-budget) endpoint, set the `feeBudget` parameter to your desired priority fee **plus** the base processing fee (10,000 lamports). When using [Get Intent Quote](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-fee-budget) , remember to add the base processing fee (10,000 lamports) to your desired priority fee when setting `feeBudget`. Example: For a 5,000 lamport priority fee, set `feeBudget` to 15,000 lamports. [​](https://pond.dflow.net/concepts/exact-priority-fee#how-it-works) How It Works ------------------------------------------------------------------------------------ * The fee you specify will always be applied. * No automatic adjustments are made. * If the network requires higher fees, your swap may be delayed or fail. The priority fee must always be at least 1 lamport; otherwise the swap will never be processed. [​](https://pond.dflow.net/concepts/exact-priority-fee#frequently-asked-questions) Frequently Asked Questions ---------------------------------------------------------------------------------------------------------------- What is Exact Priority Fee? A mode where the fee is fixed and always set to the specified value. When should I use Exact Priority Fee? When you need predictable costs and are comfortable with the risk of delayed execution if the fee is too low. How do I choose between Exact and Max Priority Fees? If you need full control over the exact lamports paid per transaction (e.g. for cost predictability or strict budgeting), use Exact. If you prefer the network to dynamically adjust fees for speed while still respecting a maximum cap, use Max. [​](https://pond.dflow.net/concepts/exact-priority-fee#get-started-with-the-swap-api-today) Get Started with the [Swap API](https://pond.dflow.net/swap-api-reference/introduction) Today ============================================================================================================================================================================================= [Max Priority Fee](https://pond.dflow.net/concepts/max-priority-fee) [Platform Fees Overview](https://pond.dflow.net/concepts/platform-fees-overview) ⌘I --- # Platform Fees Overview - DFlow [Skip to main content](https://pond.dflow.net/concepts/platform-fees-overview#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Platform Fees Platform Fees Overview [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Use Case](https://pond.dflow.net/concepts/platform-fees-overview#use-case) * [Platform Fee Parameters](https://pond.dflow.net/concepts/platform-fees-overview#platform-fee-parameters) * [platformFeeMode](https://pond.dflow.net/concepts/platform-fees-overview#platformfeemode) * [platformFeeBps](https://pond.dflow.net/concepts/platform-fees-overview#platformfeebps) * [platformFeeScale](https://pond.dflow.net/concepts/platform-fees-overview#platformfeescale) * [Fee Account Requirements](https://pond.dflow.net/concepts/platform-fees-overview#fee-account-requirements) * [Related Resources](https://pond.dflow.net/concepts/platform-fees-overview#related-resources) Platform fees allow integrators to monetize their DFlow integrations by collecting fees on trades executed through their applications. By default, there are zero protocol fees on DFlow trades. Integrators can optionally introduce a platform fee by specifying fee parameters on DFlow’s API endpoints. DFlow supports two types of platform fees: **Fixed** and **Dynamic**. * **Fixed Platform Fees**: A simple percentage-based fee specified in basis points. * **Dynamic Platform Fees**: A price-dependent fee that scales with market probability, used specifically for prediction market [outcome token](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#outcome-token) trades. [Implement Platform Fees\ -----------------------\ \ Step-by-step guide to implementing platform fees with code examples for all trade types.](https://pond.dflow.net/quickstart/platform-fees) [​](https://pond.dflow.net/concepts/platform-fees-overview#use-case) Use Case -------------------------------------------------------------------------------- Integrators building applications on top of DFlow can collect platform fees on every trade executed through their integration. This enables monetization of your integration while providing value to end users through DFlow’s aggregated liquidity and routing. Platform fees are specified in basis points (1 basis point = 0.01%). For example, a 20 bps fee equals 0.2% of the trade amount. You can collect fees from either the input or output token of the swap, depending on your configuration. [​](https://pond.dflow.net/concepts/platform-fees-overview#platform-fee-parameters) Platform Fee Parameters -------------------------------------------------------------------------------------------------------------- DFlow provides three key parameters for configuring platform fees: ### [​](https://pond.dflow.net/concepts/platform-fees-overview#platformfeemode) platformFeeMode Controls which token the platform fee is collected from. See the [`platformFeeMode`](https://pond.dflow.net/swap-api-reference/order/order#parameter-platform-fee-mode) parameter in the API reference. * **`outputMint`** (default): Fee is collected from the output token of the swap * **`inputMint`**: Fee is collected from the input token of the swap For outcome token trades, `platformFeeMode` is ignored and the fee is always collected in the settlement mint. ### [​](https://pond.dflow.net/concepts/platform-fees-overview#platformfeebps) platformFeeBps A fixed platform fee specified in basis points (1 basis point = 0.01%). See the [`platformFeeBps`](https://pond.dflow.net/swap-api-reference/order/order#parameter-platform-fee-bps) parameter in the API reference. * Example: `platformFeeBps: 50` means a 0.5% fee * The fee is calculated as a percentage of the trade amount * Can be collected from either input or output mint based on `platformFeeMode` ### [​](https://pond.dflow.net/concepts/platform-fees-overview#platformfeescale) platformFeeScale A dynamic fee scale used specifically for outcome token trades. See the [`platformFeeScale`](https://pond.dflow.net/swap-api-reference/order/order#parameter-platform-fee-scale) parameter in the API reference. The fee is calculated using the formula: **`k * p * (1 - p) * c`** Where: * **`k`** = `platformFeeScale` (with 3 decimals precision, e.g., `50` = 0.050) * **`p`** = all-in price (includes all fees + filled price) * **`c`** = contract size When `p = 1` ([redemption](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#redemption) of a winning outcome), the fee is zero. Users do not pay a fee for outcome mint redemption. [​](https://pond.dflow.net/concepts/platform-fees-overview#fee-account-requirements) Fee Account Requirements ---------------------------------------------------------------------------------------------------------------- To collect platform fees, you must specify a [`feeAccount`](https://pond.dflow.net/swap-api-reference/order/order#parameter-fee-account) parameter on the API endpoints: * The fee account must be a valid token account that matches the fee mint (input or output token, depending on `platformFeeMode`) * For outcome token trades, the fee account must be a settlement mint account * The fee account must be initialized before the trade executes You can use the [`referralAccount`](https://pond.dflow.net/swap-api-reference/order/order#parameter-referral-account) parameter to automatically create the fee account if it doesn’t exist. The fee account will be derived from the referral account using the Referral program. The fee account must match the token you’re collecting fees in. For example, if you’re collecting fees from the output mint (USDC), the fee account must be a USDC token account. You cannot collect fees in a token that isn’t part of the swap. [​](https://pond.dflow.net/concepts/platform-fees-overview#related-resources) Related Resources -------------------------------------------------------------------------------------------------- [Order Endpoint Reference\ ------------------------\ \ Complete API reference for the `/order` endpoint, including all platform fee parameters.](https://pond.dflow.net/swap-api-reference/order/order) [Quote Endpoint Reference\ ------------------------\ \ API reference for the `/quote` endpoint for imperative swaps.](https://pond.dflow.net/swap-api-reference/imperative/quote) [Intent Endpoint Reference\ -------------------------\ \ API reference for the `/intent` endpoint for declarative swaps.](https://pond.dflow.net/swap-api-reference/declarative/quote) [Concurrent Trading\ ------------------\ \ Learn about sync and async trade execution modes.](https://pond.dflow.net/concepts/concurrency/concurrent-trading) [Exact Priority Fee](https://pond.dflow.net/concepts/exact-priority-fee) ⌘I --- # Prediction Market Terminology - DFlow [Skip to main content](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets Prediction Market Terminology [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [A](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#a) * [Asynchronous Trade](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#asynchronous-trade) * [E](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#e) * [Event](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#event) * [I](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#i) * [Increase Position](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#increase-position) * [M](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#m) * [Market](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#market) * [Market Ledger](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#market-ledger) * [Market Tokenization](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#market-tokenization) * [O](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#o) * [Outcome Token](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#outcome-token) * [R](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#r) * [Reduce Order Escrow](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#reduce-order-escrow) * [Reduce Position](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#reduce-position) * [Redemption](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#redemption) * [Redemption Vault](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#redemption-vault) * [S](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#s) * [Series](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#series) * [Settlement](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#settlement) * [Settlement Authority](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#settlement-authority) * [Settlement Mint](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#settlement-mint) * [Settlement Vault](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#settlement-vault) * [Synchronous Trade](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#synchronous-trade) * [U](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#u) * [User Order Escrow](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#user-order-escrow) [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#a) A ------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#asynchronous-trade) Asynchronous Trade A multi-transaction trade execution mode where the trade may be completed across multiple transactions. [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#e) E ------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#event) Event A real-world occurrence or question that prediction markets are based on. Events have a ticker, title, subtitle, and can contain multiple markets. Events are organized into series. [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#i) I ------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#increase-position) Increase Position The act of opening a new order to increase your position in an event outcome. When an increase order is filled, outcome tokens are minted to the trader’s wallet. Stablecoins are transferred to the Settlement Vault, and platform fees are collected. [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#m) M ------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#market) Market A specific binary market within an event that allows traders to bet on a particular outcome. Each market has YES and NO outcome tokens. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#market-ledger) Market Ledger An account that stores the outcome determination for a market. The Settlement Authority writes the determined outcome into this account when an event is settled. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#market-tokenization) Market Tokenization The process of creating outcome tokens (YES and NO tokens) on-chain for a prediction market. When a market is tokenized, it becomes “initialized” and traders can begin trading its outcome tokens. Markets can be tokenized on-demand when the first trade is placed. [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#o) O ------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#outcome-token) Outcome Token Tokens that represent positions in a prediction market outcome. Each market has two types of outcome tokens: YES tokens (representing a position that the outcome will occur) and NO tokens (representing a position that the outcome will not occur). [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#r) R ------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#reduce-order-escrow) Reduce Order Escrow An on-chain account that holds outcome tokens when a trader initiates a reduce position order. The tokens are transferred to this account before the order is filled. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#reduce-position) Reduce Position The act of selling existing outcome tokens back for stablecoins to decrease your position in an event outcome. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#redemption) Redemption The process of exchanging outcome tokens for stablecoins after a market has been settled and the outcome has been determined. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#redemption-vault) Redemption Vault An on-chain account that holds stablecoins for redeemed outcome tokens. After settlement, the Settlement Authority transfers funds from the Settlement Vault to the Redemption Vault, enabling traders to redeem their winning positions. [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#s) S ------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#series) Series A collection of related events, typically organized around a common theme or category. Events within a series share a series ticker identifier. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#settlement) Settlement The process of determining the final outcome of an event and making funds available for redemption. The Settlement Authority determines the outcome, writes it to the Market Ledger, and funds the outcome by transferring stablecoins to the Redemption Vault. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#settlement-authority) Settlement Authority The entity responsible for determining event outcomes, filling orders, and managing the settlement process. The Settlement Authority reads orders from escrow accounts, interacts with offchain liquidity providers, and executes the settlement workflow. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#settlement-mint) Settlement Mint A stablecoin that serves as the intermediary token in all prediction market trades. All trades flow through the settlement mint, converting from the user’s input token to the settlement mint, then to outcome tokens. When outcome tokens are redeemed, payouts are made in the settlement mint. The settlement mint is used as the key in the `accounts` object within market data. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#settlement-vault) Settlement Vault An on-chain account that holds stablecoins collected from increase position orders. When positions are increased, stablecoins are transferred to this vault. During settlement, funds are moved from the Settlement Vault to the Redemption Vault. ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#synchronous-trade) Synchronous Trade An atomic, single-transaction trade execution mode where the entire trade is completed in one transaction. [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#u) U ------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#user-order-escrow) User Order Escrow An on-chain account that holds the limit price and trade side (YES or NO) for increase position orders. Stablecoins are transferred to this account when an increase order is executed. [Prediction Markets Overview](https://pond.dflow.net/concepts/prediction/prediction-markets) [Series, Events, and Markets](https://pond.dflow.net/concepts/prediction/series-events-markets) ⌘I --- # Overview - DFlow [Skip to main content](https://pond.dflow.net/concepts/overview#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Concepts Overview [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) DFlow provides a comprehensive trading infrastructure for Solana, supporting both spot and prediction markets. Explore the concepts below to understand how to build with DFlow. [​](https://pond.dflow.net/concepts/overview#prediction-markets) Prediction Markets -------------------------------------------------------------------------------------- DFlow provides full infrastructure for on-chain prediction markets. Build applications that enable users to discover markets, trade outcome tokens, track positions, and redeem payouts. [Prediction Markets\ ------------------\ \ Complete guide to building with DFlow’s prediction market infrastructure. Learn about the complete lifecycle, trade mechanics, and core primitives.](https://pond.dflow.net/concepts/prediction/prediction-markets) [​](https://pond.dflow.net/concepts/overview#trade-api) Trade API -------------------------------------------------------------------- The DFlow Trade API offers a unified interface for trading across both spot and prediction markets. [Trade API Overview\ ------------------\ \ Learn how the Trade API handles both synchronous and asynchronous execution modes for spot and prediction market trading.](https://pond.dflow.net/concepts/trade-api) [Concurrent Liquidity Programs\ -----------------------------\ \ Understand how CLPs enable trading seamlessly against offchain liquidity providers through multi-transaction trades.](https://pond.dflow.net/concepts/concurrency/clp) [Async & Sync Trades\ -------------------\ \ Learn the difference between synchronous (atomic) and asynchronous (multi-transaction) trade execution modes.](https://pond.dflow.net/concepts/concurrency/concurrent-trading) [​](https://pond.dflow.net/concepts/overview#swap-modes) Swap Modes ---------------------------------------------------------------------- Choose between declarative and imperative swap modes based on your trading needs. [Declarative Swaps\ -----------------\ \ Swap tokens with less slippage, lower latency, and better pricing. Routes are optimized at execution time.](https://pond.dflow.net/concepts/declarative-swaps) [Imperative Swaps\ ----------------\ \ Swap tokens with full control over transaction execution. Review and approve the exact route before signing.](https://pond.dflow.net/concepts/imperative-swaps) [​](https://pond.dflow.net/concepts/overview#trading-configuration) Trading Configuration -------------------------------------------------------------------------------------------- Customize your trading experience with slippage tolerance and priority fee settings. [Slippage Tolerance\ ------------------\ \ Configure how much price movement you’re willing to accept during trades. Choose between auto and custom slippage settings.](https://pond.dflow.net/concepts/slippage-tolerance-overview) [Priority Fees\ -------------\ \ Control transaction priority and execution speed with exact or max priority fee configurations.](https://pond.dflow.net/concepts/priority-fee-overview) [Prediction Markets Overview](https://pond.dflow.net/concepts/prediction/prediction-markets) ⌘I --- # Increase Position - DFlow [Skip to main content](https://pond.dflow.net/concepts/prediction/increase#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets Increase Position [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) 1 Open Increase Order Traders can open a new order to increase their position by writing the limit price and trade side to the `User Order Escrow` account. This account will contain the limit price and side, `Yes` or `No`, of the order.The stablecoin of choice, either USDC or CASH, are transferred to the `User Order Escrow` account upon execution of the order.![Increase Position](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/prediction/Open%20Order.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=837a40b57b069c83430c16acfc18ba3c) 2 Fill Increase Order The Settlement Authority reads the limit price and side from the `User Order Escrow` account and sends a limit IOC order to offchain liquidity the trader is interacting with. Upon receiving the order acknowledgement from the offchain liquidity provider, the Settlement Authority will fill the onchain order.The `OutcomeToken`s are minted to the trader’s wallet, unused stablecoins are refunded to the trader, the `PlatformFee` is transferred to the fee receiver, and the stablecoins are transferred to the `Settlement Vault` account.![Increase Position](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/prediction/Fill%20Open.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=08f3a04a446b781f85199ac101861de0) [From Spot Tokens to Prediction Market Positions](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions) [Reduce Position](https://pond.dflow.net/concepts/prediction/reduce) ⌘I --- # Reduce Position - DFlow [Skip to main content](https://pond.dflow.net/concepts/prediction/reduce#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets Reduce Position [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) 1 Open Reduce Order Traders can reduce their existing position by writing the limit price and trade side to the `Reduce Order Escrow` account. Upon processing this transaction, the `OutcomeToken`s are transferred to the `Reduce Order Escrow` account.![Reduce Position](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/prediction/Reduce%20Order.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=46e206f81e901454e2fa030b98bea3e3) 2 Fill Reduce Order Reduction may require asynchronous behavior, as there may exist a race condition between the balancing of onchain stablecoin reserve vaults and offchain fiat vaults. Therefore, there are two paths that may be taken. Synchronous Reduction The Settlement Authority reads the limit price and side from the `Reduce Order Escrow` account, sends a limit IOC order to offchain liquidity from the trader’s wallet.Upon receiving the order acknowledgement from the offchain liquidity provider, the Settlement Authority will fill the onchain order.The unused `OutcomeToken`s are refunded to the trader, the `PlatformFee` is transferred to the fee receiver, and the stablecoins are transferred from the `Settlement Vault` account to the trader’s wallet.![Reduce Position](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/prediction/Fund%20Reduce.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=612ab09371463036352f9ccb54342c23) Asynchronous Reduction The Settlement Authority reads the limit price and side from the `Reduce Order Escrow` account, sends a limit IOC order to offchain liquidity from the trader’s wallet.Upon receiving the order acknowledgement from the offchain liquidity provider, the Settlement Authority will fill the onchain order, but avoid settling the event.The unused `OutcomeToken`s are refunded to the trader.![Settle Reduce Position](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/prediction/Fill%20Reduce%20No%20Settle.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=beaf9fd7fef964852191c47d5c3fd4b2)Later, upon the stabelcoin reserve vaults being balanced, the Settlement Authority will settle the event and fund the outcome. Stablecoins are transferred from the `Settlement Vault` account to the trader’s wallet. The `PlatformFee` is transferred to the fee receiver.![Fund Reduce Position](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/prediction/Fund%20Reduce.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=612ab09371463036352f9ccb54342c23) [Increase Position](https://pond.dflow.net/concepts/prediction/increase) [Event Settlement and Redemption](https://pond.dflow.net/concepts/prediction/settle) ⌘I --- # Priority Fee Overview - DFlow [Skip to main content](https://pond.dflow.net/concepts/priority-fee-overview#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Priority Fees Priority Fee Overview [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Priority fees are additional fees paid to Solana validators to prioritize transaction execution. Higher fees improve the chances of fast confirmation, while lower fees reduce cost but may delay execution. DFlow supports two approaches to setting priority fees: **Max** and **Exact**. * **Max Priority Fee**: DFlow selects the optimal fee based on network conditions, capped at a trader-defined maximum. * **Exact Priority Fee**: The fee is fixed and always set to the trader-defined amount. [Max Priority Fee\ ----------------\ \ DFlow automatically chooses the optimal fee for each swap, up to a maximum you define.](https://pond.dflow.net/concepts/max-priority-fee) [Exact Priority Fee\ ------------------\ \ You specify a fixed fee that is always used, regardless of network conditions.](https://pond.dflow.net/concepts/exact-priority-fee) [Custom Slippage Tolerance](https://pond.dflow.net/concepts/custom-slippage-tolerance) [Max Priority Fee](https://pond.dflow.net/concepts/max-priority-fee) ⌘I --- # Slippage Tolerance Overview - DFlow [Skip to main content](https://pond.dflow.net/concepts/slippage-tolerance-overview#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Slippage Tolerance Slippage Tolerance Overview [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Slippage tolerance defines how much the execution price of a swap can move from the quoted price before the trade is rejected. Market volatility, liquidity depth, and transaction speed can all affect the final price. A higher tolerance makes it more likely that your swap succeeds, while a lower tolerance helps protect you from unfavorable price movement. DFlow supports two approaches to managing slippage: automatic and custom. Automatic tolerance adjusts dynamically to market conditions, while custom tolerance gives traders direct control over the limit they are comfortable with. [Auto Slippage Tolerance\ -----------------------\ \ Automatically determines an optimal slippage tolerance for each swap, balancing price protection and execution probability.](https://pond.dflow.net/concepts/auto-slippage-tolerance) [Custom Slippage Tolerance\ -------------------------\ \ Lets traders explicitly set their maximum slippage tolerance, matching their individual risk and execution preferences.](https://pond.dflow.net/concepts/custom-slippage-tolerance) [Imperative Swaps](https://pond.dflow.net/concepts/imperative-swaps) [Auto Slippage Tolerance](https://pond.dflow.net/concepts/auto-slippage-tolerance) ⌘I --- # From Spot Tokens to Prediction Market Positions - DFlow [Skip to main content](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets From Spot Tokens to Prediction Market Positions [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Trading Flow Overview](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#trading-flow-overview) * [Transaction Flow](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#transaction-flow) * [Market Initialization States](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#market-initialization-states) * [Initialized Markets](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#initialized-markets) * [Uninitialized Markets](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#uninitialized-markets) * [Checking Market Status](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#checking-market-status) * [Key Takeaways](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#key-takeaways) * [Related Resources](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#related-resources) The DFlow Trade API’s [`/order`](https://pond.dflow.net/swap-api-reference/order/order) endpoint enables trading from any spot token to a prediction market outcome token, including market tokenization when needed. [​](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#trading-flow-overview) Trading Flow Overview ----------------------------------------------------------------------------------------------------------------------------------- When you want to trade a spot token for a prediction market outcome token, the `/order` endpoint orchestrates the entire transaction flow behind the scenes. The endpoint automatically: 1. Detects whether the target market has been tokenized (initialized) 2. Executes a two-step swap path: Input Token → Settlement Mint → Outcome Token 3. Handles market tokenization if the market hasn’t been initialized yet The `/order` endpoint accepts any spot token as `inputMint` and any outcome token mint as `outputMint`. The endpoint automatically constructs the appropriate transaction path based on the market’s initialization status. [​](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#transaction-flow) Transaction Flow ------------------------------------------------------------------------------------------------------------------------- All trades from spot tokens to outcome tokens follow a two-step swap path that route through the settlement mint as an intermediate step: 1. **Input Token → Settlement Mint** 2. **Settlement Mint → Outcome Token** The `/order` endpoint returns a single transaction that executes both swaps. [​](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#market-initialization-states) Market Initialization States ------------------------------------------------------------------------------------------------------------------------------------------------- The `/order` endpoint automatically detects whether the target market has been tokenized and handles the transaction accordingly: ### [​](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#initialized-markets) Initialized Markets When a market has already been tokenized, the transaction executes the two-step swap path directly: **Input Token → Settlement Mint → Outcome Token** ### [​](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#uninitialized-markets) Uninitialized Markets When a market hasn’t been tokenized yet, the `/order` endpoint automatically includes market tokenization in the transaction before executing the swap: **Market Tokenization + (Input Token → Settlement Mint → Outcome Token)** The transaction will: 1. First perform on-demand market tokenization (creating the YES and NO outcome tokens on-chain) 2. Then execute the two-step swap: Input Token → Settlement Mint → Outcome Token On-demand market creation (tokenization) incurs a small fee. This fee is automatically included in the transaction when trading into an uninitialized market. ### [​](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#checking-market-status) Checking Market Status You can check a market’s initialization status using the [Prediction Market Metadata API](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets) . The `isInitialized` field in the market response indicates whether the market has been tokenized: * `isInitialized: true` - Market is already tokenized; direct swap path * `isInitialized: false` - Market needs tokenization; transaction will include initialization While you can check this status for informational purposes, the `/order` endpoint handles the detection automatically, so you don’t need to check beforehand. [​](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#key-takeaways) Key Takeaways ------------------------------------------------------------------------------------------------------------------- * The `/order` endpoint accepts any spot token as input and any outcome token as output * All trades execute through the settlement mint as an intermediate step: Input Token → Settlement Mint → Outcome Token * For initialized markets, the transaction executes the swap path directly * For uninitialized markets, the transaction includes market tokenization before executing the swap path * On-demand market creation (tokenization) incurs a small fee * The endpoint automatically detects market initialization status and constructs the appropriate transaction * You can check `isInitialized` via the metadata API [​](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions#related-resources) Related Resources --------------------------------------------------------------------------------------------------------------------------- [Order Endpoint Reference\ ------------------------\ \ Complete API reference for the `/order` endpoint, including all parameters and response formats](https://pond.dflow.net/swap-api-reference/order/order) [Trade Tokens Quickstart\ -----------------------\ \ Learn how to use the DFlow Trade API to execute trades programmatically](https://pond.dflow.net/quickstart/trade-tokens) [Markets API Reference\ ---------------------\ \ Query market data including initialization status and outcome token addresses](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets) [Discover Prediction Tokens\ --------------------------\ \ Learn how to find markets and access outcome token mint addresses for trading](https://pond.dflow.net/quickstart/discover-prediction-tokens) [Series, Events, and Markets](https://pond.dflow.net/concepts/prediction/series-events-markets) [Increase Position](https://pond.dflow.net/concepts/prediction/increase) ⌘I --- # DFlow Trade API Overview - DFlow [Skip to main content](https://pond.dflow.net/concepts/trade-api#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trade API DFlow Trade API Overview [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Sync Trade Transactions](https://pond.dflow.net/concepts/trade-api#sync-trade-transactions) * [Async Trade Transactions](https://pond.dflow.net/concepts/trade-api#async-trade-transactions) DFlow Trade API offers a fully featured trading API for Solana, across spot and prediction markets. Consumers of DFlow Trade API will follow the pattern of opening an order, and monitoring its status. [Opening an Order\ ----------------\ \ Opening an order is the first step in trading on DFlow. It involves creating an order and submitting it to the DFlow Trade API.](https://pond.dflow.net/swap-api-reference/order/order) [Monitoring an Order\ -------------------\ \ Monitoring an order is the process of tracking the status of an order as it is executed.](https://pond.dflow.net/swap-api-reference/order/order-status) [​](https://pond.dflow.net/concepts/trade-api#sync-trade-transactions) Sync Trade Transactions ================================================================================================= Sync Trade Transactions are trade transactions that are executed atomically in a single transactions. Most SPL token spot trades are executed as sync trade transactions. ![Sync Trade Transaction](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/concurrency/Sync%20Trade.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=47dd663b6a07a81932a3040989f353ec) [​](https://pond.dflow.net/concepts/trade-api#async-trade-transactions) Async Trade Transactions =================================================================================================== The only Async Trade Transactions are prediction market trades that interact with Concurrent Liquidity Programs. ![Async Trade Transaction](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/concurrency/Async%20Trade.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=aec88e90aa48f6216dea4f303d6143de) [Event Settlement and Redemption](https://pond.dflow.net/concepts/prediction/settle) [Concurrent Liquidity Programs](https://pond.dflow.net/concepts/concurrency/clp) ⌘I --- # Event Settlement and Redemption - DFlow [Skip to main content](https://pond.dflow.net/concepts/prediction/settle#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets Event Settlement and Redemption [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) 1 Determine Event Outcome The Settlement Authority determines the outcome of an event, and writes it into the `Market Ledger` account.![Determine Event Outcome](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/prediction/Determine%20Outcome.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=4fd0d861ed2d87c6e3a9b04f48a3856f) 2 Fund Outcome The Settlement Authority funds the outcome by transferring the stablecoins from the `Settlement Vault` account to the `Redemption Vault` account.![Fund Outcome](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/prediction/Fund%20Outcome.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=905ebf48c496d150ddb121c77363801e) 3 Redeem Payouts Traders can redeem their payout by trading their expired `OutcomeToken`s for the stablecoin they opened their position with.![Redeem Payouts](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/prediction/Redeem.png?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=5fc7825d1ba670b3b68d2a01b9a96244) [Reduce Position](https://pond.dflow.net/concepts/prediction/reduce) [DFlow Trade API Overview](https://pond.dflow.net/concepts/trade-api) ⌘I --- # Series, Events, and Markets - DFlow [Skip to main content](https://pond.dflow.net/concepts/prediction/series-events-markets#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets Series, Events, and Markets [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Hierarchy Overview](https://pond.dflow.net/concepts/prediction/series-events-markets#hierarchy-overview) * [Series](https://pond.dflow.net/concepts/prediction/series-events-markets#series) * [Series Properties](https://pond.dflow.net/concepts/prediction/series-events-markets#series-properties) * [Events](https://pond.dflow.net/concepts/prediction/series-events-markets#events) * [Event Properties](https://pond.dflow.net/concepts/prediction/series-events-markets#event-properties) * [Markets](https://pond.dflow.net/concepts/prediction/series-events-markets#markets) * [Market Properties](https://pond.dflow.net/concepts/prediction/series-events-markets#market-properties) * [Working with the Hierarchy](https://pond.dflow.net/concepts/prediction/series-events-markets#working-with-the-hierarchy) * [Discovery Flow](https://pond.dflow.net/concepts/prediction/series-events-markets#discovery-flow) * [Direct Market Access](https://pond.dflow.net/concepts/prediction/series-events-markets#direct-market-access) * [Key Takeaways](https://pond.dflow.net/concepts/prediction/series-events-markets#key-takeaways) * [Related Resources](https://pond.dflow.net/concepts/prediction/series-events-markets#related-resources) Prediction markets are organized in a three-level hierarchy: **Series**, **Events**, and **Markets**. Understanding this structure is essential for discovering and trading prediction market outcome tokens. [​](https://pond.dflow.net/concepts/prediction/series-events-markets#hierarchy-overview) Hierarchy Overview -------------------------------------------------------------------------------------------------------------- The prediction market structure follows this hierarchy: 1. **Series** - Collections of related events organized around a common theme 2. **Events** - Real-world occurrences or questions that contain one or more markets 3. **Markets** - Individual binary markets that traders interact with When building discovery UIs, you’ll typically start by querying series or events, then drill down to specific markets to access token addresses for trading. See the [Discover Prediction Tokens](https://pond.dflow.net/quickstart/discover-prediction-tokens) guide for practical examples. [​](https://pond.dflow.net/concepts/prediction/series-events-markets#series) Series -------------------------------------------------------------------------------------- A **series** is a collection of related events that share a common theme, category, or pattern. Events within a series typically: * Look at similar data for outcome determination * Cover disjoint time periods (e.g., weekly earnings announcements, daily weather forecasts) * Have no logical outcome dependency between events Series serve as templates for recurring events. For example, a “Weekly Earnings Reports” series might contain multiple events, each representing a different company’s quarterly earnings announcement. ### [​](https://pond.dflow.net/concepts/prediction/series-events-markets#series-properties) Series Properties Series include metadata such as: * **Ticker**: Unique identifier used to filter events (e.g., `EARNINGS-Q1`) * **Title**: Human-readable series name * **Category**: Organizational category (e.g., “Finance”, “Technology”) * **Tags**: Associated tags for filtering (e.g., “Earnings”, “Stocks”) * **Frequency**: How often events in this series occur (e.g., “Daily”, “Weekly”) You can query series using the [Series API endpoints](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series) and filter events by series ticker to discover related markets. [​](https://pond.dflow.net/concepts/prediction/series-events-markets#events) Events -------------------------------------------------------------------------------------- An **event** is a real-world occurrence or question that prediction markets are based on. Events are the primary unit that applications should interact with when building prediction market UIs. Events can contain: * **Single Market Event**: One market * **Group Market Event**: Two or more related markets For example, an event titled “Which city will host the 2030 World Expo?” might contain 5 separate markets, each asking whether a specific city (e.g., Riyadh, Busan, Rome) will be selected as the host. ### [​](https://pond.dflow.net/concepts/prediction/series-events-markets#event-properties) Event Properties Events include: * **Ticker**: Unique identifier for the event * **Title**: Human-readable event name * **Subtitle**: Additional context or description * **Series Ticker**: Links the event to its parent series * **Markets**: Array of markets associated with the event (when requested with `withNestedMarkets=true`) Events are organized into series and can be queried using the [Events API endpoints](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events) . When fetching events with `withNestedMarkets=true`, you’ll receive the associated markets nested within each event response. [​](https://pond.dflow.net/concepts/prediction/series-events-markets#markets) Markets ---------------------------------------------------------------------------------------- A **market** is the fundamental trading unit: a specific binary market that allows traders to bet on a particular outcome. Each market has two outcome tokens: * **YES tokens**: Represent a position that the outcome will occur * **NO tokens**: Represent a position that the outcome will not occur Markets contain the on-chain token addresses (`yesMint` and `noMint`) that you use when trading through the DFlow Trade API. ### [​](https://pond.dflow.net/concepts/prediction/series-events-markets#market-properties) Market Properties Markets include: * **Ticker**: Unique identifier for the market * **Title**: Market question or description * **Status**: Current market status (e.g., `active`, `initialized`, `settled`) * **Accounts**: Object containing token addresses (`yesMint`, `noMint`) keyed by settlement mint * **Volume**: Trading volume for the market * **Open Interest**: Current open positions * **Timing**: Open time, close time, and expiration time You can query markets directly using the [Markets API endpoints](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets) or access them nested within event responses. [​](https://pond.dflow.net/concepts/prediction/series-events-markets#working-with-the-hierarchy) Working with the Hierarchy ------------------------------------------------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/concepts/prediction/series-events-markets#discovery-flow) Discovery Flow When building discovery UIs, you’ll typically follow this flow: 1. **Start with Series or Categories**: Query series by category or tags to find relevant themes 2. **Filter Events**: Use series tickers to filter events, or query events directly with status filters 3. **Access Markets**: Request events with `withNestedMarkets=true` to get market data including token addresses ### [​](https://pond.dflow.net/concepts/prediction/series-events-markets#direct-market-access) Direct Market Access You can also query markets directly by mint address or market ticker: * Use [`/api/v1/markets/by-mint/{mint_address}`](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint) to look up a market from any associated mint address * Use [`/api/v1/markets`](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets) to query markets with various filters [​](https://pond.dflow.net/concepts/prediction/series-events-markets#key-takeaways) Key Takeaways ---------------------------------------------------------------------------------------------------- * **Series** organize related events around common themes and categories * **Events** are the primary interaction unit and can contain one or more markets * **Markets** are the fundamental trading units with YES/NO outcome tokens * Use the Events API with `withNestedMarkets=true` to efficiently discover markets * Market `accounts` objects contain the token addresses needed for trading [​](https://pond.dflow.net/concepts/prediction/series-events-markets#related-resources) Related Resources ------------------------------------------------------------------------------------------------------------ [Discover Prediction Market Outcome Tokens\ -----------------------------------------\ \ Learn how to use the Prediction Market Metadata API to discover markets and access token addresses](https://pond.dflow.net/quickstart/discover-prediction-tokens) [Events API Reference\ --------------------\ \ Complete reference for querying events and filtering by series, status, and other parameters](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events) [Markets API Reference\ ---------------------\ \ Access market data, token addresses, pricing, and trading information](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets) [Series API Reference\ --------------------\ \ Query series templates and filter by categories and tags](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series) [Prediction Market Terminology](https://pond.dflow.net/concepts/prediction/prediction-market-terminology) [From Spot Tokens to Prediction Market Positions](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions) ⌘I --- # Welcome to DFlow - DFlow [Skip to main content](https://pond.dflow.net/introduction#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Get Started Welcome to DFlow [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Build with DFlow ================ Build institution-grade trading experiences across spot and prediction markets natively on Solana with a single, unified platform. [Quickstart Cookbook](https://pond.dflow.net/quickstart/cookbook) [Explore Concepts](https://pond.dflow.net/concepts/overview) [View API References](https://pond.dflow.net/swap-api-reference/introduction) Who Builds on DFlow? -------------------- DFlow powers intelligent trade execution on Solana for: * Trading Applications & Wallets: Offer “trade any token” with smart order routing, best price, and near-complete token coverage on Solana. * Exchanges & Aggregators: Plug into tens of billions in monthly routed volume and deep liquidity across every major DEX and high-frequency Prop AMM. * Financial Institutions & Market Makers: Access a programmable execution layer with CLPs, async trades, and high-throughput routing. * Prediction Market Platforms: Focus on UX while DFlow handles discovery, pricing, routing, and settlement infrastructure. Key Features ------------ DFlow’s core capabilities that power your applications: [Trade API\ ---------\ \ ![Trade API](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/graphic-assets/overlapping-dotted-and-solid-circle.svg?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=f1dbd8d944f662f666586b56e3cb809b)\ \ Single API for intelligent execution across spot and prediction markets, with consistent interfaces and patterns for every trade.](https://pond.dflow.net/concepts/trade-api) [Prediction Markets\ ------------------\ \ ![Prediction Markets](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/graphic-assets/minminal-star.svg?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=727360b8da3c1880da861a500b3173a4)\ \ Complete infrastructure for on-chain prediction markets with discovery, trading, position tracking, and redemption.](https://pond.dflow.net/concepts/prediction/prediction-markets) [Declarative Swaps\ -----------------\ \ ![Declarative Swaps](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/graphic-assets/stacked-rings.svg?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=c7876c2847a21215b3bf5284c104be51)\ \ Lightweight multi-transaction swaps with less slippage, greater sandwich protection, and JIT routing for best execution.](https://pond.dflow.net/concepts/declarative-swaps) [Imperative Swaps\ ----------------\ \ ![Imperative Swaps](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/graphic-assets/rounded-diamond.svg?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=941012e917e1ded906b336f83086afa1)\ \ Swap tokens with full control over transaction execution. Review and approve the exact route before signing.](https://pond.dflow.net/concepts/imperative-swaps) [Slippage Tolerance\ ------------------\ \ ![Slippage Tolerance](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/graphic-assets/revolving-circles.svg?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=cd126c4e8da03a23ef132f6ec2a1af31)\ \ Configure how much price movement you’re willing to accept during trades. Choose between auto and custom slippage settings.](https://pond.dflow.net/concepts/slippage-tolerance-overview) [Priority Fees\ -------------\ \ ![Priority Fees](https://mintcdn.com/dflow/CxrIQMjWZhe4p262/images/graphic-assets/left-slanted-diamond.svg?w=2500&fit=max&auto=format&n=CxrIQMjWZhe4p262&q=85&s=a3a5529a8edc44772eda8dd048061d26)\ \ Control transaction priority and execution speed with exact or max priority fee configurations.](https://pond.dflow.net/concepts/priority-fee-overview) Why Teams Choose DFlow ---------------------- * Intelligent execution, mathematically grounded: Advanced optimization algorithms and JIT routing guarantee best-price execution backed by deep liquidity, minimizing slippage at onchain execution time. * Depth, coverage, and latency: 99.9% token coverage, millisecond token detection, and globally distributed infrastructure tuned for high-throughput trading activity. * Monetization built in: Add fees on top of trades, capture positive slippage, and collect revenue in any token to grow order flow revenue without re-architecting your stack. Choose Your Path ---------------- Pick the best place to start based on what you need right now: [Quickstart Cookbook\ -------------------\ \ Follow end-to-end recipes for building trading and prediction market experiences with DFlow.](https://pond.dflow.net/quickstart/cookbook) [Concepts Overview\ -----------------\ \ Understand how routing, concurrency, swaps, slippage, and priority fees work under the hood.](https://pond.dflow.net/concepts/overview) [Trade API Reference\ -------------------\ \ Explore endpoints, schemas, and examples for submitting and managing trades through the unified Trade API.](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata API\ ------------------------------\ \ Discover markets, access historical data, and trade outcome tokens with comprehensive prediction market metadata.](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Contact Us ---------- Have questions or need help? [](https://pond.dflow.net/cdn-cgi/l/email-protection#18707d747477587c7e74776f36767d6c) [](https://pond.dflow.net/cdn-cgi/l/email-protection#18707d747477587c7e74776f36767d6c) [Email Support\ -------------](https://pond.dflow.net/cdn-cgi/l/email-protection#18707d747477587c7e74776f36767d6c) [Reach out to our team at](https://pond.dflow.net/cdn-cgi/l/email-protection#18707d747477587c7e74776f36767d6c) [\[email protected\]](https://pond.dflow.net/cdn-cgi/l/email-protection#b8d0ddd4d4d7f8dcded4d7cf96d6ddcc) for technical support, partnership inquiries, or general questions. [Join Our Community\ ------------------\ \ Connect with other developers, get help, and stay updated on the latest DFlow developments in our Discord community.](https://discord.gg/dflow) ⌘I --- # Privacy Policy - DFlow [Skip to main content](https://pond.dflow.net/privacy#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Legal Privacy Policy [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Personal Information We Collect](https://pond.dflow.net/privacy#personal-information-we-collect) * [How We Use Your Personal Information](https://pond.dflow.net/privacy#how-we-use-your-personal-information) * [How We Share Your Personal Information](https://pond.dflow.net/privacy#how-we-share-your-personal-information) * [Your Choices](https://pond.dflow.net/privacy#your-choices) * [How to Contact Us](https://pond.dflow.net/privacy#how-to-contact-us) Effective as of August 29, 2024 This Privacy Policy describes how DFlow Inc. (“DFlow,” “we”, “us” or “our”) handles personal information that we collect through our digital properties that link to this Privacy Policy, including our website, mobile application, as well as through social media, our marketing activities, and other activities described in this Privacy Policy (collectively, the “Service”). [​](https://pond.dflow.net/privacy#personal-information-we-collect) Personal Information We Collect ------------------------------------------------------------------------------------------------------ Information you provide to us. Personal information you may provide to us through the Service or otherwise includes: • Contact data, such as your first and last name, email address, professional title, and phone number. • Profile data, such as the username and password that you may set to establish an online account on the Service, crypto wallet address, and any other information that you add to your account profile. • Communications that we exchange with you, including when you contact us through the Service, social media, or otherwise. • Transactional data, such as information relating to or needed to complete your orders on or through the Service, including order flow bids, sales offers and purchase history. • Blockchain data, such as crypto wallet accounts and associated details. • Financial data, such as your virtual currency or wallet accounts, stored value accounts, and associated details. • Investment data, such as royalties, fees, sales prices, and digital asset data. • Marketing data, such as your preferences for receiving our marketing communications and any information you provide when you engage with them. • Other data not specifically listed here, which we will use as described in this Privacy Policy or as otherwise disclosed at the time of collection. THIRD-PARTY SOURCES. We may combine personal information we receive from you with personal information we obtain from other sources, such as: • Public sources, such as public blockchains such as Solana, social media platforms, and other publicly available sources. • Data providers, such as information services and data licensors that provide demographic and other information. • Marketing partners, such as joint marketing partners. • Third-party services, such as web3 authentication services, that you use to log into, or otherwise link to, your Service account. This data may include your wallet address and other information associated with your account on that third-party service that is made available to us based on your account settings on that service. AUTOMATIC DATA COLLECTION. We, our service providers, and our business partners may automatically log information about you, your computer or mobile device, and your interaction over time with the Service, our communications and other online services, such as: • Device data, such as your computer’s or mobile device’s operating system type and version, manufacturer and model, browser type, screen resolution, RAM and disk size, CPU usage, device type (e.g., phone, tablet), IP address, unique identifiers (including identifiers used for advertising purposes), language settings, mobile device carrier, radio/network information (e.g., Wi-Fi, LTE, 3G), and general location information such as city, state or geographic area. • Online activity data, such as pages or screens you viewed, how long you spent on a page or screen, the website you visited before browsing to the Service, navigation paths between pages or screens, information about your activity on a page or screen, access times and duration of access, and whether you have opened our emails or clicked links within them. • Location data when you authorize the Service to access your device’s location. o Communication interaction data, such as your interactions with our email, text or other communications (e.g., whether you open and/or forward emails) – we may do this through use of pixel tags (which are also known as clear GIFs), which may be embedded invisibly in our emails. COOKIES AND OTHER TECHNOLOGIES. Some of the automatic collection described above is facilitated by the following technologies: • Cookies, which are small text files that websites store on user devices and that allow web servers to record users’ web browsing activities and remember their submissions, preferences, and login status as they navigate a site. Cookies used on our sites include both “session cookies” that are deleted when a session ends, “persistent cookies” that remain longer, “first party” cookies that we place and “third party” cookies that our third-party business partners and service providers’ place. • Local storage technologies, like HTML5, that provide cookie-equivalent functionality but can store larger amounts of data on your device outside of your browser in connection with specific applications. • Web beacons, also known as pixel tags or clear GIFs, which are used to demonstrate that a webpage or email address was accessed or opened, or that certain content was viewed or clicked. • Software development kits, or SDK, is third-party computer code that we may incorporate into our mobile applications that may be used for a variety of purposes, including to provide us with analytics regarding the use of our mobile applications, to integrate with social media, or add features or functionality to our app. • Chat technologies, such as those provided by Intercom that to operate the chat features that you can use to communicate with us through the Service. Intercom and other third parties may access and use information about webpages visited on our website, your IP address, your general geographic information (e.g., city, state), and other personal information you share through online chats for the purposes described in this Privacy Policy. You can learn more about Intercom at [https://www.intercom.com/legal/privacy](https://www.intercom.com/legal/privacy) . [​](https://pond.dflow.net/privacy#how-we-use-your-personal-information) How We Use Your Personal Information ---------------------------------------------------------------------------------------------------------------- We may use your personal information for the following purposes or as otherwise described at the time of collection: SERVICE DELIVERY. We may use your personal information to: • provide, operate and improve the Service and our business; • establish and maintain your user profile on the Service; • personalizing the service, including remembering the devices from which you have previously logged in and remembering your selections and preferences as you navigate the Service; • communicate with you about the Service, including by sending announcements, updates, security alerts, and support and administrative messages; • understand your needs and interests, and personalize your experience with the Service and our communications; and • provide support for the Service, and respond to your requests, questions and feedback. RESEARCH AND DEVELOPMENT. We may use your personal information for research and development purposes, including to analyze and improve the Service and our business. As part of these activities, we may create aggregated, de-identified or other anonymous data from personal information we collect. We make personal information into anonymous data by removing information that makes the data personally identifiable to you. We may use this anonymous data and share it with third parties for our lawful business purposes, including to analyze and improve the Service and promote our business. MARKETING AND ADVERTISING. We and our service providers and our third-party advertising partners may collect and use your personal information for direct marketing purposes. • Direct marketing. We may send you DFlow-related marketing communications about our products, services or promotions that may be of interest to you. You may opt-out of our marketing communications as described in the Opt-out of marketing section below. • Interest-based advertising. We and our third-party advertising partners may use cookies and similar technologies to collect information about your interaction with the Service, our communications and other online services over time, and use that information to serve online ads that they think will interest you. This is called interest-based advertising. We may also share information about our users with these companies to facilitate interest-based advertising to those or similar users on other online platforms. SERVICE IMPROVEMENT AND ANALYTICS. We may use your personal information to analyze your usage of the Service, improve the Service, improve the rest of our business, help us understand user activity on the Service, including which pages are most and least visited and how visitors move around the Service, as well as user interactions with our emails, and to develop new products and services. COMPLIANCE AND PROTECTION. We may use your personal information to: • comply with applicable laws, lawful requests, and legal process, such as to respond to subpoenas or requests from government authorities; • protect our, your or others’ rights, privacy, safety or property (including by making and defending legal claims); • audit our internal processes for compliance with legal and contractual requirements or our internal policies; • enforce the terms and conditions that govern the Service; and • prevent, identify, investigate and deter fraudulent, harmful, unauthorized, unethical or illegal activity, including cyberattacks and identity theft. WITH YOUR CONSENT. In some cases, we may specifically ask for your consent to collect, use or share your personal information, such as when required by law. COOKIES AND OTHER TECHNOLOGIES. In addition to the other uses included in this section, we may use the Cookies and other technologies described above for the following purposes: • Technical operation. To allow the technical operation of the Service, such as by remembering your selections and preferences as you navigate the site. • Functionality. To enhance the performance and functionality of our services. • Advertising. To help our third-party advertising partners collect information about how you use the Service and other online services over time, which they use to show you ads on other online services they believe will interest you and measure how the ads perform. • Analytics. To help us understand user activity on the Service, including which pages are most and least visited and how visitors move around the Service, as well as user interactions with our emails. For example, we use Google Analytics for this purpose. You can learn more about Google Analytics and how to prevent the use of Google Analytics relating to your use of our sites here: [https://tools.google.com/dlpage/gaoptout?hl=en](https://tools.google.com/dlpage/gaoptout?hl=en) . RETENTION. We generally retain personal information to fulfill the purposes for which we collected it, including for the purposes of satisfying any legal, accounting, or reporting requirements, to establish or defend legal claims, or for fraud prevention purposes. To determine the appropriate retention period for personal information, we may consider factors such as the amount, nature, and sensitivity of the personal information, the potential risk of harm from unauthorized use or disclosure of your personal information, the purposes for which we process your personal information and whether we can achieve those purposes through other means, and the applicable legal requirements. [​](https://pond.dflow.net/privacy#how-we-share-your-personal-information) How We Share Your Personal Information -------------------------------------------------------------------------------------------------------------------- We may share your personal information with the following parties and as otherwise described in this Privacy Policy or at the time of collection. AFFILIATES. Our corporate parent, subsidiaries, and affiliates, for purposes consistent with this Privacy Policy. SERVICE PROVIDERS. Third parties that provide services on our behalf or help us operate the Service or our business (such as hosting, information technology, online chat functionality providers, customer support, email delivery, marketing, consumer research and website analytics). THIRD PARTIES DESIGNATED BY YOU. We may share your personal information with third parties where you have instructed us or provided your consent to do so. CRYPTOCURRENCY PLATFORMS. Any information collected necessary to process a digital asset order (such as your wallet address) is collected and processed directly by your chosen cryptocurrency platform. Please review the privacy policies for the relevant cryptocurrency platform to learn how they may use your payment information. LINKED THIRD-PARTY SERVICES. If you log into the Service with, or otherwise link your Service account to, a third-party service such as Dynamic, we may share your personal information with that third-party service. The third party’s use of the shared information will be governed by its privacy policy and the settings associated with your account with the third-party service. To learn more about how Dynamic handles your personal information, please refer to their privacy policy located at [https://www.dynamic.xyz/privacy-policy](https://www.dynamic.xyz/privacy-policy) . ADVERTISING PARTNERS. Third-party advertising companies for the interest-based advertising purposes described above. BUSINESS AND MARKETING PARTNERS. Third parties with whom we co-sponsor events or promotions, with whom we jointly offer products or services, or whose products or services may be of interest to you. PROFESSIONAL ADVISORS. Professional advisors, such as lawyers, auditors, bankers and insurers, where necessary in the course of the professional services that they render to us. AUTHORITIES AND OTHERS. Law enforcement, government authorities, and private parties, as we believe in good faith to be necessary or appropriate for the compliance and protection purposes described above. BUSINESS TRANSFEREES. Acquirers and other relevant participants in business transactions (or negotiations of or due diligence for such transactions) involving a corporate divestiture, merger, consolidation, acquisition, reorganization, sale or other disposition of all or any portion of the business or assets of, or equity interests in, DFlow or our affiliates (including, in connection with a bankruptcy or similar proceedings). [​](https://pond.dflow.net/privacy#your-choices) Your Choices ---------------------------------------------------------------- ACCESS OR UPDATE YOUR INFORMATION. If you have registered for an account with us through the Service, you may review and update certain account information by logging into the account. OPT-OUT OF MARKETING COMMUNICATIONS. You may opt-out of marketing-related emails by following the opt-out or unsubscribe instructions at the bottom of the email, or by contacting us. Please note that if you choose to opt-out of marketing-related emails, you may continue to receive service-related and other non-marketing emails. COOKIES. Most browsers let you remove or reject cookies. To do this, follow the instructions in your browser settings. Many browsers accept cookies by default until you change your settings. Please note that if you set your browser to disable cookies, the Service may not work properly. For more information about cookies, including how to see what cookies have been set on your browser and how to manage and delete them, visit [www.allaboutcookies.org](http://www.allaboutcookies.org/) . DO NOT TRACK. Some Internet browsers may be configured to send “Do Not Track” signals to the online services that you visit. We currently do not respond to “Do Not Track.” To find out more about “Do Not Track,” please visit [http://www.allaboutdnt.com](http://www.allaboutdnt.com/) . DECLINING TO PROVIDE INFORMATION. We need to collect personal information to provide certain services. If you do not provide the information we identify as required or mandatory, we may not be able to provide those services. DELETE YOUR CONTENT OR CLOSE YOUR ACCOUNT. You can choose to delete certain content through your account. If you wish to request to close your account, please contact us. ADVERTISING CHOICES. You may be able to limit use of your information for interest-based advertising through the following settings/options/tools: • Browser settings. Changing your internet web browser settings to block third-party cookies. • Privacy browsers/plug-ins. Using privacy browsers and/or ad-blocking browser plug-ins that let you block tracking technologies. • Platform settings. Certain platforms offer opt-out features that let you opt-out of use of your information for interest-based advertising. For example, you may be able to exercise that option for Google and Facebook, respectively, at the following websites: o Google: [https://adssettings.google.com/](https://adssettings.google.com/) o Facebook: [https://www.facebook.com/about/ads](https://www.facebook.com/about/ads) • Ad industry tools. Opting out of interest-based ads from companies that participate in the following industry opt-out programs: o Network Advertising Initiative: [http://www.networkadvertising.org/managing/opt\_out.asp](http://www.networkadvertising.org/managing/opt_out.asp) o Digital Advertising Alliance: optout.aboutads.info. o AppChoices mobile app, available at [https://www.youradchoices.com/appchoices](https://www.youradchoices.com/appchoices) , which will allow you to opt-out of interest-based ads in mobile apps served by participating members of the Digital Advertising Alliance. You will need to apply these opt-out settings on each device and browser from which you wish to limit the use of your information for interest-based advertising purposes. We cannot offer any assurances as to whether the companies we work with participate in the opt-out programs described above. OTHER SITES AND SERVICES The Service may contain links to websites, mobile applications, and other online services operated by third parties. In addition, our content may be integrated into web pages or other online services that are not associated with us. These links and integrations are not an endorsement of, or representation that we are affiliated with, any third party. We do not control websites, mobile applications or online services operated by third parties, and we are not responsible for their actions. We encourage you to read the privacy policies of the other websites, mobile applications and online services you use. SECURITY We employ technical, organizational and physical safeguards designed to protect the personal information we collect. However, security risk is inherent in all internet and information technologies, and we cannot guarantee the security of your personal information. INTERNATIONAL DATA TRANSFER We are headquartered in the United States and may use service providers that operate in other countries. Your personal information may be transferred to the United States or other locations where privacy laws may not be as protective as those in your state, province, or country. CHILDREN The Service is not intended for use by anyone under 18 years of age. If you are a parent or guardian of a child from whom you believe we have collected personal information in a manner prohibited by law, please contact us. If we learn that we have collected personal information through the Service from a child without the consent of the child’s parent or guardian as required by law, we will comply with applicable legal requirements to delete the information. CHANGES TO THIS PRIVACY POLICY We reserve the right to modify this Privacy Policy at any time. If we make material changes to this Privacy Policy, we will notify you by updating the date of this Privacy Policy and posting it on the Service or other appropriate means. Any modifications to this Privacy Policy will be effective upon our posting the modified version (or as otherwise indicated at the time of posting). In all cases, your use of the Service after the effective date of any modified Privacy Policy indicates your acceptance of the modified Privacy Policy. [​](https://pond.dflow.net/privacy#how-to-contact-us) How to Contact Us -------------------------------------------------------------------------- Email: [\[email protected\]](https://pond.dflow.net/cdn-cgi/l/email-protection#98f0fdf4f4f7d8fcfef4f7efb6f6fdec) [Introduction](https://pond.dflow.net/introduction) [Terms of Service](https://pond.dflow.net/terms-of-service) ⌘I --- # Prediction Markets Overview - DFlow [Skip to main content](https://pond.dflow.net/concepts/prediction/prediction-markets#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets Prediction Markets Overview [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) DFlow provides full infrastructure for on-chain prediction markets. Build applications that enable users to discover markets, trade outcome tokens, track positions, and redeem payouts when markets are determined. [​](https://pond.dflow.net/concepts/prediction/prediction-markets#complete-lifecycle) Complete Lifecycle ----------------------------------------------------------------------------------------------------------- Follow this end-to-end workflow to integrate prediction markets into your application: [1\. Discover Markets\ --------------------\ \ Find and explore on-chain prediction markets using the Prediction Market Metadata API. Filter by categories, tags, and market status to discover available trading opportunities.](https://pond.dflow.net/quickstart/discover-prediction-tokens) [2\. Trade Tokens\ ----------------\ \ Use the DFlow Trade API to buy and sell prediction market outcome tokens. The API automatically handles both synchronous and asynchronous execution modes.](https://pond.dflow.net/quickstart/trade-tokens) [3\. Track Positions\ -------------------\ \ Retrieve and display a user’s prediction market positions by querying on-chain token accounts and mapping them to market data.](https://pond.dflow.net/quickstart/user-prediction-positions) [4\. Redeem Outcomes\ -------------------\ \ When markets are determined, check if outcome tokens are redeemable and request redemption orders to exchange winning tokens for stablecoins.](https://pond.dflow.net/quickstart/redeem-outcome-tokens) [​](https://pond.dflow.net/concepts/prediction/prediction-markets#core-concepts) Core Concepts ------------------------------------------------------------------------------------------------- ### [​](https://pond.dflow.net/concepts/prediction/prediction-markets#trade-lifecycle) Trade Lifecycle Understanding how positions are opened, managed, and closed is essential for building prediction market applications. [Increase Position\ -----------------\ \ Learn how traders open new orders to increase their position in an event outcome. Outcome tokens are minted when orders are filled.](https://pond.dflow.net/concepts/prediction/increase) [Reduce Position\ ---------------\ \ Understand how traders reduce existing positions by selling outcome tokens back for stablecoins. Supports both synchronous and asynchronous execution.](https://pond.dflow.net/concepts/prediction/reduce) [Settlement & Redemption\ -----------------------\ \ Discover how events are settled, outcomes are determined, and traders redeem their winning outcome tokens for payouts.](https://pond.dflow.net/concepts/prediction/settle) ### [​](https://pond.dflow.net/concepts/prediction/prediction-markets#infrastructure-primitives) Infrastructure Primitives These foundational concepts power DFlow’s prediction market infrastructure: [Series, Events, and Markets\ ---------------------------\ \ Understand the hierarchical structure of prediction market organization and how series, events, and markets relate to each other.](https://pond.dflow.net/concepts/prediction/series-events-markets) [From Spot Tokens to Market Positions\ ------------------------------------\ \ Learn how trades route from any spot token to outcome tokens through the settlement mint, including automatic market tokenization for uninitialized markets.](https://pond.dflow.net/concepts/prediction/from-spot-tokens-to-market-positions) [Async & Sync Trades\ -------------------\ \ Understand the difference between synchronous (atomic) and asynchronous (multi-transaction) trade execution modes and when each is used.](https://pond.dflow.net/concepts/concurrency/concurrent-trading) [Prediction Market Terminology\ -----------------------------\ \ Reference guide for key terms and concepts used in DFlow’s prediction market infrastructure.](https://pond.dflow.net/concepts/prediction/prediction-market-terminology) ### [​](https://pond.dflow.net/concepts/prediction/prediction-markets#trading-configuration) Trading Configuration Full customization of your trading experience: [Slippage Tolerance\ ------------------\ \ Configure how much price movement you’re willing to accept during trades. Choose between auto and custom slippage settings.](https://pond.dflow.net/concepts/slippage-tolerance-overview) [Priority Fees\ -------------\ \ Control transaction priority and execution speed with exact or max priority fee configurations.](https://pond.dflow.net/concepts/priority-fee-overview) [Order Endpoint\ --------------\ \ Request a trade order with a single endpoint. Returns a quote and transaction ready to sign, automatically handling sync and async execution modes.](https://pond.dflow.net/swap-api-reference/order/order) [​](https://pond.dflow.net/concepts/prediction/prediction-markets#api-reference) API Reference ------------------------------------------------------------------------------------------------- [Prediction Market Metadata API\ ------------------------------\ \ Complete reference for discovering markets, events, series, and retrieving market data including pricing, volume, and settlement status.](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) [Trade API Reference\ -------------------\ \ Full API documentation for the DFlow Trade API, including order endpoints, swap modes, and execution monitoring.](https://pond.dflow.net/swap-api-reference/introduction) [Overview](https://pond.dflow.net/concepts/overview) [Prediction Market Terminology](https://pond.dflow.net/concepts/prediction/prediction-market-terminology) ⌘I --- # Authenticating Requests: API Keys - DFlow [Skip to main content](https://pond.dflow.net/quickstart/api-keys#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trade API Authenticating Requests: API Keys [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Using Your API Key](https://pond.dflow.net/quickstart/api-keys#using-your-api-key) * [GET Requests](https://pond.dflow.net/quickstart/api-keys#get-requests) * [POST Requests](https://pond.dflow.net/quickstart/api-keys#post-requests) * [Security Best Practices](https://pond.dflow.net/quickstart/api-keys#security-best-practices) * [Getting Help](https://pond.dflow.net/quickstart/api-keys#getting-help) The DFlow Trade API is available at `https://quote-api.dflow.net` for public use, but this endpoint has rate limits that make it insufficient for production applications. For production use, integrators should contact [\[email protected\]](https://pond.dflow.net/cdn-cgi/l/email-protection#6c04090000032c080a00031b42020918) to receive an API key with higher rate limits. [​](https://pond.dflow.net/quickstart/api-keys#using-your-api-key) Using Your API Key ---------------------------------------------------------------------------------------- Once you receive your API key, include it in all requests to the Trade API by setting the `x-api-key` header. Requests that include a valid API key are authenticated and benefit from higher rate limits suitable for production use. ### [​](https://pond.dflow.net/quickstart/api-keys#get-requests) GET Requests For GET requests, include the API key in the request headers: Copy Ask AI const API_KEY = process.env.DFLOW_API_KEY; // or your API key const API_BASE_URL = "https://quote-api.dflow.net"; const queryParams = new URLSearchParams(); queryParams.append("inputMint", SOL); queryParams.append("outputMint", USDC); queryParams.append("amount", amount.toString()); queryParams.append("slippageBps", slippageBps.toString()); queryParams.append("userPublicKey", keypair.publicKey.toBase58()); const response = await fetch( `${API_BASE_URL}/order?${queryParams.toString()}`, { headers: { "x-api-key": API_KEY, }, } ).then((x) => x.json()); ### [​](https://pond.dflow.net/quickstart/api-keys#post-requests) POST Requests For POST requests, include the API key alongside other headers: Copy Ask AI const API_KEY = process.env.DFLOW_API_KEY; // or your API key const API_BASE_URL = "https://quote-api.dflow.net"; const response = await fetch(`${API_BASE_URL}/submit-intent`, { method: "POST", headers: { "Content-Type": "application/json", "x-api-key": API_KEY, }, body: JSON.stringify({ quoteResponse: intentData, signedOpenTransaction: Buffer.from(openTransaction.serialize()).toString( "base64" ), }), }); const submitIntentData = await response.json(); [​](https://pond.dflow.net/quickstart/api-keys#security-best-practices) Security Best Practices -------------------------------------------------------------------------------------------------- * Store your API key securely using environment variables * Never commit API keys to version control * Rotate your API key if it’s ever exposed [​](https://pond.dflow.net/quickstart/api-keys#getting-help) Getting Help ---------------------------------------------------------------------------- If you need an API key or have questions about rate limits, please contact us at [\[email protected\]](https://pond.dflow.net/cdn-cgi/l/email-protection#f79f929b9b98b793919b9880d9999283) . [Cookbook](https://pond.dflow.net/quickstart/cookbook) [Trade Tokens with the DFlow Trade API](https://pond.dflow.net/quickstart/trade-tokens) ⌘I --- # Cookbook - DFlow [Skip to main content](https://pond.dflow.net/quickstart/cookbook#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Quickstart Cookbook [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) [​](https://pond.dflow.net/quickstart/cookbook#trade-api) Trade API ---------------------------------------------------------------------- Build trading functionality for spot and prediction markets with DFlow’s unified Trade API. Trade tokens with automatic routing across major Solana DEXs, supporting both synchronous (atomic) and asynchronous (multi-transaction) execution modes. [Trade Tokens\ ------------\ \ Get started with the unified Trade API for trading tokens across spot and prediction markets. Supports both sync and async execution modes.](https://pond.dflow.net/quickstart/trade-tokens) [Declarative Swaps\ -----------------\ \ Swap tokens with less slippage, lower latency, and better pricing. The route is optimized at execution time for maximum efficiency.](https://pond.dflow.net/quickstart/swap-tokens-declarative) [Imperative Swaps\ ----------------\ \ Swap tokens with full control over transaction execution. Review and approve the exact route before signing.](https://pond.dflow.net/quickstart/swap-tokens-imperative) [​](https://pond.dflow.net/quickstart/cookbook#prediction-markets) Prediction Markets ---------------------------------------------------------------------------------------- Integrate prediction market functionality into your application. Discover markets, track positions, and redeem outcomes using our comprehensive metadata API and trading tools. [Discover Prediction Market Outcome Tokens\ -----------------------------------------\ \ Learn how to find and explore on-chain prediction markets using the Prediction Market Metadata API.](https://pond.dflow.net/quickstart/discover-prediction-tokens) [User Positions\ --------------\ \ Fetch and identify a wallet’s prediction market positions by querying on-chain token accounts and mapping them to market data.](https://pond.dflow.net/quickstart/user-prediction-positions) [Redeem Outcome Tokens\ ---------------------\ \ Check if outcome tokens are redeemable and request redemption orders through the Trade API when markets are determined.](https://pond.dflow.net/quickstart/redeem-outcome-tokens) [Authenticating Requests: API Keys](https://pond.dflow.net/quickstart/api-keys) ⌘I --- # Swap Tokens with Imperative Swaps - DFlow [Skip to main content](https://pond.dflow.net/quickstart/swap-tokens-imperative#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trade API Swap Tokens with Imperative Swaps [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Imperative Swaps allow Solana users to trade tokens with full control over the route and transaction execution. Using Imperative Swaps through [DFlow Swap API](https://pond.dflow.net/swap-api-reference/introduction) is simple. DFlow Swap API aggregates liquidity from all the major Solana DEXs and offers an API for trading any SPL token. This quickstart assumes familiarity with Solana’s transaction and network connection logic. If unfamiliar, please refer to the [Solana Cookbook](https://solana.com/developers/cookbook) . For production use, you’ll need an API key to avoid rate limits. See the [API Keys guide](https://pond.dflow.net/quickstart/api-keys) for details on obtaining and using an API key. 1 Request a Quote DFlow Swap API returns a quote specific to the token pair, amount, slippage tolerance, platform fee and [other parameters](https://pond.dflow.net/swap-api-reference/imperative/quote) .A route is calculated for the swap at this step and returned along with the quote. Request a Quote Copy Ask AI const SOL = "So11111111111111111111111111111111111111112"; const USDC = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"; /// Amount of SOL to swap to USDC const amount = 1_000_000_000; // 1 SOL /// Slippage tolerance in bps const slippageBps = 20; /// Base URL for the DFlow Swap API const AGGREGATOR_API_BASE_URL = "https://quote-api.dflow.net"; const API_KEY = process.env.DFLOW_API_KEY; // Optional const queryParams = new URLSearchParams(); queryParams.append("inputMint", SOL); queryParams.append("outputMint", USDC); queryParams.append("amount", amount.toString()); queryParams.append("slippageBps", slippageBps.toString()); const headers: HeadersInit = {}; if (API_KEY) { headers["x-api-key"] = API_KEY; } const quoteResponse = await fetch( `${AGGREGATOR_API_BASE_URL}/quote?${queryParams.toString()}`, { headers } ).then((x) => x.json()); 2 Request a Swap Transaction for the Quote Given the quote, DFlow Swap API returns an executable transaction that encodes the route that was calculated for the quote. Request a Swap Transaction for the Quote Copy Ask AI const requestBody = { userPublicKey: keypair.publicKey.toBase58(), dynamicComputeUnitLimit: true, prioritizationFeeLamports: 150000, // Get this value from a priority fee API quoteResponse: quoteResponse, }; const headers: HeadersInit = { "content-type": "application/json" }; if (API_KEY) { headers["x-api-key"] = API_KEY; } const swapResponse = await fetch(`${AGGREGATOR_API_BASE_URL}/swap`, { method: "POST", headers, body: JSON.stringify(requestBody), }).then((x) => x.json()); 3 Submit the Transaction Sign and then send the swap transaction directly to a Solana RPC or transaction submission endpoint of your choice. Submit the Transaction Copy Ask AI const swapTransactionBuffer = Buffer.from( swapResponse.swapTransaction, "base64" ); const transaction = VersionedTransaction.deserialize(swapTransactionBuffer); transaction.sign([keypair]); await sendAndConfirmTransaction(connection, transaction); [Swap Tokens with Declarative Swaps](https://pond.dflow.net/quickstart/swap-tokens-declarative) [Implement Platform Fees](https://pond.dflow.net/quickstart/platform-fees) ⌘I --- # Introduction - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/introduction#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation DFlow Swap API Documentation Introduction [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) [Order API Endpoints\ -------------------\ \ Retrieve order information and check order status](https://pond.dflow.net/swap-api-reference/order/order) [Declarative Swap API Endpoints\ ------------------------------\ \ Declarative Swaps are intent-based swaps that defer route calculation](https://pond.dflow.net/swap-api-reference/declarative/quote) [Imperative Swap API Endpoints\ -----------------------------\ \ Imperative Swaps give traders precise control over the route plan at signature time](https://pond.dflow.net/swap-api-reference/imperative/quote) [Token API Endpoints\ -------------------\ \ Get token information and lists with decimal precision](https://pond.dflow.net/swap-api-reference/token/tokens) [Venue API Endpoints\ -------------------\ \ Get venue information and available trading venues](https://pond.dflow.net/swap-api-reference/venues/venues) [Get Order](https://pond.dflow.net/swap-api-reference/order/order) ⌘I --- # Submit Intent Swap - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/declarative/submit#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Declarative Swap API Endpoints Submit Intent Swap [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Submits a declarative swap transaction for processing cURL Copy Ask AI curl --request POST \ --url https://quote-api.dflow.net/submit-intent \ --header 'Content-Type: application/json' \ --data ' { "quoteResponse": { "feeBudget": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "slippageBps": 1, "expiry": { "slotsAfterOpen": 1 }, "lastValidBlockHeight": 1, "openTransaction": "", "platformFee": "" }, "signedOpenTransaction": "" } ' 200 400 Copy Ask AI { "openTransactionSignature": "", "orderAddress": "", "programId": "" } POST / submit-intent Try it Submits a declarative swap transaction for processing cURL Copy Ask AI curl --request POST \ --url https://quote-api.dflow.net/submit-intent \ --header 'Content-Type: application/json' \ --data ' { "quoteResponse": { "feeBudget": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "slippageBps": 1, "expiry": { "slotsAfterOpen": 1 }, "lastValidBlockHeight": 1, "openTransaction": "", "platformFee": "" }, "signedOpenTransaction": "" } ' 200 400 Copy Ask AI { "openTransactionSignature": "", "orderAddress": "", "programId": "" } #### Body application/json [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response) quoteResponse object required The response from the quote endpoint Show child attributes [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-fee-budget) quoteResponse.feeBudget integer required Maximum amount that the user is willing to pay to have the intent processed in lamports. This includes all transaction fees and tips for the open transaction and all transaction fees and tips for the fill and close transactions. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-in-amount) quoteResponse.inAmount string required Maximum input amount as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-input-mint) quoteResponse.inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-min-out-amount) quoteResponse.minOutAmount string required Same as `other_amount_threshold` [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-other-amount-threshold) quoteResponse.otherAmountThreshold string required Minimum output amount after all fees as a scaled integer. If the swap transaction doesn't produce at least this amount of the output token, the transaction will fail. [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-out-amount) quoteResponse.outAmount string required Expected output amount after all fees as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-output-mint) quoteResponse.outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-price-impact-pct) quoteResponse.priceImpactPct string required Price impact of the swap. This is an estimate of the percentage difference between the expected price for the swap and the price for the same swap with the smallest input amount possible. For example, "0.01" means 1% price impact. [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-slippage-bps) quoteResponse.slippageBps integer required Max allowed slippage % in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-expiry) quoteResponse.expiry object The expiry of the intent. After expiry, the intent cannot be filled and can only be closed. Specified if and only if the request included the user's public key. Show child attributes [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-expiry-slots-after-open) quoteResponse.expiry.slotsAfterOpen integer required The intent will expire after the specified number of slots have passed since the open transaction was processed. For example, if the open transaction was processed in slot 100, a value of 10 means the intent will be fillable through slot 110. After slot 110, the intent will no longer be fillable. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-last-valid-block-height) quoteResponse.lastValidBlockHeight integer The last block height at which the blockhash assigned to the open transaction is valid. Useful to determine whether the open transaction has expired. Specified if and only if the request included the user's public key. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-open-transaction) quoteResponse.openTransaction string Base64-encoded intent opening transaction. The user must sign before sending it via the swap endpoint. Specified if and only if the request included the user's public key. [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-platform-fee-one-of-1) quoteResponse.platformFee object Platform fee that was applied to the quote, if any Show child attributes [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-platform-fee-one-of-1-amount) quoteResponse.platformFee.amount string required Platform fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-platform-fee-one-of-1-fee-account) quoteResponse.platformFee.feeAccount string required Token account that will receive the platform fee [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-platform-fee-one-of-1-fee-bps) quoteResponse.platformFee.feeBps integer required Platform fee in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-platform-fee-one-of-1-segmenter-fee-amount) quoteResponse.platformFee.segmenterFeeAmount string required Segmenter fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-quote-response-platform-fee-one-of-1-segmenter-fee-pct) quoteResponse.platformFee.segmenterFeePct integer required Segmenter fee in percent Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/submit#body-signed-open-transaction) signedOpenTransaction string required Base64-encoded intent opening transaction, signed by the user #### Response 200 application/json Declarative swap submitted successfully [​](https://pond.dflow.net/swap-api-reference/declarative/submit#response-open-transaction-signature) openTransactionSignature string required Base58-encoded open transaction signature [​](https://pond.dflow.net/swap-api-reference/declarative/submit#response-order-address) orderAddress string required Base58-encoded order address [​](https://pond.dflow.net/swap-api-reference/declarative/submit#response-program-id) programId string required Base58-encoded program ID of the program that facilitates the swap [Get Intent Quote](https://pond.dflow.net/swap-api-reference/declarative/quote) [Get Token List](https://pond.dflow.net/swap-api-reference/token/tokens) ⌘I --- # Get Token List with Decimals - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/token/tokens-with-decimals#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Token API Endpoints Get Token List with Decimals [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Returns a list of supported token mints and their decimals, specically any mints that a pool for trading was available atleast once in the lifetime of the server. cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/tokens-with-decimals 200 503 Copy Ask AI [\ [\ ""\ ]\ ] GET / tokens-with-decimals Try it Returns a list of supported token mints and their decimals, specically any mints that a pool for trading was available atleast once in the lifetime of the server. cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/tokens-with-decimals 200 503 Copy Ask AI [\ [\ ""\ ]\ ] #### Response 200 application/json List of supported token mints with decimals Required array length: `2` elements [Get Token List](https://pond.dflow.net/swap-api-reference/token/tokens) [Get Venue List](https://pond.dflow.net/swap-api-reference/venues/venues) ⌘I --- # Get Token List - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/token/tokens#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Token API Endpoints Get Token List [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Returns a list of supported token mints, specically any mints that a pool for trading was available atleast once in the lifetime of the server. cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/tokens 200 503 Copy Ask AI [\ ""\ ] GET / tokens Try it Returns a list of supported token mints, specically any mints that a pool for trading was available atleast once in the lifetime of the server. cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/tokens 200 503 Copy Ask AI [\ ""\ ] #### Response 200 application/json List of supported token mints [Submit Intent Swap](https://pond.dflow.net/swap-api-reference/declarative/submit) [Get Token List with Decimals](https://pond.dflow.net/swap-api-reference/token/tokens-with-decimals) ⌘I --- # Swap Tokens with Declarative Swaps - DFlow [Skip to main content](https://pond.dflow.net/quickstart/swap-tokens-declarative#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trade API Swap Tokens with Declarative Swaps [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Declarative Swaps allow Solana users to trade tokens with less slippage, lower latency, and better pricing. Using Declarative Swaps through [DFlow Swap API](https://pond.dflow.net/swap-api-reference/introduction) is simple. DFlow Swap API aggregates liquidity from all the major Solana DEXs and offers an API for trading any SPL token. This quickstart assumes familiarity with Solana’s transaction and network connection logic. If unfamiliar, please refer to the [Solana Cookbook](https://solana.com/developers/cookbook) . For production use, you’ll need an API key to avoid rate limits. See the [API Keys guide](https://pond.dflow.net/quickstart/api-keys) for details on obtaining and using an API key. 1 Request a Quote DFlow Swap API returns a quote specific to the token pair, amount, slippage tolerance, platform fee and [other parameters](https://pond.dflow.net/swap-api-reference/declarative/quote) .A route is calculated for the swap at this step, but not hardened into the transaction. Instead, the quote is committed, and the route plan will be recalculated at the time the intent is submitted. Request a Quote Copy Ask AI const SOL = "So11111111111111111111111111111111111111112"; const USDC = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"; /// Amount of SOL to swap to USDC const amount = 1_000_000_000; /// Slippage tolerance in bps const slippageBps = 1; /// Base URL for the DFlow Swap API const AGGREGATOR_API_BASE_URL = "https://quote-api.dflow.net"; const API_KEY = process.env.DFLOW_API_KEY; // Optional const queryParams = new URLSearchParams(); queryParams.append("inputMint", SOL); queryParams.append("outputMint", USDC); queryParams.append("amount", amount.toString()); queryParams.append("userPublicKey", keypair.publicKey.toBase58()); queryParams.append("slippageBps", slippageBps.toString()); const headers: HeadersInit = {}; if (API_KEY) { headers["x-api-key"] = API_KEY; } const intentResponse = await fetch( `${AGGREGATOR_API_BASE_URL}/intent?${queryParams.toString()}`, { headers } ); const intentData = await intentResponse.json(); 2 Sign the Intent Signing the intent guarantees the minimum amount of output tokens, but does not commit to any given route plan to achieve the minimum amount of output tokens. Sign the Intent Copy Ask AI const transaction = intentData.openTransaction; const transactionBytes = Buffer.from(transaction, "base64"); const openTransaction = Transaction.from(transactionBytes); openTransaction.sign(keypair); 3 Submit the Intent Intents are submitted to the DFlow Aggregator, which optimizes the execution of the swap based on network conditions. Submit the Intent Copy Ask AI const headers: HeadersInit = { "Content-Type": "application/json", }; if (API_KEY) { headers["x-api-key"] = API_KEY; } const response = await fetch(`${AGGREGATOR_API_BASE_URL}/submit-intent`, { method: "POST", headers, body: JSON.stringify({ quoteResponse: intentData, signedOpenTransaction: Buffer.from(openTransaction.serialize()).toString( "base64" ), }), }); const submitIntentData = await response.json(); 4 Monitor the Intent After submitting the Intent, you can monitor its status using the `monitorOrder` helper function from the [`@dflow-protocol/swap-api-utils`](https://www.npmjs.com/package/@dflow-protocol/swap-api-utils) package. Monitor the Intent Copy Ask AI const result = await monitorOrder({ connection, intent: intentData, signedOpenTransaction: openTransaction, submitIntentResponse: submitIntentData, }); switch (result.status) { case ORDER_STATUS.CLOSED: { if (result.fills.length > 0) { // Order was filled and closed const qtyIn = result.fills.reduce((acc, x) => acc + x.qtyIn, 0n); const qtyOut = result.fills.reduce((acc, x) => acc + x.qtyOut, 0n); console.log(`Order succeeded: sent ${qtyIn}, received ${qtyOut}`); } else { // Order was closed without any fills console.log("Order failed"); } break; } case ORDER_STATUS.PENDING_CLOSE: { if (result.fills.length > 0) { // Order was filled and is now closable const qtyIn = result.fills.reduce((acc, x) => acc + x.qtyIn, 0n); const qtyOut = result.fills.reduce((acc, x) => acc + x.qtyOut, 0n); console.log(`Order succeeded: sent ${qtyIn}, received ${qtyOut}`); } else { // Order was not filled and is now closable console.log("Order failed"); } break; } case ORDER_STATUS.OPEN_EXPIRED: { // Transaction to open the order expired console.log( "Transaction expired. Try again with a higher slippage tolerance." ); break; } case ORDER_STATUS.OPEN_FAILED: { // Transaction to open the order was executed and failed console.log("Order failed", result.transactionError); break; } } ![Declarative Swaps](https://mintcdn.com/dflow/inKA-1NiPnQqEiVP/images/blog-hero-light.svg?w=2500&fit=max&auto=format&n=inKA-1NiPnQqEiVP&q=85&s=085fa7c10b791f119a9900a446f4c7f6) ![Declarative Swaps](https://mintcdn.com/dflow/inKA-1NiPnQqEiVP/images/blog-hero-dark.svg?w=2500&fit=max&auto=format&n=inKA-1NiPnQqEiVP&q=85&s=3c6df419336f157b934f89472b69647d) [Trade Tokens with the DFlow Trade API](https://pond.dflow.net/quickstart/trade-tokens) [Swap Tokens with Imperative Swaps](https://pond.dflow.net/quickstart/swap-tokens-imperative) ⌘I --- # Terms of Service - DFlow [Skip to main content](https://pond.dflow.net/terms-of-service#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Legal Terms of Service [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) DFlow Terms Of Service Last Updated: May 21, 2024 1. INTRODUCTION These Terms of Service (these “Terms”) govern your access to and use of: certain products, services and properties made available by DFlow Inc. (“DFlow,” “we,” “us” or “our”), including the website, available at [https://dflow.net/](https://dflow.net/) (the “Website”); our progressive web application (the “Web App”) and any mobile application (“Application”) that we offer subject to these Terms, the DFlow Platform (as defined below), governed by the DFlow Protocol (as defined below), which enables Trading Entities (as defined below) to bid on and purchase the right to receive orders (“Orders”) to buy, sell and trade Digital Assets, both on an individual and a batch basis (collectively, “Order Flow”), from third-party wallets (“Order Flow Wallets”); and any software and services provided on or in connection with the Website, Web App, Application, Platform, and DFlow Protocol (collectively with the Website, Web App, Application, and Platform, “Service(s)”). As used herein, the terms “you,” and “your” refer to each individual who enters into these Terms on such individual’s own behalf or any entity on behalf of which an individual enters into these Terms. Certain features of the Service may be subject to additional guidelines, terms, or rules (“Supplemental Terms”), which will be displayed in connection with such features. All such Supplemental Terms are incorporated by reference into these Terms. If these Terms are inconsistent with any Supplemental Terms, the Supplemental Terms shall control solely with respect to such services. THESE TERMS OF USE ARE IMPORTANT AND AFFECT YOUR LEGAL RIGHTS, SO PLEASE READ THEM CAREFULLY. BY BROWSING THE WEBSITE, DOWNLOADING THE WEB APP OR ANY APPLICATION, CONNECTING A DIGITAL WALLET TO THE SERVICE, ACCESSING OR USING THE DFLOW PROTOCOL THROUGH THE SERVICE, AND/OR OTHERWISE USING THE SERVICE, YOU AGREE TO BE BOUND BY THESE TERMS AND ALL OF THE TERMS INCORPORATED HEREIN BY REFERENCE. IF YOU DO NOT AGREE TO THESE TERMS, YOU MAY NOT ACCESS OR USE THE SERVICE. THE SERVICE PROVIDES A USER INTERFACE THAT ENABLES END USERS TO INTERACT WITH THE DFLOW PROTOCOL. WE ARE NOT A LICENSED EXCHANGE, FUNDING PORTAL, CUSTODIAN, TRUST COMPANY, LICENSED BROKER, DEALER, BROKER-DEALER, INVESTMENT ADVISOR, INVESTMENT MANAGER, FINANCIAL ADVISER, FINANCIAL INSTITUTION, LENDER, OR BORROWER, WHETHER IN THE UNITED STATES OR ELSEWHERE. THE SERVICE IS AN ADMINISTRATIVE PLATFORM ONLY. NEITHER DFLOW NOR OUR SERVICE GIVES, OFFERS OR RENDERS INVESTMENT, TAX, OR LEGAL ADVICE. THE SERVICE INCLUDES A SOFTWARE-BASED PLATFORM THAT ALLOWS ORDER FLOW WALLETS, CENTRALIZED AND DECENTRALIZED TRADING ENTITIES (“TRADING ENTITIES”), AND OTHER PARTIES TO BUY AND SELL DIGITAL ASSET ORDER FLOW TO AND FROM THIRD PARTIES UNAFFILIATED WITH DFLOW. BEFORE MAKING FINANCIAL OR INVESTMENT DECISIONS, WE RECOMMEND THAT YOU CONTACT AN INVESTMENT ADVISOR, OR TAX OR LEGAL PROFESSIONAL. DFLOW IS NOT A PARTY TO ANY AGREEMENT BETWEEN ANY USERS OF THE SERVICE. YOU SPECIFICALLY ACKNOWLEDGE AND AGREE THAT DFLOW SHALL NOT BE A PARTY TO OR HAVE ANY RESPONSIBILITY OR LIABILITY FOR, ARISING OUT OF, RELATING TO, ASSOCIATED WITH OR RESULTING FROM ANY DISPUTES BETWEEN YOU AND ANY BUYER OR SELLER OF ORDER FLOW IN RESPECT OF THE USE, MISUSE, PROVISION OR FAILURE TO PROVIDE ANY USER ASSET (AS DEFINED BELOW). YOU BEAR FULL RESPONSIBILITY FOR VERIFYING THE IDENTITY, LEGITIMACY, AND AUTHENTICITY OF ANY SOFTWARE PLATFORM YOU TRANSACT WITH THROUGH THE SERVICE. DFLOW MAKES NO CLAIMS ABOUT THE IDENTITY, LEGITIMACY, OR AUTHENTICITY OF ANY SOFTWARE PLATFORM, INCLUDING ANY DEFI PLATFORM (AS DEFINED BELOW). PLEASE BE AWARE THAT SECTION 16 CONTAINS PROVISIONS GOVERNING HOW TO RESOLVE DISPUTES BETWEEN YOU AND DFLOW. AMONG OTHER THINGS, SECTION 16 INCLUDES AN AGREEMENT TO ARBITRATE WHICH REQUIRES, WITH LIMITED EXCEPTIONS, THAT ALL DISPUTES BETWEEN YOU AND US SHALL BE RESOLVED BY BINDING AND FINAL ARBITRATION. SECTION 16 ALSO CONTAINS A CLASS ACTION AND JURY TRIAL WAIVER. PLEASE READ SECTION 16 CAREFULLY. UNLESS YOU OPT OUT OF THE AGREEMENT TO ARBITRATE WITHIN 30 DAYS: (1) YOU WILL ONLY BE PERMITTED TO PURSUE DISPUTES OR CLAIMS AND SEEK RELIEF AGAINST US ON AN INDIVIDUAL BASIS, NOT AS A PLAINTIFF OR CLASS MEMBER IN ANY CLASS OR REPRESENTATIVE ACTION OR PROCEEDING AND YOU WAIVE YOUR RIGHT TO PARTICIPATE IN A CLASS ACTION LAWSUIT OR CLASS-WIDE ARBITRATION; AND (2) YOU ARE WAIVING YOUR RIGHT TO PURSUE DISPUTES OR CLAIMS AND SEEK RELIEF IN A COURT OF LAW AND TO HAVE A JURY TRIAL. PLEASE BE AWARE THAT SECTION 6.c OF THESE TERMS, BELOW, CONTAINS YOUR OPT-IN CONSENT TO RECEIVE COMMUNICATIONS FROM US, INCLUDING EMAIL COMMUNICATIONS. Please refer to our Privacy Policy for information about how we collect, use and share personal information about you. By submitting data through the Service, you expressly consent to the collection, use and disclosure of your personal data in accordance with the Privacy Policy. DFlow reserves the right to change or modify these Terms at any time and in our sole discretion. If we make changes to these Terms, we will provide notice of such changes, such as by sending an email notification, providing notice through the Service or updating the “Last Updated” date at the beginning of these Terms. By continuing to access or use the Service at any point after such update, you confirm your acceptance of the revised Terms and all of the terms incorporated therein by reference. We encourage you to review these Terms frequently to ensure that you understand the terms and conditions that apply when you access or use the Service. If you do not agree to the revised Terms, you may not access or use the Service. 2. THE DFLOW PROTOCOL a. Use of the DFlow Protocol. The DFlow Protocol governs the DFlow application-specific blockchain platform (“Platform”), a digital network that supports smart contracts and enables users to deploy cryptocurrency and other digital assets (“Digital Assets”) across one or more third party digital platforms, including any blockchain networks or networks of smart contracts (“DeFi Platforms”) which support Digital Asset trading (the “DFlow Protocol”). DFlow may not have actual or constructive administrative control over the DFlow Protocol or your use thereof, and may not be able to access, transfer, or take custody of Digital Assets stored in, transferred via, or custodied by any smart contract enabled by the DFlow Protocol, nor may DFlow have the ability to upgrade or modify any existing smart contracts that are part of the DFlow Protocol. DFlow does not necessarily monitor or control any use of the DFlow Protocol by third parties and/or any use of the DFlow Protocol that does not take place on or through the Services. DFlow makes no representations or warranties about the functionality of the DFlow Protocol. All use of the DFlow Protocol is undertaken at your own risk, and DFlow is not and shall not be liable to you or to any third party for any loss or damage arising from or connected to your or any third party’s use of the DFlow Protocol. Notwithstanding anything to the contrary set forth herein, the terms of Section 12 (Assumption of Risk Related to Blockchain Technology), Section 14 (Disclaimers), and Section 15 (Limitation of Liability) of the Terms apply, mutatis mutandis, to any claims arising out of your use of the DFlow Protocol. b. No Updates or Modifications. DFlow does not have the ability to freeze the DFlow Protocol, nor does DFlow have the ability to update previously released smart contracts or transactions that are part of the DFlow Protocol. DFlow may, at its sole discretion, choose to release a new version of the DFlow Protocol. The Service may not be interoperable with prior, abandoned, or outdated versions of the DFlow Protocol. 3. OUR SERVICE a. The Service. In order to access certain Services, you may be required to become a “Registered User” by connecting a software-based digital wallet (a “Digital Wallet”) to the Service (which shall include any noncustodial Digital Wallet created by you through the Service (a “DFlow Wallet”)). If you create a DFlow Wallet, you may connect to that DFlow Wallet through a phone number, email address, or other third-party account (“Linked Account”). A Registered User can visualize such Registered User’s Digital Assets, Order Flow bids (“Bids”), Order Flow sales offers (“Sale Offers”), or previously executed Order Flow sales or purchases (“User Assets”) that have been deployed across DeFi Platforms using the DFlow Protocol (each such deployment, a “Transaction”). These visualizations may include graphs, projections, and other information about your User Assets (collectively, “User Asset Information”), including without limitation any amounts earned by you from the sale of User Assets through DeFi Platforms using the DFlow Protocol (“Earnings”). DFlow does not own or control your Digital Wallet, DFlow Wallet or any Defi Platform. b. DFlow Protocol. DFlow does not have any access to or control over your User Assets when you deploy such User Assets using the DFlow Protocol, and all use of the DFlow Protocol is at your own risk. Information that may be provided to you by the Service about your allocation of your User Assets and your Earnings are all considered User Asset Information. c. Your User Assets. When you use the Service, you represent and warrant that (a) you own or have the authority to connect to the Digital Wallet; (b) you own or have the authority to deploy any User Assets; (c) all User Assets you deploy or otherwise make available in connection with the Service have been earned, received, or otherwise acquired by you in compliance with all applicable laws; and (d) no User Assets that you deploy or otherwise make available in connection with the Service or the DFlow Protocol have been “tumbled” or otherwise undergone any process designed to hide, mask, or obscure the origin or ownership of such User Assets. d. DFlow Wallets. DFlow Wallets are noncustodial Digital Wallets owned and controlled by you. DFlow does not have actual or constructive access to any DFlow Wallet, and you, and not DFlow, are solely responsible for the protection and maintenance of your DFlow Wallet and any User Assets therein, including without limitation for protecting the security of and maintaining access to any Linked Account that you use to access your DFlow Wallet. You acknowledge and agree that DFlow shall have no obligation to you in connection with your use of or inability to use or access your DFlow Wallet. e. Compatibility Risk. The Service may not be compatible with all forms of cryptocurrency, and certain of your User Assets may not be compatible with the Service. Whether or not a User Asset is then-currently compatible with the Service may change at any time, in DFlow’s sole discretion, with or without notice to you. f. Earnings. Any Earnings that you receive in connection with your use of the DFlow Protocol are provided by the applicable Defi Platform or Trading Entities, and not DFlow. Any Earnings you receive or do not receive are at the sole discretion of such Defi Platform(s) or Trading Entities, and DFlow shall have no obligation to you to facilitate any Earnings payment and no liability to you in connection with any Earnings or your failure to receive the same. DFlow does not custody or control your User Assets, and does not provide, guarantee, or promise any return or Earnings on your User Assets. g. Price Impacts. The deployment of your User Assets across the Services, including your deployment of Bids and Sale Offers prior to the execution of a Transaction, may impact the price on certain digital asset exchanges, now or in the future, of the Digital Asset underlying such User Assets, or other related Digital Assets. DFlow has no obligation to you, or to any third party, including the owner of a Digital Asset underlying such Bid or Sale offer, to mitigate such price impacts, and shall make no efforts to do so in its provision of the Services. h. Taxes. You are solely responsible (and DFlow has no responsibility) for determining what, if any, taxes apply to any Transactions involving your User Assets, including your receipt of any Earnings. i. Web App License. Subject to your compliance with this Agreement, DFlow grants you a limited non-exclusive, non-transferable, non-sublicensable, revocable license to download, install and use a copy of the Web App on a limited number of devices that you own or control and to run such copies of the Web App solely for your own personal or internal business purposes. j. Application License. Subject to your compliance with this Agreement, DFlow grants you a limited non-exclusive, non-transferable, non-sublicensable, revocable license to download, install and use a copy of the Application on a single mobile device that you own or control and to run such copy of the Application solely for your own personal or internal business purposes. k. Open Source Software. You acknowledge and agree that the Service may use, incorporate or link to certain software made available under an “open-source” or “free” license (“OSS”), and that your use of the Service is subject to, and you agree to comply with, any applicable OSS licenses. Each item of OSS is licensed under the terms of the end-user license that accompanies such OSS. Nothing in these Terms limits your rights under, or grants you rights that supersede, the terms and conditions of any applicable end user license for the OSS. If required by any license for particular OSS, DFlow makes such OSS, and DFlow’s modifications thereto, available by written request at the notice address specified below. l. Updates. You understand that the Service is evolving. As a result, DFlow may require you to install updates to the Web App or Applications that you have installed on the devices through which you access or use the Service. You acknowledge and agree that DFlow may update the Service with or without notifying you. You may need to update third-party software from time to time in order to continue to use the Service. Any future release, update or other addition to the Service shall be subject to this Agreement. 4. API Usage. a. Our API. DFlow may enable you to use an application programming interface for sending data to or receiving data from the Platform and any software libraries made available by us for accessing the foregoing (collectively, the “API”). The API, and any software, code, or other information received by you through the API (“Licensed Data”), and any documentation made available in connection therewith on the Service (“Documentation”) constitute part of our Service. b. API Fee. In consideration for the API license set forth in this Section, you agree to pay DFlow the amounts set forth in connection with the API on the Service, which shall be a percentage of the amounts charged by you to your end users for use of such API and/or Licensed Data, as may be updated from time to time upon notice (“Fees”). Your ongoing use of the API following such update shall constitute your acceptance to the updated Fees. If you do not wish to accept any updated Fees, your sole remedy is to immediately stop using the API. Notwithstanding any fluctuation in the value of any currency, whether fiat or cryptocurrency, you shall pay all Fees in the currency in which you have agreed to pay such Fees. DFlow reserves the right to add any supported currencies or cryptocurrencies at any time, in DFlow’s sole discretion. DFlow may suspend your access to the Platform and API immediately upon notice to you if you fail to pay any amounts hereunder. DFlow shall be entitled to withhold performance and discontinue service until all unpaid amounts due are paid in full. Amounts due to DFlow are exclusive of all applicable sales, use, value-added, and other taxes, and all applicable duties, tariffs, assessments, export and import fees, or other similar charges, and you will be responsible for payment of all such taxes (other than taxes based on DFlow’s revenue or income), fees, duties, and charges and any related penalties and interest, arising from the payment of Fees due hereunder, or your use of the API. You agree that you will make all payments of amounts due to DFlow free and clear of, and without reduction for, any withholding taxes; any such taxes imposed on payments of amounts due to DFlow will be your sole responsibility, and You shall indemnify and hold harmless DFlow in connection with any proceedings brought by any taxing authorities arising from your failure to pay any taxes for which you are responsible hereunder. c. License to API. Subject to your ongoing compliance with the terms of this Agreement, DFlow hereby grants you a non-exclusive, non-transferable, non-sublicensable license, solely during the Term (as defined below) and solely for your internal business purposes, to: (a) use the API to submit data to and obtain data and other information from the Platform in accordance with any associated Documentation; (b) use the Licensed Data obtained in accordance with the foregoing (a); and (c) use and reproduce a reasonable number of copies of the Documentation solely as necessary to support your use of the API. d. Disclaimers. You acknowledge and agree that the Licensed Data is output that enables your end users to more easily write transactions to DeFi Platforms, and that the API does not process any transactions or otherwise facilitate the flow of funds as a service to you or any third party. The API and Licensed Data are made available “as is” and “with all faults”, and you agree that you use the API and Licensed Data at your own risk. e. Flow-Through Terms. If you make the API available to end users, you agree that your contract with such end users will reflect the restrictions and disclaimers set forth herein, and you agree to defend, indemnify, and hold DFlow harmless from and against any claims, losses, or damages arising from or related to your use of the API or Licensed Data, including without limitation any claims from or related to your end users. 5. Your Assumption of Risk. a. WHEN YOU USE THE SERVICE, YOU UNDERSTAND AND ACKNOWLEDGE THAT DFLOW IS NOT A FINANCIAL OR INVESTMENT ADVISOR AND THAT THE SERVICE ENTAILS A RISK OF LOSS AND MAY NOT MEET YOUR NEEDS. DFlow may not be able foresee or anticipate technical or other difficulties which may result in data loss or other service interruptions. DFlow encourages you to periodically confirm the valuation and status of your User Assets through independent sources. DFlow is not responsible for your User Assets, and does not and cannot make any guarantee that your User Assets will earn any Earnings or that your User Assets will not lose value. The prices of cryptocurrency assets can be extremely volatile. DFlow makes no warranties as to the markets in which your User Assets are transferred, purchased, or traded. b. You understand that the Service may not be suitable for your purposes, could have errors and, like any other software, the Service could be at risk of third-party malware, hacks or cybersecurity breaches. You agree that it is your responsibility to monitor your User Assets regularly and confirm their proper use and deployment consistent with your intentions. c. In order to be successfully completed, any Transaction involving your User Assets initiated by or sent to your Digital Wallet must be confirmed by and recorded on the blockchain(s) supporting such User Assets. DFlow has no control over any third party blockchain and therefore cannot and does not ensure that any transaction details that you submit or receive via our Service will be validated by or confirmed on the relevant blockchain, and DFlow does not have the ability to facilitate any cancellation or modification requests. You accept and acknowledge that you take full responsibility for all activities that you effect through your Digital Wallet and accept all risks of loss, including loss as a result of any authorized or unauthorized access to your Digital Wallet, to the maximum extent permitted by law. d. You represent and warrant that you (a) have the necessary technical expertise and ability to review and evaluate the security, integrity and operation of your Digital Wallet and any DeFi Platforms to which your User Assets may be deployed in connection with the Service; (b) have the knowledge, experience, understanding, professional advice and information to make your own evaluation of the merits, risks and applicable compliance requirements under applicable laws of any use of your Digital Wallet and any DeFi Platforms to which your User Assets may be deployed in connection with the Service; (c) know, understand and accept the risks associated with your Digital Wallet and any DeFi Platforms to which your User Assets may be deployed in connection with the Service; and (d) accept the risks associated with blockchain technology and DeFi Platforms generally, and are responsible for conducting your own independent analysis of the risks specific to your use of the Service. You further agree that DFlow will have no responsibility or liability for such risks. e. You acknowledge and agree that: ● There are risks associated with using an Internet based currency, including but not limited to, the risk of hardware, software and Internet connections; the risk of malicious software introduction; the risk that third parties may obtain unauthorized access to information stored within your Digital Wallet; and the risk of counterfeit assets, mislabeled assets, assets that are vulnerable to metadata decay, assets on smart contracts with bugs, and assets that may become untransferable. You accept and acknowledge that DFlow will not be responsible for any communication failures, disruptions, errors, distortions or delays or losses you may experience when using blockchain technology, however caused. ● The regulatory regimes governing blockchain technologies, cryptocurrencies, and tokens are uncertain, and new regulations or policies may materially adversely affect the development of the Service. ● DFlow makes no guarantee as to the functionality of any blockchain’s decentralized governance, which could, among other things, lead to delays, conflicts of interest, or operational decisions that are unfavorable to your User Assets. You acknowledge and accept that the protocols governing the operation of a blockchain may be subject to sudden changes in operating rules which may materially alter the blockchain and affect the value and function of any of your User Assets supported by that blockchain. ● DFlow makes no guarantee as to the security of any blockchain or any DeFi Platform. DFlow is not liable for any hacks, double spending, stolen User Assets, or any other attacks on a blockchain or DeFi Platform. ● The DeFi Platforms are controlled by third parties, and DFlow is not responsible for their performance nor any risks associated with the use thereof. The Service relies on, and DFlow makes no guarantee or warranties as to the functionality of or access to, any DeFi Platform, Digital Wallet, or other Third-Party Service. ● You control your Digital Wallet, and DFlow is not responsible for its performance, nor any risks associated with the use thereof. 6. CONNECTING A DIGITAL WALLET; CONSENT TO ELECTRONIC COMMUNICATION a. Connecting a Digital Wallet; Registration Information. In order to use certain features of the Service you will need to connect a compatible Digital Wallet and accept these Terms. You must be eighteen (18) years old to use the Service. When you connect your Digital Wallet to the Website or otherwise use the Service, you may be asked to provide certain information to us (“Registration Information”). You agree to (i) provide accurate, current, and complete Registration Information; (ii) maintain and promptly update your Registration Information from time to time as necessary, (iii) maintain the security of your Digital Wallet and accept all risks of unauthorized access thereto, and (iv) immediately notify us if you discover or otherwise suspect any security breaches related to the Service or your Digital Wallet. DFlow may require you to provide additional information and documents at the request of any competent authority or in order to help DFlow comply with applicable law, regulation, or policy, including laws related to anti-laundering (legalization) of incomes obtained by criminal means, or for counteracting financing of terrorism. DFlow may also require you to provide additional information and documents in cases where it has reasons to believe that: ● Your Digital Wallet is being used for money laundering or for any other illegal activity; ● You have concealed or reported false identification information and other Registration Information; or ● Transactions effected via your Digital Wallet were effected in breach of these Terms. In such cases, DFlow, in its sole discretion, may disable your ability to use the Service until such requested additional information and documents have been reviewed by DFlow and accepted as satisfying the requirements of applicable law, regulation, or policy. If you do not provide complete and accurate information and documents in response to such a request, DFlow may refuse to provide any Digital Asset, Content, product, service, and/or further access to the Service to you. b. User Agreements. You agree that you will not: ● buy, sell, rent, or lease access to the Service without our written permission; ● attempt to use the Service after removal by us; or ● access or try to access the Service through unauthorized third party applications or clients. c. Consent to Electronic Communications. By connecting a Digital Wallet, you consent to receive electronic communications from DFlow (e.g., via email, message to such Digital Wallet, discord, or by posting notices to the Service). These communications may include notices about your use of the Service (e.g., transactional information) and are part of your relationship with us. You agree that any notices, agreements, disclosures or other communications that we send to you electronically will satisfy any legal communication requirements, including, but not limited to, any requirements that such communications be in writing. You should maintain copies of electronic communications from us by printing a paper copy or saving an electronic copy. We have no obligation to store for your later use or access any such electronic communications that we make to you. We may also send you promotional communications via email, including, but not limited to, newsletters, special offers, surveys and other news and information we think will be of interest to you. You may opt out of receiving these promotional emails at any time by following the unsubscribe instructions provided therein. d. User Representations and Warranties. When you connect a Digital Wallet to the Service, you hereby represent and warrant, to and for the benefit of DFlow and its affiliates, as follows: ● You have all requisite capacity, power and authority to enter into and perform your obligations under these Terms, including to access the Service, and deploy any User Assets. The execution, delivery and performance of, and the performance of your obligations under, these Terms have been duly authorized by all necessary action on your part and on the part of any entity on behalf of which you are entering into these Terms, and no other proceedings are necessary to authorize the execution, delivery or performance of your obligations under these Terms. ● These Terms constitute your legal, valid and binding obligation, enforceable against you in accordance with these Terms. ● All Registration Information and other information provided to DFlow by you is accurate and complete. None of: (i) you; (ii) any affiliate of any entity on behalf of which you are entering into these Terms; (iii) any other person having a beneficial interest in any entity on behalf of which you are entering into these Terms (or in any affiliate thereof); or (iv) any person for whom you are acting as agent or nominee in connection with these Terms is: (A) a country, territory, entity or individual named on an OFAC list as provided at [http://www.treas.gov/ofac](http://www.treas.gov/ofac) , or any person or entity prohibited under the OFAC programs, regardless of whether or not they appear on the OFAC list; or (B) a senior foreign political figure, or any immediate family member or close associate of a senior foreign political figure. ● You are sophisticated, experienced and knowledgeable in the matters contemplated by these Terms. Additionally, you have conducted an independent investigation of the Service and the matters contemplated by these Terms, have formed your own independent judgment regarding the benefits and risks of and necessary and desirable practices regarding the foregoing and, in making the determination to use the Service, you have relied solely on the results of such investigation and such independent judgment. Without limiting the generality of the foregoing, you understand, acknowledge and agree that the legal requirements pertaining to blockchain technologies and Digital Assets generally are evolving, and you have conducted an independent investigation of such potentially applicable legal requirements and the resulting risks and uncertainties. You hereby irrevocably disclaim and disavow reliance upon any statements or representations made by or on behalf of, or information made available by, DFlow, in determining to enter into these Terms and use the Service. ● There is no legal proceeding pending that relates to your activities relating to buying, selling, staking, or otherwise using Users Assets, Digital Assets or any other token- or Digital Asset- trading or blockchain technology related activities. ● You have not failed to comply with, and have not violated, any applicable legal requirement relating to any blockchain technologies or token-trading activities. No investigation or review by any governmental entity is pending or, to your knowledge, has been threatened against or with respect to you, nor does any government order or action prohibit you or any of your representatives from engaging in or continuing any conduct, activity or practice relating to Digital Assets. e. Responsibility for Fees. You must provide all equipment and software necessary to connect to the Service. You are solely responsible for any fees, including Internet connection or mobile fees, that you incur when accessing the Service. 7. PRICING; PAYMENTS a. General. All pricing and payment terms are as indicated at point of sale or otherwise on the Service, and any payment obligations you incur are binding at the time of the applicable Transaction or other use of the Service. b. Interacting with the DFlow Protocol. Once you draft and sign a transaction message through your connected Digital Wallet, your Bid or Sale Offer for Order Flow will be added to the Platform. If such Bid or Sale Offer is accepted, the Transaction will be added, as applicable, to the applicable DeFi Platform, using the DFlow Protocol. c. Gas Fees. You are solely responsible for ensuring that any payment made by you is sufficient to cover any Gas Fee required to complete the Transaction. “Gas Fees” are transaction fees determined by market conditions on the applicable blockchain network, including the Platform, at the time you effect a Transaction, and may not be determined, set, or charged by DFlow. d. Payment Currency. You may not substitute any other currency (including any other cryptocurrency) for the currency in which you have contracted to pay at the time you entered into an agreement. For clarity, no fluctuation in the value of any currency, whether cryptocurrency or otherwise, shall impact or excuse your obligations with respect to any payment obligation. Whether a particular cryptocurrency is accepted as a payment method by DFlow is subject to change at any time in DFlow’s sole discretion. DFlow may add or change any supported blockchains or payment processing services at any time in its sole discretion. All such services may be subject to additional terms and conditions. 8. OWNERSHIP a. Content. Unless otherwise indicated in writing by us, the Service and all content and other materials contained therein, including, without limitation, the DFlow logo and all designs, text, graphics, pictures, information, data, software, sound files, other files and the selection and arrangement thereof (collectively, “Content”) are the proprietary property of DFlow or our affiliates, and licensors, as applicable. You and other users, and not DFlow, are responsible for all Content made available by you and such other users (“User Content”). b. Third-Party Licenses. Notwithstanding anything to the contrary in these Terms, the Service and Content may include software components provided by DFlow or its affiliates or a third party that are subject to separate license terms, in which case those license terms will govern such software components. c. License to Service and Content. You are hereby granted a limited, revocable, nonexclusive, nontransferable, non-assignable, non-sublicensable, “as-is” license to access and use the Service and Content for your own personal, non-commercial use; provided, however, that such license is subject to these Terms and does not include any right to (i) sell, resell, or use commercially the Service or Content, (ii) distribute, publicly perform, or publicly display any Content, (iii) modify or otherwise make any derivative uses of the Service or Content, or any portion thereof, (iv) use any data mining, robots, or similar data gathering or extraction methods, (v) download (other than page caching) any portion of the Service or Content, except as expressly permitted by us, and (vi) use the Service or Content other than for their intended purposes. This license is subject to your compliance with the Acceptable Use Policy set forth in Section 10 below. d. Your User Content. DFlow does not claim ownership of your User Content. However, when you make available any User Content on or to the Service, you represent that you own and/or have sufficient rights to such User Content to grant the license set forth in Section 8(e). e. License to Your User Content. You grant DFlow a non-exclusive, transferable, perpetual, irrevocable, worldwide, fully-paid, royalty-free, sublicensable (through multiple tiers of sublicensees) right (including any moral rights) and license to use, copy, reproduce, modify, adapt, prepare derivative works from, translate, distribute, publicly perform, publicly display and derive revenue or other remuneration from your User Content (in whole or in part) for the purposes of operating and providing the Service to you and to our other users. f. Feedback. You agree that submission of any ideas, suggestions, documents, and/or proposals to DFlow through its suggestion, feedback, forum, or similar pages (“Feedback”) is at your own risk and that DFlow has no obligations (including without limitation obligations of confidentiality) with respect to such Feedback. You represent and warrant that you have all rights necessary to submit the Feedback. You hereby grant to DFlow a fully paid, royalty-free, perpetual, irrevocable, worldwide, non-exclusive, and fully sublicensable right and license to use, reproduce, perform, display, distribute, adapt, modify, re-format, create derivative works of, and otherwise commercially or non-commercially exploit in any manner, any and all Feedback, and to sublicense the foregoing rights, in connection with the operation and maintenance of the Service and/or DFlow’s business. 9. THIRD-PARTY SERVICES; THIRD-PARTY TERMS a. Third-Party Services. The Service may contain links to third-party properties and applications, including without limitation certain DeFi Platforms (collectively, “Third-Party Services”). When you click on a link to a Third-Party Service, you are subject to the terms and conditions (including privacy policies) of another property or application. DFlow is not responsible for any Third-Party Services. DFlow provides links to these Third-Party Services only as a convenience and does not review, approve, monitor, endorse, warrant, or make any representations with respect to Third-Party Services, or their products or services. You use all links in Third-Party Services at your own risk. When you leave our Service, our Terms and policies no longer govern. You should review all applicable agreements and policies, including privacy and data gathering practices, of any Third-Party Services, and should make whatever investigation you feel necessary or appropriate before proceeding with any Transaction with any third party. b. Chatbot. The Service may include a chatbot powered by generative AI and machine learning (“Chatbot”). The Chatbot may use one or more Third-Party Services to respond to your messages. By using the Chatbot, you hereby consent and authorize DFlow to share any Content or other information you provide to the Chatbot with the applicable Third-Party Services in order to complete your request. YOU, AND NOT DFLOW, SHALL BE SOLELY RESPONSIBLE FOR YOUR USE OF THE CHATBOT. YOU ACKNOWLEDGE AND AGREE THAT ANY CONDUCT YOU ENGAGE IN AS A RESULT OF THE INFORMATION PROVIDED BY THE CHATBOT IS AT YOUR OWN RISK. BECAUSE CHATBOTS UTILIZE ARTIFICIAL INTELLIGENCE TO COMMUNICATE WITH YOU, OUR CHATBOT(S) MAY PROVIDE INFORMATION THAT IS AN INACCURATE OR INAPPROPRIATE RESPONSE TO YOUR REQUESTS IN ITS INTERACTIONS WITH YOU. YOU AGREE THAT DFLOW WILL NOT BE LIABLE TO YOU OR ANY THIRD PARTY FOR THE CHATBOT PROVIDING INACCURATE OR INAPPROPRIATE INFORMATION TO YOU. You further acknowledge and agree that when you interact with the Chatbot you grant DFlow and the applicable Third-Party Service provider a perpetual, irrevocable, fully-paid, royalty-free right and license to use any Content provided by you to train, develop, enhance, evolve and improve the Chatbot and applicable Third-Party Service and the underlying artificial intelligence models, algorithms and related technology, products and services (including for labeling, classification, content moderation and model training purposes). c. Third-Party Application Access. With respect to any Application accessed through or downloaded from the Apple App Store (an “App Store Sourced Application”), you shall only use the App Store Sourced Application (i) on an Apple-branded product that runs the iOS (Apple’s proprietary operating system) and (ii) as permitted by the “Usage Rules” set forth in the Apple Media Terms of Service, except that such App Store Sourced Application may be accessed, acquired, and used by other accounts associated with the purchaser via Apple’s Family Sharing function, volume purchasing, or Legacy Contacts function. Notwithstanding the first sentence in this section, with respect to any Application accessed through or downloaded from the Google Play store (a “Google Play Sourced Application”), you may have additional license rights with respect to use of the Application on a shared basis within your designated family group. d. Accessing and Downloading the Application from the Apple App Store. The following applies to any App Store Sourced Application accessed through or downloaded from the Apple App Store: e. You acknowledge and agree that (i) this Agreement is concluded between you and DFlow only, and not Apple, and (ii) DFlow, not Apple, is solely responsible for the App Store Sourced Application and content thereof. Your use of the App Store Sourced Application must comply with the App Store Terms of Service. f. You acknowledge that Apple has no obligation whatsoever to furnish any maintenance and support services with respect to the App Store Sourced Application. g. In the event of any failure of the App Store Sourced Application to conform to any applicable warranty, you may notify Apple, and Apple will refund the purchase price for the App Store Sourced Application to you and to the maximum extent permitted by applicable law, Apple will have no other warranty obligation whatsoever with respect to the App Store Sourced Application. As between DFlow and Apple, any other claims, losses, liabilities, damages, costs or expenses attributable to any failure to conform to any warranty will be the sole responsibility of DFlow. h. You and DFlow acknowledge that, as between DFlow and Apple, Apple is not responsible for addressing any claims you have or of any third party relating to the App Store Sourced Application or your possession and use of the App Store Sourced Application, including, but not limited to: (i) product liability claims; (ii) any claim that the App Store Sourced Application fails to conform to any applicable legal or regulatory requirement; and (iii) claims arising under consumer protection or similar legislation. i. You and DFlow acknowledge that, in the event of any third-party claim that the App Store Sourced Application or your possession and use of that App Store Sourced Application infringes that third party’s intellectual property rights, as between DFlow and Apple, DFlow, not Apple, will be solely responsible for the investigation, defense, settlement and discharge of any such intellectual property infringement claim to the extent required by this Agreement. j. You and DFlow acknowledge and agree that Apple, and Apple’s subsidiaries, are third-party beneficiaries of this Agreement as related to your license of the App Store Sourced Application, and that, upon your acceptance of the terms and conditions of this Agreement, Apple will have the right (and will be deemed to have accepted the right) to enforce this Agreement as related to your license of the App Store Sourced Application against you as a third-party beneficiary thereof. k. Without limiting any other terms of this Agreement, you must comply with all applicable third-party terms of agreement when using the App Store Sourced Application. 10. ACCEPTABLE USE POLICY You agree that you are solely responsible for your conduct while accessing or using the Service. You agree that you will abide by these Terms and will not: a. Use the Service in any manner that could interfere with, disrupt, negatively affect or inhibit other users from fully enjoying the Service, or that could damage, disable, overburden or impair the functioning of the Service in any manner; b. Develop, utilize, or disseminate any software, or interact with any API in any manner, that could damage, harm, or impair the Service; c. Reverse engineer any aspect of the Service, or do anything that might discover source code or bypass or circumvent measures employed to prevent or limit access to any service, area, or code of the Service; d. Use any robot, spider, crawler, scraper, script, browser extension, offline reader, or other automated means or interface not authorized by us to access the Service, extract data or otherwise interfere with or modify the rendering of Service pages or functionality; e. Collect or harvest data from our Service that would allow you to contact individuals, companies, or other persons or entities, or use any such data to contact such entities; f. Use data collected from our Service for any direct marketing activity (including without limitation, email marketing, SMS marketing, telemarketing, unsolicited airdrops, and direct marketing); g. Bypass or ignore instructions that control all automated access to the Service; h. Use the Service for any illegal or unauthorized purpose, or engage in, encourage, or promote any activity that violates any applicable law or these Terms; i. Use the Service to carry out any illegal activities, or use the Digital Wallet or User Assets that you use in connection with the Service in connection with any illegal activities, including but not limited to money laundering, terrorist financing or deliberately engaging in activities designed to adversely affect the performance of the Service; j. Engage in or knowingly facilitate any “wash trading,” “pump and dump trading,” “ramping,” “cornering” or fraudulent trading activities, including: ● trading a Digital Asset, or Digital Asset Order Flow, at successively lower or higher prices for the purpose of creating or inducing a false, misleading or artificial appearance of activity in such Digital Asset, unduly or improperly influencing the market price for such Digital Asset or establishing a price which does not reflect the true state of the market in such Digital Asset; or ● executing or causing the execution of any Transaction in a User Asset which involves no material change in the beneficial ownership thereof. k. Use the Service to carry out any financial activities subject to registration or licensing, including but not limited to using the Service to transact in securities, commodities futures, trading of commodities on a leveraged, margined or financed basis, binary options (including prediction-market transactions), real estate or real estate leases, equipment leases, debt financings, equity financings or other similar transactions. 11. INVESTIGATIONS If DFlow becomes aware of any possible violations by you of these Terms, DFlow reserves the right to investigate such violations. If, as a result of the investigation, DFlow believes that criminal activity may have occurred, DFlow reserves the right to refer the matter to, and to cooperate with, any and all applicable legal authorities. DFlow is entitled, except to the extent prohibited by applicable law, to disclose to third parties any information or materials in DFlow’s possession, including in order to (i) comply with applicable laws, legal process or governmental request; (ii) enforce these Terms, (iii) respond to your requests for customer service, or (iv) protect the rights, property or personal safety of DFlow, its users, or the public, as DFlow in its sole discretion believes to be necessary or appropriate. By agreeing to these Terms, you hereby provide your irrevocable consent to such monitoring. You understand, acknowledge, and agree that you have no expectation of privacy concerning your use of the Service, including without limitation text, voice, or video communications. 12. RELEASE You hereby release and forever discharge DFlow and our officers, employees, agents, successors, and assigns (the “DFlow Entities”) from, and hereby waive and relinquish, each and every past, present and future dispute, claim, controversy, demand, right, obligation, liability, action and cause of action of every kind and nature (including personal injuries, death, and property damage), that has arisen or arises directly or indirectly out of, or that relates directly or indirectly to, the Service (including any interactions with, or act or omission of, any DeFi Platform). IF YOU ARE A CALIFORNIA RESIDENT, YOU HEREBY WAIVE CALIFORNIA CIVIL CODE SECTION 1542 IN CONNECTION WITH THE FOREGOING, WHICH STATES: “A GENERAL RELEASE DOES NOT EXTEND TO CLAIMS WHICH THE CREDITOR OR RELEASING PARTY DOES NOT KNOW OR SUSPECT TO EXIST IN HIS OR HER FAVOR AT THE TIME OF EXECUTING THE RELEASE, WHICH IF KNOWN BY HIM OR HER MUST HAVE MATERIALLY AFFECTED HIS OR HER SETTLEMENT WITH THE DEBTOR OR RELEASED PARTY.” 13. ASSUMPTION OF RISK RELATED TO BLOCKCHAIN You acknowledge and agree that: a. The prices of Digital Assets are extremely volatile. Fluctuations in the price of other digital assets could materially and adversely affect the value of your User Assets, including your Digital Assets. b. You are solely responsible for determining what, if any, taxes apply to any Transaction. Neither DFlow nor any other DFlow Entity is responsible for determining the taxes that may apply to Transactions. c. User Assets exist and can be transferred only by virtue of the ownership record maintained on the blockchain supporting such User Assets. Any transfer of User Assets occurs within the supporting blockchain and/or as facilitated by the DFlow Protocol, and not on the Service. d. There are risks associated with using digital currency, including but not limited to the risk of hardware, software and Internet connections, the risk of malicious software introduction, and the risk that third parties may obtain unauthorized access to information stored within your Digital Wallet. e. There are risks associated with use of the DFlow Protocol, including but not limited to security flaws and vulnerabilities, bugs, and other factors. DFlow makes no representations as to the security of the DFlow Protocol, and you enter into any Transaction using the DFlow Protocol at your own risk. f. DFlow does not monitor, and is not liable to you for, any user activity in connection with the Service or the DFlow Protocol. DFlow cannot control, and makes no representations with respect to, any DeFi Platform. g. The legal and regulatory regime governing blockchain technologies, cryptocurrencies, and tokens is uncertain, and new regulations or policies may materially adversely affect the development of the Service and the utility of Digital Assets. h. There are risks associated with user-generated assets, including but not limited to, the risk of purchasing counterfeit assets, mislabeled assets, assets that are vulnerable to metadata decay, assets on smart contracts with bugs, and assets that may become untransferable. i. DFlow reserves the right to hide collections, contracts, and assets that DFlow suspects or believes may violate these Terms. Digital Assets you deploy may become inaccessible on the Service. Under no circumstances shall the inability to view your assets on the Service serve as grounds for a claim against DFlow. j. DFlow has no responsibility for the User Assets, including any Digital Assets, deployed on or through the Service. DFlow does not investigate and cannot guarantee or warrant the legality or value of any User Asset made available on the Service. For the avoidance of doubt, DFlow shall have no responsibility for any failure of any user to comply with any terms regarding the User Asset furnished by or on behalf of that user and available via the Service. 14. INDEMNIFICATION To the fullest extent permitted by applicable law, you agree to indemnify, defend, and hold harmless DFlow and the DFlow Entities from and against all actual or alleged third party claims, damages, awards, judgments, losses, liabilities, obligations, penalties, interest, fees, expenses (including, without limitation, attorneys’ fees and expenses) and costs (including, without limitation, court costs, costs of settlement, and costs of or associated with pursuing indemnification and insurance), of every kind and nature whatsoever arising out of or related to these Terms or your use of the Service or the Service, whether known or unknown, foreseen or unforeseen, matured or unmatured, or suspected or unsuspected, in law or equity, whether in tort, contract or otherwise (collectively, “Claims”), including, but not limited to, damages to property or personal injury, that are caused by, arise out of or are related to (a) your use or misuse of the Service or any User Assets, (b) any Feedback you provide, (c) your violation of these Terms, and (d) your violation of the rights of any third party, including another user. You agree to promptly notify DFlow of any third-party Claims and cooperate with the DFlow Entities in defending such Claims. You further agree that the DFlow Entities shall have control of the defense or settlement of any third-party Claims. THIS INDEMNITY IS IN ADDITION TO, AND NOT IN LIEU OF, ANY OTHER INDEMNITIES SET FORTH IN A SEPARATE WRITTEN AGREEMENT BETWEEN YOU AND DFLOW. 15. DISCLAIMERS THE SERVICE IS PROVIDED ON AN “AS IS” AND “AS AVAILABLE” BASIS WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. DFLOW (AND ITS SUPPLIERS) MAKE NO WARRANTY THAT THE SERVICE: (A) WILL MEET YOUR REQUIREMENTS; (B) WILL BE AVAILABLE ON AN UNINTERRUPTED, TIMELY, SECURE, OR ERROR-FREE BASIS; OR (C) WILL BE ACCURATE, RELIABLE, COMPLETE, LEGAL, OR SAFE. DFLOW DISCLAIMS ALL OTHER WARRANTIES OR CONDITIONS, EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION, IMPLIED WARRANTIES OR CONDITIONS OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE, AND NON-INFRINGEMENT AS TO THE SERVICE OR ANY CONTENT CONTAINED THEREIN. DFLOW DOES NOT REPRESENT OR WARRANT THAT THE SERVICE OR CONTENT ON THE SERVICE IS ACCURATE, COMPLETE, RELIABLE, CURRENT, OR ERROR-FREE. WE WILL NOT BE LIABLE FOR ANY LOSS OF ANY KIND FROM ANY ACTION TAKEN OR TAKEN IN RELIANCE ON MATERIAL OR INFORMATION, CONTAINED ON THE SERVICE. WHILE DFLOW ATTEMPTS TO MAKE YOUR ACCESS TO AND USE OF THE SERVICE AND CONTENT SAFE, DFLOW CANNOT AND DOES NOT REPRESENT OR WARRANT THAT THE SERVICE, CONTENT, OR ANY USER ASSETS LISTED ON OUR SERVICE ARE FREE OF VIRUSES OR OTHER HARMFUL COMPONENTS. WE CANNOT GUARANTEE THE SECURITY OF ANY DATA THAT YOU DISCLOSE ONLINE. YOU ACCEPT THE INHERENT SECURITY RISKS OF PROVIDING INFORMATION AND DEALING ONLINE OVER THE INTERNET AND WILL NOT HOLD US RESPONSIBLE FOR ANY BREACH OF SECURITY UNLESS IT IS DUE TO OUR GROSS NEGLIGENCE. WE WILL NOT BE RESPONSIBLE OR LIABLE TO YOU FOR ANY LOSSES YOU SUSTAIN AS A RESULT OF YOUR USE OF THE SERVICE. WE TAKE NO RESPONSIBILITY FOR, AND WILL NOT BE LIABLE TO YOU FOR, ANY USE OF USER ASSETS, INCLUDING BUT NOT LIMITED TO ANY LOSSES, DAMAGES OR CLAIMS ARISING FROM: (I) USER ERROR SUCH AS FORGOTTEN PASSWORDS, INCORRECTLY CONSTRUCTED TRANSACTIONS, OR MISTYPED ADDRESSES; (II) SERVER FAILURE OR DATA LOSS; (III) CORRUPTED DIGITAL WALLET FILES; (IV) UNAUTHORIZED ACCESS TO APPLICATIONS; (V) ANY UNAUTHORIZED THIRD PARTY ACTIVITIES, INCLUDING WITHOUT LIMITATION THE USE OF VIRUSES, PHISHING, BRUTEFORCING OR OTHER MEANS OF ATTACK AGAINST THE SERVICE OR USER ASSETS; (VI) YOUR USE OF OR FAILURE TO USE THE DFLOW PROTOCOL; OR (VII) ANY USE OR MISUSE OF THE SERVICE BY YOU OR ANY THIRD PARTY. NO ADVICE OR INFORMATION, WHETHER ORAL OR WRITTEN, OBTAINED FROM DFLOW OR THROUGH THE SERVICE WILL CREATE ANY WARRANTY NOT EXPRESSLY MADE HEREIN. FROM TIME TO TIME, DFLOW MAY OFFER NEW “BETA” FEATURES OR TOOLS. ALL SUCH FEATURES OR TOOLS ARE OFFERED “AS IS” AND WITH ALL FAULTS, SOLELY FOR EXPERIMENTAL PURPOSES AND WITHOUT ANY WARRANTY OF ANY KIND, AND MAY BE MODIFIED OR DISCONTINUED AT DFLOW’S SOLE DISCRETION. THE PROVISIONS OF THIS SECTION APPLY WITH FULL FORCE TO SUCH FEATURES OR TOOLS. USER ASSETS ARE INTANGIBLE ASSETS THAT EXIST ONLY BY VIRTUE OF THE OWNERSHIP RECORD MAINTAINED IN THE BLOCKCHAIN NETWORK. ANY TRANSFER OF TITLE THAT MIGHT OCCUR IN ANY UNIQUE DIGITAL ASSET OCCURS ON THE DECENTRALIZED LEDGER WITHIN THE BLOCKCHAIN PLATFORM. WE DO NOT GUARANTEE THAT DFLOW OR ANY DFLOW ENTITY CAN EFFECT THE TRANSFER OF TITLE OR RIGHT IN ANY USER ASSETS. WE CANNOT AND DO NOT GUARANTEE THAT ANY USER ASSET WILL HAVE OR RETAIN ANY INHERENT VALUE, OR THAT YOU WILL BE ABLE TO RECEIVE OR ACCESS ANY USER ASSET ACCESS PRIVILEGES OR OTHER BENEFITS ASSOCIATED WITH ANY USER ASSET THAT YOU BUY OR SELL THROUGH THE SERVICE. DFLOW IS NOT AN INVESTMENT ADVISOR. NEITHER DFLOW NOR ITS SUPPLIERS OR LICENSORS SHALL BE RESPONSIBLE FOR INVESTMENT AND OTHER FINANCIAL DECISIONS, OR DAMAGES, OR OTHER LOSSES RESULTING FROM USE OF THE SERVICES. NEITHER DFLOW NOR ITS SUPPLIERS OR LICENSORS SHALL BE CONSIDERED AN “EXPERT” UNDER THE SECURITIES ACT OF 1933. NEITHER DFLOW NOR ITS SUPPLIERS OR LICENSORS WARRANT THAT THIS WEBSITE COMPLIES WITH THE REQUIREMENTS OF THE FINANCIAL INDUSTRY REGULATORY AUTHORITY, THE SECURITIES AND EXCHANGE COMMISSION OR ANY SIMILAR ORGANIZATION OR REGULATOR OR WITH THE SECURITIES LAWS OF ANY JURISDICTION. YOU ACKNOWLEDGE AND AGREE THAT DFLOW PARTIES ARE NOT LIABLE, AND YOU AGREE NOT TO SEEK TO HOLD DFLOW PARTIES LIABLE, FOR THE CONDUCT OF THIRD PARTIES, INCLUDING OPERATORS OF EXTERNAL SITES AND DEFI PLATFORMS, AND THAT THE RISK OF INJURY FROM SUCH THIRD PARTIES RESTS ENTIRELY WITH YOU. DFLOW SHALL BE UNDER NO OBLIGATION TO INQUIRE INTO AND SHALL NOT BE LIABLE FOR ANY DAMAGES, OTHER LIABILITIES OR HARM TO ANY PERSON OR ENTITY RELATING TO ANY LOSSES, DELAYS, FAILURES, ERRORS, INTERRUPTIONS OR LOSS OF DATA OCCURRING DIRECTLY OR INDIRECTLY BY REASON OF CIRCUMSTANCES BEYOND DFLOW’S CONTROL, INCLUDING WITHOUT LIMITATION THROUGH THE DEPLOYMENT OF USER ASSETS TO ANY DEFI PLATFORM IN CONNECTION WITH THE SERVICES. DFlow is not responsible for any losses or harms sustained by you due to vulnerability or any kind of failure, abnormal behavior of software (e.g., wallet, smart contract), blockchains, or any other features of or inherent to the User Assets. DFlow is not responsible for casualties due to developers or representatives delay or failure to report any issues with any blockchain supporting User Assets, including without limitation forks, technical node issues, or any other issues that result in losses of any sort, including without limitation any issues arising from or related to the DFlow Protocol. Nothing in these Terms shall exclude or limit liability of either party for fraud, death or bodily injury caused by negligence, violation of laws, or any other activity that cannot be limited or excluded under the laws applicable to your jurisdiction. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OF IMPLIED WARRANTIES IN CONTRACTS WITH CONSUMERS, SO THE ABOVE EXCLUSION(S) MAY NOT APPLY TO YOU. 16. LIMITATION OF LIABILITY TO THE FULLEST EXTENT PERMITTED BY LAW, IN NO EVENT WILL DFLOW BE LIABLE TO YOU OR ANY THIRD PARTY FOR ANY LOST PROFIT OR ANY INDIRECT, CONSEQUENTIAL, EXEMPLARY, INCIDENTAL, SPECIAL OR PUNITIVE DAMAGES ARISING FROM THESE TERMS, THE SERVICE, ANY USER ASSETS, ANY TRANSACTION, YOUR USE OF OR INABILITY TO USE THE DFLOW PROTOCOL FOR ANY PURPOSE, OR FOR ANY DAMAGES RELATED TO LOSS OF REVENUE, LOSS OF PROFITS, LOSS OF BUSINESS OR ANTICIPATED SAVINGS, LOSS OF USE, LOSS OF GOODWILL, OR LOSS OF DATA, AND WHETHER CAUSED BY TORT (INCLUDING NEGLIGENCE), BREACH OF CONTRACT, OR OTHERWISE, EVEN IF FORESEEABLE AND EVEN IF DFLOW HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. ACCESS TO, AND USE OF, THE SERVICE IS UNDERTAKEN BY YOU AT YOUR OWN DISCRETION AND RISK, AND YOU WILL BE SOLELY RESPONSIBLE FOR ANY DAMAGE TO YOUR COMPUTER SYSTEM OR MOBILE DEVICE OR LOSS OF DATA RESULTING THEREFROM. NOTWITHSTANDING ANYTHING TO THE CONTRARY CONTAINED HEREIN, IN NO EVENT SHALL THE MAXIMUM AGGREGATE LIABILITY OF DFLOW ARISING OUT OF OR IN ANY WAY RELATED TO THESE TERMS, YOUR ACCESS TO AND USE OF THE SERVICE, CONTENT (INCLUDING YOUR CONTENT), YOUR USE OF OR INABILITY TO USE THE DFLOW PROTOCOL, OR ANY USER ASSETS DEPLOYED OR VIEWED THROUGH THE SERVICE EXCEED THE GREATER OF (A) $100 OR (B) THE AMOUNT PAID TO DFLOW BY YOU FOR THE SERVICE IN THE TRANSACTION OR INCIDENT THAT IS THE SUBJECT OF THE CLAIM. Some jurisdictions do not allow the exclusion or limitation of incidental or consequential damages, so the above limitation or exclusion may not apply to you. 17. DISPUTE RESOLUTION. Please read this Arbitration Agreement (the “Arbitration Agreement”) carefully. It is part of your contract with DFlow and affects your rights. It contains procedures for MANDATORY BINDING ARBITRATION AND A CLASS ACTION WAIVER. a. Applicability of Arbitration Agreement. Subject to the terms of this Arbitration Agreement, you and DFlow agree that any dispute, claim, disagreements arising out of or relating in any way to your access to or use of the Service, any communications you receive from us, any products (including any User Assets) used by you through or in connection with the Service, any use of or interaction with the DFlow Protocol (including any failure of the same) or the Terms and prior versions of the Terms, including claims and disputes that arose between us before the effective date of these Terms (each, a “Dispute”) will be resolved by binding arbitration, rather than in court, except that: (1) you and DFlow may assert claims or seek relief in small claims court if such claims qualify and remain in small claims court; and (2) you or DFlow may seek equitable relief in court for infringement or other misuse of intellectual property rights (such as trademarks, trade dress, domain names, trade secrets, copyrights, and patents). For purposes of this Arbitration Agreement, “Dispute” will also include disputes that arose or involve facts occurring before the existence of this or any prior versions of the Terms as well as claims that may arise after the termination of these Terms. b. Informal Dispute Resolution. There might be instances when a Dispute arises between you and DFlow. If that occurs, DFlow is committed to working with you to reach a reasonable resolution. You and DFlow agree that good faith informal efforts to resolve Disputes can result in a prompt, low‐cost and mutually beneficial outcome. You and DFlow therefore agree that before either party commences arbitration against the other (or initiates an action in small claims court if a party so elects), we will personally meet and confer telephonically or via videoconference, in a good faith effort to resolve informally any Dispute covered by this Arbitration Agreement (“Informal Dispute Resolution Conference”). If you are represented by counsel, your counsel may participate in the conference, but you will also participate in the conference. The party initiating a Dispute must give notice to the other party in writing of its intent to initiate an Informal Dispute Resolution Conference (“Notice”), which shall occur within 45 days after the other party receives such Notice, unless an extension is mutually agreed upon by the parties. Notice to DFlow that you intend to initiate an Informal Dispute Resolution Conference should be sent by email to the contact information set forth in Section 18. The Notice must include: (1) your name, telephone number, mailing address, e‐mail address and/or Digital Wallet address (if you have one); (2) the name, telephone number, mailing address and e‐mail address of your counsel, if any; and (3) a description of your Dispute. The Informal Dispute Resolution Conference shall be individualized such that a separate conference must be held each time either party initiates a Dispute, even if the same law firm or group of law firms represents multiple users in similar cases, unless all parties agree; multiple individuals initiating a Dispute cannot participate in the same Informal Dispute Resolution Conference unless all parties agree. In the time between a party receiving the Notice and the Informal Dispute Resolution Conference, nothing in this Arbitration Agreement shall prohibit the parties from engaging in informal communications to resolve the initiating party’s Dispute. Engaging in the Informal Dispute Resolution Conference is a condition precedent and requirement that must be fulfilled before commencing arbitration. The statute of limitations and any filing fee deadlines shall be tolled while the parties engage in the Informal Dispute Resolution Conference process required by this section. c. Waiver of Jury Trial. YOU AND DFLOW HEREBY WAIVE ANY CONSTITUTIONAL AND STATUTORY RIGHTS TO SUE IN COURT AND HAVE A TRIAL IN FRONT OF A JUDGE OR A JURY. You and DFlow are instead electing that all Disputes shall be resolved by arbitration under this Arbitration Agreement, except as specified in Subsection 16(a), above. There is no judge or jury in arbitration, and court review of an arbitration award is subject to very limited review. d. Waiver of Class and Other Non-Individualized Relief. YOU AND DFLOW AGREE THAT, EXCEPT AS SPECIFIED IN SUBSECTION 16.i, EACH OF US MAY BRING CLAIMS AGAINST THE OTHER ONLY ON AN INDIVIDUAL BASIS AND NOT ON A CLASS, REPRESENTATIVE, OR COLLECTIVE BASIS, AND THE PARTIES HEREBY WAIVE ALL RIGHTS TO HAVE ANY DISPUTE BE BROUGHT, HEARD, ADMINISTERED, RESOLVED, OR ARBITRATED ON A CLASS, COLLECTIVE, REPRESENTATIVE, OR MASS ACTION BASIS. ONLY INDIVIDUAL RELIEF IS AVAILABLE, AND DISPUTES OF MORE THAN ONE CUSTOMER OR USER CANNOT BE ARBITRATED OR CONSOLIDATED WITH THOSE OF ANY OTHER CUSTOMER OR USER. Subject to this Arbitration Agreement, the arbitrator may award declaratory or injunctive relief only in favor of the individual party seeking relief and only to the extent necessary to provide relief warranted by the party’s individual claim. Nothing in this paragraph is intended to, nor shall it, affect the terms and conditions under the subsection 16.i entitled “Batch Arbitration.” Notwithstanding anything to the contrary in this Arbitration Agreement, if a court decides by means of a final decision, not subject to any further appeal or recourse, that the limitations of this subsection, “Waiver of Class and Other Non-Individualized Relief,” are invalid or unenforceable as to a particular claim or request for relief (such as a request for public injunctive relief), you and DFlow agree that that particular claim or request for relief (and only that particular claim or request for relief) shall be severed from the arbitration and may be litigated in the state or federal courts located in the State of California. All other Disputes shall be arbitrated or litigated in small claims court. This subsection does not prevent you or DFlow from participating in a class-wide settlement of claims. e. Rules and Forum. The Terms evidence a transaction involving interstate commerce; and notwithstanding any other provision herein with respect to the applicable substantive law, the Federal Arbitration Act, 9 U.S.C. § 1 et seq., will govern the interpretation and enforcement of this Arbitration Agreement and any arbitration proceedings. If the Informal Dispute Resolution Conference process described above does not resolve satisfactorily within sixty (60) days after receipt of your Notice, you and DFlow agree that either party shall have the right to finally resolve the Dispute through binding arbitration. The arbitration will be administered by the American Arbitration Association (“AAA”), in accordance with the Consumer Arbitration Rules (the “AAA Rules”) then in effect, except as modified by this section of this Arbitration Agreement. The AAA Rules are currently available at [https://www.adr.org/sites/default/files/Consumer%20Rules.pdf](https://www.adr.org/sites/default/files/Consumer%20Rules.pdf) . A party who wishes to initiate arbitration must provide the other party with a request for arbitration (the “Request”). The Request must include: (1) the name, telephone number, mailing address, e‐mail address of the party seeking arbitration (if applicable) as well as the applicable Digital Wallet address; (2) a statement of the legal claims being asserted and the factual bases of those claims; (3) a description of the remedy sought and an accurate, good‐faith calculation of the amount in controversy in United States Dollars; (4) a statement certifying completion of the Informal Dispute Resolution Conference process as described above; and (5) evidence that the requesting party has paid any necessary filing fees in connection with such arbitration. If the party requesting arbitration is represented by counsel, the Request shall also include counsel’s name, telephone number, mailing address, and email address. Such counsel must also sign the Request. By signing the Request, counsel certifies to the best of counsel’s knowledge, information, and belief, formed after an inquiry reasonable under the circumstances, that: (1) the Request is not being presented for any improper purpose, such as to harass, cause unnecessary delay, or needlessly increase the cost of dispute resolution; (2) the claims, defenses and other legal contentions are warranted by existing law or by a nonfrivolous argument for extending, modifying, or reversing existing law or for establishing new law; and (3) the factual and damages contentions have evidentiary support or, if specifically so identified, will likely have evidentiary support after a reasonable opportunity for further investigation or discovery. Unless you and DFlow otherwise agree, or the Batch Arbitration process discussed in subsection 16.i is triggered, the arbitration will be conducted in the county where you reside. Subject to the AAA Rules, the arbitrator may direct a limited and reasonable exchange of information between the parties, consistent with the expedited nature of the arbitration. If the AAA is not available to arbitrate, the parties will select an alternative arbitral forum. Your responsibility to pay any AAA fees and costs will be solely as set forth in the applicable AAA Rules. You and DFlow agree that all materials and documents exchanged during the arbitration proceedings shall be kept confidential and shall not be shared with anyone except the parties’ attorneys, accountants, or business advisors, and then subject to the condition that they agree to keep all materials and documents exchanged during the arbitration proceedings confidential. f. Arbitrator. The arbitrator will be either a retired judge or an attorney licensed to practice law in the state of Florida and will be selected by the parties from the AAA’s roster of consumer dispute arbitrators. If the parties are unable to agree upon an arbitrator within thirty-five (35) days of delivery of the Request, then the AAA will appoint the arbitrator in accordance with the AAA Rules, provided that if the Batch Arbitration process under subsection 16.i is triggered, the AAA will appoint the arbitrator for each batch. g. Authority of Arbitrator. The arbitrator shall have exclusive authority to resolve any Dispute, including, without limitation, disputes arising out of or related to the interpretation or application of the Arbitration Agreement, including the enforceability, revocability, scope, or validity of the Arbitration Agreement or any portion of the Arbitration Agreement, except for the following: (1) all Disputes arising out of or relating to the subsection entitled “Waiver of Class and Other Non-Individualized Relief,” including any claim that all or part of the subsection entitled “Waiver of Class and Other Non-Individualized Relief” is unenforceable, illegal, void or voidable, or that such subsection entitled “Waiver of Class and Other Non-Individualized Relief” has been breached, shall be decided by a court of competent jurisdiction and not by an arbitrator; (2) except as expressly contemplated in the subsection entitled “Batch Arbitration,” all Disputes about the payment of arbitration fees shall be decided only by a court of competent jurisdiction and not by an arbitrator; (3) all Disputes about whether either party has satisfied any condition precedent to arbitration shall be decided only by a court of competent jurisdiction and not by an arbitrator; and (4) all Disputes about which version of the Arbitration Agreement applies shall be decided only by a court of competent jurisdiction and not by an arbitrator. The arbitration proceeding will not be consolidated with any other matters or joined with any other cases or parties, except as expressly provided in the subsection entitled “Batch Arbitration.” The arbitrator shall have the authority to grant motions dispositive of all or part of any Dispute. The arbitrator shall issue a written award and statement of decision describing the essential findings and conclusions on which the award is based, including the calculation of any damages awarded. The award of the arbitrator is final and binding upon you and us. Judgment on the arbitration award may be entered in any court having jurisdiction. h. Attorneys’ Fees and Costs. The parties shall bear their own attorneys’ fees and costs in arbitration unless the arbitrator finds that either the substance of the Dispute or the relief sought in the Request was frivolous or was brought for an improper purpose (as measured by the standards set forth in Federal Rule of Civil Procedure 11(b)). If you or DFlow need to invoke the authority of a court of competent jurisdiction to compel arbitration, then the party that obtains an order compelling arbitration in such action shall have the right to collect from the other party its reasonable costs, necessary disbursements, and reasonable attorneys’ fees incurred in securing an order compelling arbitration. The prevailing party in any court action relating to whether either party has satisfied any condition precedent to arbitration, including the Informal Dispute Resolution Conference process, is entitled to recover their reasonable costs, necessary disbursements, and reasonable attorneys’ fees and costs. i. Batch Arbitration. To increase the efficiency of administration and resolution of arbitrations, you and DFlow agree that in the event that there are one hundred (100) or more individual Requests of a substantially similar nature filed against DFlow by or with the assistance of the same law firm, group of law firms, or organizations, within a thirty (30) day period (or as soon as possible thereafter), the AAA shall (1) administer the arbitration demands in batches of 100 Requests per batch (plus, to the extent there are less than 100 Requests left over after the batching described above, a final batch consisting of the remaining Requests); (2) appoint one arbitrator for each batch; and (3) provide for the resolution of each batch as a single consolidated arbitration with one set of filing and administrative fees due per side per batch, one procedural calendar, one hearing (if any) in a place to be determined by the arbitrator, and one final award (“Batch Arbitration”). All parties agree that Requests are of a “substantially similar nature” if they arise out of or relate to the same event or factual scenario and raise the same or similar legal issues and seek the same or similar relief. To the extent the parties disagree on the application of the Batch Arbitration process, the disagreeing party shall advise the AAA, and the AAA shall appoint a sole standing arbitrator to determine the applicability of the Batch Arbitration process (“Administrative Arbitrator”). In an effort to expedite resolution of any such dispute by the Administrative Arbitrator, the parties agree the Administrative Arbitrator may set forth such procedures as are necessary to resolve any disputes promptly. The Administrative Arbitrator’s fees shall be paid by DFlow. You and DFlow agree to cooperate in good faith with the AAA to implement the Batch Arbitration process including the payment of single filing and administrative fees for batches of Requests, as well as any steps to minimize the time and costs of arbitration, which may include: (1) the appointment of a discovery special master to assist the arbitrator in the resolution of discovery disputes; and (2) the adoption of an expedited calendar of the arbitration proceedings. This Batch Arbitration provision shall in no way be interpreted as authorizing a class, collective and/or mass arbitration or action of any kind, or arbitration involving joint or consolidated claims under any circumstances, except as expressly set forth in this provision. j. 30-Day Right to Opt Out. You have the right to opt out of the provisions of this Arbitration Agreement by sending written notice of your decision to opt out to the address set forth in Section 18, within thirty (30) days after first becoming subject to this Arbitration Agreement. Your notice must include your name and address, email address, Digital Wallet address (if you have one), and an unequivocal statement that you want to opt out of this Arbitration Agreement. If you opt out of this Arbitration Agreement, all other parts of these Terms will continue to apply to you. Opting out of this Arbitration Agreement has no effect on any other arbitration agreements that you may currently have, or may enter in the future, with us. k. Invalidity, Expiration. Except as provided in the subsection entitled “Waiver of Class and Other Non-Individualized Relief”, if any part or parts of this Arbitration Agreement are found under the law to be invalid or unenforceable, then such specific part or parts shall be of no force and effect and shall be severed and the remainder of the Arbitration Agreement shall continue in full force and effect. You further agree that any Dispute that you have with DFlow as detailed in this Arbitration Agreement must be initiated via arbitration within the applicable statute of limitation for that claim or controversy, or it will be forever time barred. Likewise, you agree that all applicable statutes of limitation will apply to such arbitration in the same manner as those statutes of limitation would apply in the applicable court of competent jurisdiction. l. Modification. Notwithstanding any provision in these Terms to the contrary, we agree that if DFlow makes any future material change to this Arbitration Agreement, it will notify you. Unless you reject the change within thirty (30) days of such change become effective by writing to DFlow at the address set forth in Section 18, your continued use of the Service following the posting of changes to this Arbitration Agreement constitutes your acceptance of any such changes. Changes to this Arbitration Agreement do not provide you with a new opportunity to opt out of the Arbitration Agreement if you have previously agreed to a version of these Terms and did not validly opt out of arbitration. If you reject any change or update to this Arbitration Agreement, and you were bound by an existing agreement to arbitrate Disputes arising out of or relating in any way to your access to or use of the Services, any communications you receive, or these Terms, the provisions of this Arbitration Agreement as of the date you first accepted the Terms (or accepted any subsequent changes to these Terms) remain in full force and effect. DFlow will continue to honor any valid opt outs of the Arbitration Agreement that you made to a prior version of these Terms. m. Confidentiality. All aspects of the arbitration proceeding, including but not limited to the award of the arbitrator and compliance therewith, shall be strictly confidential. The parties agree to maintain confidentiality unless otherwise required by law. This paragraph shall not prevent a party from submitting to a court of law any information necessary to enforce this Agreement, to enforce an arbitration award, or to seek injunctive or equitable relief. n. Survival of Agreement. This Arbitration Agreement will survive the termination of your relationship with DFlow. 18. GENERAL You may terminate these Terms by disconnecting your Digital Wallet, ceasing all further use of the Service, and sending us notice of your intention to terminate these Terms at the address set forth in Section 18, below. We reserve the right in our sole discretion to modify, suspend, or discontinue the Service, or any features or parts thereof, whether temporarily or permanently, at any time with or without notice to you in our sole discretion. All sections of these Terms intended by their nature to survive, including without your indemnification obligations, all disclaimers, your release of DFlow, and our limitation of liability hereunder, shall survive such termination. These Terms, and your access to, and use of, the Service, shall be governed by and construed and enforced in accordance with the laws of the state of California, without regard to any conflict of law rules or principles that would cause the application of the laws of any other jurisdiction. Any dispute between the parties that is not subject to arbitration or cannot be heard in small claims court, shall be resolved in the courts of California. Notwithstanding anything contained in these Terms, we reserve the right, without notice and in our sole discretion, to terminate your right to access or use the Service at any time and for any or no reason, and you acknowledge and agree that we shall have no liability or obligation to you in such event and that you will not be entitled to a refund of any amounts that you have already paid to us, to the fullest extent permitted by applicable law. If any term, clause or provision of these Terms is held invalid or unenforceable, then that term, clause or provision will be severable from these Terms and will not affect the validity or enforceability of any remaining part of that term, clause or provision, or any other term, clause or provision of these Terms. Your relationship to DFlow is that of an independent contractor, and neither party is an agent or partner of the other. These Terms, and any rights and licenses granted hereunder, may not be transferred or assigned by you without the prior written consent of DFlow. DFlow’s failure to assert any right or provision under these Terms shall not constitute a waiver of such right or provision. Except as otherwise provided herein, these Terms are intended solely for the benefit of DFlow and you and are not intended to confer third party beneficiary rights upon any other person or entity. 19. CONTACT INFORMATION DFlow Inc. ATTN: DFlow Legal Email: [\[email protected\]](https://pond.dflow.net/cdn-cgi/l/email-protection#8de1e8eaece1cde9ebe1e2faa3e3e8f9) [Privacy Policy](https://pond.dflow.net/privacy) ⌘I --- # Get Intent Quote - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/declarative/quote#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Declarative Swap API Endpoints Get Intent Quote [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Returns a quote for a declarative swap cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/intent 200 400 500 503 Copy Ask AI { "feeBudget": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "slippageBps": 1, "expiry": { "slotsAfterOpen": 1 }, "lastValidBlockHeight": 1, "openTransaction": "", "platformFee": "" } GET / intent Try it Returns a quote for a declarative swap cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/intent 200 400 500 503 Copy Ask AI { "feeBudget": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "slippageBps": 1, "expiry": { "slotsAfterOpen": 1 }, "lastValidBlockHeight": 1, "openTransaction": "", "platformFee": "" } #### Query Parameters [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-user-public-key) userPublicKey string Base58-encoded address of the swapper's wallet. If specified, the response will include a transaction allowing the user to submit the intent. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-input-mint) inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-output-mint) outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-amount) amount integer required Input amount as a scaled integer. For example, 1 SOL is 1000000000. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-one-of-0) slippageBps integerenum Max allowed slippage for the swap. Allowed values are: * a u16 which specifies the maximum allowed slippage in basis points * the string value "auto", where the server determines the maximum allowed slippage automatically Slippage tolerance specified in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-platform-fee-bps) platformFeeBps integer Optional platform fee in basis points. This is taken out of the output of the swap. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-fee-account) feeAccount string Base58-encoded address of the token account that will receive the platform fee if a platform fee applies to the swap. If specified, this account's mint must match the output mint for the swap. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-referral-account) referralAccount string Base58-encoded address of the referral account associated with the fee account. If the fee account isn't a referral token account derived from the seeds `["referral_ata", referral_account, mint]` and the Referral program ID `REFER4ZgmyYx9c6He5XfaTMiGfdLwRnkV4RPp9t9iF3`, this should be unspecified. If specified, the the intent opening transaction will create the `fee_account` if it doesn't already exist. The user pays for the creation of the fee account. Ignored if `fee_account` is unspecified. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-wrap-and-unwrap-sol) wrapAndUnwrapSol boolean If false, the intent will use wrapped SOL [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-fee-budget) feeBudget integer Maximum amount that the user is willing to pay to have the intent processed in lamports. This includes all transaction fees and tips for the open transaction and all transaction fees and tips for the fill and close transactions. If unspecified, the server will determine the fee budget. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#parameter-max-auto-fee-budget) maxAutoFeeBudget integer Limit on the automatically-determined maximum fee budget in lamports. If the `fee_budget` is unspecified, then the server's automatically-determined fee budget will be capped at this value. If unspecified, the limit defaults to 0.002 SOL. The final fee budget used is `min(max_auto_fee_budget, auto_fee_budget_determined_by_server)`. Required range: `x >= 0` #### Response 200 application/json Declarative swap quote [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-fee-budget) feeBudget integer required Maximum amount that the user is willing to pay to have the intent processed in lamports. This includes all transaction fees and tips for the open transaction and all transaction fees and tips for the fill and close transactions. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-in-amount) inAmount string required Maximum input amount as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-input-mint) inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-min-out-amount) minOutAmount string required Same as `other_amount_threshold` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-other-amount-threshold) otherAmountThreshold string required Minimum output amount after all fees as a scaled integer. If the swap transaction doesn't produce at least this amount of the output token, the transaction will fail. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-out-amount) outAmount string required Expected output amount after all fees as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-output-mint) outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-price-impact-pct) priceImpactPct string required Price impact of the swap. This is an estimate of the percentage difference between the expected price for the swap and the price for the same swap with the smallest input amount possible. For example, "0.01" means 1% price impact. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-slippage-bps) slippageBps integer required Max allowed slippage % in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-expiry) expiry object The expiry of the intent. After expiry, the intent cannot be filled and can only be closed. Specified if and only if the request included the user's public key. Show child attributes [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-expiry-slots-after-open) expiry.slotsAfterOpen integer required The intent will expire after the specified number of slots have passed since the open transaction was processed. For example, if the open transaction was processed in slot 100, a value of 10 means the intent will be fillable through slot 110. After slot 110, the intent will no longer be fillable. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-last-valid-block-height) lastValidBlockHeight integer The last block height at which the blockhash assigned to the open transaction is valid. Useful to determine whether the open transaction has expired. Specified if and only if the request included the user's public key. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-open-transaction) openTransaction string Base64-encoded intent opening transaction. The user must sign before sending it via the swap endpoint. Specified if and only if the request included the user's public key. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-platform-fee-one-of-1) platformFee object Platform fee that was applied to the quote, if any Show child attributes [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-platform-fee-one-of-1-amount) platformFee.amount string required Platform fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-platform-fee-one-of-1-fee-account) platformFee.feeAccount string required Token account that will receive the platform fee [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-platform-fee-one-of-1-fee-bps) platformFee.feeBps integer required Platform fee in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-platform-fee-one-of-1-segmenter-fee-amount) platformFee.segmenterFeeAmount string required Segmenter fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/declarative/quote#response-platform-fee-one-of-1-segmenter-fee-pct) platformFee.segmenterFeePct integer required Segmenter fee in percent Required range: `x >= 0` [Create Swap Instructions](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions) [Submit Intent Swap](https://pond.dflow.net/swap-api-reference/declarative/submit) ⌘I --- # Get Order Status - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/order/order-status#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Order API Endpoints Get Order Status [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Returns the status of an order cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/order-status 200 400 404 500 Copy Ask AI { "inAmount": "", "outAmount": "", "status": "pending", "fills": [\ {\ "inAmount": "",\ "inputMint": "",\ "outAmount": "",\ "outputMint": "",\ "signature": ""\ }\ ], "reverts": [\ {\ "amount": "",\ "mint": "",\ "signature": ""\ }\ ] } GET / order-status Try it Returns the status of an order cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/order-status 200 400 404 500 Copy Ask AI { "inAmount": "", "outAmount": "", "status": "pending", "fills": [\ {\ "inAmount": "",\ "inputMint": "",\ "outAmount": "",\ "outputMint": "",\ "signature": ""\ }\ ], "reverts": [\ {\ "amount": "",\ "mint": "",\ "signature": ""\ }\ ] } #### Query Parameters [​](https://pond.dflow.net/swap-api-reference/order/order-status#parameter-signature) signature string required Base58-encoded transaction signature of the transaction received from the order endpoint [​](https://pond.dflow.net/swap-api-reference/order/order-status#parameter-one-of-0) lastValidBlockHeight integer | null Last block height at which the transaction is valid Required range: `x >= 0` #### Response 200 application/json Order status [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-in-amount) inAmount string required Total input amount filled, as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-out-amount) outAmount string required Total output amount filled, as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-status) status enum required Status of the order Available options: `pending`, `expired`, `failed`, `open`, `pendingClose`, `closed` [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-fills) fills object\[\] Fills for the order. Specified if and only if the order has at least one fill. Show child attributes [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-fills-items-in-amount) fills.inAmount string required Input amount including fees, as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-fills-items-input-mint) fills.inputMint string required Input mint for the fill [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-fills-items-out-amount) fills.outAmount string required Output amount including fees, as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-fills-items-output-mint) fills.outputMint string required Output mint for the fill [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-fills-items-signature) fills.signature string required Base58-encoded signature of the fill transaction [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-reverts) reverts object\[\] Reverts for the order. Specified if and only if the order has at least one revert. Show child attributes [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-reverts-items-amount) reverts.amount string required Amount returned to the user, as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-reverts-items-mint) reverts.mint string required Mint returned to the user [​](https://pond.dflow.net/swap-api-reference/order/order-status#response-reverts-items-signature) reverts.signature string required Base58-encoded signature of the revert transaction [Get Order](https://pond.dflow.net/swap-api-reference/order/order) [Get Quote](https://pond.dflow.net/swap-api-reference/imperative/quote) ⌘I --- # Trade Tokens with the DFlow Trade API - DFlow [Skip to main content](https://pond.dflow.net/quickstart/trade-tokens#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trade API Trade Tokens with the DFlow Trade API [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) The DFlow Trade API provides a unified interface for trading tokens across both spot and prediction markets on Solana. The Trade API offers a simple workflow with a single endpoint to request orders, automatically handling both synchronous (atomic) and asynchronous (multi-transaction) execution. This quickstart assumes familiarity with Solana’s transaction and network connection logic. If unfamiliar, please refer to the [Solana Cookbook](https://solana.com/developers/cookbook) . For production use, you’ll need an API key to avoid rate limits. See the [API Keys guide](https://pond.dflow.net/quickstart/api-keys) for details on obtaining and using an API key. 1 Request an Order The Trade API’s GET [`/order`](https://pond.dflow.net/swap-api-reference/order/order) endpoint returns a quote and open transaction in a single request. Request an Order Copy Ask AI const SOL = "So11111111111111111111111111111111111111112"; const USDC = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"; /// Amount of SOL to trade to USDC const amount = 1_000_000_000; /// Slippage tolerance in bps const slippageBps = 50; /// Base URL for the DFlow Trade API const API_BASE_URL = "https://quote-api.dflow.net"; const API_KEY = process.env.DFLOW_API_KEY; // Optional const queryParams = new URLSearchParams(); queryParams.append("inputMint", SOL); queryParams.append("outputMint", USDC); queryParams.append("amount", amount.toString()); queryParams.append("slippageBps", slippageBps.toString()); queryParams.append("userPublicKey", keypair.publicKey.toBase58()); const headers: HeadersInit = {}; if (API_KEY) { headers["x-api-key"] = API_KEY; } const orderResponse = await fetch( `${API_BASE_URL}/order?${queryParams.toString()}`, { headers } ).then((x) => x.json()); 2 Sign and Submit the Transaction Deserialize the transaction, sign it with your keypair, and submit it to Solana using your RPC connection. Sign and Submit the Transaction Copy Ask AI /// Deserialize the transaction from base64 const transactionBuffer = Buffer.from(orderResponse.transaction, "base64"); const transaction = VersionedTransaction.deserialize(transactionBuffer); /// Sign the transaction transaction.sign([keypair]); /// Send the transaction to Solana const signature = await connection.sendTransaction(transaction); 3 Monitor Order Status How you monitor order completion depends on the `executionMode` returned from the order request:**Sync trades** execute atomically in a single transaction. Use standard RPC confirmation.**Async trades** execute across multiple transactions. Use the [`/order-status`](https://pond.dflow.net/swap-api-reference/order/order-status) endpoint to poll for completion. Monitor Sync Trade For synchronous trades that execute atomically, use standard Solana transaction confirmation: Copy Ask AI if (orderData.executionMode === "sync") { /// Monitor transaction status using getSignatureStatuses let status; do { const statusResult = await connection.getSignatureStatuses([signature]); status = statusResult.value[0]; if (!status) { console.log("Waiting for transaction confirmation..."); await new Promise((resolve) => setTimeout(resolve, 1000)); } } while ( !status || status.confirmationStatus === "processed" || status.confirmationStatus === "confirmed" ); /// Check if transaction succeeded or failed if (status.err) { console.error("Transaction failed:", status.err); } else { console.log(`Trade completed successfully in slot ${status.slot}`); } } Monitor Async Trade For asynchronous trades that execute across multiple transactions, poll the `/order-status` endpoint: Copy Ask AI if (orderData.executionMode === "async") { let status; let fills = []; do { /// Poll the order status endpoint const headers: HeadersInit = {}; if (API_KEY) { headers["x-api-key"] = API_KEY; } const statusResponse = await fetch( `${API_BASE_URL}/order-status?signature=${signature}`, { headers } ); const statusData = await statusResponse.json(); status = statusData.status; fills = statusData.fills || []; console.log(`Order status: ${status}`); /// Wait before polling again if order is still open if (status === "open" || status === "pendingClose") { await new Promise((resolve) => setTimeout(resolve, 2000)); } } while (status === "open" || status === "pendingClose"); /// Process final status switch (status) { case "closed": { if (fills.length > 0) { console.log(`Trade completed`); } else { console.log("Order was closed without any fills"); } break; } case "pendingClose": { if (fills.length > 0) { console.log(`Trade ready to close`); } else { console.log("Order is ready to close without any fills"); } break; } case "failed": { console.log("Order failed to execute"); break; } } } [Authenticating Requests: API Keys](https://pond.dflow.net/quickstart/api-keys) [Swap Tokens with Declarative Swaps](https://pond.dflow.net/quickstart/swap-tokens-declarative) ⌘I --- # Get Venue List - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/venues/venues#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Venues API Endpoints Get Venue List [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Returns a list of venues supported for swapping. cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/venues 200 Copy Ask AI [\ ""\ ] GET / venues Try it Returns a list of venues supported for swapping. cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/venues 200 Copy Ask AI [\ ""\ ] #### Response 200 - application/json List of supported venues [Get Token List with Decimals](https://pond.dflow.net/swap-api-reference/token/tokens-with-decimals) ⌘I --- # Get Quote - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/imperative/quote#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Imperative Swap API Endpoints Get Quote [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Returns a quote for an imperative swap cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/quote 200 400 500 503 Copy Ask AI { "contextSlot": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "routePlan": [\ {\ "data": "",\ "inAmount": "",\ "inputMint": "",\ "inputMintDecimals": 1,\ "marketKey": "",\ "outAmount": "",\ "outputMint": "",\ "outputMintDecimals": 1,\ "venue": ""\ }\ ], "slippageBps": 1, "outTransferFee": "", "platformFee": "", "requestId": "", "simulatedComputeUnits": 1 } GET / quote Try it Returns a quote for an imperative swap cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/quote 200 400 500 503 Copy Ask AI { "contextSlot": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "routePlan": [\ {\ "data": "",\ "inAmount": "",\ "inputMint": "",\ "inputMintDecimals": 1,\ "marketKey": "",\ "outAmount": "",\ "outputMint": "",\ "outputMintDecimals": 1,\ "venue": ""\ }\ ], "slippageBps": 1, "outTransferFee": "", "platformFee": "", "requestId": "", "simulatedComputeUnits": 1 } #### Query Parameters [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-input-mint) inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-output-mint) outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-amount) amount integer required Input amount as a scaled integer. For example, 1 SOL is 1000000000. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-one-of-0) slippageBps integerenum Max allowed slippage for the swap. Allowed values are: * a u16 which specifies the maximum allowed slippage in basis points * the string value "auto", where the server determines the maximum allowed slippage automatically Slippage tolerance specified in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-dexes) dexes string Comma-separated list of DEXes to include. If not specified, all DEXes will be included. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-exclude-dexes) excludeDexes string Comma-separated list of DEXes to exclude. If not specified, all DEXes will be included. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-platform-fee-bps) platformFeeBps integer Optional platform fee in basis points. This should only be nonzero if the swap will collect the platform fee. The swap must specify a valid fee account and that fee account must be able to collect the fee mint at execution time. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-platform-fee-mode) platformFeeMode enum Optional platform fee mode. If not specified, the default is `outputMint`. Available options: `outputMint`, `inputMint` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-sponsored-swap) sponsoredSwap boolean This should be specified as true if and only if the quote will be used for a sponsored swap. If true, then the quote will account for any additional token 2022 transfer fees that apply to the input and output mints for a sponsored swap. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-destination-swap) destinationSwap boolean This should be specified as true if and only if the quote will be used for a destination token account swap. If true, then the quote will account for any additional token 2022 transfer fees that apply to the output mint for a destination token account swap. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-only-direct-routes) onlyDirectRoutes boolean If true, only use single-leg routes [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-max-route-length) maxRouteLength integer If specified, the route will be limited to the specified number of legs. Ignored if `only_direct_routes` is true. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#parameter-only-jit-routes) onlyJitRoutes boolean If true, only use JIT routes. Every leg in the route will use the JIT router. #### Response 200 application/json Imperative swap quote [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-context-slot) contextSlot integer required Slot at which the request was evaluated Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-in-amount) inAmount string required Maximum input amount as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-input-mint) inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-min-out-amount) minOutAmount string required Same as `other_amount_threshold` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-other-amount-threshold) otherAmountThreshold string required Minimum output amount after all fees as a scaled integer. If the swap transaction doesn't produce at least this amount of the output token, the transaction will fail. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-out-amount) outAmount string required Expected output amount after all fees as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-output-mint) outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-price-impact-pct) priceImpactPct string required Price impact of the swap. This is an estimate of the percentage difference between the expected price for the swap and the price for the same swap with the smallest input amount possible. For example, "0.01" means 1% price impact. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan) routePlan object\[\] required Route that the swap will take * Option 1 * Option 2 Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan-items-one-of-0-data) routePlan.data string required Data for the leg [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan-items-one-of-0-in-amount) routePlan.inAmount string required Maximum input amount for the leg as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan-items-one-of-0-input-mint) routePlan.inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan-items-one-of-0-input-mint-decimals) routePlan.inputMintDecimals integer required Decimals for the input mint Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan-items-one-of-0-market-key) routePlan.marketKey string required Key identifying the market on the venue [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan-items-one-of-0-out-amount) routePlan.outAmount string required Expected output amount for the leg as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan-items-one-of-0-output-mint) routePlan.outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan-items-one-of-0-output-mint-decimals) routePlan.outputMintDecimals integer required Decimals for the output mint Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-route-plan-items-one-of-0-venue) routePlan.venue string required Venue for the leg [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-slippage-bps) slippageBps integer required Max allowed slippage % in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-out-transfer-fee) outTransferFee string Transfer fee amount that was applied to the quote, if any [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-platform-fee-one-of-1) platformFee object Platform fee that was applied to the quote, if any Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-platform-fee-one-of-1-amount) platformFee.amount string required Platform fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-platform-fee-one-of-1-fee-account) platformFee.feeAccount string required Token account that will receive the platform fee [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-platform-fee-one-of-1-fee-bps) platformFee.feeBps integer required Platform fee in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-platform-fee-one-of-1-segmenter-fee-amount) platformFee.segmenterFeeAmount string required Segmenter fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-platform-fee-one-of-1-segmenter-fee-pct) platformFee.segmenterFeePct integer required Segmenter fee in percent Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-request-id) requestId string Identifier for the request [​](https://pond.dflow.net/swap-api-reference/imperative/quote#response-simulated-compute-units-one-of-0) simulatedComputeUnits integer | null Compute units consumed by quote simulation Required range: `x >= 0` [Get Order Status](https://pond.dflow.net/swap-api-reference/order/order-status) [Create Swap](https://pond.dflow.net/swap-api-reference/imperative/swap) ⌘I --- # Implement Platform Fees - DFlow [Skip to main content](https://pond.dflow.net/quickstart/platform-fees#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trade API Implement Platform Fees [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Related Resources](https://pond.dflow.net/quickstart/platform-fees#related-resources) This guide shows you how to implement platform fees on trades using the DFlow Trade API. 1 Fixed Fees with platformFeeBps Use [`platformFeeBps`](https://pond.dflow.net/swap-api-reference/order/order#parameter-platform-fee-bps) to specify a fixed fee in basis points. Control which token the fee is collected from using [`platformFeeMode`](https://pond.dflow.net/swap-api-reference/order/order#parameter-platform-fee-mode) . Basic Example Copy Ask AI const SOL = "So11111111111111111111111111111111111111112"; const USDC = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"; const API_BASE_URL = "https://quote-api.dflow.net"; const queryParams = new URLSearchParams(); queryParams.append("inputMint", SOL); queryParams.append("outputMint", USDC); queryParams.append("amount", "1000000000"); queryParams.append("platformFeeBps", "50"); // 0.5% fee queryParams.append("platformFeeMode", "outputMint"); // Collect from output (USDC) queryParams.append("feeAccount", "YourUSDCTokenAccountAddress"); queryParams.append("userPublicKey", keypair.publicKey.toBase58()); const orderResponse = await fetch( `${API_BASE_URL}/order?${queryParams.toString()}` ).then((x) => x.json()); Collect Fee from Input Mint Copy Ask AI /// To collect fee from input mint instead queryParams.append("platformFeeMode", "inputMint"); queryParams.append("feeAccount", "YourSOLTokenAccountAddress"); // Must match input mint Other Endpoints Copy Ask AI /// For /quote endpoint (imperative swaps) const quoteResponse = await fetch( `${API_BASE_URL}/quote?${queryParams.toString()}` ).then((x) => x.json()); /// For /intent endpoint (declarative swaps) const intentResponse = await fetch( `${API_BASE_URL}/intent?${queryParams.toString()}` ).then((x) => x.json()); 2 Dynamic Fees with platformFeeScale For [outcome token](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#outcome-token) trades, use [`platformFeeScale`](https://pond.dflow.net/swap-api-reference/order/order#parameter-platform-fee-scale) instead of `platformFeeBps`. The fee is calculated dynamically based on market probability. Dynamic Fee Example Copy Ask AI const SOL = "So11111111111111111111111111111111111111112"; const OUTCOME_TOKEN_MINT = "YourOutcomeTokenMint"; const API_BASE_URL = "https://quote-api.dflow.net"; const queryParams = new URLSearchParams(); queryParams.append("inputMint", SOL); queryParams.append("outputMint", OUTCOME_TOKEN_MINT); queryParams.append("amount", "1000000000"); queryParams.append("platformFeeScale", "50"); // k = 0.050 in formula k * p * (1 - p) * c queryParams.append("feeAccount", "YourSettlementMintTokenAccountAddress"); queryParams.append("userPublicKey", keypair.publicKey.toBase58()); const orderResponse = await fetch( `${API_BASE_URL}/order?${queryParams.toString()}` ).then((x) => x.json()); For outcome token trades, `platformFeeMode` is ignored and the fee is always collected in the [settlement mint](https://pond.dflow.net/concepts/prediction/prediction-market-terminology#settlement-mint) . See the [Platform Fees Overview](https://pond.dflow.net/concepts/platform-fees-overview) for details on the dynamic fee formula. 3 Fee Account Setup The [`feeAccount`](https://pond.dflow.net/swap-api-reference/order/order#parameter-fee-account) parameter is required and must match the fee mint. You can use [`referralAccount`](https://pond.dflow.net/swap-api-reference/order/order#parameter-referral-account) to auto-create the fee account if it doesn’t exist. Auto-Create with Referral Account Copy Ask AI /// Add referralAccount to auto-create fee account if it doesn't exist queryParams.append("referralAccount", "YourReferralAccountAddress"); /// Fee account will be derived from referral account using Referral program The fee account must match the token you’re collecting fees in. For outcome token trades, use a settlement mint token account. For other trades, match the input or output mint based on `platformFeeMode`. 4 Check Fee in Response Both `/order` and `/quote` responses include `platformFee` information. Reading Platform Fee from Response Copy Ask AI const orderResponse = await fetch( `${API_BASE_URL}/order?${queryParams.toString()}` ).then((x) => x.json()); if (orderResponse.platformFee) { console.log("Platform fee details:", { amount: orderResponse.platformFee.amount, feeBps: orderResponse.platformFee.feeBps, feeAccount: orderResponse.platformFee.feeAccount, }); } [​](https://pond.dflow.net/quickstart/platform-fees#related-resources) Related Resources ------------------------------------------------------------------------------------------- [Platform Fees Overview\ ----------------------\ \ Learn about the theory behind platform fees and the differences between fixed and dynamic fees.](https://pond.dflow.net/concepts/platform-fees-overview) [Order Endpoint Reference\ ------------------------\ \ Complete API reference for the `/order` endpoint.](https://pond.dflow.net/swap-api-reference/order/order) [Quote Endpoint Reference\ ------------------------\ \ API reference for the `/quote` endpoint.](https://pond.dflow.net/swap-api-reference/imperative/quote) [Intent Endpoint Reference\ -------------------------\ \ API reference for the `/intent` endpoint.](https://pond.dflow.net/swap-api-reference/declarative/quote) [Swap Tokens with Imperative Swaps](https://pond.dflow.net/quickstart/swap-tokens-imperative) [Discover Prediction Market Tokens](https://pond.dflow.net/quickstart/discover-prediction-tokens) ⌘I --- # Retrieve User Prediction Market Positions - DFlow [Skip to main content](https://pond.dflow.net/quickstart/user-prediction-positions#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets Retrieve User Prediction Market Positions [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Overview](https://pond.dflow.net/quickstart/user-prediction-positions#overview) * [API Response Structure](https://pond.dflow.net/quickstart/user-prediction-positions#api-response-structure) * [Next Steps](https://pond.dflow.net/quickstart/user-prediction-positions#next-steps) This guide shows you how to retrieve a user’s prediction market positions by querying onchain token account data and mapping it to the DFlow Prediction Market Metadata API. This quickstart assumes familiarity with Solana’s token accounts and RPC connections. If unfamiliar, please refer to the [Solana Cookbook](https://solana.com/developers/cookbook) . [​](https://pond.dflow.net/quickstart/user-prediction-positions#overview) Overview ------------------------------------------------------------------------------------- To retrieve a user’s prediction market positions, you’ll need to: 1. Fetch all token accounts owned by the user 2. Filter for outcome tokens 3. Map outcome token mints to market details using the Metadata API 4. Calculate position values 1 Fetch User's Token Accounts Use Solana’s `getTokenAccountsByOwner` RPC method to retrieve all token accounts for a given user wallet. Fetch Token Accounts Copy Ask AI import { Connection, PublicKey } from "@solana/web3.js"; import { TOKEN_PROGRAM_ID } from "@solana/spl-token"; /// Initialize Solana connection const connection = new Connection("https://api.mainnet-beta.solana.com"); /// User's wallet address const userWallet = new PublicKey("USER_WALLET_ADDRESS_HERE"); /// Fetch all token accounts owned by the user const tokenAccounts = await connection.getParsedTokenAccountsByOwner( userWallet, { programId: TOKEN_PROGRAM_ID, } ); /// Extract token account information const userTokens = tokenAccounts.value.map((accountInfo) => { const parsedInfo = accountInfo.account.data.parsed.info; return { mint: parsedInfo.mint, balance: parsedInfo.tokenAmount.uiAmount, decimals: parsedInfo.tokenAmount.decimals, rawBalance: parsedInfo.tokenAmount.amount, }; }); /// Filter out tokens with zero balance const nonZeroBalances = userTokens.filter((token) => token.balance > 0); 2 Identify Prediction Market Tokens Use the [`/api/v1/filter_outcome_mints`](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/filter-outcome-mints) endpoint to filter the user’s token addresses and return only those that are prediction market outcome mints. Filter Prediction Market Tokens Copy Ask AI /// Base URL for the DFlow Prediction Market Metadata API const METADATA_API_BASE_URL = "https://prediction-markets-api.dflow.net"; /// Extract all mint addresses from user's tokens const allMintAddresses = nonZeroBalances.map((token) => token.mint); /// Filter to get only prediction market outcome mints const response = await fetch( `${METADATA_API_BASE_URL}/api/v1/filter_outcome_mints`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ addresses: allMintAddresses }), } ); if (!response.ok) { throw new Error("Failed to filter outcome mints"); } const data = await response.json(); const predictionMintAddresses = data.outcomeMints; 3 Fetch Market Details Use the [`/api/v1/markets/batch`](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch) endpoint to retrieve detailed market information for all outcome tokens in a single request, including event details, pricing, volume, and settlement status. Get Market Details Copy Ask AI /// Fetch market details for all outcome tokens in batch const response = await fetch(`${METADATA_API_BASE_URL}/api/v1/markets/batch`, { method: "POST", headers: { "Content-Type": "application/json", }, body: JSON.stringify({ mints: predictionMintAddresses }), }); if (!response.ok) { throw new Error("Failed to fetch markets batch"); } const data = await response.json(); const markets = data.markets; /// Create a map by mint address for efficient lookup const marketsByMint = new Map(); markets.forEach((market: any) => { /// Map by yesMint, noMint, and marketLedger Object.values(market.accounts).forEach((account: any) => { marketsByMint.set(account.yesMint, market); marketsByMint.set(account.noMint, market); marketsByMint.set(account.marketLedger, market); }); }); /// Map outcome tokens to their market data and determine position type const userPositions = outcomeTokens.map((token) => { const marketData = marketsByMint.get(token.mint); if (!marketData) { return { mint: token.mint, balance: token.balance, decimals: token.decimals, position: "UNKNOWN", market: null, }; } /// Determine if this is a YES or NO token const isYesToken = Object.values(marketData.accounts).some( (account: any) => account.yesMint === token.mint ); const isNoToken = Object.values(marketData.accounts).some( (account: any) => account.noMint === token.mint ); return { mint: token.mint, balance: token.balance, decimals: token.decimals, position: isYesToken ? "YES" : isNoToken ? "NO" : "UNKNOWN", market: marketData, }; }); [​](https://pond.dflow.net/quickstart/user-prediction-positions#api-response-structure) API Response Structure ----------------------------------------------------------------------------------------------------------------- The [`/api/v1/markets/batch`](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch) endpoint returns comprehensive market data including: * **Market Information**: Title, subtitle, event ticker, category * **Accounts**: Token mint addresses (yesMint, noMint, marketLedger) * **Timing**: Open time, close time, expiration time * **Market Data**: Volume, open interest, status * **Settlement**: Result (if market is resolved) * **Rules**: Primary and secondary market rules [​](https://pond.dflow.net/quickstart/user-prediction-positions#next-steps) Next Steps ----------------------------------------------------------------------------------------- [Trade Tokens\ ------------\ \ Learn how to trade prediction market positions using the DFlow Trade API](https://pond.dflow.net/quickstart/trade-tokens) [Market Endpoints\ ----------------\ \ Explore all available prediction market metadata endpoints](https://pond.dflow.net/prediction-market-metadata-api-reference/markets) [Discover Prediction Market Tokens](https://pond.dflow.net/quickstart/discover-prediction-tokens) [Redeem Determined Market Outcome Tokens](https://pond.dflow.net/quickstart/redeem-outcome-tokens) ⌘I --- # Introduction - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Market Metadata API Documentation Introduction [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) [Events API Endpoints\ --------------------\ \ Query and retrieve event information and forecast data](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events) [Markets API Endpoints\ ---------------------\ \ Access prediction market data and information](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets) [Trades API Endpoints\ --------------------\ \ Retrieve trade history for prediction markets](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades) [Live Data API Endpoints\ -----------------------\ \ Get live data from Kalshi for milestones and events](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data) [Series API Endpoints\ --------------------\ \ Get series templates for recurring events](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series) [Tags API Endpoints\ ------------------\ \ Access tags organized by series categories](https://pond.dflow.net/prediction-market-metadata-api-reference/tags/tags-by-categories) [Sports API Endpoints\ --------------------\ \ Get filtering options organized by sports](https://pond.dflow.net/prediction-market-metadata-api-reference/sports/filters-by-sports) [Search API Endpoints\ --------------------\ \ Search events with nested markets by title or ticker](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search) [Get Event](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event) ⌘I --- # Get Event Forecast Percentile History - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Events API Endpoints Get Event Forecast Percentile History [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get event forecast percentile history by event ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/event/{series_ticker}/{event_id}/forecast_percentile_history 400 404 Copy Ask AI { "code": "", "msg": "" } GET / api / v1 / event / {series\_ticker} / {event\_id} / forecast\_percentile\_history Try it Get event forecast percentile history by event ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/event/{series_ticker}/{event_id}/forecast_percentile_history 400 404 Copy Ask AI { "code": "", "msg": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history#parameter-series-ticker) series\_ticker string required The series ticker [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history#parameter-event-id) event\_id string required The event ticker #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history#parameter-percentiles) percentiles string required Comma-separated list of percentile values (0-10000, max 10 values) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history#parameter-start-ts) startTs integer required Start timestamp for the range Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history#parameter-end-ts) endTs integer required End timestamp for the range Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history#parameter-period-interval) periodInterval integer required Period interval in minutes (0, 1, 60, or 1440) Required range: `x >= 0` #### Response 200 application/json Event forecast percentile history [Get Events](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events) [Get Event Forecast Percentile History by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history-by-mint) ⌘I --- # Get Event Candlesticks - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event-candlesticks#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Events API Endpoints Get Event Candlesticks [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get event candlesticks by ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/event/{ticker}/candlesticks 400 404 Copy Ask AI { "code": "", "msg": "" } GET / api / v1 / event / {ticker} / candlesticks Try it Get event candlesticks by ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/event/{ticker}/candlesticks 400 404 Copy Ask AI { "code": "", "msg": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event-candlesticks#parameter-ticker) ticker string required Event ticker #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event-candlesticks#parameter-start-ts) startTs integer required Start timestamp (Unix timestamp) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event-candlesticks#parameter-end-ts) endTs integer required End timestamp (Unix timestamp) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event-candlesticks#parameter-period-interval) periodInterval integer required Time period length of each candlestick in minutes (1, 60, or 1440) Required range: `x >= 0` #### Response 200 application/json Event candlesticks retrieved successfully [Get Event Forecast Percentile History by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history-by-mint) [Get Market](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market) ⌘I --- # Get Event - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Events API Endpoints Get Event [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get a specific event by ID cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/event/{event_id} 200 400 Copy Ask AI { "seriesTicker": "", "subtitle": "", "ticker": "", "title": "", "competition": "", "competitionScope": "", "imageUrl": "", "liquidity": 1, "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ], "openInterest": 1, "settlementSources": "", "strikeDate": 1, "strikePeriod": "", "volume": 1, "volume24h": 1 } GET / api / v1 / event / {event\_id} Try it Get a specific event by ID cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/event/{event_id} 200 400 Copy Ask AI { "seriesTicker": "", "subtitle": "", "ticker": "", "title": "", "competition": "", "competitionScope": "", "imageUrl": "", "liquidity": 1, "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ], "openInterest": 1, "settlementSources": "", "strikeDate": 1, "strikePeriod": "", "volume": 1, "volume24h": 1 } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#parameter-event-id) event\_id string required Event ticker ID #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#parameter-with-nested-markets) withNestedMarkets boolean Include nested markets in response #### Response 200 application/json Single event [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-series-ticker) seriesTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-subtitle) subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-ticker) ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-title) title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-competition-one-of-0) competition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-competition-scope-one-of-0) competitionScope string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-image-url-one-of-0) imageUrl string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-liquidity-one-of-0) liquidity integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0) markets object\[\] | null Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-accounts) markets.accounts object required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-accounts-additional-properties) markets.accounts.{key} object Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-accounts-additional-properties-is-initialized) markets.accounts.{key}.isInitialized boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-accounts-additional-properties-market-ledger) markets.accounts.{key}.marketLedger string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-accounts-additional-properties-no-mint) markets.accounts.{key}.noMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-accounts-additional-properties-yes-mint) markets.accounts.{key}.yesMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-accounts-additional-properties-redemption-status-one-of-0) markets.accounts.{key}.redemptionStatus string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-can-close-early) markets.canCloseEarly boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-close-time) markets.closeTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-event-ticker) markets.eventTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-expiration-time) markets.expirationTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-market-type) markets.marketType string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-no-sub-title) markets.noSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-open-interest) markets.openInterest integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-open-time) markets.openTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-result) markets.result string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-rules-primary) markets.rulesPrimary string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-status) markets.status string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-subtitle) markets.subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-ticker) markets.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-title) markets.title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-volume) markets.volume integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-yes-sub-title) markets.yesSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-early-close-condition-one-of-0) markets.earlyCloseCondition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-no-ask-one-of-0) markets.noAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-no-bid-one-of-0) markets.noBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-rules-secondary-one-of-0) markets.rulesSecondary string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-yes-ask-one-of-0) markets.yesAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-markets-one-of-0-items-yes-bid-one-of-0) markets.yesBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-open-interest-one-of-0) openInterest integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-settlement-sources) settlementSources any [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-strike-date-one-of-0) strikeDate integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-strike-period-one-of-0) strikePeriod string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-volume-one-of-0) volume integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event#response-volume24h-one-of-0) volume24h integer | null Required range: `x >= 0` [Introduction](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) [Get Events](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events) ⌘I --- # Create Swap - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/imperative/swap#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Imperative Swap API Endpoints Create Swap [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Returns an imperative swap transaction for the given quote cURL Copy Ask AI curl --request POST \ --url https://quote-api.dflow.net/swap \ --header 'Content-Type: application/json' \ --data ' { "quoteResponse": { "contextSlot": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "routePlan": [\ {\ "data": "",\ "inAmount": "",\ "inputMint": "",\ "inputMintDecimals": 1,\ "marketKey": "",\ "outAmount": "",\ "outputMint": "",\ "outputMintDecimals": 1,\ "venue": ""\ }\ ], "slippageBps": 1, "outTransferFee": "", "platformFee": "", "requestId": "", "simulatedComputeUnits": 1 }, "userPublicKey": "", "computeUnitPriceMicroLamports": 1, "createFeeAccount": { "referralAccount": "" }, "destinationTokenAccount": { "associatedTokenAccount": { "owner": "" } }, "dynamicComputeUnitLimit": true, "feeAccount": "", "includeJitoSandwichMitigationAccount": true, "positiveSlippage": { "limitPct": 1, "feeAccount": "" }, "prioritizationFeeLamports": { "autoMultiplier": 1 }, "sponsor": "", "wrapAndUnwrapSol": true } ' 200 400 500 Copy Ask AI { "computeUnitLimit": 1, "lastValidBlockHeight": 1, "prioritizationFeeLamports": 1, "swapTransaction": "", "prioritizationType": "" } POST / swap Try it Returns an imperative swap transaction for the given quote cURL Copy Ask AI curl --request POST \ --url https://quote-api.dflow.net/swap \ --header 'Content-Type: application/json' \ --data ' { "quoteResponse": { "contextSlot": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "routePlan": [\ {\ "data": "",\ "inAmount": "",\ "inputMint": "",\ "inputMintDecimals": 1,\ "marketKey": "",\ "outAmount": "",\ "outputMint": "",\ "outputMintDecimals": 1,\ "venue": ""\ }\ ], "slippageBps": 1, "outTransferFee": "", "platformFee": "", "requestId": "", "simulatedComputeUnits": 1 }, "userPublicKey": "", "computeUnitPriceMicroLamports": 1, "createFeeAccount": { "referralAccount": "" }, "destinationTokenAccount": { "associatedTokenAccount": { "owner": "" } }, "dynamicComputeUnitLimit": true, "feeAccount": "", "includeJitoSandwichMitigationAccount": true, "positiveSlippage": { "limitPct": 1, "feeAccount": "" }, "prioritizationFeeLamports": { "autoMultiplier": 1 }, "sponsor": "", "wrapAndUnwrapSol": true } ' 200 400 500 Copy Ask AI { "computeUnitLimit": 1, "lastValidBlockHeight": 1, "prioritizationFeeLamports": 1, "swapTransaction": "", "prioritizationType": "" } #### Body application/json [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response) quoteResponse object required The response from the quote endpoint Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-context-slot) quoteResponse.contextSlot integer required Slot at which the request was evaluated Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-in-amount) quoteResponse.inAmount string required Maximum input amount as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-input-mint) quoteResponse.inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-min-out-amount) quoteResponse.minOutAmount string required Same as `other_amount_threshold` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-other-amount-threshold) quoteResponse.otherAmountThreshold string required Minimum output amount after all fees as a scaled integer. If the swap transaction doesn't produce at least this amount of the output token, the transaction will fail. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-out-amount) quoteResponse.outAmount string required Expected output amount after all fees as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-output-mint) quoteResponse.outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-price-impact-pct) quoteResponse.priceImpactPct string required Price impact of the swap. This is an estimate of the percentage difference between the expected price for the swap and the price for the same swap with the smallest input amount possible. For example, "0.01" means 1% price impact. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan) quoteResponse.routePlan object\[\] required Route that the swap will take * Option 1 * Option 2 Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan-items-one-of-0-data) quoteResponse.routePlan.data string required Data for the leg [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan-items-one-of-0-in-amount) quoteResponse.routePlan.inAmount string required Maximum input amount for the leg as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan-items-one-of-0-input-mint) quoteResponse.routePlan.inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan-items-one-of-0-input-mint-decimals) quoteResponse.routePlan.inputMintDecimals integer required Decimals for the input mint Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan-items-one-of-0-market-key) quoteResponse.routePlan.marketKey string required Key identifying the market on the venue [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan-items-one-of-0-out-amount) quoteResponse.routePlan.outAmount string required Expected output amount for the leg as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan-items-one-of-0-output-mint) quoteResponse.routePlan.outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan-items-one-of-0-output-mint-decimals) quoteResponse.routePlan.outputMintDecimals integer required Decimals for the output mint Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-route-plan-items-one-of-0-venue) quoteResponse.routePlan.venue string required Venue for the leg [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-slippage-bps) quoteResponse.slippageBps integer required Max allowed slippage % in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-out-transfer-fee) quoteResponse.outTransferFee string Transfer fee amount that was applied to the quote, if any [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-platform-fee-one-of-1) quoteResponse.platformFee object Platform fee that was applied to the quote, if any Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-platform-fee-one-of-1-amount) quoteResponse.platformFee.amount string required Platform fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-platform-fee-one-of-1-fee-account) quoteResponse.platformFee.feeAccount string required Token account that will receive the platform fee [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-platform-fee-one-of-1-fee-bps) quoteResponse.platformFee.feeBps integer required Platform fee in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-platform-fee-one-of-1-segmenter-fee-amount) quoteResponse.platformFee.segmenterFeeAmount string required Segmenter fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-platform-fee-one-of-1-segmenter-fee-pct) quoteResponse.platformFee.segmenterFeePct integer required Segmenter fee in percent Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-request-id) quoteResponse.requestId string Identifier for the request [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-quote-response-simulated-compute-units-one-of-0) quoteResponse.simulatedComputeUnits integer | null Compute units consumed by quote simulation Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-user-public-key) userPublicKey string required Base58-encoded address of the swapper's wallet [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-compute-unit-price-micro-lamports) computeUnitPriceMicroLamports integer Compute unit price in micro-lamports. Mutually exclusive with `prioritizationFeeLamports`. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-create-fee-account) createFeeAccount object If the fee account isn't a referral token account derived from the seeds `["referral_ata", referral_account, mint]` and the Referral program ID `REFER4ZgmyYx9c6He5XfaTMiGfdLwRnkV4RPp9t9iF3`, this should be unspecified. If specified, the transaction will create the `fee_account` if it doesn't already exist. The user pays for the creation of the fee account. Ignored if `fee_account` is unspecified. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-create-fee-account-referral-account) createFeeAccount.referralAccount string required Base58-encoded address of the referral account associated with the fee account [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-destination-token-account) destinationTokenAccount object The account that will receive the output token. If not specified, the user's associated token account for the output mint will be used. Allowed values are: * A base58-encoded address, which specifies the address of the destination token account or, if the output is native SOL, the destination wallet. If the output isn't native SOL, the specified account must exist before the swap executes, or else the swap will fail. * An object which specifies the owner of the destination token account. In this case, the owner's associated token account for the output mint will be used as the destination token account. Note that this cannot be used if the output is native SOL. The object contains the following: * `associatedTokenAccount` - object * `owner` - base58-encoded address of the owner of the destination token account * Option 1 * Option 2 Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-destination-token-account-one-of-0-associated-token-account) destinationTokenAccount.associatedTokenAccount object required Use the specified owner's associated token account for the output mint as the destination token account. If the destination token account is uninitialized at swap execution time, the swap will create it. This cannot be used if the output is native SOL. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-destination-token-account-one-of-0-associated-token-account-owner) destinationTokenAccount.associatedTokenAccount.owner string required Base58-encoded address of the owner of the destination token account [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-dynamic-compute-unit-limit) dynamicComputeUnitLimit boolean If true, the server will simulate the transaction to determine its compute unit limit. If unspecified or false, the transaction will use the default compute unit limit. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-fee-account) feeAccount string Base58-encoded address of the token account that will receive the platform fee if a platform fee applies to the swap. If specified, this account's mint must match the fee mint for the swap. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-include-jito-sandwich-mitigation-account) includeJitoSandwichMitigationAccount boolean If true, the transaction will include a Jito sandwich mitigation account. The account will be included in the `SetComputeUnitLimit` instruction. See [https://docs.jito.wtf/lowlatencytxnsend/#sandwich-mitigation](https://docs.jito.wtf/lowlatencytxnsend/#sandwich-mitigation) for more details. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-positive-slippage) positiveSlippage object Positive slippage fee parameters. If specified, then the swap will pay some or all positive slippage to the specified account. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-positive-slippage-limit-pct) positiveSlippage.limitPct integer required Limit on the positive slippage fee in percent. The positive slippage fee is limited to the lesser of (1) the excess actual out amount above the quoted amount and (2) this percentage of the actual out amount after platform fee. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-positive-slippage-fee-account) positiveSlippage.feeAccount string Base58-encoded address of the token account that will receive the positive slippage fee. This must be a token account for the output mint, regardless of the platform fee mode. If at swap execution time this account can't receive the positive slippage fee, then the positive slippage fee transfer is skipped. If the platform fee mode is `outputMint` and the platform fee account is specified, then this must be unspecified (in which case the platform fee account will be used) or match the platform fee account. Otherwise, this must be specified. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-prioritization-fee-lamports-one-of-0) prioritizationFeeLamports Option 1 · objectOption 2 · objectOption 3 · enumOption 4 · objectOption 5 · enum Prioritization fee in lamports. Mutually exclusive with `computeUnitPriceMicroLamports`. If both `computeUnitPriceMicroLamports` and `prioritizationFeeLamports` are unspecified, the default of `prioritizationFeeLamports="auto"` will be used. Allowed values are: * a u32 which specifies the lamports * the string value "auto", where the server determines the fee automatically, capped at 0.005 SOL * the string value "disabled", where the server leaves the prioritization fee unspecified * an object containing the following * `priorityLevelWithMaxLamports` - object * `priorityLevel` - string, either `medium`, `high`, or `veryHigh` * `maxLamports` - integer, a cap on the prioritization fee * an object containing the following * `autoMultiplier` - a u32 which specifies how much to multiply the automatically determined fee by. The total prioritization fee will be capped at 0.005 SOL. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-prioritization-fee-lamports-one-of-0-auto-multiplier) prioritizationFeeLamports.autoMultiplier integer required A multiplier applied to the automatically-determined fee. The total is capped at 0.005 SOL. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-sponsor) sponsor string Base58-encoded address of the sponsor's wallet. If specified, the sponsor will pay the transaction fee and for token account creation, and both the user and the sponsor must sign the swap transaction. This can be used to implement gasless swaps. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#body-wrap-and-unwrap-sol) wrapAndUnwrapSol boolean If false, the transaction will use wrapped SOL #### Response 200 application/json Imperative swap transaction [​](https://pond.dflow.net/swap-api-reference/imperative/swap#response-compute-unit-limit) computeUnitLimit integer required Compute unit limit assigned to the transaction Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#response-last-valid-block-height) lastValidBlockHeight integer required The last block height at which the transaction is valid Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#response-prioritization-fee-lamports) prioritizationFeeLamports integer required Prioritization fee in lamports Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#response-swap-transaction) swapTransaction string required Base64-encoded swap transaction. The user must sign before sending it to Solana. [​](https://pond.dflow.net/swap-api-reference/imperative/swap#response-prioritization-type-one-of-1) prioritizationType object Prioritization fee type for the transaction Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#response-prioritization-type-one-of-1-compute-budget) prioritizationType.computeBudget object required Prioritization fee specified via the compute budget program Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap#response-prioritization-type-one-of-1-compute-budget-micro-lamports) prioritizationType.computeBudget.microLamports integer required Compute unit price assigned to the transaction Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap#response-prioritization-type-one-of-1-compute-budget-estimated-micro-lamports-one-of-0) prioritizationType.computeBudget.estimatedMicroLamports integer | null Compute unit price estimated by the server for the transaction Required range: `x >= 0` [Get Quote](https://pond.dflow.net/swap-api-reference/imperative/quote) [Create Swap Instructions](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions) ⌘I --- # Get Event Forecast Percentile History by Mint - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history-by-mint#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Events API Endpoints Get Event Forecast Percentile History by Mint [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get event forecast percentile history by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/event/by-mint/{mint_address}/forecast_percentile_history 400 404 Copy Ask AI { "code": "", "msg": "" } GET / api / v1 / event / by-mint / {mint\_address} / forecast\_percentile\_history Try it Get event forecast percentile history by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/event/by-mint/{mint_address}/forecast_percentile_history 400 404 Copy Ask AI { "code": "", "msg": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history-by-mint#parameter-mint-address) mint\_address string required Any mint address associated with the market (ledger or outcome mint) #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history-by-mint#parameter-percentiles) percentiles string required Comma-separated list of percentile values (0-10000, max 10 values) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history-by-mint#parameter-start-ts) startTs integer required Start timestamp for the range Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history-by-mint#parameter-end-ts) endTs integer required End timestamp for the range Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history-by-mint#parameter-period-interval) periodInterval integer required Period interval in minutes (0, 1, 60, or 1440) Required range: `x >= 0` #### Response 200 application/json Event forecast percentile history [Get Event Forecast Percentile History](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history) [Get Event Candlesticks](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event-candlesticks) ⌘I --- # Get Live Data - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Live Data API Endpoints Get Live Data [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get live data from Kalshi cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/live_data 400 Copy Ask AI { "code": "", "msg": "" } GET / api / v1 / live\_data Try it Get live data from Kalshi cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/live_data 400 Copy Ask AI { "code": "", "msg": "" } #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data#parameter-milestone-ids) milestoneIds string\[\] required Array of milestone IDs (max 100) #### Response 200 application/json Live data retrieved successfully [Get Trades by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint) [Get Live Data by Event](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-event) ⌘I --- # Get Market Candlesticks by Mint - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks-by-mint#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Markets API Endpoints Get Market Candlesticks by Mint [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get market candlesticks by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/market/by-mint/{mint_address}/candlesticks 400 404 Copy Ask AI { "code": "", "msg": "" } GET / api / v1 / market / by-mint / {mint\_address} / candlesticks Try it Get market candlesticks by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/market/by-mint/{mint_address}/candlesticks 400 404 Copy Ask AI { "code": "", "msg": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks-by-mint#parameter-mint-address) mint\_address string required Market mint address (ledger or outcome mint) #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks-by-mint#parameter-start-ts) startTs integer required Start timestamp (Unix timestamp) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks-by-mint#parameter-end-ts) endTs integer required End timestamp (Unix timestamp) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks-by-mint#parameter-period-interval) periodInterval integer required Time period length of each candlestick in minutes (1, 60, or 1440) Required range: `x >= 0` #### Response 200 application/json Market candlesticks retrieved successfully [Get Market Candlesticks](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks) [Get Trades](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades) ⌘I --- # Filter Outcome Mints - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/filter-outcome-mints#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Markets API Endpoints Filter Outcome Mints [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Filter token addresses by outcome mints cURL Copy Ask AI curl --request POST \ --url https://prediction-markets-api.dflow.net/api/v1/filter_outcome_mints \ --header 'Content-Type: application/json' \ --data ' { "addresses": [\ ""\ ] } ' 200 400 Copy Ask AI { "outcomeMints": [\ ""\ ] } POST / api / v1 / filter\_outcome\_mints Try it Filter token addresses by outcome mints cURL Copy Ask AI curl --request POST \ --url https://prediction-markets-api.dflow.net/api/v1/filter_outcome_mints \ --header 'Content-Type: application/json' \ --data ' { "addresses": [\ ""\ ] } ' 200 400 Copy Ask AI { "outcomeMints": [\ ""\ ] } #### Body application/json [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/filter-outcome-mints#body-addresses) addresses string\[\] required List of token addresses to filter (max 200) Maximum array length: `200` #### Response 200 application/json Filtered list of outcome mints [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/filter-outcome-mints#response-outcome-mints) outcomeMints string\[\] required List of addresses that are outcome mints [Get Outcome Mints](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/outcome-mints) [Get Market Candlesticks](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks) ⌘I --- # Get Market Candlesticks - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Markets API Endpoints Get Market Candlesticks [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get market candlesticks by ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/market/{ticker}/candlesticks 400 404 Copy Ask AI { "code": "", "msg": "" } GET / api / v1 / market / {ticker} / candlesticks Try it Get market candlesticks by ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/market/{ticker}/candlesticks 400 404 Copy Ask AI { "code": "", "msg": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks#parameter-ticker) ticker string required Market ticker #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks#parameter-start-ts) startTs integer required Start timestamp (Unix timestamp) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks#parameter-end-ts) endTs integer required End timestamp (Unix timestamp) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks#parameter-period-interval) periodInterval integer required Time period length of each candlestick in minutes (1, 60, or 1440) Required range: `x >= 0` #### Response 200 application/json Market candlesticks retrieved successfully [Filter Outcome Mints](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/filter-outcome-mints) [Get Market Candlesticks by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks-by-mint) ⌘I --- # Get Outcome Mints - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/outcome-mints#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Markets API Endpoints Get Outcome Mints [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get all outcome mints cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/outcome_mints 200 Copy Ask AI { "mints": [\ ""\ ] } GET / api / v1 / outcome\_mints Try it Get all outcome mints cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/outcome_mints 200 Copy Ask AI { "mints": [\ ""\ ] } #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/outcome-mints#parameter-min-close-ts) minCloseTs integer Minimum close timestamp (Unix timestamp in seconds). Only markets with close\_time >= min\_close\_ts will be included. Required range: `x >= 0` #### Response 200 - application/json List of all outcome mints from supported markets [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/outcome-mints#response-mints) mints string\[\] required [Get Markets Batch](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch) [Filter Outcome Mints](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/filter-outcome-mints) ⌘I --- # Get Live Data by Event - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-event#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Live Data API Endpoints Get Live Data by Event [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get live data by event ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/live_data/by-event/{event_ticker} 400 Copy Ask AI { "code": "", "msg": "" } GET / api / v1 / live\_data / by-event / {event\_ticker} Try it Get live data by event ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/live_data/by-event/{event_ticker} 400 Copy Ask AI { "code": "", "msg": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-event#parameter-event-ticker) event\_ticker string required Event ticker #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-event#parameter-minimum-start-date) minimumStartDate string Minimum start date to filter milestones (RFC3339 format) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-event#parameter-category) category string Filter by milestone category [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-event#parameter-competition) competition string Filter by competition [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-event#parameter-source-id) sourceId string Filter by source ID [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-event#parameter-type) type string Filter by milestone type (use 'type' as query param name) #### Response 200 application/json Live data retrieved successfully [Get Live Data](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data) [Get Live Data by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-mint) ⌘I --- # Get Live Data by Mint - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-mint#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Live Data API Endpoints Get Live Data by Mint [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get live data by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/live_data/by-mint/{mint_address} 400 404 Copy Ask AI { "code": "", "msg": "" } GET / api / v1 / live\_data / by-mint / {mint\_address} Try it Get live data by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/live_data/by-mint/{mint_address} 400 404 Copy Ask AI { "code": "", "msg": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-mint#parameter-mint-address) mint\_address string required Market mint address (ledger or outcome mint) #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-mint#parameter-minimum-start-date) minimumStartDate string Minimum start date to filter milestones (RFC3339 format) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-mint#parameter-category) category string Filter by milestone category [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-mint#parameter-competition) competition string Filter by competition [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-mint#parameter-source-id) sourceId string Filter by source ID [​](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-mint#parameter-type) type string Filter by milestone type (use 'type' as query param name) #### Response 200 application/json Live data retrieved successfully [Get Live Data by Event](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-event) [Get Series](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series) ⌘I --- # Get Order - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/order/order#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Order API Endpoints Get Order [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Returns a quote and optionally a transaction cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/order 200 400 500 503 Copy Ask AI { "contextSlot": 1, "executionMode": "sync", "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "slippageBps": 1, "computeUnitLimit": 1, "lastValidBlockHeight": 1, "platformFee": "", "prioritizationFeeLamports": 1, "prioritizationType": { "computeBudget": { "microLamports": 1, "estimatedMicroLamports": 1 } }, "revertMint": "", "routePlan": [\ {\ "data": "",\ "inAmount": "",\ "inputMint": "",\ "inputMintDecimals": 1,\ "marketKey": "",\ "outAmount": "",\ "outputMint": "",\ "outputMintDecimals": 1,\ "venue": ""\ }\ ], "transaction": "" } GET / order Try it Returns a quote and optionally a transaction cURL Copy Ask AI curl --request GET \ --url https://quote-api.dflow.net/order 200 400 500 503 Copy Ask AI { "contextSlot": 1, "executionMode": "sync", "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "slippageBps": 1, "computeUnitLimit": 1, "lastValidBlockHeight": 1, "platformFee": "", "prioritizationFeeLamports": 1, "prioritizationType": { "computeBudget": { "microLamports": 1, "estimatedMicroLamports": 1 } }, "revertMint": "", "routePlan": [\ {\ "data": "",\ "inAmount": "",\ "inputMint": "",\ "inputMintDecimals": 1,\ "marketKey": "",\ "outAmount": "",\ "outputMint": "",\ "outputMintDecimals": 1,\ "venue": ""\ }\ ], "transaction": "" } #### Query Parameters [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-user-public-key) userPublicKey string Base58-encoded address of the swapper's wallet. If specified, the response will include a transaction allowing the user to submit the order. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-input-mint) inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-output-mint) outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-amount) amount integer required Input amount as a scaled integer. For example, 1 SOL is 1000000000. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-one-of-0) slippageBps integerenum Max allowed slippage for the swap. Allowed values are: * a u16 which specifies the maximum allowed slippage in basis points * the string value "auto", where the server determines the maximum allowed slippage automatically Slippage tolerance specified in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-dexes) dexes string Comma-separated list of DEXes to include. If not specified, all DEXes will be included. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-exclude-dexes) excludeDexes string Comma-separated list of DEXes to exclude. If not specified, all DEXes will be included. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-only-direct-routes) onlyDirectRoutes boolean If true, only use single-leg routes [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-max-route-length) maxRouteLength integer If specified, the route will be limited to the specified number of legs. Ignored if `only_direct_routes` is true. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-only-jit-routes) onlyJitRoutes boolean If true, only use JIT routes. Every leg in the route will use the JIT router. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-allow-sync-exec) allowSyncExec boolean If true, allow synchronous execution. Default is true. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-allow-async-exec) allowAsyncExec boolean If true, allow asynchronous execution. Default is true. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-restrict-revert-mint) restrictRevertMint boolean If true, the revert mint for orders that use asynchronous execution will be the input mint. Default is false. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-platform-fee-mode) platformFeeMode enum Optional platform fee mode. If not specified, the default is `outputMint`. For async prediction market swaps, this is ignored, and the platform fee is paid in the stablecoin mint. Available options: `outputMint`, `inputMint` [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-platform-fee-bps) platformFeeBps integer Optional platform fee in basis points. This should only be nonzero if the swap will collect the platform fee. The fee account must be able to collect the fee mint at execution time. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-platform-fee-scale) platformFeeScale integer Optional platform fee scale for async prediction market swaps, with 3 decimals. This should only be nonzero if the swap will collect the platform fee. The fee account must be able to collect the fee mint at fill time. Must be between >= 0 and < 1000. For example, a value of 50 means 0.050. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-fee-account) feeAccount string Base58-encoded address of the token account that will receive the platform fee if a platform fee applies to the swap. If specified, this account's mint must match the fee mint for the swap. This must be specified if the platform fee is nonzero. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-referral-account) referralAccount string Base58-encoded address of the referral account associated with the fee account. If the fee account isn't a referral token account derived from the seeds `["referral_ata", referral_account, mint]` and the Referral program ID `REFER4ZgmyYx9c6He5XfaTMiGfdLwRnkV4RPp9t9iF3`, this should be unspecified. If specified, the the open transaction will create the `fee_account` if it doesn't already exist. The user pays for the creation of the fee account. Ignored if `fee_account` is unspecified. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-positive-slippage-fee-account) positiveSlippageFeeAccount string Base58-encoded address of the token account that will receive the positive slippage fee. This must be a token account for the output mint, regardless of the platform fee mode. If at swap execution time this account can't receive the positive slippage fee, then the positive slippage fee transfer is skipped. If the platform fee mode is `outputMint` and the platform fee account is specified, then this must be unspecified (in which case the platform fee account will be used) or match the platform fee account. Otherwise, this must be specified. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-positive-slippage-limit-pct) positiveSlippageLimitPct integer Limit on the positive slippage fee in percent. The positive slippage fee is limited to the lesser of (1) the excess actual out amount above the quoted amount and (2) this percentage of the actual out amount after platform fee. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-sponsor) sponsor string Base58-encoded address of the sponsor's wallet. If specified, the sponsor will pay the transaction fee and for token account creation, and both the user and the sponsor must sign the swap transaction. This can be used to implement gasless swaps. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-destination-token-account) destinationTokenAccount string Base58-encoded address of the account that will receive the output token. This is either the address of the destination token account, or, if the output is native SOL, the address of the destination wallet. If both `destinationTokenAccount` and `destinationWallet` are unspecified, the user's associated token account for the output mint will be used if the output isn't native SOL, and the user's wallet will be used if the output is native SOL. If the output isn't native SOL, the specified account must exist before the swap executes, or else the swap will fail. Mutually exclusive with `destinationWallet`. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-destination-wallet) destinationWallet string Base58-encoded address of the wallet that will receive the output token. Mutually exclusive with `destinationTokenAccount`. If specified: 1. If the swap outputs native SOL, the transaction will output native SOL to the specified wallet. 2. If the swap outputs wrapped SOL or an SPL token, the transaction will send output to the specified wallet's associated token account for the output mint, creating the associated token account if it doesn't exist at execution time. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-revert-wallet) revertWallet string Base58-encoded address of the wallet that will receive the revert mint if the order is an asynchronous order and it reverts. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-wrap-and-unwrap-sol) wrapAndUnwrapSol boolean If false, the order will use wrapped SOL [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-one-of-0) prioritizationFeeLamports enuminteger Prioritization fee in lamports. Mutually exclusive with `computeUnitPriceMicroLamports`. If both `prioritizationFeeLamports` and `computeUnitPriceMicroLamports` are unspecified, the default of `prioritizationFeeLamports="auto"` will be used. Allowed values are: * an unsigned 32-bit integer which specifies the prioritization fee in lamports * the string value "auto", where the server determines the fee automatically * the string value "medium", where the server determines the fee automatically * the string value "high", where the server determines the fee automatically * the string value "veryHigh", where the server determines the fee automatically * the string value "disabled", where the server leaves the prioritization fee unspecified Available options: `auto`, `medium`, `high`, `veryHigh`, `disabled` [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-compute-unit-price-micro-lamports) computeUnitPriceMicroLamports integer Compute unit price in micro-lamports. Mutually exclusive with `prioritizationFeeLamports`. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-dynamic-compute-unit-limit) dynamicComputeUnitLimit boolean If true, the server will simulate the transaction to determine its compute unit limit. If unspecified or false, the transaction will use the default compute unit limit. [​](https://pond.dflow.net/swap-api-reference/order/order#parameter-include-jito-sandwich-mitigation-account) includeJitoSandwichMitigationAccount boolean If true, the transaction will include a Jito sandwich mitigation account. The account will be included in the `SetComputeUnitLimit` instruction. See [https://docs.jito.wtf/lowlatencytxnsend/#sandwich-mitigation](https://docs.jito.wtf/lowlatencytxnsend/#sandwich-mitigation) for more details. #### Response 200 application/json Order response [​](https://pond.dflow.net/swap-api-reference/order/order#response-context-slot) contextSlot integer required Slot at which the request was evaluated Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-execution-mode) executionMode enum required Order execution mode Available options: `sync`, `async` [​](https://pond.dflow.net/swap-api-reference/order/order#response-in-amount) inAmount string required Maximum input amount as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order#response-input-mint) inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/order/order#response-min-out-amount) minOutAmount string required Same as `other_amount_threshold` [​](https://pond.dflow.net/swap-api-reference/order/order#response-other-amount-threshold) otherAmountThreshold string required Minimum output amount after all fees as a scaled integer. If the swap transaction doesn't produce at least this amount of the output token, the transaction will fail. [​](https://pond.dflow.net/swap-api-reference/order/order#response-out-amount) outAmount string required Expected output amount after all fees as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order#response-output-mint) outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/order/order#response-price-impact-pct) priceImpactPct string required Price impact of the swap. This is an estimate of the percentage difference between the expected price for the swap and the price for the same swap with the smallest input amount possible. For example, "0.01" means 1% price impact. [​](https://pond.dflow.net/swap-api-reference/order/order#response-slippage-bps) slippageBps integer required Max allowed slippage % in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-compute-unit-limit) computeUnitLimit integer Compute unit limit assigned to the transaction. Specified if and only if the request included the user's public key. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-last-valid-block-height) lastValidBlockHeight integer The last block height at which the blockhash assigned to the transaction is valid. Useful to determine whether the transaction has expired. Specified if and only if the request included the user's public key. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-platform-fee-one-of-1) platformFee object Platform fee that was applied to the quote, if any Show child attributes [​](https://pond.dflow.net/swap-api-reference/order/order#response-platform-fee-one-of-1-amount) platformFee.amount string required Platform fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order#response-platform-fee-one-of-1-fee-account) platformFee.feeAccount string required Token account that will receive the platform fee [​](https://pond.dflow.net/swap-api-reference/order/order#response-platform-fee-one-of-1-fee-bps) platformFee.feeBps integer required Platform fee in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-platform-fee-one-of-1-segmenter-fee-amount) platformFee.segmenterFeeAmount string required Segmenter fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order#response-platform-fee-one-of-1-segmenter-fee-pct) platformFee.segmenterFeePct integer required Segmenter fee in percent Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-prioritization-fee-lamports) prioritizationFeeLamports integer Prioritization fee in lamports. Specified if and only if the request included the user's public key. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-prioritization-type) prioritizationType object Prioritization fee type for the transaction. Specified if and only if the request included the user's public key. Show child attributes [​](https://pond.dflow.net/swap-api-reference/order/order#response-prioritization-type-compute-budget) prioritizationType.computeBudget object required Prioritization fee specified via the compute budget program Show child attributes [​](https://pond.dflow.net/swap-api-reference/order/order#response-prioritization-type-compute-budget-micro-lamports) prioritizationType.computeBudget.microLamports integer required Compute unit price assigned to the transaction Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-prioritization-type-compute-budget-estimated-micro-lamports-one-of-0) prioritizationType.computeBudget.estimatedMicroLamports integer | null Compute unit price estimated by the server for the transaction Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-revert-mint) revertMint string Base58-encoded mint address of the token that will be returned to the user if the order is an asynchronous order and the order reverts after it is successfully opened. Specified if and only if the order is an asynchronous order. [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan) routePlan object\[\] Route that the swap will take. Specified if and only if the route plan is known at order opening time. This will be specified for all synchronous orders. * Option 1 * Option 2 Show child attributes [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan-items-one-of-0-data) routePlan.data string required Data for the leg [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan-items-one-of-0-in-amount) routePlan.inAmount string required Maximum input amount for the leg as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan-items-one-of-0-input-mint) routePlan.inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan-items-one-of-0-input-mint-decimals) routePlan.inputMintDecimals integer required Decimals for the input mint Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan-items-one-of-0-market-key) routePlan.marketKey string required Key identifying the market on the venue [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan-items-one-of-0-out-amount) routePlan.outAmount string required Expected output amount for the leg as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan-items-one-of-0-output-mint) routePlan.outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan-items-one-of-0-output-mint-decimals) routePlan.outputMintDecimals integer required Decimals for the output mint Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/order/order#response-route-plan-items-one-of-0-venue) routePlan.venue string required Venue for the leg [​](https://pond.dflow.net/swap-api-reference/order/order#response-transaction) transaction string Base64-encoded transaction. The user must sign before sending it to Solana. Specified if and only if the request included the user's public key. [Introduction](https://pond.dflow.net/swap-api-reference/introduction) [Get Order Status](https://pond.dflow.net/swap-api-reference/order/order-status) ⌘I --- # Get Tags by Categories - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/tags/tags-by-categories#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Tags API Endpoints Get Tags by Categories [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get tags organized by series categories cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/tags_by_categories 200 400 Copy Ask AI { "tagsByCategories": {} } GET / api / v1 / tags\_by\_categories Try it Get tags organized by series categories cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/tags_by_categories 200 400 Copy Ask AI { "tagsByCategories": {} } #### Response 200 application/json Tags by categories [​](https://pond.dflow.net/prediction-market-metadata-api-reference/tags/tags-by-categories#response-tags-by-categories) tagsByCategories object required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/tags/tags-by-categories#response-tags-by-categories-additional-properties) tagsByCategories.{key} string\[\] [Get Series by Ticker](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker) [Get Filters by Sports](https://pond.dflow.net/prediction-market-metadata-api-reference/sports/filters-by-sports) ⌘I --- # Get Events - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Events API Endpoints Get Events [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get list of events cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/events 200 400 Copy Ask AI { "events": [\ {\ "seriesTicker": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "competition": "",\ "competitionScope": "",\ "imageUrl": "",\ "liquidity": 1,\ "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ],\ "openInterest": 1,\ "settlementSources": "",\ "strikeDate": 1,\ "strikePeriod": "",\ "volume": 1,\ "volume24h": 1\ }\ ], "cursor": 1 } GET / api / v1 / events Try it Get list of events cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/events 200 400 Copy Ask AI { "events": [\ {\ "seriesTicker": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "competition": "",\ "competitionScope": "",\ "imageUrl": "",\ "liquidity": 1,\ "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ],\ "openInterest": 1,\ "settlementSources": "",\ "strikeDate": 1,\ "strikePeriod": "",\ "volume": 1,\ "volume24h": 1\ }\ ], "cursor": 1 } #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#parameter-limit) limit integer Maximum number of events to return Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#parameter-with-nested-markets) withNestedMarkets boolean Include nested markets in response [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#parameter-cursor) cursor integer Pagination offset (number of events to skip) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#parameter-series-tickers) seriesTickers string Filter by series tickers (comma-separated list, max 25) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#parameter-is-initialized) isInitialized boolean Filter events that are initialized (have a corresponding market ledger) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#parameter-status) status string Filter events by market status. Available options: initialized, active, inactive, closed, determined [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#parameter-sort) sort enum Sort field. Available options: volume, volume24h, liquidity, openInterest, startDate Available options: `volume`, `volume24h`, `liquidity`, `openInterest`, `startDate` #### Response 200 application/json List of events [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events) events object\[\] required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-series-ticker) events.seriesTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-subtitle) events.subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-ticker) events.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-title) events.title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-competition-one-of-0) events.competition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-competition-scope-one-of-0) events.competitionScope string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-image-url-one-of-0) events.imageUrl string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-liquidity-one-of-0) events.liquidity integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0) events.markets object\[\] | null Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-accounts) events.markets.accounts object required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-accounts-additional-properties) events.markets.accounts.{key} object Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-accounts-additional-properties-is-initialized) events.markets.accounts.{key}.isInitialized boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-accounts-additional-properties-market-ledger) events.markets.accounts.{key}.marketLedger string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-accounts-additional-properties-no-mint) events.markets.accounts.{key}.noMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-accounts-additional-properties-yes-mint) events.markets.accounts.{key}.yesMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-accounts-additional-properties-redemption-status-one-of-0) events.markets.accounts.{key}.redemptionStatus string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-can-close-early) events.markets.canCloseEarly boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-close-time) events.markets.closeTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-event-ticker) events.markets.eventTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-expiration-time) events.markets.expirationTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-market-type) events.markets.marketType string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-no-sub-title) events.markets.noSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-open-interest) events.markets.openInterest integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-open-time) events.markets.openTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-result) events.markets.result string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-rules-primary) events.markets.rulesPrimary string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-status) events.markets.status string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-subtitle) events.markets.subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-ticker) events.markets.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-title) events.markets.title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-volume) events.markets.volume integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-yes-sub-title) events.markets.yesSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-early-close-condition-one-of-0) events.markets.earlyCloseCondition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-no-ask-one-of-0) events.markets.noAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-no-bid-one-of-0) events.markets.noBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-rules-secondary-one-of-0) events.markets.rulesSecondary string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-yes-ask-one-of-0) events.markets.yesAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-markets-one-of-0-items-yes-bid-one-of-0) events.markets.yesBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-open-interest-one-of-0) events.openInterest integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-settlement-sources) events.settlementSources any [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-strike-date-one-of-0) events.strikeDate integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-strike-period-one-of-0) events.strikePeriod string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-volume-one-of-0) events.volume integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-events-items-volume24h-one-of-0) events.volume24h integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events#response-cursor-one-of-0) cursor integer | null Required range: `x >= 0` [Get Event](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event) [Get Event Forecast Percentile History](https://pond.dflow.net/prediction-market-metadata-api-reference/events/forecast-percentile-history) ⌘I --- # Redeem Determined Market Outcome Tokens - DFlow [Skip to main content](https://pond.dflow.net/quickstart/redeem-outcome-tokens#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets Redeem Determined Market Outcome Tokens [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Overview](https://pond.dflow.net/quickstart/redeem-outcome-tokens#overview) * [API Response Structure](https://pond.dflow.net/quickstart/redeem-outcome-tokens#api-response-structure) * [Market Response](https://pond.dflow.net/quickstart/redeem-outcome-tokens#market-response) * [Order Response](https://pond.dflow.net/quickstart/redeem-outcome-tokens#order-response) * [Next Steps](https://pond.dflow.net/quickstart/redeem-outcome-tokens#next-steps) This guide shows you how to redeem determined prediction market outcome tokens by checking if they’re redeemable and requesting a redemption order through the DFlow Trade API. This quickstart assumes you already have a list of outcome token mints you want to redeem. If you need to discover your positions first, see the [User Prediction Positions](https://pond.dflow.net/quickstart/user-prediction-positions) guide.Redemption involves trading expired OutcomeTokens for the stablecoin you opened your position with. For more details on the settlement process, see the [Event Settlement and Redemption](https://pond.dflow.net/concepts/prediction/settle) concept guide.**Note**: Outcome tokens always have 0 decimals, so the amount to redeem is the raw token count from the user’s token balance. [​](https://pond.dflow.net/quickstart/redeem-outcome-tokens#overview) Overview --------------------------------------------------------------------------------- To redeem determined market outcome tokens, you’ll need to: 1. Check if the outcome token is redeemable by verifying market status and redemption availability 2. Request a redemption order using the DFlow Trade API 3. Sign and submit the transaction (same process as regular trading) 1 Check if Outcome Token is Redeemable Use the [`/api/v1/market/by-mint/{mint_address}`](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint) endpoint to fetch market details and verify that the outcome token is redeemable. A token is redeemable when: * The market status is `"determined"` or `"finalized"` * The market result (`"yes"` or `"no"`) matches the user’s outcome token (the outcome mint must match the `yesMint` or `noMint` for the determined side) * The redemption status for the settlement mint is `"Open"` Check Redemption Eligibility Copy Ask AI /// Base URL for the DFlow Prediction Market Metadata API const METADATA_API_BASE_URL = "https://prediction-markets-api.dflow.net"; /// Settlement mint constant (USDC) /// If you only support one settlement mint, use this constant const USDC_MINT = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"; /// Outcome token mint address (YES or NO token) const outcomeMint = "OUTCOME_TOKEN_MINT_ADDRESS_HERE"; /// Fetch market details by mint address const response = await fetch( `${METADATA_API_BASE_URL}/api/v1/market/by-mint/${outcomeMint}`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); if (!response.ok) { throw new Error("Failed to fetch market details"); } const market = await response.json(); /// Check if market is determined (status can be "determined" or "finalized") if (market.status !== "determined" && market.status !== "finalized") { throw new Error(`Market is not determined. Current status: ${market.status}`); } /// Check if the outcome mint matches the market result /// The result is "yes" or "no", so we need to check if the outcome mint /// matches the corresponding yesMint or noMint in the accounts const result = market.result; // "yes" or "no" let isDeterminedOutcome = false; let settlementMint; /// Option 1: Use a constant settlement mint (e.g., USDC) /// If you only support one settlement mint, use this approach if (market.accounts[USDC_MINT]) { const usdcAccount = market.accounts[USDC_MINT]; /// Check if redemption is open and outcome matches if (usdcAccount.redemptionStatus === "open") { if ( (result === "yes" && usdcAccount.yesMint === outcomeMint) || (result === "no" && usdcAccount.noMint === outcomeMint) ) { isDeterminedOutcome = true; settlementMint = USDC_MINT; } } else { throw new Error(`Redemption is not open for ${outcomeMint}`); } } /// Option 2: Find settlement mint dynamically (if you support multiple) /// Uncomment this if you need to support multiple settlement mints /* if (!settlementMint) { for (const [mint, account] of Object.entries(market.accounts)) { if (account.redemptionStatus === "open") { /// Check if this outcome mint matches the determined side if (result === "yes" && account.yesMint === outcomeMint) { isDeterminedOutcome = true; settlementMint = mint; break; } else if (result === "no" && account.noMint === outcomeMint) { isDeterminedOutcome = true; settlementMint = mint; break; } } else { throw new Error(`Redemption is not open for ${outcomeMint}`); } } } */ if (!isDeterminedOutcome) { throw new Error( `Outcome token does not match market result. Market result: ${result}, Token: ${outcomeMint}` ); } if (!settlementMint) { throw new Error("No settlement mint with open redemption status found"); } const settlementAccount = market.accounts[settlementMint]; console.log("Token is redeemable!", { outcomeMint, settlementMint, redemptionStatus: settlementAccount.redemptionStatus, marketTitle: market.title, }); 2 Request Redemption Order Use the Trade API [`/order`](https://pond.dflow.net/swap-api-reference/order/order) endpoint to request a redemption order. The redemption is treated as a trade where you swap your outcome token for the settlement stablecoin. Request Redemption Order Copy Ask AI /// Base URL for the DFlow Trade API const API_BASE_URL = "https://quote-api.dflow.net"; /// Settlement mint constant (USDC) const USDC_MINT = "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"; /// Outcome token mint (YES or NO token you hold) const outcomeMint = "OUTCOME_TOKEN_MINT_ADDRESS_HERE"; /// Settlement mint (use the constant or the value found in Step 1) const settlementMint = USDC_MINT; /// Amount of outcome tokens to redeem /// Outcome tokens always have 0 decimals, so the amount is the raw token count /// Get this from the user's token balance (rawBalance from token account) const amount = 1; // Example: 1 outcome token (0 decimals) /// User's public key const userPublicKey = keypair.publicKey.toBase58(); const queryParams = new URLSearchParams(); queryParams.append("userPublicKey", userPublicKey); queryParams.append("inputMint", outcomeMint); queryParams.append("outputMint", settlementMint); queryParams.append("amount", amount.toString()); const orderResponse = await fetch( `${API_BASE_URL}/order?${queryParams.toString()}` ).then((x) => x.json()); console.log( `Redemption order received! ${orderResponse.inAmount} of ${orderResponse.inputMint} is redeemable for ${orderResponse.outAmount} of ${orderResponse.outputMint}` ); 3 Sign and Submit Redemption Transaction The redemption transaction follows the same workflow as regular trading. Deserialize the transaction, sign it with your keypair, and submit it to Solana. Then monitor the order status based on the execution mode. Sign and Submit Transaction Redemption uses the same Trade API workflow as regular trading. Follow the steps in the [Trade Tokens](https://pond.dflow.net/quickstart/trade-tokens) quickstart to: 1. **Sign the Transaction**: Deserialize the transaction from base64 and sign it with your keypair 2. **Submit to Solana**: Send the signed transaction to your Solana RPC connection 3. **Monitor Order Status**: * For **sync trades**: Use standard RPC confirmation * For **async trades**: Poll the [`/order-status`](https://pond.dflow.net/swap-api-reference/order/order-status) endpoint The transaction returned from the redemption order request should be handled exactly like a regular trade transaction. See the [Trade Tokens guide](https://pond.dflow.net/quickstart/trade-tokens) for complete code examples. [​](https://pond.dflow.net/quickstart/redeem-outcome-tokens#api-response-structure) API Response Structure ------------------------------------------------------------------------------------------------------------- ### [​](https://pond.dflow.net/quickstart/redeem-outcome-tokens#market-response) Market Response The [`/api/v1/market/by-mint/{mint_address}`](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint) endpoint returns market data including: * **Status**: Market status (`"determined"` or `"finalized"` when outcome is finalized) * **Result**: The determined outcome as a string (`"yes"` or `"no"`) * **Accounts**: Object mapping settlement mint addresses (e.g., `"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"` for USDC) to account information: * `yesMint`: YES outcome token mint address * `noMint`: NO outcome token mint address * `redemptionStatus`: Redemption status (`"Open"` when redemption is available, `"pending"` when not yet available) * `marketLedger`: Market ledger account address ### [​](https://pond.dflow.net/quickstart/redeem-outcome-tokens#order-response) Order Response The Trade API [`/order`](https://pond.dflow.net/swap-api-reference/order/order) endpoint returns: * **Transaction**: Base64-encoded transaction ready to sign and submit * **Execution Mode**: `"sync"` (atomic) or `"async"` (multi-transaction) * Quote information including expected output amount [​](https://pond.dflow.net/quickstart/redeem-outcome-tokens#next-steps) Next Steps ------------------------------------------------------------------------------------- [Trade Tokens\ ------------\ \ Learn how to sign, submit, and monitor trade transactions](https://pond.dflow.net/quickstart/trade-tokens) [User Positions\ --------------\ \ Discover how to retrieve a user’s existing prediction market positions](https://pond.dflow.net/quickstart/user-prediction-positions) [Event Settlement\ ----------------\ \ Learn more about the settlement and redemption process](https://pond.dflow.net/concepts/prediction/settle) [Market Endpoints\ ----------------\ \ Explore all available prediction market metadata endpoints](https://pond.dflow.net/prediction-market-metadata-api-reference/markets) [Retrieve User Prediction Market Positions](https://pond.dflow.net/quickstart/user-prediction-positions) ⌘I --- # Get Series - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Series API Endpoints Get Series [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get list of series cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/series 200 400 Copy Ask AI { "series": [\ {\ "additionalProhibitions": [\ ""\ ],\ "category": "",\ "contractTermsUrl": "",\ "contractUrl": "",\ "feeMultiplier": 123,\ "feeType": "",\ "frequency": "",\ "productMetadata": "",\ "settlementSources": [\ {\ "name": "",\ "url": ""\ }\ ],\ "tags": [\ ""\ ],\ "ticker": "",\ "title": ""\ }\ ] } GET / api / v1 / series Try it Get list of series cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/series 200 400 Copy Ask AI { "series": [\ {\ "additionalProhibitions": [\ ""\ ],\ "category": "",\ "contractTermsUrl": "",\ "contractUrl": "",\ "feeMultiplier": 123,\ "feeType": "",\ "frequency": "",\ "productMetadata": "",\ "settlementSources": [\ {\ "name": "",\ "url": ""\ }\ ],\ "tags": [\ ""\ ],\ "ticker": "",\ "title": ""\ }\ ] } #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#parameter-category) category string Filter series by category (e.g., Politics, Economics, Entertainment) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#parameter-tags) tags string Filter series by tags (comma-separated list) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#parameter-is-initialized) isInitialized boolean Filter series that are initialized (have a corresponding market ledger) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#parameter-status) status string Filter series by market status. Available options: initialized, active, inactive, closed, determined #### Response 200 application/json List of series [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series) series object\[\] required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-additional-prohibitions) series.additionalProhibitions string\[\] required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-category) series.category string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-contract-terms-url) series.contractTermsUrl string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-contract-url) series.contractUrl string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-fee-multiplier) series.feeMultiplier number required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-fee-type) series.feeType string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-frequency) series.frequency string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-product-metadata) series.productMetadata any required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-settlement-sources) series.settlementSources object\[\] required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-settlement-sources-items-name) series.settlementSources.name string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-settlement-sources-items-url) series.settlementSources.url string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-tags) series.tags string\[\] required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-ticker) series.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series#response-series-items-title) series.title string required [Get Live Data by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data-by-mint) [Get Series by Ticker](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker) ⌘I --- # Get Market by Mint - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Markets API Endpoints Get Market by Mint [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get a specific market by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/market/by-mint/{mint_address} 200 400 Copy Ask AI { "accounts": {}, "canCloseEarly": true, "closeTime": 1, "eventTicker": "", "expirationTime": 1, "marketType": "", "noSubTitle": "", "openInterest": 1, "openTime": 1, "result": "", "rulesPrimary": "", "status": "", "subtitle": "", "ticker": "", "title": "", "volume": 1, "yesSubTitle": "", "earlyCloseCondition": "", "noAsk": "", "noBid": "", "rulesSecondary": "", "yesAsk": "", "yesBid": "" } GET / api / v1 / market / by-mint / {mint\_address} Try it Get a specific market by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/market/by-mint/{mint_address} 200 400 Copy Ask AI { "accounts": {}, "canCloseEarly": true, "closeTime": 1, "eventTicker": "", "expirationTime": 1, "marketType": "", "noSubTitle": "", "openInterest": 1, "openTime": 1, "result": "", "rulesPrimary": "", "status": "", "subtitle": "", "ticker": "", "title": "", "volume": 1, "yesSubTitle": "", "earlyCloseCondition": "", "noAsk": "", "noBid": "", "rulesSecondary": "", "yesAsk": "", "yesBid": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#parameter-mint-address) mint\_address string required Mint address (ledger or outcome mint) #### Response 200 application/json Single market [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-accounts) accounts object required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-accounts-additional-properties) accounts.{key} object Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-accounts-additional-properties-is-initialized) accounts.{key}.isInitialized boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-accounts-additional-properties-market-ledger) accounts.{key}.marketLedger string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-accounts-additional-properties-no-mint) accounts.{key}.noMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-accounts-additional-properties-yes-mint) accounts.{key}.yesMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-accounts-additional-properties-redemption-status-one-of-0) accounts.{key}.redemptionStatus string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-can-close-early) canCloseEarly boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-close-time) closeTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-event-ticker) eventTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-expiration-time) expirationTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-market-type) marketType string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-no-sub-title) noSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-open-interest) openInterest integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-open-time) openTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-result) result string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-rules-primary) rulesPrimary string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-status) status string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-subtitle) subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-ticker) ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-title) title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-volume) volume integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-yes-sub-title) yesSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-early-close-condition-one-of-0) earlyCloseCondition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-no-ask-one-of-0) noAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-no-bid-one-of-0) noBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-rules-secondary-one-of-0) rulesSecondary string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-yes-ask-one-of-0) yesAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint#response-yes-bid-one-of-0) yesBid string | null [Get Market](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market) [Get Markets](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets) ⌘I --- # Get Markets Batch - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Markets API Endpoints Get Markets Batch [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get multiple markets by tickers and/or mints cURL Copy Ask AI curl --request POST \ --url https://prediction-markets-api.dflow.net/api/v1/markets/batch \ --header 'Content-Type: application/json' \ --data ' { "mints": [\ ""\ ], "tickers": [\ ""\ ] } ' 200 400 Copy Ask AI { "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ], "cursor": 1 } POST / api / v1 / markets / batch Try it Get multiple markets by tickers and/or mints cURL Copy Ask AI curl --request POST \ --url https://prediction-markets-api.dflow.net/api/v1/markets/batch \ --header 'Content-Type: application/json' \ --data ' { "mints": [\ ""\ ], "tickers": [\ ""\ ] } ' 200 400 Copy Ask AI { "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ], "cursor": 1 } #### Body application/json [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#body-mints-one-of-0) mints string\[\] | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#body-tickers-one-of-0) tickers string\[\] | null #### Response 200 application/json Multiple markets [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets) markets object\[\] required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-accounts) markets.accounts object required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-accounts-additional-properties) markets.accounts.{key} object Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-accounts-additional-properties-is-initialized) markets.accounts.{key}.isInitialized boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-accounts-additional-properties-market-ledger) markets.accounts.{key}.marketLedger string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-accounts-additional-properties-no-mint) markets.accounts.{key}.noMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-accounts-additional-properties-yes-mint) markets.accounts.{key}.yesMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-accounts-additional-properties-redemption-status-one-of-0) markets.accounts.{key}.redemptionStatus string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-can-close-early) markets.canCloseEarly boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-close-time) markets.closeTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-event-ticker) markets.eventTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-expiration-time) markets.expirationTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-market-type) markets.marketType string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-no-sub-title) markets.noSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-open-interest) markets.openInterest integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-open-time) markets.openTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-result) markets.result string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-rules-primary) markets.rulesPrimary string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-status) markets.status string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-subtitle) markets.subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-ticker) markets.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-title) markets.title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-volume) markets.volume integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-yes-sub-title) markets.yesSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-early-close-condition-one-of-0) markets.earlyCloseCondition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-no-ask-one-of-0) markets.noAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-no-bid-one-of-0) markets.noBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-rules-secondary-one-of-0) markets.rulesSecondary string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-yes-ask-one-of-0) markets.yesAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-markets-items-yes-bid-one-of-0) markets.yesBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch#response-cursor-one-of-0) cursor integer | null Required range: `x >= 0` [Get Markets](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets) [Get Outcome Mints](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/outcome-mints) ⌘I --- # Get Market - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Markets API Endpoints Get Market [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get a specific market by ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/market/{market_id} 200 400 Copy Ask AI { "accounts": {}, "canCloseEarly": true, "closeTime": 1, "eventTicker": "", "expirationTime": 1, "marketType": "", "noSubTitle": "", "openInterest": 1, "openTime": 1, "result": "", "rulesPrimary": "", "status": "", "subtitle": "", "ticker": "", "title": "", "volume": 1, "yesSubTitle": "", "earlyCloseCondition": "", "noAsk": "", "noBid": "", "rulesSecondary": "", "yesAsk": "", "yesBid": "" } GET / api / v1 / market / {market\_id} Try it Get a specific market by ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/market/{market_id} 200 400 Copy Ask AI { "accounts": {}, "canCloseEarly": true, "closeTime": 1, "eventTicker": "", "expirationTime": 1, "marketType": "", "noSubTitle": "", "openInterest": 1, "openTime": 1, "result": "", "rulesPrimary": "", "status": "", "subtitle": "", "ticker": "", "title": "", "volume": 1, "yesSubTitle": "", "earlyCloseCondition": "", "noAsk": "", "noBid": "", "rulesSecondary": "", "yesAsk": "", "yesBid": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#parameter-market-id) market\_id string required Market ticker ID #### Response 200 application/json Single market [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-accounts) accounts object required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-accounts-additional-properties) accounts.{key} object Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-accounts-additional-properties-is-initialized) accounts.{key}.isInitialized boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-accounts-additional-properties-market-ledger) accounts.{key}.marketLedger string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-accounts-additional-properties-no-mint) accounts.{key}.noMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-accounts-additional-properties-yes-mint) accounts.{key}.yesMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-accounts-additional-properties-redemption-status-one-of-0) accounts.{key}.redemptionStatus string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-can-close-early) canCloseEarly boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-close-time) closeTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-event-ticker) eventTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-expiration-time) expirationTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-market-type) marketType string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-no-sub-title) noSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-open-interest) openInterest integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-open-time) openTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-result) result string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-rules-primary) rulesPrimary string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-status) status string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-subtitle) subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-ticker) ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-title) title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-volume) volume integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-yes-sub-title) yesSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-early-close-condition-one-of-0) earlyCloseCondition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-no-ask-one-of-0) noAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-no-bid-one-of-0) noBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-rules-secondary-one-of-0) rulesSecondary string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-yes-ask-one-of-0) yesAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market#response-yes-bid-one-of-0) yesBid string | null [Get Event Candlesticks](https://pond.dflow.net/prediction-market-metadata-api-reference/events/event-candlesticks) [Get Market by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint) ⌘I --- # Get Trades - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trades API Endpoints Get Trades [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get list of trades cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/trades 200 400 Copy Ask AI { "trades": [\ {\ "count": 1,\ "createdTime": 1,\ "noPrice": 1,\ "noPriceDollars": "",\ "price": 1,\ "takerSide": "",\ "ticker": "",\ "tradeId": "",\ "yesPrice": 1,\ "yesPriceDollars": ""\ }\ ], "cursor": "" } GET / api / v1 / trades Try it Get list of trades cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/trades 200 400 Copy Ask AI { "trades": [\ {\ "count": 1,\ "createdTime": 1,\ "noPrice": 1,\ "noPriceDollars": "",\ "price": 1,\ "takerSide": "",\ "ticker": "",\ "tradeId": "",\ "yesPrice": 1,\ "yesPriceDollars": ""\ }\ ], "cursor": "" } #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#parameter-limit) limit integer Maximum number of trades to return (1-1000, default 100) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#parameter-cursor) cursor string Pagination cursor (trade ID) to start from [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#parameter-ticker) ticker string Filter by market ticker [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#parameter-min-ts) minTs integer Filter trades after this Unix timestamp Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#parameter-max-ts) maxTs integer Filter trades before this Unix timestamp Required range: `x >= 0` #### Response 200 application/json List of trades [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades) trades object\[\] required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-count) trades.count integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-created-time) trades.createdTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-no-price) trades.noPrice integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-no-price-dollars) trades.noPriceDollars string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-price) trades.price integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-taker-side) trades.takerSide string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-ticker) trades.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-trade-id) trades.tradeId string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-yes-price) trades.yesPrice integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-trades-items-yes-price-dollars) trades.yesPriceDollars string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades#response-cursor-one-of-0) cursor string | null [Get Market Candlesticks by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-candlesticks-by-mint) [Get Trades by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint) ⌘I --- # Get Filters by Sports - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/sports/filters-by-sports#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Sports API Endpoints Get Filters by Sports [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get filters organized by sports cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/filters_by_sports 200 400 Copy Ask AI { "filtersBySports": "", "sportOrdering": [\ ""\ ] } GET / api / v1 / filters\_by\_sports Try it Get filters organized by sports cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/filters_by_sports 200 400 Copy Ask AI { "filtersBySports": "", "sportOrdering": [\ ""\ ] } #### Response 200 application/json Filters by sports [​](https://pond.dflow.net/prediction-market-metadata-api-reference/sports/filters-by-sports#response-filters-by-sports) filtersBySports any required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/sports/filters-by-sports#response-sport-ordering) sportOrdering string\[\] required [Get Tags by Categories](https://pond.dflow.net/prediction-market-metadata-api-reference/tags/tags-by-categories) [Search Events](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search) ⌘I --- # Create Swap Instructions - DFlow [Skip to main content](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Imperative Swap API Endpoints Create Swap Instructions [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Returns an imperative swap transaction for the given quote cURL Copy Ask AI curl --request POST \ --url https://quote-api.dflow.net/swap-instructions \ --header 'Content-Type: application/json' \ --data ' { "quoteResponse": { "contextSlot": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "routePlan": [\ {\ "data": "",\ "inAmount": "",\ "inputMint": "",\ "inputMintDecimals": 1,\ "marketKey": "",\ "outAmount": "",\ "outputMint": "",\ "outputMintDecimals": 1,\ "venue": ""\ }\ ], "slippageBps": 1, "outTransferFee": "", "platformFee": "", "requestId": "", "simulatedComputeUnits": 1 }, "userPublicKey": "", "computeUnitPriceMicroLamports": 1, "createFeeAccount": { "referralAccount": "" }, "destinationTokenAccount": { "associatedTokenAccount": { "owner": "" } }, "dynamicComputeUnitLimit": true, "feeAccount": "", "includeJitoSandwichMitigationAccount": true, "positiveSlippage": { "limitPct": 1, "feeAccount": "" }, "prioritizationFeeLamports": { "autoMultiplier": 1 }, "sponsor": "", "wrapAndUnwrapSol": true } ' 200 400 500 Copy Ask AI { "addressLookupTableAddresses": [\ ""\ ], "blockhashWithMetadata": { "blockhash": "", "lastValidBlockHeight": 1 }, "cleanupInstructions": [\ {\ "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ],\ "data": "",\ "programId": ""\ }\ ], "computeBudgetInstructions": [\ {\ "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ],\ "data": "",\ "programId": ""\ }\ ], "computeUnitLimit": 1, "otherInstructions": [\ {\ "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ],\ "data": "",\ "programId": ""\ }\ ], "prioritizationFeeLamports": 1, "setupInstructions": [\ {\ "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ],\ "data": "",\ "programId": ""\ }\ ], "swapInstruction": { "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ], "data": "", "programId": "" }, "prioritizationType": "" } POST / swap-instructions Try it Returns an imperative swap transaction for the given quote cURL Copy Ask AI curl --request POST \ --url https://quote-api.dflow.net/swap-instructions \ --header 'Content-Type: application/json' \ --data ' { "quoteResponse": { "contextSlot": 1, "inAmount": "", "inputMint": "", "minOutAmount": "", "otherAmountThreshold": "", "outAmount": "", "outputMint": "", "priceImpactPct": "", "routePlan": [\ {\ "data": "",\ "inAmount": "",\ "inputMint": "",\ "inputMintDecimals": 1,\ "marketKey": "",\ "outAmount": "",\ "outputMint": "",\ "outputMintDecimals": 1,\ "venue": ""\ }\ ], "slippageBps": 1, "outTransferFee": "", "platformFee": "", "requestId": "", "simulatedComputeUnits": 1 }, "userPublicKey": "", "computeUnitPriceMicroLamports": 1, "createFeeAccount": { "referralAccount": "" }, "destinationTokenAccount": { "associatedTokenAccount": { "owner": "" } }, "dynamicComputeUnitLimit": true, "feeAccount": "", "includeJitoSandwichMitigationAccount": true, "positiveSlippage": { "limitPct": 1, "feeAccount": "" }, "prioritizationFeeLamports": { "autoMultiplier": 1 }, "sponsor": "", "wrapAndUnwrapSol": true } ' 200 400 500 Copy Ask AI { "addressLookupTableAddresses": [\ ""\ ], "blockhashWithMetadata": { "blockhash": "", "lastValidBlockHeight": 1 }, "cleanupInstructions": [\ {\ "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ],\ "data": "",\ "programId": ""\ }\ ], "computeBudgetInstructions": [\ {\ "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ],\ "data": "",\ "programId": ""\ }\ ], "computeUnitLimit": 1, "otherInstructions": [\ {\ "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ],\ "data": "",\ "programId": ""\ }\ ], "prioritizationFeeLamports": 1, "setupInstructions": [\ {\ "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ],\ "data": "",\ "programId": ""\ }\ ], "swapInstruction": { "accounts": [\ {\ "isSigner": true,\ "isWritable": true,\ "pubkey": ""\ }\ ], "data": "", "programId": "" }, "prioritizationType": "" } #### Body application/json [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response) quoteResponse object required The response from the quote endpoint Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-context-slot) quoteResponse.contextSlot integer required Slot at which the request was evaluated Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-in-amount) quoteResponse.inAmount string required Maximum input amount as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-input-mint) quoteResponse.inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-min-out-amount) quoteResponse.minOutAmount string required Same as `other_amount_threshold` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-other-amount-threshold) quoteResponse.otherAmountThreshold string required Minimum output amount after all fees as a scaled integer. If the swap transaction doesn't produce at least this amount of the output token, the transaction will fail. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-out-amount) quoteResponse.outAmount string required Expected output amount after all fees as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-output-mint) quoteResponse.outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-price-impact-pct) quoteResponse.priceImpactPct string required Price impact of the swap. This is an estimate of the percentage difference between the expected price for the swap and the price for the same swap with the smallest input amount possible. For example, "0.01" means 1% price impact. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan) quoteResponse.routePlan object\[\] required Route that the swap will take * Option 1 * Option 2 Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan-items-one-of-0-data) quoteResponse.routePlan.data string required Data for the leg [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan-items-one-of-0-in-amount) quoteResponse.routePlan.inAmount string required Maximum input amount for the leg as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan-items-one-of-0-input-mint) quoteResponse.routePlan.inputMint string required Base58-encoded input mint address [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan-items-one-of-0-input-mint-decimals) quoteResponse.routePlan.inputMintDecimals integer required Decimals for the input mint Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan-items-one-of-0-market-key) quoteResponse.routePlan.marketKey string required Key identifying the market on the venue [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan-items-one-of-0-out-amount) quoteResponse.routePlan.outAmount string required Expected output amount for the leg as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan-items-one-of-0-output-mint) quoteResponse.routePlan.outputMint string required Base58-encoded output mint address [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan-items-one-of-0-output-mint-decimals) quoteResponse.routePlan.outputMintDecimals integer required Decimals for the output mint Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-route-plan-items-one-of-0-venue) quoteResponse.routePlan.venue string required Venue for the leg [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-slippage-bps) quoteResponse.slippageBps integer required Max allowed slippage % in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-out-transfer-fee) quoteResponse.outTransferFee string Transfer fee amount that was applied to the quote, if any [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-platform-fee-one-of-1) quoteResponse.platformFee object Platform fee that was applied to the quote, if any Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-platform-fee-one-of-1-amount) quoteResponse.platformFee.amount string required Platform fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-platform-fee-one-of-1-fee-account) quoteResponse.platformFee.feeAccount string required Token account that will receive the platform fee [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-platform-fee-one-of-1-fee-bps) quoteResponse.platformFee.feeBps integer required Platform fee in basis points Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-platform-fee-one-of-1-segmenter-fee-amount) quoteResponse.platformFee.segmenterFeeAmount string required Segmenter fee as a scaled integer. For example, 1 SOL is 1000000000. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-platform-fee-one-of-1-segmenter-fee-pct) quoteResponse.platformFee.segmenterFeePct integer required Segmenter fee in percent Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-request-id) quoteResponse.requestId string Identifier for the request [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-quote-response-simulated-compute-units-one-of-0) quoteResponse.simulatedComputeUnits integer | null Compute units consumed by quote simulation Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-user-public-key) userPublicKey string required Base58-encoded address of the swapper's wallet [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-compute-unit-price-micro-lamports) computeUnitPriceMicroLamports integer Compute unit price in micro-lamports. Mutually exclusive with `prioritizationFeeLamports`. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-create-fee-account) createFeeAccount object If the fee account isn't a referral token account derived from the seeds `["referral_ata", referral_account, mint]` and the Referral program ID `REFER4ZgmyYx9c6He5XfaTMiGfdLwRnkV4RPp9t9iF3`, this should be unspecified. If specified, the transaction will create the `fee_account` if it doesn't already exist. The user pays for the creation of the fee account. Ignored if `fee_account` is unspecified. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-create-fee-account-referral-account) createFeeAccount.referralAccount string required Base58-encoded address of the referral account associated with the fee account [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-destination-token-account) destinationTokenAccount object The account that will receive the output token. If not specified, the user's associated token account for the output mint will be used. Allowed values are: * A base58-encoded address, which specifies the address of the destination token account or, if the output is native SOL, the destination wallet. If the output isn't native SOL, the specified account must exist before the swap executes, or else the swap will fail. * An object which specifies the owner of the destination token account. In this case, the owner's associated token account for the output mint will be used as the destination token account. Note that this cannot be used if the output is native SOL. The object contains the following: * `associatedTokenAccount` - object * `owner` - base58-encoded address of the owner of the destination token account * Option 1 * Option 2 Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-destination-token-account-one-of-0-associated-token-account) destinationTokenAccount.associatedTokenAccount object required Use the specified owner's associated token account for the output mint as the destination token account. If the destination token account is uninitialized at swap execution time, the swap will create it. This cannot be used if the output is native SOL. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-destination-token-account-one-of-0-associated-token-account-owner) destinationTokenAccount.associatedTokenAccount.owner string required Base58-encoded address of the owner of the destination token account [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-dynamic-compute-unit-limit) dynamicComputeUnitLimit boolean If true, the server will simulate the transaction to determine its compute unit limit. If unspecified or false, the transaction will use the default compute unit limit. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-fee-account) feeAccount string Base58-encoded address of the token account that will receive the platform fee if a platform fee applies to the swap. If specified, this account's mint must match the fee mint for the swap. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-include-jito-sandwich-mitigation-account) includeJitoSandwichMitigationAccount boolean If true, the transaction will include a Jito sandwich mitigation account. The account will be included in the `SetComputeUnitLimit` instruction. See [https://docs.jito.wtf/lowlatencytxnsend/#sandwich-mitigation](https://docs.jito.wtf/lowlatencytxnsend/#sandwich-mitigation) for more details. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-positive-slippage) positiveSlippage object Positive slippage fee parameters. If specified, then the swap will pay some or all positive slippage to the specified account. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-positive-slippage-limit-pct) positiveSlippage.limitPct integer required Limit on the positive slippage fee in percent. The positive slippage fee is limited to the lesser of (1) the excess actual out amount above the quoted amount and (2) this percentage of the actual out amount after platform fee. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-positive-slippage-fee-account) positiveSlippage.feeAccount string Base58-encoded address of the token account that will receive the positive slippage fee. This must be a token account for the output mint, regardless of the platform fee mode. If at swap execution time this account can't receive the positive slippage fee, then the positive slippage fee transfer is skipped. If the platform fee mode is `outputMint` and the platform fee account is specified, then this must be unspecified (in which case the platform fee account will be used) or match the platform fee account. Otherwise, this must be specified. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-prioritization-fee-lamports-one-of-0) prioritizationFeeLamports Option 1 · objectOption 2 · objectOption 3 · enumOption 4 · objectOption 5 · enum Prioritization fee in lamports. Mutually exclusive with `computeUnitPriceMicroLamports`. If both `computeUnitPriceMicroLamports` and `prioritizationFeeLamports` are unspecified, the default of `prioritizationFeeLamports="auto"` will be used. Allowed values are: * a u32 which specifies the lamports * the string value "auto", where the server determines the fee automatically, capped at 0.005 SOL * the string value "disabled", where the server leaves the prioritization fee unspecified * an object containing the following * `priorityLevelWithMaxLamports` - object * `priorityLevel` - string, either `medium`, `high`, or `veryHigh` * `maxLamports` - integer, a cap on the prioritization fee * an object containing the following * `autoMultiplier` - a u32 which specifies how much to multiply the automatically determined fee by. The total prioritization fee will be capped at 0.005 SOL. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-prioritization-fee-lamports-one-of-0-auto-multiplier) prioritizationFeeLamports.autoMultiplier integer required A multiplier applied to the automatically-determined fee. The total is capped at 0.005 SOL. Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-sponsor) sponsor string Base58-encoded address of the sponsor's wallet. If specified, the sponsor will pay the transaction fee and for token account creation, and both the user and the sponsor must sign the swap transaction. This can be used to implement gasless swaps. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#body-wrap-and-unwrap-sol) wrapAndUnwrapSol boolean If false, the transaction will use wrapped SOL #### Response 200 application/json Imperative swap transaction [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-address-lookup-table-addresses) addressLookupTableAddresses string\[\] required The lookup table addresses [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-blockhash-with-metadata) blockhashWithMetadata object required A blockhash that can be used to construct the transaction Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-blockhash-with-metadata-blockhash) blockhashWithMetadata.blockhash string required Base58-encoded blockhash [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-blockhash-with-metadata-last-valid-block-height) blockhashWithMetadata.lastValidBlockHeight integer required The last block height at which a transaction that uses the blockhash is valid Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-cleanup-instructions) cleanupInstructions object\[\] required Instructions that should be included after the swap instruction Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-cleanup-instructions-items-accounts) cleanupInstructions.accounts object\[\] required Metadata describing accounts that should be passed to the program. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-cleanup-instructions-items-accounts-items-is-signer) cleanupInstructions.accounts.isSigner boolean required Is the account a signer? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-cleanup-instructions-items-accounts-items-is-writable) cleanupInstructions.accounts.isWritable boolean required Is the account writable? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-cleanup-instructions-items-accounts-items-pubkey) cleanupInstructions.accounts.pubkey string required Pubkey of the account [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-cleanup-instructions-items-data) cleanupInstructions.data string required Opaque data passed to the program for its own interpretation. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-cleanup-instructions-items-program-id) cleanupInstructions.programId string required Pubkey of the program that executes this instruction. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-compute-budget-instructions) computeBudgetInstructions object\[\] required Instructions that determine the compute budget and prioritization fee for the transaction Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-compute-budget-instructions-items-accounts) computeBudgetInstructions.accounts object\[\] required Metadata describing accounts that should be passed to the program. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-compute-budget-instructions-items-accounts-items-is-signer) computeBudgetInstructions.accounts.isSigner boolean required Is the account a signer? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-compute-budget-instructions-items-accounts-items-is-writable) computeBudgetInstructions.accounts.isWritable boolean required Is the account writable? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-compute-budget-instructions-items-accounts-items-pubkey) computeBudgetInstructions.accounts.pubkey string required Pubkey of the account [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-compute-budget-instructions-items-data) computeBudgetInstructions.data string required Opaque data passed to the program for its own interpretation. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-compute-budget-instructions-items-program-id) computeBudgetInstructions.programId string required Pubkey of the program that executes this instruction. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-compute-unit-limit) computeUnitLimit integer required Compute unit limit assigned to the transaction Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-other-instructions) otherInstructions object\[\] required Other instructions that should be included in the transaction. The indices of these instructions in the transaction are not important. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-other-instructions-items-accounts) otherInstructions.accounts object\[\] required Metadata describing accounts that should be passed to the program. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-other-instructions-items-accounts-items-is-signer) otherInstructions.accounts.isSigner boolean required Is the account a signer? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-other-instructions-items-accounts-items-is-writable) otherInstructions.accounts.isWritable boolean required Is the account writable? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-other-instructions-items-accounts-items-pubkey) otherInstructions.accounts.pubkey string required Pubkey of the account [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-other-instructions-items-data) otherInstructions.data string required Opaque data passed to the program for its own interpretation. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-other-instructions-items-program-id) otherInstructions.programId string required Pubkey of the program that executes this instruction. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-prioritization-fee-lamports) prioritizationFeeLamports integer required Prioritization fee in lamports Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-setup-instructions) setupInstructions object\[\] required Instructions that should be included before the swap instruction Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-setup-instructions-items-accounts) setupInstructions.accounts object\[\] required Metadata describing accounts that should be passed to the program. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-setup-instructions-items-accounts-items-is-signer) setupInstructions.accounts.isSigner boolean required Is the account a signer? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-setup-instructions-items-accounts-items-is-writable) setupInstructions.accounts.isWritable boolean required Is the account writable? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-setup-instructions-items-accounts-items-pubkey) setupInstructions.accounts.pubkey string required Pubkey of the account [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-setup-instructions-items-data) setupInstructions.data string required Opaque data passed to the program for its own interpretation. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-setup-instructions-items-program-id) setupInstructions.programId string required Pubkey of the program that executes this instruction. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-swap-instruction) swapInstruction object required The instruction that performs the swap Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-swap-instruction-accounts) swapInstruction.accounts object\[\] required Metadata describing accounts that should be passed to the program. Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-swap-instruction-accounts-items-is-signer) swapInstruction.accounts.isSigner boolean required Is the account a signer? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-swap-instruction-accounts-items-is-writable) swapInstruction.accounts.isWritable boolean required Is the account writable? [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-swap-instruction-accounts-items-pubkey) swapInstruction.accounts.pubkey string required Pubkey of the account [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-swap-instruction-data) swapInstruction.data string required Opaque data passed to the program for its own interpretation. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-swap-instruction-program-id) swapInstruction.programId string required Pubkey of the program that executes this instruction. [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-prioritization-type-one-of-1) prioritizationType object Prioritization fee type for the transaction Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-prioritization-type-one-of-1-compute-budget) prioritizationType.computeBudget object required Prioritization fee specified via the compute budget program Show child attributes [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-prioritization-type-one-of-1-compute-budget-micro-lamports) prioritizationType.computeBudget.microLamports integer required Compute unit price assigned to the transaction Required range: `x >= 0` [​](https://pond.dflow.net/swap-api-reference/imperative/swap-instructions#response-prioritization-type-one-of-1-compute-budget-estimated-micro-lamports-one-of-0) prioritizationType.computeBudget.estimatedMicroLamports integer | null Compute unit price estimated by the server for the transaction Required range: `x >= 0` [Create Swap](https://pond.dflow.net/swap-api-reference/imperative/swap) [Get Intent Quote](https://pond.dflow.net/swap-api-reference/declarative/quote) ⌘I --- # Get Trades by Mint - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Trades API Endpoints Get Trades by Mint [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get list of trades for a market by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/trades/by-mint/{mint_address} 200 400 404 Copy Ask AI { "trades": [\ {\ "count": 1,\ "createdTime": 1,\ "noPrice": 1,\ "noPriceDollars": "",\ "price": 1,\ "takerSide": "",\ "ticker": "",\ "tradeId": "",\ "yesPrice": 1,\ "yesPriceDollars": ""\ }\ ], "cursor": "" } GET / api / v1 / trades / by-mint / {mint\_address} Try it Get list of trades for a market by mint address cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/trades/by-mint/{mint_address} 200 400 404 Copy Ask AI { "trades": [\ {\ "count": 1,\ "createdTime": 1,\ "noPrice": 1,\ "noPriceDollars": "",\ "price": 1,\ "takerSide": "",\ "ticker": "",\ "tradeId": "",\ "yesPrice": 1,\ "yesPriceDollars": ""\ }\ ], "cursor": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#parameter-mint-address) mint\_address string required Mint address (ledger or outcome mint) #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#parameter-limit) limit integer Maximum number of trades to return (1-1000, default 100) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#parameter-cursor) cursor string Pagination cursor (trade ID) to start from [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#parameter-min-ts) minTs integer Filter trades after this Unix timestamp Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#parameter-max-ts) maxTs integer Filter trades before this Unix timestamp Required range: `x >= 0` #### Response 200 application/json List of trades [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades) trades object\[\] required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-count) trades.count integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-created-time) trades.createdTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-no-price) trades.noPrice integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-no-price-dollars) trades.noPriceDollars string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-price) trades.price integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-taker-side) trades.takerSide string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-ticker) trades.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-trade-id) trades.tradeId string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-yes-price) trades.yesPrice integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-trades-items-yes-price-dollars) trades.yesPriceDollars string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades-by-mint#response-cursor-one-of-0) cursor string | null [Get Trades](https://pond.dflow.net/prediction-market-metadata-api-reference/trades/trades) [Get Live Data](https://pond.dflow.net/prediction-market-metadata-api-reference/live-data/live-data) ⌘I --- # Get Series by Ticker - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Series API Endpoints Get Series by Ticker [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get a specific series by ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/series/{series_ticker} 200 400 Copy Ask AI { "additionalProhibitions": [\ ""\ ], "category": "", "contractTermsUrl": "", "contractUrl": "", "feeMultiplier": 123, "feeType": "", "frequency": "", "productMetadata": "", "settlementSources": [\ {\ "name": "",\ "url": ""\ }\ ], "tags": [\ ""\ ], "ticker": "", "title": "" } GET / api / v1 / series / {series\_ticker} Try it Get a specific series by ticker cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/series/{series_ticker} 200 400 Copy Ask AI { "additionalProhibitions": [\ ""\ ], "category": "", "contractTermsUrl": "", "contractUrl": "", "feeMultiplier": 123, "feeType": "", "frequency": "", "productMetadata": "", "settlementSources": [\ {\ "name": "",\ "url": ""\ }\ ], "tags": [\ ""\ ], "ticker": "", "title": "" } #### Path Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#parameter-series-ticker) series\_ticker string required Series ticker #### Response 200 application/json Single series [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-additional-prohibitions) additionalProhibitions string\[\] required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-category) category string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-contract-terms-url) contractTermsUrl string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-contract-url) contractUrl string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-fee-multiplier) feeMultiplier number required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-fee-type) feeType string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-frequency) frequency string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-product-metadata) productMetadata any required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-settlement-sources) settlementSources object\[\] required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-settlement-sources-items-name) settlementSources.name string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-settlement-sources-items-url) settlementSources.url string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-tags) tags string\[\] required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-ticker) ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series-by-ticker#response-title) title string required [Get Series](https://pond.dflow.net/prediction-market-metadata-api-reference/series/series) [Get Tags by Categories](https://pond.dflow.net/prediction-market-metadata-api-reference/tags/tags-by-categories) ⌘I --- # Get Markets - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Markets API Endpoints Get Markets [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get list of markets cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/markets 200 400 Copy Ask AI { "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ], "cursor": 1 } GET / api / v1 / markets Try it Get list of markets cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/markets 200 400 Copy Ask AI { "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ], "cursor": 1 } #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#parameter-limit) limit integer Maximum number of markets to return Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#parameter-cursor) cursor integer Pagination offset (number of markets to skip) Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#parameter-is-initialized) isInitialized boolean Filter markets that are initialized (have a corresponding market ledger) [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#parameter-status) status string Filter markets by status. Available options: initialized, active, inactive, closed, determined [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#parameter-sort) sort enum Sort field. Available options: volume, volume24h, liquidity, openInterest Available options: `volume`, `volume24h`, `liquidity`, `openInterest`, `startDate` #### Response 200 application/json List of markets [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets) markets object\[\] required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-accounts) markets.accounts object required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-accounts-additional-properties) markets.accounts.{key} object Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-accounts-additional-properties-is-initialized) markets.accounts.{key}.isInitialized boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-accounts-additional-properties-market-ledger) markets.accounts.{key}.marketLedger string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-accounts-additional-properties-no-mint) markets.accounts.{key}.noMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-accounts-additional-properties-yes-mint) markets.accounts.{key}.yesMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-accounts-additional-properties-redemption-status-one-of-0) markets.accounts.{key}.redemptionStatus string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-can-close-early) markets.canCloseEarly boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-close-time) markets.closeTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-event-ticker) markets.eventTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-expiration-time) markets.expirationTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-market-type) markets.marketType string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-no-sub-title) markets.noSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-open-interest) markets.openInterest integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-open-time) markets.openTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-result) markets.result string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-rules-primary) markets.rulesPrimary string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-status) markets.status string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-subtitle) markets.subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-ticker) markets.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-title) markets.title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-volume) markets.volume integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-yes-sub-title) markets.yesSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-early-close-condition-one-of-0) markets.earlyCloseCondition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-no-ask-one-of-0) markets.noAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-no-bid-one-of-0) markets.noBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-rules-secondary-one-of-0) markets.rulesSecondary string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-yes-ask-one-of-0) markets.yesAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-markets-items-yes-bid-one-of-0) markets.yesBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets#response-cursor-one-of-0) cursor integer | null Required range: `x >= 0` [Get Market by Mint](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/market-by-mint) [Get Markets Batch](https://pond.dflow.net/prediction-market-metadata-api-reference/markets/markets-batch) ⌘I --- # Search Events - DFlow [Skip to main content](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Search API Endpoints Search Events [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) Get events with nested markets by title or ticker (search) cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/search 200 400 Copy Ask AI { "cursor": 1, "events": [\ {\ "seriesTicker": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "competition": "",\ "competitionScope": "",\ "imageUrl": "",\ "liquidity": 1,\ "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ],\ "openInterest": 1,\ "settlementSources": "",\ "strikeDate": 1,\ "strikePeriod": "",\ "volume": 1,\ "volume24h": 1\ }\ ] } GET / api / v1 / search Try it Get events with nested markets by title or ticker (search) cURL Copy Ask AI curl --request GET \ --url https://prediction-markets-api.dflow.net/api/v1/search 200 400 Copy Ask AI { "cursor": 1, "events": [\ {\ "seriesTicker": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "competition": "",\ "competitionScope": "",\ "imageUrl": "",\ "liquidity": 1,\ "markets": [\ {\ "accounts": {},\ "canCloseEarly": true,\ "closeTime": 1,\ "eventTicker": "",\ "expirationTime": 1,\ "marketType": "",\ "noSubTitle": "",\ "openInterest": 1,\ "openTime": 1,\ "result": "",\ "rulesPrimary": "",\ "status": "",\ "subtitle": "",\ "ticker": "",\ "title": "",\ "volume": 1,\ "yesSubTitle": "",\ "earlyCloseCondition": "",\ "noAsk": "",\ "noBid": "",\ "rulesSecondary": "",\ "yesAsk": "",\ "yesBid": ""\ }\ ],\ "openInterest": 1,\ "settlementSources": "",\ "strikeDate": 1,\ "strikePeriod": "",\ "volume": 1,\ "volume24h": 1\ }\ ] } #### Query Parameters [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#parameter-q) q string required The query string to search for [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#parameter-sort) sort enum Field to sort by Available options: `volume`, `volume24h`, `liquidity`, `openInterest`, `startDate` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#parameter-order) order enum How to order the results Available options: `desc`, `asc` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#parameter-limit) limit integer How many records to limit the results to Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#parameter-cursor) cursor integer Cursor for pagination Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#parameter-with-nested-markets) withNestedMarkets boolean Include nested markets in response [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#parameter-with-market-accounts) withMarketAccounts boolean Include market account information (settlement mints and redemption status) #### Response 200 application/json Search results [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-cursor) cursor integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events) events object\[\] required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-series-ticker) events.seriesTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-subtitle) events.subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-ticker) events.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-title) events.title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-competition-one-of-0) events.competition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-competition-scope-one-of-0) events.competitionScope string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-image-url-one-of-0) events.imageUrl string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-liquidity-one-of-0) events.liquidity integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0) events.markets object\[\] | null Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-accounts) events.markets.accounts object required Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-accounts-additional-properties) events.markets.accounts.{key} object Show child attributes [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-accounts-additional-properties-is-initialized) events.markets.accounts.{key}.isInitialized boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-accounts-additional-properties-market-ledger) events.markets.accounts.{key}.marketLedger string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-accounts-additional-properties-no-mint) events.markets.accounts.{key}.noMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-accounts-additional-properties-yes-mint) events.markets.accounts.{key}.yesMint string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-accounts-additional-properties-redemption-status-one-of-0) events.markets.accounts.{key}.redemptionStatus string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-can-close-early) events.markets.canCloseEarly boolean required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-close-time) events.markets.closeTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-event-ticker) events.markets.eventTicker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-expiration-time) events.markets.expirationTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-market-type) events.markets.marketType string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-no-sub-title) events.markets.noSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-open-interest) events.markets.openInterest integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-open-time) events.markets.openTime integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-result) events.markets.result string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-rules-primary) events.markets.rulesPrimary string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-status) events.markets.status string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-subtitle) events.markets.subtitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-ticker) events.markets.ticker string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-title) events.markets.title string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-volume) events.markets.volume integer required Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-yes-sub-title) events.markets.yesSubTitle string required [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-early-close-condition-one-of-0) events.markets.earlyCloseCondition string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-no-ask-one-of-0) events.markets.noAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-no-bid-one-of-0) events.markets.noBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-rules-secondary-one-of-0) events.markets.rulesSecondary string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-yes-ask-one-of-0) events.markets.yesAsk string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-markets-one-of-0-items-yes-bid-one-of-0) events.markets.yesBid string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-open-interest-one-of-0) events.openInterest integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-settlement-sources) events.settlementSources any [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-strike-date-one-of-0) events.strikeDate integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-strike-period-one-of-0) events.strikePeriod string | null [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-volume-one-of-0) events.volume integer | null Required range: `x >= 0` [​](https://pond.dflow.net/prediction-market-metadata-api-reference/search/search#response-events-items-volume24h-one-of-0) events.volume24h integer | null Required range: `x >= 0` [Get Filters by Sports](https://pond.dflow.net/prediction-market-metadata-api-reference/sports/filters-by-sports) ⌘I --- # Discover Prediction Market Tokens - DFlow [Skip to main content](https://pond.dflow.net/quickstart/discover-prediction-tokens#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Prediction Markets Discover Prediction Market Tokens [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) On this page * [Overview](https://pond.dflow.net/quickstart/discover-prediction-tokens#overview) * [API Response Structure](https://pond.dflow.net/quickstart/discover-prediction-tokens#api-response-structure) * [Events Response](https://pond.dflow.net/quickstart/discover-prediction-tokens#events-response) * [Tags by Categories Response](https://pond.dflow.net/quickstart/discover-prediction-tokens#tags-by-categories-response) * [Series Response](https://pond.dflow.net/quickstart/discover-prediction-tokens#series-response) * [Next Steps](https://pond.dflow.net/quickstart/discover-prediction-tokens#next-steps) This guide shows you how to explore on-chain prediction markets utilizing the DFlow Prediction Market Metadata API, and accessing their token addresses for trading. This quickstart demonstrates how to use the Prediction Market Metadata API to build discovery UIs. For trading tokens, see the [Trade Tokens guide](https://pond.dflow.net/quickstart/trade-tokens) . [​](https://pond.dflow.net/quickstart/discover-prediction-tokens#overview) Overview -------------------------------------------------------------------------------------- The DFlow Prediction Market Metadata API includes multiple ways to discover prediction market outcome tokens: 1. Fetch all events 2. Fetch events by market status 3. Get events by relevant categories and tags 1 Fetch Events with Nested Markets Use the [`/api/v1/events`](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events) endpoint with `withNestedMarkets=true` to retrieve events along with their associated markets. Each market contains token addresses in the `accounts` field that you can use for trading. Get All Events with Markets Copy Ask AI /// Base URL for the DFlow Prediction Market Metadata API const METADATA_API_BASE_URL = "https://prediction-markets-api.dflow.net"; /// Fetch events with nested markets included const response = await fetch( `${METADATA_API_BASE_URL}/api/v1/events?withNestedMarkets=true&limit=200`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); if (!response.ok) { throw new Error("Failed to fetch events"); } const data = await response.json(); const events = data.events; /// Log details of each event and nested markets events.forEach((event: any) => { console.log("Event:", { ticker: event.ticker, title: event.title, subtitle: event.subtitle, seriesTicker: event.seriesTicker, }); if (event.markets && event.markets.length > 0) { event.markets.forEach((market: any) => { const accounts = market.accounts; const accountValues = Object.values(accounts); console.log(" Market:", { ticker: market.ticker, title: market.title, status: market.status, accounts: accountValues.map((account: any) => ({ yesMint: account.yesMint, noMint: account.noMint, })), }); }); } }); 2 Fetch Events by Market Status Use the status filter on [`/api/v1/events`](https://pond.dflow.net/prediction-market-metadata-api-reference/events/events) endpoint to retrieve and markets that are actively available for trading or markets that are coming soon. Get Events with Open Markets Copy Ask AI /// Base URL for the DFlow Prediction Market Metadata API const METADATA_API_BASE_URL = "https://prediction-markets-api.dflow.net"; /// Fetch events with nested markets included const response = await fetch( `${METADATA_API_BASE_URL}/api/v1/events?withNestedMarkets=true&status=active&limit=200`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); if (!response.ok) { throw new Error("Failed to fetch events"); } const data = await response.json(); const events = data.events; /// Log details of each event and nested markets events.forEach((event: any) => { console.log("Event:", { ticker: event.ticker, title: event.title, subtitle: event.subtitle, seriesTicker: event.seriesTicker, }); if (event.markets && event.markets.length > 0) { event.markets.forEach((market: any) => { const accounts = market.accounts; const accountValues = Object.values(accounts); console.log(" Market:", { ticker: market.ticker, title: market.title, status: market.status, accounts: accountValues.map((account: any) => ({ yesMint: account.yesMint, noMint: account.noMint, })), }); }); } }); Get Events with Initialized Markets Copy Ask AI /// Base URL for the DFlow Prediction Market Metadata API const METADATA_API_BASE_URL = "https://prediction-markets-api.dflow.net"; /// Fetch events with nested markets included const response = await fetch( `${METADATA_API_BASE_URL}/api/v1/events?withNestedMarkets=true&status=initialized&limit=200`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); if (!response.ok) { throw new Error("Failed to fetch events"); } const data = await response.json(); const events = data.events; /// Log details of each event and nested markets events.forEach((event: any) => { console.log("Event:", { ticker: event.ticker, title: event.title, subtitle: event.subtitle, seriesTicker: event.seriesTicker, }); if (event.markets && event.markets.length > 0) { event.markets.forEach((market: any) => { const accounts = market.accounts; const accountValues = Object.values(accounts); console.log(" Market:", { ticker: market.ticker, title: market.title, status: market.status, accounts: accountValues.map((account: any) => ({ yesMint: account.yesMint, noMint: account.noMint, })), }); }); } }); 3 Get Events by Categories and Tags Use categories tags to filter series and find relevant events and markets. This approach involves: (1) retrieving available tags organized by category, (2) filtering series by tags or categories, and (3) fetching events filtered by series tickers (comma-separated) to discover markets. Get Categories and Tags Copy Ask AI /// Base URL for the DFlow Prediction Market Metadata API const METADATA_API_BASE_URL = "https://prediction-markets-api.dflow.net"; /// Fetch tags organized by categories const response = await fetch( `${METADATA_API_BASE_URL}/api/v1/tags_by_categories`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); if (!response.ok) { throw new Error("Failed to fetch tags by categories"); } const data = await response.json(); const tagsByCategories = data.tagsByCategories; /// Display available categories and their tags Object.entries(tagsByCategories).forEach(([category, tags]: [string, any]) => { console.log(` Tags for ${category}: ${tags.join(", ")}`); }); Filter Series by Category and Tags Copy Ask AI /// Select a category or tags from the tags_by_categories response const selectedCategory = "Sports"; const selectedTag = "Football"; /// Option 1: Filter series by category const responseByCategory = await fetch( `${METADATA_API_BASE_URL}/api/v1/series?category=${selectedCategory}`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); const dataByCategory = await responseByCategory.json(); /// Log series with ticker and title console.log( `Found ${dataByCategory.series.length} series with "${selectedCategory}"` ); dataByCategory.series.forEach((s: any) => { console.log(` ${s.ticker}: ${s.title}`); }); /// Extract series tickers for filtering events const categorizedSeriesTickers = dataByCategory.series.map((s) => s.ticker); /// Option 2: Filter series by tag const responseByTag = await fetch( `${METADATA_API_BASE_URL}/api/v1/series?tags=${selectedTag}`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); if (!responseByTag.ok) { throw new Error("Failed to fetch series"); } const dataByTag = await responseByTag.json(); /// Log series with ticker and title console.log(`Found ${dataByTag.series.length} series with "${selectedTag}"`); dataByTag.series.forEach((s: any) => { console.log(` ${s.ticker}: ${s.title}`); }); /// Extract series tickers for filtering events const taggedSeriesTickers = dataByTag.series.map((s) => s.ticker); /// Option 3: Filter by both category and tags (comma-separated) const selectedTags = "Football,Soccer"; const responseWithBoth = await fetch( `${METADATA_API_BASE_URL}/api/v1/series?category=${selectedCategory}&tags=${selectedTags}`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); const dataWithBoth = await responseWithBoth.json(); const filteredSeries = dataWithBoth.series; /// Log series with ticker and title console.log( `Found ${filteredSeries.length} series with category "${selectedCategory}" and tags "${selectedTags}"` ); filteredSeries.forEach((s: any) => { console.log(` ${s.ticker}: ${s.title}`); }); /// Extract series tickers for filtering events const seriesTickers = filteredSeries.map((s) => s.ticker); Get Events Filtered by Series Tickers Copy Ask AI /// Option 1: Filter by a single series ticker const selectedSeriesTicker = seriesTickers[0]; // Example: "KXNFLGAME" /// Fetch events filtered by a single series ticker with nested markets const response = await fetch( `${METADATA_API_BASE_URL}/api/v1/events?seriesTickers=${selectedSeriesTicker}&withNestedMarkets=true&limit=100`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); /// Option 2: Filter by multiple series tickers (comma-separated) const multipleSeriesTickers = seriesTickers.slice(0, 3).join(","); // Example: "KXNFLGAME,KXNBAGAME,KXNHLGAME" /// Fetch events filtered by multiple series tickers with nested markets const responseMultiple = await fetch( `${METADATA_API_BASE_URL}/api/v1/events?seriesTickers=${multipleSeriesTickers}&withNestedMarkets=true&limit=100`, { method: "GET", headers: { "Content-Type": "application/json", }, } ); if (!response.ok) { throw new Error("Failed to fetch events by series"); } const data = await response.json(); const filteredEvents = data.events; /// Use responseMultiple for multiple series tickers /// const dataMultiple = await responseMultiple.json(); /// const filteredEvents = dataMultiple.events; /// Log details of each event and markets filteredEvents.forEach((event) => { console.log("Event:", { ticker: event.ticker, title: event.title, subtitle: event.subtitle, seriesTicker: event.seriesTicker, }); if (event.markets && event.markets.length > 0) { event.markets.forEach((market) => { const accounts = market.accounts; const accountValues = Object.values(accounts); console.log(" Market:", { ticker: market.ticker, title: market.title, status: market.status, accounts: accountValues.map((account) => ({ yesMint: account.yesMint, noMint: account.noMint, })), }); }); } }); [​](https://pond.dflow.net/quickstart/discover-prediction-tokens#api-response-structure) API Response Structure ------------------------------------------------------------------------------------------------------------------ ### [​](https://pond.dflow.net/quickstart/discover-prediction-tokens#events-response) Events Response The events endpoint returns: * **Event Information**: Ticker, title, subtitle, series ticker * **Nested Markets** (when `withNestedMarkets=true`): Array of markets with: * Market ticker, title, status * **Accounts**: Object containing `yesMint` and `noMint` token addresses * Volume, open interest, timing information ### [​](https://pond.dflow.net/quickstart/discover-prediction-tokens#tags-by-categories-response) Tags by Categories Response Returns a mapping of categories to arrays of tags: Copy Ask AI { "tagsByCategories": { "Sports": ["Football", "Soccer", "Basketball", "Hockey", "Baseball", "NFL"], "Crypto": ["Pre-Market", "SOL", "BTC", "ETH", "SHIBA", "Dogecoin"] } } ### [​](https://pond.dflow.net/quickstart/discover-prediction-tokens#series-response) Series Response Returns series templates with: * **Ticker**: Used to filter events * **Title**: Human-readable series name * **Category**: Series category * **Tags**: Array of associated tags * **Frequency**: How often events in this series occur [​](https://pond.dflow.net/quickstart/discover-prediction-tokens#next-steps) Next Steps ------------------------------------------------------------------------------------------ [Trade Tokens\ ------------\ \ Learn how to trade the prediction market tokens you’ve discovered](https://pond.dflow.net/quickstart/trade-tokens) [User Positions\ --------------\ \ Discover how to retrieve a user’s existing prediction market positions](https://pond.dflow.net/quickstart/user-prediction-positions) [Events API\ ----------\ \ Explore all available event endpoints and filtering options](https://pond.dflow.net/prediction-market-metadata-api-reference/events) [Series API\ ----------\ \ Learn more about series templates and filtering](https://pond.dflow.net/prediction-market-metadata-api-reference/series) [Implement Platform Fees](https://pond.dflow.net/quickstart/platform-fees) [Retrieve User Prediction Market Positions](https://pond.dflow.net/quickstart/user-prediction-positions) ⌘I --- # Page Not Found [Skip to main content](https://pond.dflow.net/swap-api-reference/declarative/submit-intent#content-area) [DFlow home page![light logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/light.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=280495b3ba8c63f97382d82e351e41bf)![dark logo](https://mintcdn.com/dflow/hpWn1ngSrZSZClLi/logo/dark.svg?fit=max&auto=format&n=hpWn1ngSrZSZClLi&q=85&s=7a54805c01de368c7826037e1d3e7bbb)](https://pond.dflow.net/) Search... ⌘K Search... Navigation Page Not Found [Documentation](https://pond.dflow.net/introduction) [Quickstart](https://pond.dflow.net/quickstart/cookbook) [Concepts](https://pond.dflow.net/concepts/overview) [Swap API Reference](https://pond.dflow.net/swap-api-reference/introduction) [Prediction Market Metadata Reference](https://pond.dflow.net/prediction-market-metadata-api-reference/introduction) 404 Page Not Found ============== We couldn't find the page. Maybe you were looking for one of these pages below? [Declarative Swaps](https://pond.dflow.net/concepts/declarative-swaps#declarative-swaps) [Swap Tokens with Declarative Swaps](https://pond.dflow.net/quickstart/swap-tokens-declarative#) [Imperative Swaps](https://pond.dflow.net/concepts/imperative-swaps#imperative-swaps) ⌘I ---