Withdraw

POST /auth/withdraw

Submit a withdrawal. Requires a signed payload in HMAC form to be appended to the x-signature header. The signed payload must be base64-encoded.

Note: For security reasons, withdrawals submitted through the API will only be processed once confirmed by email.

Javascript example:

  const formurlencoded = require('form-urlencoded').default;
  const crypto = require("crypto-js");
  const fetch = require("node-fetch");
  const API_KEY = "<YOUR_API_KEY>";
  const SECRET_KEY = "<YOUR_SECRET_KEY>";

  (async function() {
    const payload = {'asset': 'ETH', qty: 5, address: '0x829bd824b016326a401d083b33d092293333a830', timestamp: Date.now()};
    const payload_url_encoded = formurlencoded(payload);
    const HMAC = crypto.HmacSHA256(payload_url_encoded, SECRET_KEY).toString(crypto.enc.Base64);
    const submitted = await fetch('https://api.everstrike.io/auth/withdraw', {method: 'POST', body: payload_url_encoded, headers: {'content-type': 'application/x-www-form-urlencoded', 'x-api-key': API_KEY, 'x-signature': HMAC}});
    const response = await submitted.json();
    console.log(response);
  })();

Python example (Python3):

  import requests
  import urllib
  import hmac
  import hashlib
  import base64
  from time import time

  api_key = '<YOUR_API_KEY>'
  secret_key = '<YOUR_SECRET_KEY>'
  url='https://api.everstrike.io/auth/withdraw'
  payload = {'asset': 'ETH', 'qty': 5, 'address': '0x829bd824b016326a401d083b33d092293333a830', 'timestamp': time()*1000.0}
  urlencoded_payload = urllib.parse.urlencode(payload)
  hmac_signature = hmac.new(bytes(secret_key , 'utf-8'), msg = bytes(urlencoded_payload , 'utf-8'), digestmod = hashlib.sha256).digest()
  hmac_signature_base64 = base64.b64encode(hmac_signature)
  headers = {'content-type': 'application/x-www-form-urlencoded', 'x-api-key': api_key, 'x-signature': hmac_signature_base64}

  response = requests.post(url, data=payload, headers=headers)

  print(response.text)
  print(response.status_code, response.reason)

Responses

  • 200

    OK

    Hide response attributes Show response attributes object
    • code integer

      Response code

    • msg string

      Diagnostic message

    • result object

      Request result

      Hide result attributes Show result attributes
      • address string

        Address of withdrawal

      • Your unique Account ID

      • asset string

        Asset of withdrawal

      • time number

        Time of withdrawal

      • qty number

        Quantity of withdrawal

      • net number

        Net Quantity of withdrawal. Net Quantity = Quantity - Fee.

      • status string

        Status of withdrawal. Can be PENDING or COMPLETED.

      • id string

        Unique identifier of withdrawal.

      • qty_usd number

        USD quantity of withdrawal, at time of withdrawal.

      • Blockchain transaction associated with the withdrawal

        Hide transaction attributes Show transaction attributes
        • hash string

          Transaction hash

        • from string

          Sender of transaction

  • 503

    Error

    Hide response attributes Show response attributes object
POST /auth/withdraw
curl \
 -X POST https://api.everstrike.io/auth/withdraw \
 -H "x-api-key: $API_KEY"
Response examples (200)
{
  "code": 200,
  "msg": "string",
  "result": [
    {
      "qty": 0.01,
      "net": 0.009,
      "qty_usd": 1.3930651399,
      "manually_approved": false,
      "address": "0x9e80FA64F59CC0Ac3EEdaB8A698DcBc8435091A9",
      "asset": "ETH",
      "time": 1551127794034,
      "status": "ACTIVE",
      "customer_id": "5f9ca5f0380e11e9bf5191a076098e19"
    }
  ]
}
Response examples (503)
{
  "code": 503,
  "msg": "Invalid request",
  "result": {}
}