Cenários de uso
Abaixo estão cenários práticos de integração com a Quickex API.
Para novas integrações, recomenda-se a API v2 (assinatura de requisições, lista branca de IP).
Para dados públicos de vitrine e acompanhamento de ordens, estão disponíveis métodos convenientes da API v1.
Não misture taxas obtidas de uma versão da API ao criar transações em outra.
1) Integração de um exchange no site
Objetivo
adicionar ao site um formulário de troca com seleção de moedas/redes, validação de endereço e criação de ordem.
Endpoints
- v2:
POST /api/v2/instruments/public/validate-address,POST /api/v2/instruments/public/one,GET /api/v2/instruments/public,POST /api/v2/orders/public/create,POST /api/v2/orders/public/set-email - v1 (adicionalmente se precisar de status/vitrine):
GET /api/v1/instruments/public,GET /api/v1/instruments/public/one,POST /api/v1/instruments/public/validate-address
Fluxo
- Carregar o catálogo de instrumentos ativos (moeda + rede) para montar as listas “Entrego/Recebo”.
- Com a seleção do usuário, solicitar detalhes do instrumento “recebo” (precisão, memo/tag, limites).
- Validar o endereço de destino via
validate-address. - Criar a ordem:
POST /api/v2/orders/public/create(recomenda-se v2). Salvar oorderIde exibir odepositAddressao usuário. - (Opcional) adicionar e-mail à ordem:
POST /api/v2/orders/public/set-email— para notificações ao usuário. - Exibir uma tela com instruções de pagamento para o
depositAddresse um temporizador.
Erros e segurança
- Bloqueie o envio do formulário até que o endereço seja validado com sucesso.
- Considere
requiresMemo/tag— solicite ao usuário inserir memo/tag, se necessário. - Para v2 — assine cada requisição e restrinja IPs por meio de whitelist.
2) Obtenção e exibição de taxas
Objetivo
mostrar ao usuário as taxas atualizadas para o par selecionado.
Endpoints
- v1:
GET /api/v1/rates/public/one— taxa pública em JSON.
Fluxo
- Quando o usuário escolher um par — solicitar a taxa pública via
rates/public/one. - Exibir a taxa, os valores mínimo/máximo (se retornados) e o horário de atualização.
- (Opcional) aplicar “markup” visual à taxa exibida na vitrine (ver cenário 4), mas não use a taxa ajustada para criar efetivamente uma ordem em outra versão da API.
Recomendações
- Faça cache das respostas por 10–30 segundos para reduzir a carga.
- Mostre ao usuário o horário da última atualização e um botão “Atualizar taxa”.
3) Criação e acompanhamento de ordens
Objetivo
criar uma ordem e fornecer ao usuário um status de execução claro.
Endpoints
- v2:
POST /api/v2/orders/public/create,POST /api/v2/orders/public/set-email - v1:
POST /api/v1/orders/public/create,GET /api/v1/orders/public-info,GET /api/v1/orders/public/latest,POST /api/v1/orders/public/accept-rate-mode-change,POST /api/v1/orders/public/request-refund,GET /api/v1/orders/order-refund-info
Fluxo (v2 — recomendado para criação)
- Validar a entrada e o endereço de destino.
- Criar a ordem:
v2/orders/public/create→ obterorderId,depositAddress. - Oferecer “Adicionar e-mail”:
v2/orders/public/set-email. - Mostrar ao usuário as instruções para realizar o depósito.
Acompanhamento de status (vitrine e conta do usuário)
- Vitrine “trocas recentes”:
GET /api/v1/orders/public/latest. - Detalhes de uma ordem específica:
GET /api/v1/orders/public-info?orderId=...&destinationAddress=...— arraysdeposits/withdrawals,confirmations,txId,networkFee. - Mudança do modo de taxa sob demanda:
POST /api/v1/orders/public/accept-rate-mode-change. - Reembolsos:
POST /api/v1/orders/public/request-refund→ detalhes viaGET /api/v1/orders/order-refund-info.
Observações
- Armazene o
orderIdno seu backend e vincule-o à sessão do usuário. - Para usuários autenticados, use
GET /api/v1/orders/public/list(tag auth) como painel pessoal de ordens.
4) Verificação do status de transações
Objetivo
dar ao usuário transparência sobre o progresso de depósitos e saques.
Endpoints
- v1:
GET /api/v1/orders/public-info,GET /api/v1/orders/order-refund-info
Fluxo
- Consultar periodicamente
public-infopororderIdedestinationAddress. - No bloco
deposits[0], analisarisPending,confirmations,txId,depositAddress. - Quando o depósito for confirmado — exibir as informações do saque a partir do array
withdrawals(valor,networkFee,txId). - Em caso de reembolso — obter detalhes via
order-refund-infoe mostrar o status “Reembolso em andamento/concluído”.
Recomendações
- Intervalos de consulta de 5–15 segundos, com backoff em 429/5xx.
- Mostre ao usuário um link para o explorador de blockchain pelo
txId, se disponível. - Adicione alertas visuais para endereços que exijam memo/tag.