1

Using the example pose request from https://info.shapeshift.io/api#api-7 :

url:  shapeshift.io/shift
method: POST
data type: JSON
data required:
withdrawal     = the address for resulting coin to be sent to
pair       = what coins are being exchanged in the form [input coin]_[output coin]  ie btc_ltc
returnAddress  = (Optional) address to return deposit to if anything goes wrong with exchange
destTag    = (Optional) Destination tag that you want appended to a Ripple payment to you
rsAddress  = (Optional) For new NXT accounts to be funded, you supply this on NXT payment to you
apiKey     = (Optional) Your affiliate PUBLIC KEY, for volume tracking, affiliate payments, split-shifts, etc...

example data: {"withdrawal":"AAAAAAAAAAAAA", "pair":"btc_ltc", returnAddress:"BBBBBBBBBBB"}

Success Output:
    {
        deposit: [Deposit Address (or memo field if input coin is BTS / BITUSD)],
        depositType: [Deposit Type (input coin symbol)],
        withdrawal: [Withdrawal Address], //-- will match address submitted in post
        withdrawalType: [Withdrawal Type (output coin symbol)],
        public: [NXT RS-Address pubkey (if input coin is NXT)],
        xrpDestTag : [xrpDestTag (if input coin is XRP)],
        apiPubKey: [public API attached to this shift, if one was given]
    }  

I send post request to :

 shapeshift.io/shift

with parameters

{"withdrawal":"AAAAAAAAAAAAA", "pair":"btc_ltc", returnAddress:"BBBBBBBBBBB"}

But do not receive a response.

Is my post format correct ?

  • I am using cURL and I get the error: {"error":"No Withdrawal Address Specified"} no matter what I do. There are no obvious errors in the code. What are my options if cURL is always going to give this error? – Moazzam Ali Aug 11 '17 at 17:58
  • If you have a new question, please ask it by clicking the Ask Question button. Include a link to this question if it helps provide context. - From Review – lungj Aug 11 '17 at 19:24
2

There is a mistake in the documentation. The example POST string is no valid JSON "returnAddress" needs to be enquoted.

Try:

 $ curl -H "Content-Type: application/json" -X POST -d '{"withdrawal":"LZwZMi6i9suK1wzFaw1NHqcYLcLGAo1Fs3", "pair":"btc_ltc", "returnAddress":"1HpnZkPHDMdiezuxT1sbKgLgBGTb1Q7eEP"}' https://shapeshift.io/shift

Gives me the following response:

{"orderId":"fca7e528-e0ba-4b4e-a43b-237d8a81b2a6","deposit":"1Khh3ndcoKBDsKe2gvmK9f2M1TpimXWWXw","depositType":"BTC","withdrawal":"LZwZMi6i9suK1wzFaw1NHqcYLcLGAo1Fs3","withdrawalType":"LTC","public":null,"apiPubKey":"shapeshift","returnAddress":"1HpnZkPHDMdiezuxT1sbKgLgBGTb1Q7eEP","returnAddressType":"BTC"}

You did not state how you query the API, if you use curl you will get always an error string back, whatever you do, e.g.,

{"error":"No Withdrawal Address Specified"}

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.