API de Negociações v1.0Documentação

Nossa API de negociação permite aplicativo de terceiros a gerenciar suas ordens, efetuar saques de reais e bitcoins.

Para utilizar a este recurso é necessário estar com o cadastro completo. As chaves necessárias para utilização podem ser solicitadas no menu Configurações, no parte inferior da tela.

Autenticação

Para qualquer requisição da API de negociação é necessário enviar por POST os seguinte parametros:

Parâmetros POST para autenticação

VariávelTipoDescrição
api_keyTextoChave da API disponível no painel do usuário
request_bodyTextotimestamp da data atual em segundos, formato Unix Timestamp + parâmetros da requisição que será feita em formato QueryString
signatureTextorequest_body criptografada em HMAC SHA-256 com a chave secreta sendo o segredo fornecido no momenta da criação da nova chave

URL para requisição dos métodos

https://bitnuvem.com/tapi/{MÉTODO}

Exemplo de requisição em PHP

$action = 'withdraw';
$api_key = 'SUA_API_KEY_AQUI';
$api_secret = 'SEGREDO_DA_API_KEY_AQUI';

$request_body['timestamp'] = time();

$request_body['value'] = 120.20;
$request_body['bank_id'] = 231;
// ... outros parâmetros se necessário

// conversão da variável em formato QueryString ( timestamp=123456789&value=120.20&bank_id=231 )
$request_body = http_build_query($request_body);

$api_post['api_key'] = $api_key;
$api_post['request_body'] = $request_body;
$api_post['signature'] = hash_hmac('sha256', $request_body, $api_secret);

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://bitnuvem.com/tapi/'.$action);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $api_post);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);

balance

Exibe o seu saldo total, disponível e em uso de todas os valores de sua conta.

Retorno em formato JSON.

Exemplo de URL

https://bitnuvem.com/tapi/balance

Exemplo de retorno da requisição

{
    // Saldo total em conta
    "total": {
        "REAL": "6195.84",
        "BTC": "0.73764924"
    },
    // Valores disponíveis
    "available": {
        "REAL": "4586.58",
        "BTC": "0.73664924"
    },
    // Valores em uso (ordem em aberto e/ou saque pendente)
    "in_use": {
        "REAL": "1609.26",
        "BTC": "0.00100000"
    }
}

account_bank_list

Método para obter todos as contas bancárias cadastrados em sua conta.

Retorno em formato JSON.

Exemplo de URL

https://bitnuvem.com/tapi/account_bank_list

Exemplo de retorno da requisição

[{
    // Identificador da conta bancária na corretora
    "id": 115,
    // CPF ou CNPJ do proprietário da conta
    "cpf_cnpj": "30.546.114/0001-00",
    // Banco que pertence a conta
    "bank": "Banco do Brasil",
    // Agência da conta bancária
    "agency": "1234",
    // Digito da agência da conta bancária (somente para alguns bancos)
    "agency_digit": "1234",
    // Número da conta bancária
    "account": "56.789",
    // Digito da agência da conta bancária
    "account_digit": "X",
    // Tipo da conta (Corrente ou Poupança)
    "account_type": "Corrente",
    // Nome do proprietário da conta
    "account_name": "Lucas Ribeiro do Prado",
    // Operação da conta (somente para clientes Caixa)
    "operation": "013"
}]

withdraw

Método para solicitar um saque em reais.

Retorno em formato númerico.

Exemplo de URL

https://bitnuvem.com/tapi/withdraw

Parâmetros POST (request_body)

VariávelTipoDescrição
valueDecimalValor em reais desejado para saque
bank_idInteiroIdentificador da conta bancária na corretora

Retorno da requisição

Clique aqui para ver os possíveis código de retorno.

send

Método para enviar Bitcoins para um endereço.

Retorno em formato númerico.

Exemplo de URL

https://bitnuvem.com/tapi/send

Parâmetros POST (request_body)

VariávelTipoDescrição
amountDecimalValor em bitcoin desejado para envio
addressTextoEndereço que deseja enviar as moedas

Retorno da requisição

Clique aqui para ver os possíveis código de retorno.

order_get

Método para retornar uma ordem específica.

Retorno em formato JSON.

Exemplo de URL

https://bitnuvem.com/tapi/order_get

Parâmetros POST (request_body)

VariávelTipoDescrição
order_idTextoIdentificador da ordem

Exemplo de retorno da requisição

[{
    // Identificador da ordem no sistema
    "id": 115,
    // Data da ordem criada em formato Unix Timestamp
    "create": 1569433317,
    // Modo da ordem: 'limit' (limite) ou 'market' (mercado)
    "mode": "limit",
    // Tipo da ordem: 'sell' (venda) ou 'buy' (compra)
    "type": "sell",
    // Situações da ordem: 'active' (ativas), 'completed' (concluídas), 'canceled' (canceladas)
    "status": "completed",
    // Quantidade de Bitcoins sendo negociado
    "amount": "0.00500000",
    // Preço únitário em reais do Bitcoin negociado
    "price": "33500.00",
    // Preço total em reais negocidado
    "total": "168.15",
    // Quantidade de Bitcoins já negociados (se tiver executado alguma)
    "amount_executed": "0.00500000",
    // Ordens executadas (se tiver executado alguma)
    "orders_executed"
    [{
        // Data da execução da ordem
        "create": 1569433327,
        // Preço da ordem executada
        "price": 33750.00,
        // Quantidade da ordem executada
        "amount": 0.00200000,
    },
    {
        "create": 1569433337,
        "price": 33550.00,
        "amount": 0.00300000,
    }],
    // Tipo do gatilho: 'stop' ou 'oco' (se a ordem possuir)
    "trigger": "stop",
    // Preço inserido no gatilho (se a ordem possuir 'trigger')
    "trigger_price": "34000.00",
}]

order_list

Método para retornar todas as ordens de uma situação específica cadastrada em sua conta. A requisição tem um limite de retorno de 1000 registros.

Retorno em formato JSON.

Exemplo de URL

https://bitnuvem.com/tapi/order_list

Parâmetros POST (request_body)

VariávelTipoDescrição
statusTextoSituação: all (todas), active (ativas), completed (concluídas) ou canceled (canceladas)

Retorno da requisição

Caso a requisição seja bem sucedida retornara uma array no mesmo padrão do método order_get, o contrário clique aqui para ver os possíveis código de retorno.

order_new

Método para lançar novas ordens no livro de ofertas.

Retorno em formato JSON em caso de sucesso ou númerico em caso de erro.

Exemplo de URL

https://bitnuvem.com/tapi/order_new

Ordens no modo Limite

VariávelTipoDescrição
modeTextoModo da ordem: limit
typeTextoTipo da ordem: buy (compra) ou sell (venda)
amountDecimalQuantidade de Bitcoin a ser negociado
priceDecimalPreço unitário em reais do Bitcoin negociado
price_stopDecimalPreço unitário em reais do Bitcoin para gatilho stop (opcional)
price_ocoDecimalPreço unitário em reais do Bitcoin para gatilho oco (opcional)

Ordens no modo Mercado

VariávelTipoDescrição
modeTextoModo da ordem: market
typeTextoTipo da ordem: buy (compra) ou sell (venda)
amountDecimalQuantidade de Bitcoin a ser negociado (somente para venda)
totalDecimalTotal em reais que deseja comprar de Bitcoin (somente para compra)
price_stopDecimalPreço unitário em reais do Bitcoin para gatilho stop (opcional)

Ordens no modo Escalonado

VariávelTipoDescrição
modeTextoModo da ordem: scale
typeTextoTipo da ordem: buy (compra) ou sell (venda)
amountDecimalQuantidade de Bitcoin a ser negociado (somente para venda)
totalDecimalTotal em reais que deseja comprar de Bitcoin (somente para compra)
type_scaleTextoTipo da distribuição: equal (igualmente), asc (crescente) ou desc (descrescente)
number_ordersInteiroNúmero de ordens que deseja distribuir a negociação
price_minDecimalPreço mínimo unitário em reais do Bitcoin para distribuição nas ordens
price_maxDecimalPreço máximo unitário em reais do Bitcoin para distribuição nas ordens

Retorno da requisição

Caso a requisição seja bem sucedida retornara uma array no mesmo padrão do método order_get, o contrário clique aqui para ver os possíveis código de retorno.

order_cancel

Método para cancelar uma ordem específica.

Retorno em formato númerico.

Exemplo de URL

https://bitnuvem.com/tapi/order_cancel

Parâmetros POST (request_body)

VariávelTipoDescrição
order_idTextoIdentificador da ordem

Retorno da requisição

Clique aqui para ver os possíveis código de retorno.

order_cancel/all

Método para cancelar todas as ordens abertar.

Retorno em formato númerico.

Exemplo de URL

https://bitnuvem.com/tapi/order_cancel/all

Parâmetros POST (request_body)

VariávelTipoDescrição
typeTextoCancelar um tipo espefíco: sell (vendas), buy (compras) ou all (todas)

Retorno da requisição

Clique aqui para ver os possíveis código de retorno.