BTCMarkets / API

API
120 stars 30 forks source link

API feature requests #159

Closed npomfret closed 4 years ago

npomfret commented 5 years ago
npomfret commented 5 years ago

@martin-nginio ??

martin-nginio commented 5 years ago

Hi @npomfret

Thanks for your feedback and sorry for the late delay.

regarding mixing markets in a single API call (or large page sizes), please note that our development team has always strived to keep APIs fast and with as small payload as possible in order to allow high number of users and with high frequency calls. I believe our team will continue to keep most API calls to be per market for this reason and also with smaller payload.

regarding taker/marker, please note that the trade record that is returned by API has an attribute called liquidityType with values being Taker or Maker.

I have added request to return only filled orders to our development roadmap but I can't promise any ETA at this stage.

The individual fund transfer (deposit or withdraw) record returned by /fundtransfer/history has an attribute called cryptoPaymentDetail and this covers both txId and also address. Please let me know if this is what you are referring to.

Thanks again for your feedback and I'm sorry that we can't fulfill all of the requests at this time. I hope the rest of them make sense to you.

Regards, Martin

npomfret commented 5 years ago

@martin-nginio thanks for the reply

regarding taker/marker, please note that the trade record that is returned by API has an attribute called liquidityType with values being Taker or Maker.

The liquidityType field is always null for me:

{
  "id": 2062656113,
  "fee": 220,
  "side": "Bid",
  "price": 1028772,
  "volume": 100000,
  "orderId": 1987657345,
  "description": null,
  "creationTime": 1532759803414,
  "liquidityType": null
}

The individual fund transfer (deposit or withdraw) record returned by /fundtransfer/history has an attribute called cryptoPaymentDetail and this covers both txId and also address.

Sorry, my question wasn't clear. Please see this example that shows the data is missing:

        {
            status: 'Complete',
            fundTransferId: 494077500,
            description: 'BITCOIN Deposit, B 0.1000',
            creationTime: 1501077601015,
            currency: 'BTC',
            amount: 10000000,
            fee: 0,
            transferType: 'DEPOSIT',
            errorMessage: null,
            lastUpdate: 1501077601133,
            cryptoPaymentDetail: null
        }

And in this example, the bitcoin transaction id is present (9576b8d7e59e2403b5553598b8da35424df85a25009e636a8e9608173d33a62e) but it's invalid (it's not on the blockchain):

      {
            "fee": 0,
            "amount": 96880494,
            "status": "Complete",
            "currency": "BTC",
            "lastUpdate": 1515152077468,
            "description": "BTC withdraw from [] to Address: 3EiYjFQ5icFZWKjR545wBLtfcbCefFLmA5 amount: 0.96880494 fee: 0.00000000",
            "creationTime": 1515118279393,
            "errorMessage": null,
            "transferType": "WITHDRAW",
            "fundTransferId": 1079820001,
            "cryptoPaymentDetail": {
                "txId": "9576b8d7e59e2403b5553598b8da35424df85a25009e636a8e9608173d33a62e",
                "address": "3EiYjFQ5icFZWKjR545wBLtfcbCefFLmA5"}
        }

Also, the fee for withdrwals is always zero. Is this correct? Does the exchange not charge any transaction fee at all?

Please advise.

martin-nginio commented 4 years ago

Hi @npomfret

Thanks for being patience.

Please find below answer to your questions: 1- We only started to capture liquidityType since late 2018 so any historical trades won't have value in them but any new trades will have liquidityType.

2- The same is true for crypto transaction details and we enforce capturing them for API since past few months. if you come across situations where it does not have the correct value within the fund transfer for new deposits please let us know.

3- I'm happy to announce our new generation API v3 (full API set re-developed) that comes with a lot of improvements and new features and also covers your very first point about being able to get orders/trades without having to specify market information.

Please feel free to check out the new API and let us know if you come across issues or if you have feedback: https://api.btcmarkets.net/doc/v3#section/Introduction

Thanks again for your feedback.

Regards, Martin

martin-nginio commented 4 years ago

New features have been added to API v3 and this should complete the full list of feature requests in this issue:

1) new deposit/withdrawals APIs now cover txId and address(/tag): https://api.btcmarkets.net/doc/v3#tag/Fund-Management-APIs

2) The /v3/trades endpoint can be used to retrieve new trades (which includes orderId/clientOrderId covering orders that have recently filled) https://api.btcmarkets.net/doc/v3#tag/Trade-APIs

I'm now closing this issue.

Thank you again @npomfret for your great feedback.

Regards, Martin