Saltar para o conteúdo principal

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.

Em resumo
O Liquidity Pool da Blockradar permite que Liquidity Providers (LPs) aprovados definam e gerenciem taxas de câmbio para pares de ativos. As taxas alimentam o motor interno de swaps — quando um usuário inicia um swap, o sistema seleciona automaticamente a melhor taxa disponível entre os LPs ativos, valida a liquidez e executa a transação.
Taxas do Liquidity Pool da Blockradar

Pré-requisitos

Antes de usar a API do Liquidity Pool, certifique-se de ter:
1

Torne-se um Liquidity Provider

O Liquidity Pool está disponível apenas para Liquidity Providers aprovados. Para começar, preencha o formulário de inscrição de LP e a equipe da Blockradar analisará sua solicitação e fará seu onboarding.
2

Chave de API

Após o onboarding, gere uma chave de API no Dashboard da Blockradar. Acesse Developers para criar uma.
3

Financie suas wallets

Garanta que suas wallets de tesouraria tenham saldo suficiente dos ativos para os quais você pretende fornecer liquidez, além de tokens nativos para cobrir as taxas de rede.

Como funciona

Como Liquidity Provider, você define taxas de câmbio para pares de ativos (por exemplo, BNB → USDC). Quando um usuário na plataforma da Blockradar inicia um swap, o sistema:
  1. Encontra taxas correspondentes de todos os LPs ativos para o par de ativos solicitado.
  2. Classifica os candidatos por melhor taxa, prioridade do LP e horário de criação.
  3. Valida a liquidez verificando se a wallet de tesouraria do LP selecionado tem saldo suficiente para concluir o swap.
  4. Executa o swap usando a taxa e a tesouraria do LP selecionado.

Rate Management

Crie, atualize, desative e reative taxas de câmbio para qualquer par de ativos suportado.

Amount Bands

Defina valores mínimos e máximos de transação por taxa para controlar a exposição e segmentar faixas de preço.

Version History

Cada alteração de taxa cria uma nova versão. O histórico completo é preservado para auditoria e análise.

Automatic Selection

O sistema seleciona automaticamente o melhor LP para cada swap com base na taxa, prioridade e liquidez disponível.

Ciclo de vida da taxa

As taxas seguem um ciclo de vida claro com rastreamento completo de versões:

1. Criar uma taxa

Defina uma nova taxa de câmbio para um par de ativos. A taxa começa como active na versão 1.
curl --request POST \
  --url https://api.blockradar.co/v1/rates \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
    "fromAsset": "BNB",
    "toAsset": "USDC",
    "rate": "605.50",
    "minAmount": "0.01",
    "maxAmount": "100"
  }'

Parâmetros da requisição

ParâmetroTipoObrigatórioDescrição
fromAssetstringSimO símbolo do ativo a ser convertido de (por exemplo, BNB)
toAssetstringSimO símbolo do ativo a ser convertido para (por exemplo, USDC)
ratestringSimA taxa de câmbio. Fornecida como string para evitar problemas de precisão de ponto flutuante
minAmountstringSimValor mínimo da transação para esta taxa (inclusivo)
maxAmountstringNãoValor máximo da transação (exclusivo). Omita para ilimitado

Resposta de criação

{
  "message": "Rate created successfully",
  "statusCode": 201,
  "data": {
    "id": "d69078ef-2467-40f4-bb00-63394efe32c0",
    "fromAsset": "BNB",
    "toAsset": "USDC",
    "rate": "605.50",
    "minAmount": "0.01",
    "maxAmount": "100",
    "isActive": true,
    "status": "active",
    "version": 1,
    "network": "testnet",
    "createdAt": "2026-02-19T07:50:17.042Z"
  }
}

2. Atualizar uma taxa

Modifique a taxa ou as restrições de valor de uma taxa ativa existente. Isso cria uma nova versão — a versão anterior é automaticamente marcada como superseded.
curl --request PATCH \
  --url https://api.blockradar.co/v1/rates/{id} \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
    "rate": "610.00",
    "minAmount": "0.005"
  }'
Forneça apenas os campos que deseja alterar — atualizações parciais são suportadas.

3. Desativar uma taxa

Retire temporariamente uma taxa do ar. A taxa passa a ser deactivated e não será mais selecionada para swaps.
curl --request PATCH \
  --url https://api.blockradar.co/v1/rates/{id}/deactivate \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
    "reason": "Pausing for maintenance"
  }'

4. Reativar uma taxa

Coloque uma taxa desativada novamente no ar. Isso cria uma nova versão com status active.
curl --request PATCH \
  --url https://api.blockradar.co/v1/rates/{id}/reactivate \
  --header 'x-api-key: <api-key>'

Pricing Tools

Antes de cotar uma nova faixa ou reprecificar uma existente, use as Pricing Tools para inspecionar sua própria cobertura e comparar com outros Liquidity Providers do mesmo segmento de negócio.

Verificar taxas ativas para um par

GET /rates/check-pair retorna todas as taxas ativas que você configurou para um par de ativos no ambiente atual, incluindo a faixa de valores de cada uma. Use-o para confirmar se você já está cotando um par antes de abrir uma nova faixa.
curl --request GET \
  --url 'https://api.blockradar.co/v1/rates/check-pair?fromAsset=USDT&toAsset=cNGN' \
  --header 'x-api-key: <api-key>'
Response
{
  "message": "Pair check completed",
  "statusCode": 200,
  "data": {
    "fromAsset": "USDT",
    "toAsset": "cNGN",
    "hasActiveRates": true,
    "activeRateCount": 2,
    "rates": [
      {
        "id": "d69078ef-2467-40f4-bb00-63394efe32c0",
        "rate": "1545.00",
        "minAmount": "10",
        "maxAmount": "1000",
        "version": 1,
        "createdAt": "2026-04-12T09:14:22.501Z"
      },
      {
        "id": "5b6683f0-6e92-4eaf-ae8d-5f2ddd76b376",
        "rate": "1547.50",
        "minAmount": "1000",
        "maxAmount": null,
        "version": 3,
        "createdAt": "2026-04-12T09:18:41.022Z"
      }
    ]
  }
}

Comparar com outros LPs

GET /rates/market-benchmark retorna a melhor taxa concorrente para um par de ativos entre outros Liquidity Providers do seu segmento de negócio. Suas próprias taxas são excluídas para que você veja contra o que está precificando. Os resultados ficam em cache por 60 segundos por par. Passe amount para restringir o benchmark às taxas cuja faixa cobre aquele tamanho de transação, ou passe pairs (entradas from:to separadas por vírgula, máximo 20) para obter um array de benchmarks em uma única chamada.
curl --request GET \
  --url 'https://api.blockradar.co/v1/rates/market-benchmark?fromAsset=USDT&toAsset=cNGN' \
  --header 'x-api-key: <api-key>'
Single pair response
{
  "message": "Market benchmark retrieved",
  "statusCode": 200,
  "data": {
    "fromAsset": "USDT",
    "toAsset": "cNGN",
    "bestRate": "1547.50"
  }
}
Batch response
{
  "message": "Market benchmark retrieved",
  "statusCode": 200,
  "data": [
    { "fromAsset": "USDT", "toAsset": "cNGN", "bestRate": "1547.50" },
    { "fromAsset": "cNGN", "toAsset": "USDT", "bestRate": "0.000647" }
  ]
}
bestRate é null quando nenhum outro LP tem uma taxa ativa para o par (ou para a faixa de valor informada).

Inspecionar saldos da tesouraria

GET /rates/treasury-balances retorna os saldos de tesouraria agregados de cada ativo presente em suas taxas ativas, divididos por blockchain. Use-o para monitorar a cobertura de liquidez nos pares que você está cotando. A resposta exclui ativos com saldo on-chain igual a zero e elimina entradas duplicadas quando o mesmo par ativo/wallet é referenciado por várias taxas.
curl --request GET \
  --url https://api.blockradar.co/v1/rates/treasury-balances \
  --header 'x-api-key: <api-key>'
Response
{
  "message": "Treasury balances retrieved successfully",
  "statusCode": 200,
  "data": [
    {
      "asset": "USDT",
      "totalBalance": "5000.00",
      "totalConvertedBalance": "5000.00",
      "chains": [
        {
          "blockchain": "ethereum",
          "balance": "3000.00",
          "convertedBalance": "3000.00",
          "walletAddress": "0xA1b2C3d4E5f6789012345678901234567890aBcD"
        },
        {
          "blockchain": "polygon",
          "balance": "2000.00",
          "convertedBalance": "2000.00",
          "walletAddress": "0xA1b2C3d4E5f6789012345678901234567890aBcD"
        }
      ]
    }
  ]
}

Versionamento de taxas

Sempre que uma taxa é atualizada ou reativada, uma nova versão é criada. A versão anterior é marcada como superseded. Isso fornece uma trilha de auditoria completa.
CampoDescrição
versionNúmero de versão sequencial começando em 1
rootRateIdAponta para a taxa original — todas as versões em uma cadeia compartilham este ID
previousRateIdAponta para a versão imediatamente anterior

Exemplo de cadeia de versões

v1 (active)  →  v2 (active, v1 superseded)  →  v3 (deactivated)  →  v4 (active, v3 superseded)

Visualizar histórico da taxa

Recupere o histórico completo de versões de uma taxa:
curl --request GET \
  --url https://api.blockradar.co/v1/rates/{id}/history \
  --header 'x-api-key: <api-key>'

Resposta do histórico

{
  "message": "Rate history retrieved successfully",
  "statusCode": 200,
  "data": [
    {
      "id": "d69078ef-2467-40f4-bb00-63394efe32c0",
      "fromAsset": "BNB",
      "toAsset": "USDC",
      "network": "testnet",
      "rate": "605.50",
      "minAmount": "0.01",
      "maxAmount": null,
      "isActive": false,
      "status": "deactivated",
      "version": 1,
      "previousRateId": null,
      "rootRateId": null,
      "createdBy": "86964e42-79dc-4267-a2ca-3612c4b095a8",
      "deactivatedBy": "86964e42-79dc-4267-a2ca-3612c4b095a8",
      "deactivatedAt": "2026-02-25T18:13:48.113Z",
      "deactivationReason": "re",
      "createdAt": "2026-02-19T07:50:17.042Z",
      "updatedAt": "2026-02-25T18:13:48.101Z"
    }
  ],
  "meta": {
    "totalItems": 1,
    "itemCount": 1,
    "itemsPerPage": 10,
    "totalPages": 1,
    "currentPage": 1
  }
}

Status da taxa

StatusDescrição
activeAtualmente no ar e elegível para seleção em swaps
supersededSubstituída por uma versão mais recente (via atualização ou reativação)
deactivatedRetirada manualmente do ar — pode ser reativada
superseded é um estado terminal — esses registros são históricos e não podem ser modificados.

Amount Bands

Cada taxa cobre uma faixa de valores de transação definida por minAmount e maxAmount:
  • minAmount — O limite inferior inclusivo. Transações abaixo desse valor não usarão essa taxa.
  • maxAmount — O limite superior exclusivo. Defina como null (omita) para ilimitado.

Várias taxas para o mesmo par

Você pode criar várias taxas para o mesmo par de ativos com diferentes faixas de valor para oferecer preços em camadas:
TaxaFaixaCaso de uso
605.000.01 – 10 BNBTransações pequenas
606.5010 – 100 BNBTransações médias
608.00100+ BNBTransações grandes
As faixas de valor para o mesmo par de ativos não podem se sobrepor. O sistema rejeitará uma taxa se sua faixa se sobrepuser a outra taxa ativa para o mesmo par.

Validação de liquidez

Antes de executar um swap usando sua taxa, o sistema valida se sua wallet de tesouraria tem:
  1. Saldo suficiente do token do ativo de destino para cobrir a saída do swap (amount x rate).
  2. Saldo suficiente de token nativo (ETH, BNB, etc.) para cobrir as taxas de rede da transferência.
Se o saldo da sua wallet for insuficiente, o sistema pula sua taxa e passa para o próximo LP disponível. Você receberá um alerta por e-mail quando sua liquidez estiver baixa.
Mantenha suas wallets de tesouraria bem financiadas para evitar perder oportunidades de swap. O sistema notificará você quando os saldos caírem abaixo dos limites.

Boas práticas

Rate Management

  • Monitore as condições do mercado e atualize as taxas regularmente para se manter competitivo
  • Use Amount Bands para oferecer preços em camadas para diferentes tamanhos de transação
  • Desative taxas durante manutenção ou alta volatilidade em vez de excluí-las
  • Revise o Version History para acompanhar as alterações de taxa ao longo do tempo

Liquidez

  • Mantenha saldo suficiente em suas wallets de tesouraria tanto para o ativo de destino quanto para os tokens nativos
  • Configure o monitoramento para alertas de saldo baixo
  • Financie as wallets de forma proativa para evitar interrupções no serviço

Referência da API

EndpointDescrição
Create RateCrie uma nova taxa de câmbio para um par de ativos
Get RateRecupere uma única taxa pelo ID
Update RateAtualize uma taxa existente (cria uma nova versão)
Deactivate RateTire uma taxa do ar
Reactivate RateColoque uma taxa desativada de volta no ar
Get Rate HistoryVeja o histórico completo de versões de uma taxa
Check PairListe suas taxas ativas para um par de ativos específico
Get Market BenchmarkMelhor taxa concorrente para um par (ou um lote de pares), excluindo as suas
Get Treasury BalancesSaldos de tesouraria agregados agrupados por ativo e blockchain

Suporte

O Liquidity Pool foi projetado para provedores de liquidez institucionais e profissionais. Inscreva-se para se tornar um LP e, em seguida, teste suas configurações de taxa em testnet antes de entrar em produção.