API Luno

Bangun aplikasi khusus atau integrasikan pembayaran dengan Bitcoin API kami yang mutakhir.

API Luno memungkinkan Anda:

  • Akses data histori market Bitcoin dan Ethereum
  • Kirim order trading dan lihat status order
  • Beli dan jual Bitcoin dan Ethereum
  • Kirim dan terima Bitcoin dan Ethereum
  • Buat alamat dompet Bitcoin dan Ethereum

API Luno membuat Bitcoin dan Ethereum tersedia untuk siapa saja.

Pastikan untuk selalu menggunakan HTTPS ketika memanggil API. Permintaan HTTP non-TLS menyebabkan pengembalian error 403. Menggunakan permintaan non-TLS dapat membocorkan otentikasi informasi akses Anda.

Pastikan bahwa klien Anda memvalidasi sertifikat SSL dari server. Banyak library (misalnya, urllib2 pada Python2) tidak memvalidasi sertifikat server secara default. Kelalaian memverifikasi sertifikat server membuat aplikasi Anda rentan akan serangan penyusup dunia maya.

Waktu akan selalu ditampilkan sebagai bilangan bulat milisekon sejak UTC Epoch (waktu Unix).

Harga dan volume selalu ditampilkan dalam bentuk desimal, misalnya “123.3432”. Kami menggunakan bentuk ini dibandingkan float untuk mempertahankan presisi.

Parameter untuk POST calls dikirim dalam form yang bersifat URL-encoded (application/x-www-form-urlencoded).

Panggilan-panggilan ke Data Pasar API dibatasi 1 panggilan tiap 10 detik per alamat IP. Panggilan API lainnya dibatasi 1 panggilan tiap detik. Batasan nilai panggilan API mengizinkan rentetan hingga lima panggilan beruntun. Melewati batas ini akan menyebabkan munculnya HTTP error code 429.

Go Library adalah cara yang direkomendasikan untuk mengakses API: lihat di GitHub.

Perpustakaan berikut ini dijalankan oleh pihak ketiga atau tidak lagi berada di bawah pengembangan aktif dan dicantumkan disini untuk kenyamanan. Tidak ada dukungan untuk mereka yang disediakan oleh Luno dan kebanyakan mungkin telah kadaluwarsa. Peninjauan secara menyeluruh direkomendasikan sebelum melibatkan mereka ke dalam proyek apapun.

Panggilan data pasar dapat diakses siapa saja tanpa memerlukan izin sebelumnya. Data akan muncul namun mengalami cache hingga 1 detik. API Streaming dapat digunakan jika data pasar dengan latensi rendah diperlukan.

Ticker

Menampilkan indikator ticker terbaru.

Definisi

GET https://api.mybitx.com/api/1/ticker

Argumen

pair string diperlukan Currency pair e.g. XBTZAR or ETHXBT

Contoh permintaan.

$ curl https://api.mybitx.com/api/1/ticker?pair=XBTZAR

Contoh respons

{
  "ask": "1050.00",
  "timestamp": 1366224386716,
  "bid": "924.00",
  "rolling_24_hour_volume": "12.52",
  "last_trade": "950.00"
}

Semua ticker

Menampilkan indikator ticker terbaru dari semua bursa Luno yang aktif.

Definisi

GET https://api.mybitx.com/api/1/tickers

Contoh permintaan.

$ curl https://api.mybitx.com/api/1/tickers

Contoh respons

{
  "tickers": [
    {
      "timestamp": 1405413955793,
      "bid": "6801.00",
      "ask": "6900.00",
      "last_trade": "6900.00",
      "rolling_24_hour_volume": "12.455579",
      "pair":"XBTZAR"
    },
    {
      "timestamp": 1405413955337,
      "bid": "5000.00",
      "ask":"6968.00",
      "last_trade": "6830.00",
      "rolling_24_hour_volume": "0.00",
      "pair":"XBTNAD"
    }
  ]
}

Papan Order

Menampilkan daftar 100 bid dan ask teratas dalam papan order. Urutan ask disusun berdasarkan harga secara menanjak. Urutan bid disusun berdasarkan harga menurun. Perhatikan bahwa beberapa pesanan pada harga yang sama tidak serta merta tergabung.

Definisi

GET https://api.mybitx.com/api/1/orderbook_top

Argumen

pair string diperlukan Currency pair e.g. XBTZAR or ETHXBT

Contoh permintaan.

$ curl https://api.mybitx.com/api/1/orderbook_top?pair=XBTZAR

Contoh respons

{
  "timestamp": 1366305398592,
  "bids": [
    {
      "volume": "0.10",
      "price": "1100.00"
    },
    {
      "volume": "0.10",
      "price": "1000.00"
    },
    {
      "volume": "0.10",
      "price": "900.00"
    }
  ],
  "asks": [
    {
      "volume": "0.10",
      "price": "1180.00"
    },
    {
      "volume": "0.10",
      "price": "2000.00"
    }
  ]
}

Papan Order (Penuh)

Menampilkan daftar bid dan ask dalam papan order. Urutan bid disusun berdasarkan harga secara menanjak. Urutan ask disusun berdasarkan harga menurun. Perhatikan bahwa beberapa pesanan pada harga yang sama tidak serta merta tergabung.

Peringatan: Ini mungkin akan menampilkan data dengan jumlah yang besar. Umumnya Anda sebaiknya menggunakan GetOrderBook atau API Streaming.

Definisi

GET https://api.mybitx.com/api/1/orderbook

Argumen

pair string diperlukan Currency pair e.g. XBTZAR or ETHXBT

Contoh permintaan.

$ curl https://api.mybitx.com/api/1/orderbook?pair=XBTZAR

Contoh respons

{
  "timestamp": 1366305398592,
  "bids": [
    {
      "volume": "0.10",
      "price": "1100.00"
    },
    {
      "volume": "0.10",
      "price": "1000.00"
    },
    {
      "volume": "0.10",
      "price": "900.00"
    }
  ],
  "asks": [
    {
      "volume": "0.10",
      "price": "1180.00"
    },
    {
      "volume": "0.10",
      "price": "2000.00"
    }
  ]
}

Trading

Menampilkan daftar trading terbaru. Maksimal 100 hasil akan ditampilkan untuk setiap panggilan.

Definisi

GET https://api.mybitx.com/api/1/trades

Argumen

pair string diperlukan Currency pair e.g. XBTZAR or ETHXBT
since integer opsional Fetch trades executed after this time, specified as a Unix timestamp in milliseconds.

Contoh permintaan.

$ curl https://api.mybitx.com/api/1/trades?pair=XBTZAR

Contoh respons

{
  "trades": [
    {
      "volume": "0.10",
      "timestamp": 1366052621774,
      "price": "1000.00",
      "is_buy": true
    },
    {
      "volume": "1.20",
      "timestamp": 1366052621770,
      "price": "1020.50",
      "is_buy": false
    }
  ]
}

Beberapa panggilan API mewajibkan aplikasi Anda untuk mengotentikasikannya sendiri. Hal ini dilakukan dengan menggunakan sebuah kunci API yang terhubung dengan akun Anda. Anda dapat membuat kunci API dengan mengunjungi bagian Kunci API pada laman pengaturan.

Suatu kunci API mengandung id dan rahasia. Sebagai contoh: cnz2yjswbv3jd (key id) dan 0hydMZDb9HRR3Qq-iqALwZtXLkbLR4fWxtDZvkB9h4I (rahasia kunci).

Perminaatn API diotentikasi menggunakan otentikasi dasar HTTP dengan kunci id API sebagai nama pengguna dan kunci rahasia sebagai kata sandi. Kunci yang hilang, salah atau dibatalkan menyebabkan munculnya error 401.

Izin

Setiap kunci API diberikan set izin ketika ia dibuat. Kunci hanya dapat digunakan untuk melakukan panggilan fungsi API yang diizinkan.

Berikut daftar izin yang memungkinkan:

  • Perm_R_Balance = 1 (Lihat saldo)
  • Perm_R_Transactions = 2 (Lihat transaksi)
  • Perm_W_Send = 4 (Kirim ke alamat manapun)
  • Perm_R_Addresses = 8 (Lihat alamat)
  • Perm_W_Addresses = 16 (Buat alamat)
  • Perm_R_Orders = 32 (Lihat order)
  • Perm_W_Orders = 64 (Buat order)
  • Perm_R_Withdrawals = 128 (Lihat penarikan)
  • Perm_W_Withdrawals = 256 (Buat penarikan)
  • Perm_R_Merchant = 512 (Lihat kwitansi merchant)
  • Perm_W_Merchant = 1024 (Buat kwitansi merchant)
  • Perm_W_ClientDebit = 8192 (Akun debit)
  • Perm_W_ClientCredit = 16384 (Akun kredit)
  • Perm_R_Beneficiaries = 32768 (Lihat penerima)
  • Perm_W_Beneficiaries = 65536 (Buat dan hapus penerima)

Suatu set izin direpresentasikan sebagai bitwise ATAU setiap izin dalam set tersebut. Sebagai contoh, set izin yang diperlukan untuk melihat saldo dan order adalah Perm_R_Balance | Perm_R_Orders = 33.

Seluruh transaksi pada platform Luno beroperasi pada akun. Setiap akun didenominasikan dalam mata uang tunggal dan terdiri dari daftar entri yang menampilkan saldo saat itu.

Setiap akun memiliki saldo terpisah dan saldo tersedia. Saldo tersedia mungkin lebih kecil dari saldo jika sejumlah dana telah disisihkan (misalnya, untuk membuat order limit). Entri-entri akun memengaruhi saldo dan saldo tersedia secara independen.

Entri akun diberi nomor secara berurutan. Entri dijamin tidak akan disusun ulang atau dihapus. Selain itu, atribut intinya (saldo dan indeks berjalan) tidak akan dimodifikasi. Oleh karena itu, sebuah akun bertindak sebagai log transaksi yang hanya ditambahkan.

Buat Akun

Buat akun tambahan untuk mata uang tertentu.

Definisi

POST https://api.mybitx.com/api/1/accounts

Argumen

currency string diperlukan Kode mata uang digital untuk akun yang ingin Anda buat cth. XBT, IDR, MYR, ZAR
name string diperlukan Label yang ingin digunakan untuk akun ini cth. "Trading ACC".

Anda harus terverifikasi untuk trading currency sehingga Anda dapat membuat akun. Seorang pengguna memiliki batasan 4 akun per mata uang.

Contoh permintaan.

$ curl -u keyid:keysecret -X POST -d currency=XBT -d name=Moon https://api.mybitx.com/api/1/accounts

Contoh respons

{
  "id": "319323232",
  "name": "Moon",
  "currency": "XBT"
}

Izin diperlukan

Perm_W_Addresses

Saldo

Menampilkan daftar semua akun dan saldo masing-masing akun.

Definisi

GET https://api.mybitx.com/api/1/balance

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/balance

Contoh respons

{
  "balance": [
    {
      "account_id": "1224342323",
      "asset": "XBT",
      "balance": "1.012423",
      "reserved": "0.01",
      "unconfirmed": "0.421",
      "name": "XBT Account"
    },
    {
      "account_id": "2997473",
      "asset": "ZAR",
      "balance": "1000.00",
      "reserved": "0.00",
      "unconfirmed": "0.00",
      "name": "ZAR Account"
    }
  ]
}

Izin diperlukan

Perm_R_Balance

Transaksi

Menampilkan daftar entri transaksi dari suatu akun.

Baris entri transaksi diberi nomor secara berurutan dimulai dari 1, dimana 1 adalah entri terlama. Rentang entri untuk kembali dispesifikasi dengan parameter min_row (inklusif) dan max_row (eksklusif). Paling banyak 1000 baris yang dapat diminta per panggilan.

Jika min_row atau max_row non-positif, rentangnya berada pada baris paling baru. Sebagai contoh, untuk mengambil 100 baris paling baru, gunakan min_row=-100 dan max_row=0.

Definisi

GET https://api.mybitx.com/api/1/accounts/:id/transactions

Argumen

id string diperlukan ID Akun
min_row int diperlukan Jarak baris minimum yang dihasilkan (inklusif)
max_row int diperlukan Jarak baris maksimum yang dihasilkan (eksklusif)

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/accounts/319232323/transactions?min_row=1&max_row=100

Contoh respons

{
  "id": "319232323",
  "transactions": [
    {
      "row_index": 2,
      "timestamp": 1429908835000,
      "balance": 0.08,
      "available": 0.08,
      "balance_delta": -0.02,
      "available_delta": -0.02,
      "currency": "XBT",
      "description": "Sold 0.02 BTC"
    },
    {
      "row_index": 1,
      "timestamp": 1429908701000,
      "balance": 0.1,
      "available": 0.1,
      "balance_delta": 0.1,
      "available_delta": 0.1,
      "currency": "XBT",
      "description": "Bought 0.1 BTC"
    }
  ]
}

Izin diperlukan

Perm_R_Transactions

Transaksi pending

Menampilkan daftar seluruh transaksi pending yang berhubungan dengan akun tersebut.

Tidak seperti entri akun, transaksi pending tidak diberi nomor, dan dapat diatur ulang, dihapus dan diubah sewaktu-waktu.

Definisi

GET https://api.mybitx.com/api/1/accounts/:id/pending

Argumen

id string diperlukan ID Akun

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/accounts/319232323/pending

Contoh respons

{
  "id": "319232323",
  "pending": [
    {
      "timestamp": 1429908835000,
      "balance": 0.03,
      "available": 0.03,
      "balance_delta": 0.03,
      "available_delta": 0.03,
      "currency": "XBT",
      "description": "Received Bitcoin - 1 of 3 confirmations"
    }
  ]
}

Izin diperlukan

Perm_R_Transactions

Perdagangan di pasar dilakukan dengan mengirimkan order trading. Setelah order baru dibuat, order tersebut untuk diproses oleh mesin pencocokan order. Order tersebut kemudian dicocokkan dengan order yang ada pada papan order dan diisi atau order tersebut akan berada dalam papan order hingga order tersebut dihentikan.

Klik di sini untuk membaca lebih lanjut mengenai cara kerja matching order.

Daftar Order

Menampilkan daftar order yang terakhir dilakukan. Anda dapat meminta parameter opsional state=PENDINGuntuk membatasi hasil hanya kepada order yang tersedia. Anda dapat meminta pasar dengan menggunakan parameter pasangan opsional. Daftar tersebut dipotong setelah 100 item.

Definisi

GET https://api.mybitx.com/api/1/listorders

Argumen

state string opsional Filter order yang sedang dalam status cth. PENDING
pair string opsional Filter ke order untuk pasang mata uang tertentu cth. XBTZAR atau ETHXBT

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/listorders

Contoh respons

{
  "orders": [
    {
      "base": "0.027496",
      "counter": "81.140696",
      "creation_timestamp": 1423990327333,
      "expiration_timestamp": 0,
      "completed_timestamp": 1423991515534,
      "fee_base": "0.00",
      "fee_counter": "0.00",
      "limit_price": "2951.00",
      "limit_volume": "0.027496",
      "order_id": "BXF3J88PZAYGXH7",
      "pair": "XBTZAR",
      "state": "COMPLETE",
      "type": "ASK",
    }
  ]
}
BID
order limit bid (beli)
ASK
order limit ask (jual)
Status order dapat berada dalam status berikut ini:
PENDING
Order telah dipasang. Beberapa trade mungkin telah terjadi namun order belum terisi sepenuhnya.
SELESAI
Order tidak lagi aktif. Order telah selesai atau telah dibatalkan.

Jumlah base dan counter merupakan jumlah dasar yang diperdagangkan, tanpa biaya. Sebagai contoh, jika pesanan menghasilkan sebuah perdagangan tunggal 1 BTC untuk 1000 ZAR, maka base=1 BTC dan counter=1000 ZAR.

Jumlah fee_base dan fee_counter merupakan jumlah biaya yang didebitkan setelah jumlah perdagangan dasar.

Sebagai contoh, order buy, base - base_fee akan dikirimkan ke akun BTC dan counter + counter_fee akan dipotong dari akun ZAR. Untuk order sell, counter - counter_fee akan dikirim ke akun ZAR dan base + base_fee akan dipotong dari akun BTC.

pair menunjukkan pasar.

Izin diperlukan

Perm_R_Orders

Pasang Order Limit

Buat order trading baru.

Peringatan! Order tidak dapat dibatalkan ketika order berhasil terlaksana. Mohon pastikan program Anda telah dites dengan hati-hati sebelum menggunakan panggilan ini.

Jika tidak ada base_account_id or counter_account_id yang diminta, mata uang dasar dan lawan default Anda akan digunakan. Anda dapat menemukan ID akun Anda dengan meminta panggilan the Balances API.

Definisi

POST https://api.mybitx.com/api/1/postorder

Argumen

pair string diperlukan Pasang mata uang untuk trading cth. XBTZAR atau ETHXBT
type string diperlukan "BID" untuk order limit bid (beli) atau "ASK" untuk order limit ask (jual).
volume string diperlukan Jumlah Bitcoin atau Ethereum yang ingin dijual atau dibeli dalam unit desimal BTC cth. "1.423".
price string diperlukan Limit harga berbentuk desimal dalam unit ZAR/BTC cth. "1200".
base_account_id string opsional Akun mata uang dasar yang akan digunakan untuk trading.
counter_account_id string opsional Akun mata uang pasangan yang akan digunakan untuk trading.
post_only boolean opsional Pesanan post-only akan dibatalkan jika mereka tidak langsung tereksekusi. Sebagai contoh, jika ada penawaran pada ZAR 100,000 dan Anda menempatkan permintaan post-only pada ZAR 100,000, pesanan Anda akan dibatalkan dan tidak diesksekusi. Jika penawaran terbaik adalah ZAR 100,000 dan Anda menempatkan permintaan post-only pada ZAR 101,000, pesanan Anda tidak akan diperdagangkan melainkan akan masuk ke papan order.

Contoh permintaan.

$ curl -u keyid:keysecret -X POST -d pair=XBTZAR -d type=BID -d volume=0.1 -d price=1000 https://api.mybitx.com/api/1/postorder

Contoh respons

{
  "order_id": "BXMC2CJ7HNB88U4"
}

Izin diperlukan

Perm_W_Orders

Pasang Order Market (Order Pasar)

Buat order market baru.

Peringatan! Order tidak dapat dibatalkan ketika order berhasil terlaksana. Mohon pastikan program Anda telah dites dengan hati-hati sebelum menggunakan panggilan ini.

Jika tidak ada base_account_id or counter_account_id yang diminta, mata uang dasar dan lawan default Anda akan digunakan. Anda dapat menemukan ID akun Anda dengan meminta panggilan the Balances API.

Definisi

Order pasar (market order) dieksekusi langsung, dimana order langsung membeli sebanyak mungkin bitcoin yang dapat dibeli dengan sejumlah tetap mata uang fiat, atau menjual sejumlah tetap bitcoin untuk sebanyak mungkin fiat.

POST https://api.mybitx.com/api/1/marketorder

Argumen

pair string diperlukan Pasang mata uang untuk trading cth. XBTZAR atau ETHXBT
type string diperlukan "BUY" to buy Bitcoin or Ethereum, or "SELL" to sell Bitcoin or Ethereum.
counter_volume string required - if type is "BUY" Untuk order “BUY”: jumlah mata uang lokal (misalnya, ZAR, MYR) yang dipotong dalam bentuk desimal dalam unit mata uang lokal, cth. “100.50”.
base_volume string diperlukan - jika tipe adalah "JUAL" Untuk order “SELL”: jumlah Bitcoin yang dijual dalam bentuk unit BTC, cth. “1.423”.
base_account_id string opsional Akun mata uang dasar yang akan digunakan untuk trading.
counter_account_id string opsional Akun mata uang pasangan yang akan digunakan untuk trading.

Contoh permintaan.

$ curl -u keyid:keysecret -X POST -d pair=XBTZAR -d type=BUY -d counter_volume=100.50  https://api.mybitx.com/api/1/marketorder

Contoh respons

{
  "order_id": "BXMC2CJ7HNB88U4"
}

Izin diperlukan

Perm_W_Orders

Stop Order

Melakukan permohonan pemberhentian order

Definisi

POST https://api.mybitx.com/api/1/stoporder

Argumen

order_id string diperlukan Referensi order cth. BXMC2CJ7HNB88U4

Contoh permintaan.

$ curl -u keyid:keysecret -X POST -d order_id=BXMC2CJ7HNB88U4 https://api.mybitx.com/api/1/stoporder

Contoh respons

{
  "success": true
}

Izin diperlukan

Perm_W_Orders

Dapatkan Order

Dapatkan order berdasarkan id.

Definisi

GET https://api.mybitx.com/api/1/orders/:id

Argumen

id string diperlukan ID order

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/orders/BXHW6PFRRXKFSB4

Contoh respons

{
  "order_id": "BXHW6PFRRXKFSB4",
  "creation_timestamp": 1402866878367,
  "expiration_timestamp": 0,
  "completed_timestamp": 0,
  "type": "ASK",
  "state": "PENDING",
  "limit_price": "6500.00",
  "limit_volume": "0.05",
  "base": "0.03",
  "counter": "195.02",
  "fee_base":"0.000",
  "fee_counter":"0.00"
}

Izin diperlukan

Perm_R_Orders

Daftar Trading

Menampilkan daftar trading terbaru Anda untuk pasang tertentu, disortir berdasarkan yang paling lama terlebih dahulu.

type pada respons mengindikasikan jenis order yang Anda pasang agar dapat berpartisipasi dalam perdagangan. Jenis-jenis yang memungkinkan: BID, ASK.

Jika is_buy dalam respons adalah true (benar), maka order yang memenuhi trade tersebut (market taker) adalah order bid.

Hasil dari pencarian ini mungkin saja tidak mencerminkan data terbaru.

Definisi

GET https://api.mybitx.com/api/1/listtrades

Argumen

pair string diperlukan Filter ke order untuk pasang mata uang ini cth. XBTZAR atau ETHXBT
since integer opsional Filter ke order dalam waktu tertentu, cth. 1470810728478
limit integer opsional Limit untuk jumlah trading (min 1, max 100, default 100)

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/listtrades?pair=XBTZAR

Contoh respons

{
    "trades": [
        {
            "base": "0.147741",
            "counter": "1549.950831",
            "fee_base": "0.00",
            "fee_counter": "0.00",
            "is_buy": false,
            "order_id": "BXMC2CJ7HNB88U4",
            "pair": "XBTZAR",
            "price": "10491.00",
            "timestamp": 1467138492909,
            "type": "BID",
            "volume": "0.147741"
        }
    ]
}

Izin diperlukan

Perm_R_Orders

Informasi Biaya

Menampilkan biaya dan volume trading 30-hari Anda (hingga tengah malam) untuk pasang tertentu.

Definisi

GET https://api.mybitx.com/api/1/fee_info

Argumen

pair string diperlukan Filter ke order untuk pasang mata uang ini cth. XBTZAR atau ETHXBT

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/fee_info?pair=XBTZAR

Contoh respons

{
  "maker_fee": "0.00",
  "taker_fee": "0.10",
  "thirty_day_volume": "0.894342"
}

Izin diperlukan

Perm_R_Orders

Alamat-alamat terima

Menampilkan alamat terima default yang terhubung dengan akun Anda dan jumlah yang diterima melalui alamat tersebut. Anda dapat memilih parameter alamat opsional untuk menampilkan informasi ke sebuah alamat terima non-default. Respons akan menampilkan total_received yang merupakan total jumlah Bitcoin terkonfirmasi yang diterima dan belum termasuk transaksi-transaksi yang belum dikonfirmasi. total_unconfirmed adalah jumlah keseluruhan transaksi terima yang belum dikonfirmasi.

Definisi

GET https://api.mybitx.com/api/1/funding_address

Argumen

asset string diperlukan Kode mata uang aset cth. XBT
address string opsional Alamat Bitcoin atau Ethereum tertentu yang ingin dicari. Jika tidak tersedia, alamat default akan digunakan.

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/funding_address?asset=XBT&address=B1tC0InExAMPL3fundIN6AdDreS5t0Use

Contoh respons

{
  "asset": "XBT",
  "address": "B1tC0InExAMPL3fundIN6AdDreS5t0Use",
  "total_received": "1.234567",
  "total_unconfirmed": "0.00"
}

Izin diperlukan

Perm_R_Addresses

Buat alamat terima

Mengalokasikan alamat terima baru ke akun Anda. Ada angka batasan yakni 1 alamat per jam, tetapi rentetan hingga 10 alamat diizinkan. Hanya 1 alamat Ethereum yang dapat dibuat.

Definisi

POST https://api.mybitx.com/api/1/funding_address

Contoh permintaan.

$ curl -u keyid:keysecret -X POST -d asset=XBT https://api.mybitx.com/api/1/funding_address

Contoh respons

{
  "asset": "XBT",
  "address": "B1tC0InExAMPL3fundIN6AdDreS5t0Use",
  "total_received": "0.00",
  "total_unconfirmed": "0.00"
}

Izin diperlukan

Perm_W_Addresses

Daftar permohonan penarikan

Menampilkan daftar permohonan penarikan.

Definisi

GET https://api.mybitx.com/api/1/withdrawals

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/withdrawals

Contoh respons

{
  "withdrawals": [
    {
      "status": "PENDING",
      "id": "2221"
    },
    {
      "status": "COMPLETED",
      "id": "1121"
    }
  ]
}

Izin diperlukan

Perm_R_Withdrawals

Melakukan permohonan penarikan

Buat permohonan penarikan dana baru.

Definisi

POST https://api.mybitx.com/api/1/withdrawals

Argumen

type string diperlukan Tipe penarikan cth. ZAR_EFT, NAD_EFT, KES_MPESA, MYR_IBG, IDR_LLG
amount string diperlukan Jumlah penarikan. Mata uang tergantung tipe.
beneficiary_id string opsional ID penerima dari rekening bank yang kami tuju untuk memproses penarikan Anda. Parameter ini penting jika Anda memiliki beberapa rekening bank. ID penerima rekening bank Anda dapat ditemukan di laman Penerima.

Contoh permintaan.

$ curl -u keyid:keysecret -X POST -d type=ZAR_EFT -d amount=1000 https://api.mybitx.com/api/1/withdrawals

Contoh respons

{
  "status": "PENDING",
  "id": "1212"
}

Izin diperlukan

Perm_W_Withdrawals

Dapatkan status permohonan penarikan dana

Menampilkan status permohonan penarikan dana tertentu.

Definisi

GET https://api.mybitx.com/api/1/withdrawals/:id

Argumen

id string diperlukan ID penarikan yang ingin dicari.

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/withdrawals/1212

Contoh respons

{
  "status": "COMPLETED",
  "id": "1212"
}

Izin diperlukan

Perm_R_Withdrawals

Membatalkan permohonan penarikan

Membatalkan permohonan penarikan. Ini hanya dapat dilakukan jika permohonan masih dalam status PENDING.

Definisi

DELETE https://api.mybitx.com/api/1/withdrawals/:id

Argumen

id string diperlukan ID penarikan yang ingin dibatalkan.

Contoh permintaan.

$ curl -u keyid:keysecret -X DELETE https://api.mybitx.com/api/1/withdrawals/1212

Contoh respons

{
  "status": "CANCELLED",
  "id": "1212"
}

Izin diperlukan

Perm_W_Withdrawals

Kirim Bitcoin dari akun Anda ke alamat Bitcoin atau email manapun. Kirim Ethereum dari akun Anda ke alamat Ethereum manapun.

Jika alamat email tersebut tidak terhubung dengan akun Luno yang telah dibuat sebelumnya, undangan untuk membuat akun dan mengklaim dana tersebut akan dikirimkan.

Peringatan! Transaksi aset kripto bersifat tidak dapat dibatalkan. Mohon pastikan program Anda telah dicoba dengan hati-hati sebelum menggunakan panggilan ini.

Definisi

POST https://api.mybitx.com/api/1/send

Argumen

amount string diperlukan Jumlah kirim dalam jumlah desimal.
currency string diperlukan Mata uang yang dikirim cth. XBT
address string diperlukan Alamat Bitcoin atau email tujuan, atau alamat Ethereum tujuan.

Catatan:
  • Alamat Ethereum harus dalam bentuk checksummed.
  • Kirim Ethereum ke alamat email tidak tersedia.
description string opsional Deskripsi untuk transaksi yang akan disimpan di mutasi akun.
message string opsional Pesan yang dikirimkan ke penerima. Ini hanya relevan ketika dikirim ke alamat email.

Contoh permintaan.

curl \
  -u keyid:keysecret \
  -X POST \
  -d amount=0.001 \
  -d currency=XBT \
  -d [email protected] \
  -d description=Your+reference \
  -d message=Message+for+recipient \
  https://api.mybitx.com/api/1/send
        

Contoh respons

{"success":true}

Izin diperlukan

Perm_W_Send

Kutipan memungkinkan Anda untuk mengunci suatu kurs tukar dalam jangka waktu yang singkat dengan opsi untuk menyetujui atau menolak kutipan.

Kutipan dapat bermanfaat untuk berbagai aplikasi yang berurusan dengan konsumen langsung, dimana fluktuasi harga dapat membingungkan konsumen.

API yang digunakan sebagai berikut: Pertama buat kutipan untuk transaksi yang ingin Anda buat. Jika Anda memutuskan untuk menerima kutipan tersebut sebelum waktunya habis, Anda akan mengkonfirmasi kutipan. Jika Anda memutuskan untuk tidak menerimanya, Anda akan membatalkan kutipan. Anda dapat juga mengambil status dari suatu kutipan sewaktu-waktu.

Buat kutipan

Buta kutipan baru untuk jual atau beli sejumlah tertentu.

Anda dapat merincikan jumlah tepat yang ingin Anda bayarkan atau jumlah tepat yang ingin Anda terima.

Sebagai contoh, untuk membeli 0.1 Bitcoin menggunakan ZAR, Anda akan membuat sebuah kutipan untuk BUY 0.1 XBTZAR. Kutipan yang dikembalikan termasuk jumlah ZAR yang sesuai. Untuk membeli Bitcoin dengan menggunakan ZAR 100, Anda akan membuat kutipan SELL 100 ZARXBT. Kutipan yang muncul akan berupa rincian Bitcoin sebagai jumlah yang akan dikirimkan.

Kesalahan (error) akan muncul jika tidak terverifikasi untuk pasangan mata uang tersebut, atau jika akun Anda tidak memiliki saldo yang cukup untuk mengkonfirmasi kutipan.

Definisi

POST https://api.mybitx.com/api/1/quotes

Argumen

type string diperlukan Tipe yang mungkin: BUY, SELL
base_amount string diperlukan Jumlah beli atau jual dalam pasang mata uang dasar.
pair string diperlukan Pasang mata uang untuk trading cth. XBTZAR, XBTMYR, ETHXBT. Pasang ini juga dapat dibalikkan jika Anda ingin jual atau beli dari mata uang pasang (cth. ZARXBT).

Contoh permintaan.

curl \
  -u keyid:keysecret \
  -X POST \
  -d type=BUY \
  -d pair=XBTZAR \
  -d base_amount=0.1 \
  https://api.mybitx.com/api/1/quotes

Contoh respons

{
  "id": "1324",
  "type": "BUY",
  "pair": "XBTZAR",
  "base_amount": "0.1",
  "counter_amount": "1234.24",
  "created_at": 1418377612342,
  "expires_at": 1418377912342,
  "discarded": false,
  "exercised": false
}

Izin diperlukan

Perm_W_Orders

Dapatkan kutipan

Dapatkan status terbaru dari suatu kutipan.

Definisi

GET https://api.mybitx.com/api/1/quotes/:id

Argumen

id string diperlukan ID kutipan yang ingin dicari.

Contoh permintaan.

$ curl -u keyid:keysecret https://api.mybitx.com/api/1/quotes/1324

Contoh respons

{
  "id": "1324",
  "type": "BUY",
  "pair": "XBTZAR",
  "base_amount": "0.1",
  "counter_amount": "1234.24",
  "created_at": 1418377612342,
  "expires_at": 1418377912342,
  "discarded": false,
  "exercised": false
}

Izin diperlukan

Perm_R_Orders

Konfirmasi kutipan

Konfirmasi kutipan untuk melakukan trade. Jika ada saldo yang cukup di akun Anda, saldo akan terpotong dan jumlah yang diinginkan akan masuk.

Kesalahan (error) akan muncul jika kutipan tersebut telah kadaluwarsa atau jika Anda tidak memiliki saldo yang mencukupi.

Definisi

PUT https://api.mybitx.com/api/1/quotes/:id

Argumen

id string diperlukan ID kutipan yang ingin dikonfirmasi.

Contoh permintaan.

$ curl -u keyid:keysecret -X PUT https://api.mybitx.com/api/1/quotes/1324

Contoh respons

{
  "id": "1324",
  "type": "BUY",
  "pair": "XBTZAR",
  "base_amount": "0.1",
  "counter_amount": "1234.24",
  "created_at": 1418377612342,
  "expires_at": 1418377912342,
  "discarded": false,
  "exercised": true
}

Izin diperlukan

Perm_W_Orders

Batalkan kutipan

Batalkan kutipan. Setelah kutipan dibatalkan, kutipan tidak dapat dikonfirmasi walaupun belum kadaluwarsa.

Definisi

DELETE https://api.mybitx.com/api/1/quotes/:id

Argumen

id string diperlukan ID kutipan yang ingin dibatalkan.

Contoh permintaan.

$ curl -u keyid:keysecret -X DELETE https://api.mybitx.com/api/1/quotes/1324

Contoh respons

{
  "id": "1324",
  "type": "BUY",
  "pair": "XBTZAR",
  "base_amount": "0.1",
  "counter_amount": "1234.24",
  "created_at": 1418377612342,
  "expires_at": 1418377912342,
  "discarded": true,
  "exercised": false
}

Izin diperlukan

Perm_W_Orders

Peringatan beta: API ini masih dalam fase beta. Artinya, API ini mungkin akan melalui perubahan-perubahan yang belum kompatibel.

API websocket menyediakan akses streaming ke data pasar. Hal ini lebih efisien dan menyediakan latensi informasi yang lebih rendah dibandingkan penjajakan papan order dan perdagangan terbaru secara berulang-ulang, tetapi lebih rumit untuk dilakukan.

Protokol streaming bekerja dengan mewajibkan klien untuk menyimpan papan order ke catatan dalam memori. Pesan-pesan update kemudian dikirim dari server dan klien menggunakannya untuk memperbarui salinan dari papan order. Jika mereka diterapkan dengan benar dan sepenuhnya, maka papan order yang dilihat klien akan sama persis dengan apa yang dilihat pada server.

Protokol

Status klien harus terdiri dari data berikut ini:

  • nomor urut
  • daftar order bid (id, harga, volume)
  • daftar order ask (id, harga, volume)
  • daftar trade

Setiap pesan update yang dikirim dari server memiliki nomor urut yang meningkat. Pesan dengan nomor urut n dapat diterapkan kepada urutan keadaan n-1 untuk menghasilkan urutan keadaan n.

Sebuah pesan dapat terdiri dari beberapa update yang harus diterapkan secara atomik dan berurutan.

Jika sebuah update diterima tidak sesuai urutan (sebagai contoh, urutan update n+2 atau n-1 diterima setelah urutan update n), klien tidak dapat meneruskan dan harus menginisiasi ulang keadaan tersebut.

Ada tiga jenis update:

Buat

Tambahkan order bid atau ask ke papan order dengan id, harga, dan volume yang diberikan.

{
    "order_id": "12345678",
    "type": "BID",
    "price": "1234.00",
    "volume": "1.23"
}

Hapus

Hapus order dalam papan order dengan id tertentu.

{
    "order_id": "12345678"
}

Trade

Mengurangi volume yang besar dari suatu order dalam papan order (maker_order_id) dan menambahkan sebuah trade ke daftar trading.

{
    "base": "0.1",
    "counter": "5232.00",
    "maker_order_id": "12345678",
    "taker_order_id": "87654321",
}

Contoh

Order baru akan dibuat di bawah harga pasar

Dalam kasus ini, sebuah pesan update akan dikirim berisi satu update untuk membuat.

Order pasar (market order) dibuat dan akan langsung terisi penuh

Dalam kasus ini, sebuah pesan update akan dikirim berisi beberapa update trading. Tidak akan ada update 'buat' karena order baru tidak pernah memasuki papan order.

Suatu order yang dibuat dan terisi setengahnya.

Dalam kasus ini, sebuah pesan update akan dikirim berisi beberapa update trading dan update untuk membuat. Volume dalam 'update untuk membuat' adalah volume sisa dari order tersebut.

Order telah dihentikan

Dalam kasus ini, sebuah pesan update akan dikirim berisi satu update untuk menghapus.

Websocket

Protokol streaming terbaru yang dideskripsikan di atas dapat diakses menggunakan websocket. Server harus terlebih dahulu mengirimkan keadaan papan order terkini dan kemudian mengirimkan pesan permintaan update sesegera mungkin. Baik klien maupun server harus mengirim pesan hidup yang teratur untuk menghindari putus koneksi saat masa-masa rendahnya kegiatan pesan update.

Terhubung ke server websocket di: wss://ws.luno.com/api/1/stream/:pair

Peringatan beta: API ini masih dalam fase beta. Artinya, API ini mungkin akan melalui perubahan-perubahan yang belum kompatibel.

Klien harus memulai dengan mengirimkan rincian kunci API:

{
    "api_key_id": "abcdef",
    "api_key_secret": "api_key_secret_goes_here"
}

Server lalu akan mengirimkan papan order saat itu dalam format ini:

{
    "sequence": "24352",
    "asks": [
        {
            "id": "23298343",
            "price": "1234.00",
            "volume": "0.93",
        }
        ],
    "bids": [
        {
            "id": "3498282",
            "price": "1201.00",
            "volume": "1.22"
        }
        ],
    "timestamp": 1528884331021
}

Untuk itu server akan mengirimkan pesan seperti ini:

{
    "sequence": "24353",
    "trade_updates": null, // array of 0 or more trade updates
    "create_update": null, // null or 1 create update
    "delete_update": null, // null or 1 delete update
    "timestamp": 1528884332021
}

Sebuah pesan kosong adalah sebuah pesan yang menunjukkan keaktifan.

Jika terdapat kesalahan ketika memproses sebuah update (misalnya update rusak) atau ketika ada kesalahan jaringan atau timeout (misalnya menyimpan pesan hidup yang tidak diterima tepat waktu), klien harus menutup koneksi dan menghubungkan ulang agar dapat menginisiasi ulang keadaannya. Sangat penting untuk klien menerapkan kemunduran eksponensial bagi seluruh penghubungan ulang untuk menghindari kelebihan muatan pada server dalam kasus terjadinya kesalahan.

Merchant API Luno hanya tersedia untuk partner dengan volume tinggi. Jika Anda tertarik untuk menerima pembayaran Bitcoin sebagai merchant, harap hubungi Luno Support.

  • 2018-07-16: Menambahkan API papan order agregat. Limit rate untuk data pasar akan ditambahkan menjadi 1 per detik. Data pasar mungkin akan mengalami cache hingga 1 detik.
  • 2018-06-29: Menambahkan parameter post_only ke POST /api/1/postorder.
  • 2018-06-15: Memperbaharui PHP dan Python SDK URLs.
  • 2018-06-13: Menambahkan timestamp ke respons streamer papan order.
  • 2018-06-08: Diperbaharui ke Go SDK URL.
  • 2017-12-23: Menambahkan maker_order_id dan taker_order_id untuk streaming update trade terbaru. Tidak berlaku lagi order_id.
  • 2017-10-31: OAuth2 tidak lagi tersedia untuk aplikasi baru.
  • 2017-10-16: Memperbaharui /api/1/trades untuk hanya menghasilkan BID atau ASK dan ini mungkin lag di belakang data terbaru.
  • 2017-07-02: Websocket server diperbaharui menjadi wss://ws.luno.com.
  • 2017-03-02: Menambahkan /api/1/fee_info yang mengirimkan informasi biaya dan volume trading 30 hari Anda.
  • 2016-11-21: The /api/1/trades maksimal 100 hasil dikembalikan per panggilan.
  • 2016-11-01: Menghapus limit 50 alamt terima di POST /api/1/funding_address untuk mengizinkan pembuatan alamat terima unlimited untuk tiap akun. Pembuatan alamat dibatasi 1 tiap jam, dengan rentetan hingga 10 panggilan berurutan.
  • 2016-08-10: Menambahkan GET /api/1/listtrades untuk memperbolehkan pembuatan daftar trade terbaru. Mohon dicatat bahwa trade akan dihapus dari respons GET /api/1/listorders GET /api/1/orders/:id.
  • 2016-08-05: Menambahkan bagian Streaming API
  • 2016-07-25: Menambahkan parameter opsional beneficiary_id untuk POST /api/1/withdrawals.
  • 2016-05-29: Error code 429 dapat muncul jika limit kurs terlewati. Ini akan menjadi default pada 2016-07-01.
  • 2016-04-04: Menambahkan kolom completed_timestamp untuk GET /api/1/listorders dan respons GET /api/1/orders/:id.
  • 2016-02-05: Menambahkan since opsional untuk GET /api/1/trades dan menambahkan kolom is_buy untuk respons.
  • 2015-09-14: Menambahkan POST /api/1/marketorder untuk memperbolehkan pembuatan order market.
  • 2015-07-29: Menambahkan Perm_R_Beneficiaries dan izin Perm_W_Beneficiaries. Anda kini dapat membuat kunci API baru jika Anda membutuhkan izin ini.
  • 2015-06-08: Mengubah nama GET /api/1/withdrawals/ to GET /api/1/withdrawals dan POST /api/1/withdrawals/ ke POST /api/1/withdrawals untuk memastikan konsistensi dengan titik akhir lainnya. URL lama tidak lagi digunakan.
  • 2015-05-28: Menambahkan POST accounts untuk membuat akun tambahan dalam mata uang yang spesifik.
  • 2015-05-07: Menambahkan kolom "Name" pada respons "Balance"
  • 2015-04-25:
    • Menambahkan bagian "Akun".
    • Menambahkan transaksi akun dan panggilan transaksi pending.
    • Menambahkan bagian "Izin".
    • Mendokumentasikan izin mana yang diperlukan untuk tiap panggilan.
    • Pembaruan deksripsi dari panggilan "send". Pin tidak lagi diperlukan.
    • Menambahkan parameter "nama" ke POST /api/1/funding_address.
  • 2015-03-27: Menghasilkan daftar trade untuk sebuah order pada GET orders/:id jika order tersebut memiliki trade apapun.
  • 2015-01-30: Klarifikasi interpretasi base, counter, base_fee dan counter_fee dalam respons list_orders dimana counter_fee adalah nonzero untuk order beli dan dimana base_fee adalah nonzero untuk order jual.
  • 2014-12-17: Parameter jumlah untuk permohonan penarikan kini tidak termasuk biaya penarikan.
  • 2014-12-12:
    • Menambahkan API Quotes baru.
    • Panggilan beta transactions tidak lagi digunakan.
  • 2014-12-04: balancekini dapat digunakan untuk menghasilkan saldo seluruh akun.
  • 2014-08-26:
    • Menambahkan panggilan Kirim API.
    • Menambahkan API OAuth2.
  • 2014-06-10: Order yang dipasang melalui API tidak lagi tunduk pada batas yang berbeda dibandingkan dengan order yang ditempatkan melalui situs web.
  • 2014-06-02:
    • Anda kini dapat membuat beberapa kunci API dengan perizinan yang berbeda (misalnya read-only, read/write).
    • Menambahkan panggilan untuk mengumpulkan, mengambil, dan membatalkan permohonan penarikan dana.
    • Menambahkan link ke perpustakaan klien Android.
  • 2014-05-29:
    • Nama host untuk panggilan API telah diubah menjadi api.mybitx.com.
    • Menambahkan panggilan eksperimen untuk menghasilkan daftar transaksi.
    • Menambahkan panggilan untuk mengalokasi alamat terima baru.
    • Panggilan alamat terima kini akan menampilkan jumlah yang diterima alamat tersebut.
    • Anda kini dapat meminta listorders untuk menampilkan daftar order yang tersedia saja.
  • 2014-04-15: Sebelumnya, order yang dibuat melalui API akan kadaluwarsa setelah 24 jam. Kini, order yang dibuat melalui API tidak akan mengalami kadaluwarsa. Perilaku ini kini sama dengan order yang ditempatkan melalui situs web.
  • 2014-01-25:
    • Panggilan baru funding_address telah ditambahkan untuk mengambil alamat bitcoin yang Anda perlukan untuk mendanai saldo akun trading Anda.
  • 2014-01-21:
    • API telah diperluas jangkauannya untuk mendukung beberapa pasang aset.
    • Panggilan baru balance telah ditambahkan ke permintaan saldo akun trading.
    • Semua URL telah dinamai dari /api/1/BTCZAR/x ke /api/1/x?pair=XBTZAR. URL lama tidak akan digunakan lagi.
    • getlimits: Panggilan ini tidak lagi digunakan. Mohon gunakan panggilan baru balance.
    • ticker: Kode currency tidak lagi digunakan.
    • orderbook: Kode currency tidak lagi digunakan.
    • trades: Kode currency tidak lagi digunakan.
    • listorders: Kolom btc, zar, fee_btc dan fee_zar tidak lagi digunakan. Mohon gunakan base, counter, fee_base, fee_counter.
    • Indikator pasar yang terpasang akan dihapus karena tidak ada yang menggunakannya.
    • Semua fitur yang tidak digunakan lagi akan tetap berfungsi dalam dua bulan.
  • 2014-01-06:
    • listorders: Menambahkan fee_btc dan fee_zar.
    • listorders: Menghapus status SETTLEMENT (tidak lagi relevan).
    • ticker: Menghapus mtgox_price (gunakan API Mt Gox).

Tidak ada kata terlambat untuk memulai.
Beli, simpan, serta pelajari Bitcoin dan Ethereum sekarang.

Desktop Icon Apple App Store Logo Google Play Store Logo