> ## Documentation Index
> Fetch the complete documentation index at: https://docs.blockradar.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Market Benchmark

> Returns the best competing rate for one or more asset pairs across other Liquidity Providers in the same business segment, excluding your own rates.

Use this endpoint to benchmark your pricing against the rest of the market before creating or updating a rate. Pass a single `fromAsset` / `toAsset` pair, or batch up to 20 pairs via the comma-separated `pairs` query parameter (e.g. `USDT:cNGN,cNGN:USDT`).

Results are cached for 60 seconds per pair.

---

## Endpoint

`GET https://api.blockradar.co/v1/rates/market-benchmark`

---

## Query Parameters

| Key | Required | Type | Description |
| --- | --- | --- | --- |
| fromAsset | conditional | string | Source asset symbol. Required when `pairs` is not provided. |
| toAsset | conditional | string | Destination asset symbol. Required when `pairs` is not provided. |
| amount | false | string | Amount to benchmark — only rates whose `minAmount`/`maxAmount` band covers this amount are considered. |
| pairs | false | string | Comma-separated list of `from:to` pairs for batch lookup (max 20). When provided, the response is an array. |



## OpenAPI

````yaml get /v1/rates/market-benchmark
openapi: 3.0.3
info:
  title: Blockradar Documentation
  description: >-
    The OpenAPI specification of the Blockradar API that enables fintechs and
    developers to seamlessly integrate stablecoin deposits and payments into
    their products.
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.blockradar.co
security:
  - apiKey: []
tags:
  - name: Rewards
    description: >-
      Non-custodial yield (Earn) on stablecoins via regulated (Fija) and DeFi
      (Aave) strategies. Deposit, withdraw, preview fees, and read positions and
      earnings at the business, wallet, and sub-address level. Amounts are
      returned net of the platform fee, which applies only to interest earned.
  - name: Wallet
    description: >-
      Wallet Management System


      Comprehensive wallet management API for multi-blockchain operations. This
      system handles wallet creation, configuration, balance monitoring, and
      integration with various blockchain networks.


      Core Functionality:


      - Multi-blockchain wallet creation and management

      - Balance monitoring and asset tracking

      - Auto-settlement rule configuration

      - Gateway wallet integration

      - Address generation and management

      - Transaction monitoring and processing
  - name: Addresses
    description: >-
      Address Management System


      Comprehensive blockchain address management API for operations. This
      system handles address creation, validation, monitoring, and management
      across multiple blockchain networks.


      Core Functionality:


      - Multi-blockchain address generation

      - Address validation and verification

      - Balance monitoring and tracking

      - Transaction history management

      - Address labeling and organization

      - Integration with wallet systems

      - Real-time address monitoring
  - name: Asset
  - name: Transactions
  - name: Withdraw
    description: >-
      The Withdraw feature allows you to programmatically withdraw stablecoins
      from your master wallet with ease
  - name: Withdraw Fiat
  - name: Signing
    description: >-
      Typed data signing service for secure transaction authorization. Supports
      all EIP-712 standards including EIP-3009 (TransferWithAuthorization) and
      EIP-2612 (Permit).
  - name: Swap
    description: >-
      The Swap feature enables users to exchange one stabelcoin asset for
      another across different blockchains. This feature provides a seamless way
      to convert between different stablecoins while maintaining security and
      compliance standards.
  - name: Liquidity Pool
  - name: Virtual Accounts
    description: >-
      Virtual Accounts API provides endpoints for managing virtual bank accounts
      linked to master wallets or child addresses. This API enables businesses
      to:


      - Create virtual accounts for customers to receive payments

      - Retrieve virtual account details

      - Activate/deactivate virtual accounts


      **Virtual Account Types:**


      Virtual accounts support different types with varying behaviors:


      1. **AUTO_FUNDING** (Default):

          - Automatically mints stablecoin when fiat payments are received

          - Transfers the stablecoin to the linked wallet/address immediately

          - Best for real-time payment processing


      **How It Works - Auto-Funding Flow (AUTO_FUNDING type only):**


      When a customer sends fiat currency to a virtual account with type
      AUTO_FUNDING:


      1. **Payment Receipt**: The payment is received in the virtual account

      2. **Automatic Minting**: The system automatically mints the stablecoin
      equivalent

      3. **Blockchain Transfer**: The minted stablecoin is transferred to the
      virtual account's linked wallet or address


      **Note**: The auto-funding flow only applies to virtual accounts with type
      `AUTO_FUNDING`.

      Other types have different processing behaviors.


      ## Prerequisites


      Before creating virtual accounts, ensure:


      - **Compliance requirements must be completed** (see [Compliance
      Requirements](http://localhost:3000/essentials/virtual-accounts#compliance-requirements)
      section below)

      - **Virtual accounts feature must be enabled** for your business (reach
      out to [support@blockradar.co](https://mailto:support@blockradar.co) or
      use live chat on the dashboard to enable the feature after compliance
      approval)

      - **Only available on MAINNET environment** (not available on testnet)

      - **Master Wallet must support stablecoin asset** - Your account plan must
      include stablecoin access (upgrade from Dashboard → Settings →
      Subscription if needed)


      **Supported Currency:**


      - Fiat: NGN (Nigerian Naira)

      - Stablecoin: cNGN - minted automatically on blockchain (for AUTO_FUNDING
      type)
  - name: Auto Settlements
    description: >-
      Creates a new auto settlement rule for a wallet. Auto settlement
      automatically transfers/swap assets based on configured rules when certain
      conditions are met.


      Rules can be configured for:


      - Source blockchain and assets

      - Destination blockchain and asset

      - Amount ranges (min/max)

      - Slippage tolerance

      - Gateway vs non-gateway wallets


      Gateway rules are required for testnet wallets and must have matching
      source/destination assets.
  - name: Smart Contract
    description: >-
      This API provides endpoints for interacting with smart contracts on the
      blockchain. It allows for reading contract data, executing contract
      functions, and estimating network fees.
  - name: Gateway
    description: >-
      The Gateway feature enables you to programmatically deposit USDC into a
      unified, chain-abstracted balance and instantly mint USDC on any supported
      blockchain, streamlining crosschain transfers and eliminating manual
      bridging steps and rebalancing complexities.
  - name: Payment Links
    description: >-
      The Payment Pages API provides a quick and secure way to collect payment
      for servcies.
  - name: Beneficiaries
    description: >-
      This API allows you to create beneficiaries with automatic settlements to
      your external wallets on a periodic basis.


      Example frequencies: INSTANT, DAILY, WEEKLY, MONTHLY, YEARLY
  - name: AML
    description: >-
      The AML (Anti Money Laundering) API provides a quick way for you to check
      if an address is blacklisted or sanctioned
  - name: Asset Recovery
    description: >-
      Enables the recovery (salvage) of both native blockchain assets and tokens
      from a specified sender address to a recipient address. This feature
      supports emergency fund recovery and asset consolidation operations.
  - name: Miscellaneous
    description: >-
      The Miscellaneous API are supporting APIs that can be used to provide more
      details to other APIs.
  - name: Asset1
  - name: Blockchain
  - name: Webhooks
    description: >-
      Webhooks allow you to set up a notification system that can be used to
      receive updates on certain requests made to the Blockradar API.

      To see full list and instructions
      [https://docs.blockradar.co/essentials/webhooks](https://docs.blockradar.co/essentials/webhooks)


      ##
  - name: Deposit
  - name: Withdraw1
  - name: Swap1
  - name: Gateway1
paths:
  /v1/rates/market-benchmark:
    get:
      tags:
        - Liquidity Pool
      summary: Get Market Benchmark
      description: >-
        Returns the best competing rate for one or more asset pairs across other
        Liquidity Providers in the same business segment, excluding your own
        rates.


        Use this endpoint to benchmark your pricing against the rest of the
        market before creating or updating a rate. Pass a single `fromAsset` /
        `toAsset` pair, or batch up to 20 pairs via the comma-separated `pairs`
        query parameter (e.g. `USDT:cNGN,cNGN:USDT`).


        Results are cached for 60 seconds per pair.


        ---


        ## Endpoint


        `GET https://api.blockradar.co/v1/rates/market-benchmark`


        ---


        ## Query Parameters


        | Key | Required | Type | Description |

        | --- | --- | --- | --- |

        | fromAsset | conditional | string | Source asset symbol. Required when
        `pairs` is not provided. |

        | toAsset | conditional | string | Destination asset symbol. Required
        when `pairs` is not provided. |

        | amount | false | string | Amount to benchmark — only rates whose
        `minAmount`/`maxAmount` band covers this amount are considered. |

        | pairs | false | string | Comma-separated list of `from:to` pairs for
        batch lookup (max 20). When provided, the response is an array. |
      operationId: getMarketBenchmark
      parameters:
        - name: fromAsset
          in: query
          required: false
          description: Source asset symbol. Required when `pairs` is not provided.
          schema:
            type: string
            example: USDT
        - name: toAsset
          in: query
          required: false
          description: Destination asset symbol. Required when `pairs` is not provided.
          schema:
            type: string
            example: cNGN
        - name: amount
          in: query
          required: false
          description: >-
            Amount to benchmark — only rates whose band covers this amount are
            considered.
          schema:
            type: string
            example: '500'
        - name: pairs
          in: query
          required: false
          description: Comma-separated `from:to` pairs for batch lookup (max 20).
          schema:
            type: string
            example: USDT:cNGN,cNGN:USDT
      responses:
        '200':
          description: '200'
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    oneOf:
                      - type: object
                        properties:
                          fromAsset:
                            type: string
                            example: USDT
                          toAsset:
                            type: string
                            example: cNGN
                          bestRate:
                            type: string
                            nullable: true
                            example: '1547.50'
                      - type: array
                        items:
                          type: object
                          properties:
                            fromAsset:
                              type: string
                              example: USDT
                            toAsset:
                              type: string
                              example: cNGN
                            bestRate:
                              type: string
                              nullable: true
                              example: '1547.50'
                  message:
                    type: string
                    example: Market benchmark retrieved
                  statusCode:
                    type: number
                    example: 200
              examples:
                Single pair:
                  value:
                    data:
                      fromAsset: USDT
                      toAsset: cNGN
                      bestRate: '1547.50'
                    message: Market benchmark retrieved
                    statusCode: 200
                Batch pairs:
                  value:
                    data:
                      - fromAsset: USDT
                        toAsset: cNGN
                        bestRate: '1547.50'
                      - fromAsset: cNGN
                        toAsset: USDT
                        bestRate: '0.000647'
                    message: Market benchmark retrieved
                    statusCode: 200
components:
  securitySchemes:
    apiKey:
      type: apiKey
      name: x-api-key
      in: header

````