Kode Kesalahan API WEEX Dijelaskan: Perbaiki 40001 hingga 43011 dengan Cepat
Sebagian besar kesalahan API WEEX tidak seperti yang dikatakan pesannya. 40009 API validation failed hampir tidak pernah berarti kunci Anda buruk — biasanya berarti string tanda tangan Anda disusun dalam urutan yang salah. 40102 Trading pair configuration does not exist pada pasangan yang jelas ada biasanya berarti Anda mengirim simbol futures ke domain spot. Membaca kode secara harfiah adalah hal yang mengubah perbaikan sepuluh menit menjadi pekerjaan sepanjang sore.
Ini adalah referensi kerja untuk kode kesalahan API WEEX yang benar-benar ditemui oleh integrasi langsung, dikelompokkan berdasarkan lapisan yang rusak daripada berdasarkan nomor. Setiap kode di bawah ini berasal dari daftar kode kesalahan API WEEX seperti yang diterbitkan pada 27 Juli 2026; aturan tanda tangan, waktu, dan batas kecepatan berasal dari dokumentasi API spot WEEX pada tanggal yang sama. Keduanya berubah, jadi periksa kembali sebelum Anda mengirim.

Satu klarifikasi terlebih dahulu, karena hasil pencarian mencampurnya: artikel ini tentang API bursa mata uang kripto WEEX (api-spot.weex.com dan api-contract.weex.com). Ini tidak ada hubungannya dengan Apache Weex, kerangka kerja UI seluler Alibaba yang sudah pensiun yang berbagi nama dan mengembalikan kesalahan seperti -1001. Jika pelacakan tumpukan Anda menyebutkan WXSDKInstance, Anda berada di manual yang salah.
Bagaimana kode kesalahan API WEEX dikelompokkan
Daftar resmi adalah tabel datar. Dalam praktiknya, kode-kode tersebut masuk ke dalam tujuh lapisan diagnostik, dan mengetahui lapisannya memberi tahu Anda file mana yang harus dibuka. Pengelompokan ini adalah cara tercepat untuk memangkas waktu debugging, karena lapisan 1–4 adalah klien Anda dan lapisan 7 sama sekali bukan bug Anda.
| Lapisan | Kode | Apa yang sebenarnya rusak | Buka ini terlebih dahulu |
|---|---|---|---|
| 1. Kehadiran Header | 40001, 40002, 40003, 40011 | Header yang diperlukan tidak pernah meninggalkan klien Anda | Konfigurasi klien HTTP Anda |
| 2. Validitas Kredensial | 40006, 40009, 40012, 40016 | Kunci, frasa sandi, atau status 2FA salah | Halaman Manajemen API |
| 3. Tanda Tangan dan Waktu | 40005, 40007, 40008 | String prehash, jam, atau Content-Type | Fungsi penandatanganan Anda |
| 4. Akun dan Akses | 40013, 40014, 40018 | Akun dibekukan, cakupan hilang, IP tidak diizinkan | Izin kunci |
| 5. Bentuk Permintaan | 40102, 40305, 40409, 40704, 40707, 40724, 40912, 40913, 41101 | Parameter atau simbol tidak cocok dengan endpoint | Spesifikasi endpoint |
| 6. Mesin Order | 42002, 43001–43011 | Saldo atau batas produk menolak order | Batas produk dan saldo |
| 7. Platform dan Throttle | 429, 40015, 40200, 40725 | Sisi server; coba lagi, jangan tulis ulang | Logika backoff |
Aturan praktis: jika kode dimulai dengan 400, curigai permintaan Anda. Jika dimulai dengan 43, curigai parameter order Anda. Jika 429, 40200 atau 40015, jangan curigai apa pun dan lakukan backoff.
Kesalahan autentikasi API WEEX: 40001 hingga 40018
Pita ini menghasilkan tiket dukungan terbanyak dan masalah kredensial asli paling sedikit. Enam dari kode ini diselesaikan dengan memperbaiki cara header dibuat, bukan dengan membuat kunci baru.
| Kode | Pesan | Penyebab dunia nyata | Perbaikan |
|---|---|---|---|
| 40001 | The request header 'ACCESS_KEY' cannot be empty | Header dihapus oleh proxy atau pustaka klien yang mengubah huruf kecil dan menjatuhkan header yang tidak dikenal | Catat header keluar, bukan yang Anda atur |
| 40002 | The request header 'ACCESS_SIGN' cannot be empty | Tanda tangan dihitung setelah objek permintaan dibekukan | Tanda tangani sebelum pengiriman |
| 40003 | The request header 'ACCESS_TIMESTAMP' cannot be empty | Stempel waktu dibuat tetapi tidak pernah dilampirkan | Lampirkan nilai yang sama dengan yang Anda tanda tangani |
| 40005 | Invalid ACCESS_TIMESTAMP | Detik bukan milidetik, atau string ISO | Kirim stempel waktu milidetik 13 digit |
| 40006 | Invalid ACCESS_KEY | Format kunci salah | Kunci API WEEX dimulai dengan WEEX — periksa apakah Anda tidak menempelkan rahasia |
| 40007 | Invalid Content_Type, please use 'application/json' | Klien menggunakan application/x-www-form-urlencoded secara default | Atur application/json secara eksplisit pada POST |
| 40008 | Request timestamp has expired | Permintaan lebih lama dari jendela validitas 30 detik | Lihat bagian berikutnya — ini adalah bug yang berbeda dari 40005 |
| 40009 | API validation failed | Ketidakcocokan tanda tangan, biasanya urutan prehash | Bangun ulang string prehash dengan tepat |
| 40011 | The request header 'ACCESS_PASSPHRASE' cannot be empty | Frasa sandi dihilangkan karena dokumen mencantumkannya terakhir | Sertakan pada setiap panggilan pribadi |
| 40012 | Incorrect API key/passphrase | Typo frasa sandi, atau kunci dari sub-akun berbeda | Buat ulang dan masukkan kembali keduanya |
| 40013 | User account is frozen | Penangguhan tingkat akun | Kirim perintah kerja dukungan |
| 40014 | Insufficient permissions | Cakupan kunci mengecualikan trading atau penarikan | Terbitkan ulang kunci dengan cakupan yang tepat |
| 40016 | Users must bind a mobile phone or Google Authenticator | Akses API diblokir hingga 2FA diatur | Aktifkan Google Authenticator |
| 40018 | Illegal IP request | IP panggilan berada di luar daftar putih | Lihat bagian domain dasar dan IP di bawah |
Dua detail layak untuk diinternalisasi. Aturan konstruksi tanda tangan WEEX mendefinisikan string prehash sebagai timestamp + method.toUpperCase() + requestPath + "?" + queryString + body, HMAC-SHA256 dengan kunci rahasia Anda, lalu Base64. ? dan string kueri dihilangkan jika tidak ada kueri. Tiga hal yang merusak ini dalam produksi: get huruf kecil, jalur permintaan yang menyertakan host, dan isi JSON yang diserialisasi ulang oleh pustaka HTTP Anda setelah Anda menandatanganinya — urutan kunci berubah, byte berubah, dan Anda mendapatkan 40009.
Detail kedua adalah jebakan penamaan. Teks kesalahan mengutip nama header dengan garis bawah (ACCESS_KEY, ACCESS_SIGN, ACCESS_TIMESTAMP, ACCESS_PASSPHRASE), sementara dokumentasi tanda tangan menulisnya dengan tanda hubung (ACCESS-SIGN, ACCESS-TIMESTAMP). Salin formulir yang digunakan dalam dokumentasi endpoint yang Anda integrasikan dan catat header mentah pada panggilan sukses pertama Anda, daripada mempercayai string kesalahan atau cuplikan blog.
40005 vs 40008: dua bug stempel waktu yang berbeda
Keduanya terus-menerus disamakan, dan perbaikan yang salah membuang waktu paling banyak.
40005 Invalid ACCESS_TIMESTAMP adalah masalah format. Nilainya bukan zaman milidetik 13 digit — biasanya zaman detik 10 digit dari time.time() di Python atau time() di PHP, atau string ISO-8601. Ini gagal secara instan dan konsisten, pada setiap permintaan termasuk yang pertama.
40008 Request timestamp has expired adalah masalah jam atau latensi. Formatnya benar, tetapi nilainya lebih dari 30 detik dari waktu server WEEX. Permintaan hanya berlaku selama 30 detik, dan tanda tangan ditolak jika stempel waktu menyimpang lebih dari 30 detik dari jam server API ke kedua arah — mesin yang berjalan cepat gagal sama kerasnya dengan mesin yang berjalan lambat.
| Gejala | Kode Kemungkinan | Penyebab Akar | Perbaikan |
|---|---|---|---|
| Gagal pada 100% permintaan dari panggilan pertama | 40005 | Unit atau tipe salah | Kalikan detik dengan 1000, kirim sebagai integer |
| Berhasil di dev, gagal di container atau VM | 40008 | Drift jam host, tidak ada NTP di image | Sinkronkan ke NTP, atau polling endpoint waktu server publik dan cache offset |
| Gagal hanya di bawah beban atau pada percobaan ulang | 40008 | Stempel waktu dibuat sekali, digunakan kembali di antrean percobaan ulang | Tanda tangani ulang pada setiap percobaan ulang, jangan pernah memutar ulang permintaan yang ditandatangani |
| Gagal hanya untuk pekerjaan batch yang berjalan lama | 40008 | Stempel waktu dibuat di awal pekerjaan, permintaan dikirim beberapa menit kemudian | Buat stempel waktu saat pengiriman |
Drift jam di dalam container adalah penyebab paling umum dari integrasi yang "berhasil kemarin". Jika Anda tidak dapat mengontrol NTP pada host, polling endpoint waktu server saat startup, simpan delta, dan tambahkan ke jam lokal Anda untuk setiap tanda tangan.
Harga --
Penolakan order: 43001 hingga 43011 dan 42002
Setelah autentikasi berlalu, kegagalan berpindah ke mesin pencocokan. Kode-kode ini murah untuk diperbaiki tetapi mahal untuk diabaikan, karena bot yang mencoba ulang order yang ditolak dalam loop ketat akan mengenai pembatas kecepatan dan menutupi masalah sebenarnya.
| Kode | Pesan | Apa yang harus diperiksa |
|---|---|---|
| 42002 | BALANCE NOT ENOUGH | Saldo dalam jenis akun yang benar — dana spot tidak menutupi order futures |
| 43001 | Order does not exist | ID order dari jenis akun berbeda, atau sudah terisi dan dibersihkan |
| 43002 | Order placement failed | Penolakan generik; catat permintaan lengkap dan periksa harga dan ukuran terhadap batas produk |
| 43004 | There are no open orders to cancel | Cancel-all ditembakkan terhadap buku kosong; anggap sebagai jinak, bukan kesalahan |
| 43005 | Exceeds maximum order size | Batas per-order untuk produk tersebut |
| 43006 | Order quantity is less than minimum trading amount | Bandingkan terhadap minTradeAmount pada endpoint produk |
| 43007 | Order quantity exceeds the maximum trading amount | Sumber yang sama, batas atas |
| 43008 / 43011 | Current order price cannot be less than 0 | Bidang harga negatif atau tidak terurai |
| 43009 | Current order price exceeds the limit | Harga di luar pita yang diizinkan |
| 43010 | Trade amount cannot be less than 0 | Bidang jumlah negatif atau tidak terurai |
| 40912 | Single cancellation cannot exceed 50 | Chunk pembatalan batch menjadi kelompok 50 |
| 40913 | Either orderId or clientId must be provided | Berikan satu pengidentifikasi; tidak mengirim keduanya adalah bug diam dalam kode kondisional |
| 40305 | client_uid length should not exceed 40 characters | Potong ID order klien Anda dan hapus karakter khusus |
Satu hal yang menangkap trader berpengalaman adalah 40704 Only query data for the last three months. Backfilling riwayat trading lebih dari 90 hari tidak akan berfungsi melalui endpoint kueri standar, jadi pekerjaan rekonsiliasi apa pun perlu mempertahankan pengisian saat terjadi daripada berasumsi bahwa ia dapat mengambilnya kembali nanti.
Apa yang memicu 429 pada API WEEX
Aturan pembatasan akses menetapkan default 10 permintaan per detik kecuali endpoint individu mengatakan sebaliknya. Melebihinya mengembalikan 429 Too Many Requests, yang juga dimunculkan oleh daftar kesalahan sebagai "Requesting too frequently".
Tiga properti dari batas itu mengubah cara Anda harus mendesain di sekitarnya:
- Permintaan terautentikasi dihitung per kunci API, permintaan tidak terautentikasi per IP publik. Dua bot yang berbagi satu kunci berbagi satu anggaran. Dua bot di satu server dengan kunci terpisah tidak — tetapi polling data pasar publik mereka melakukannya, karena itu dihitung berdasarkan IP.
- Order batch di beberapa pasangan dihitung sebagai satu permintaan. Dokumentasi memberikan contoh 4 pasangan trading × 10 order = 1 permintaan. Jika Anda menempatkan grid atau menyeimbangkan kembali buku, batching bukanlah optimasi mikro; itu adalah perbedaan 40× dalam throughput.
- Percobaan ulang dihitung. Backoff eksponensial yang mencoba ulang segera pada
429akan membuat Anda tetap tercekik. Mundur dengan jitter, dan jatuhkan order basi daripada mengantrekannya.
Anggaran praktis: cadangkan sekitar 60–70% dari batas untuk aliran order, sisakan sisanya untuk polling saldo dan posisi, dan pindahkan apa pun yang Anda bisa ke WebSocket. Buku order dan data ticker melalui REST adalah alasan paling umum mengapa bot trading yang berperilaku baik akhirnya dibatasi kecepatannya.
Kesalahan domain dasar dan daftar putih IP yang salah
Dua kesalahan melaporkan diri mereka sendiri dengan cukup buruk sehingga layak mendapatkan bagiannya sendiri.
40102 Trading pair configuration does not exist pada pasangan yang dapat Anda lihat trading di situs biasanya bukan masalah simbol. WEEX membagi REST di https://api-spot.weex.com untuk spot dan https://api-contract.weex.com untuk kontrak. Simbol futures yang dikirim ke domain spot diselesaikan ke pasangan yang benar-benar tidak ada di domain itu, dan kesalahannya secara teknis akurat dan benar-benar menyesatkan. Periksa host sebelum Anda memeriksa simbol.
40018 Illegal IP request berarti IP panggilan tidak ada dalam daftar putih kunci. Bagian yang canggung adalah apa yang mengubahnya tanpa Anda sadari: penyedia cloud yang merotasi IP egress, failover gateway NAT, koneksi ulang VPN, atau alamat IPv6 yang digunakan saat Anda memasukkan IPv4 ke daftar putih. Panduan dukungan adalah bahwa Anda dapat membuat kunci yang tidak terikat ke alamat IP, dan untuk kunci data pasar hanya baca, itu adalah pertukaran yang masuk akal. Untuk kunci dengan izin trading atau penarikan, tidak — kunci trading yang tidak terikat adalah kredensial pembawa yang berfungsi dari mana saja di internet. Sematkan IP, dan pantau perubahan daripada menghapus kontrol.
Konteks yang lebih luas tentang bagaimana permukaan REST dan WebSocket cocok bersama dibahas dalam penjelas Wiki WEEX tentang apakah WEEX mendukung trading API.
Daftar periksa triase API WEEX 5 menit
Jalankan ini secara berurutan sebelum membuka tiket dukungan. Setiap langkah mengisolasi satu lapisan, dan kegagalan pertama memberi tahu Anda di mana harus berhenti mencari.
| Waktu | Periksa | Kondisi Lulus | Gagal sebagai |
|---|---|---|---|
| 0:00 | Panggil endpoint publik di domain yang benar, tidak ditandatangani | HTTP 200 dengan data | Kesalahan koneksi, atau 40102 jika domain salah |
| 0:30 | Cetak waktu lokal dalam ms di sebelah waktu server | Drift di bawah 5 detik | 40005 (format) atau 40008 (drift) |
| 1:00 | Catat string prehash tepat yang Anda tanda tangani | Cocok dengan timestamp + METHOD + path + ?query + body byte demi byte | 40009 |
| 1:30 | Catat header keluar mentah dari kabel | Keempat header ACCESS hadir, Content-Type adalah application/json | 40001, 40002, 40003, 40007, 40011 |
| 2:00 | Panggil endpoint hanya baca yang ditandatangani, mis. saldo akun | HTTP 200 | 40006, 40012, 40014, 40016, 40018 |
| 3:00 | Ambil endpoint produk untuk simbol Anda | Mengembalikan jumlah trading min dan maks | 40102 |
| 4:00 | Tempatkan order legal terkecil di atas minTradeAmount | Order diterima | 42002, 43005, 43006, 43007 |
| 4:30 | Periksa tingkat permintaan Anda selama menit terakhir | Di bawah 10 per detik berkelanjutan | 429 |
Jika setiap langkah lulus dan panggilan masih gagal, kode yang tersisa — 40013, 40015, 40409, 40725, 41101 — adalah kode yang diminta oleh dukungan WEEX secara eksplisit untuk Anda ajukan perintah kerja. Sertakan stempel waktu permintaan, endpoint, dan kode yang dikembalikan; ketiganya adalah apa yang membuat tiket dapat diselesaikan. Referensi resmi lengkap adalah daftar kode kesalahan API WEEX.
Apa yang kode kesalahan katakan tentang integrasi Anda
Peringkat kegagalan Anda berdasarkan lapisan, bukan berdasarkan frekuensi. Seratus 429 adalah masalah desain throughput yang dapat Anda atur dalam satu sore. Satu 40009 intermiten adalah bug penandatanganan yang akan menjatuhkan order secara diam-diam pada saat yang paling buruk, dan itu adalah satu-satunya yang layak diperbaiki terlebih dahulu. Integrasi yang tetap sehat pada API WEEX berbagi tiga kebiasaan: mereka menandatangani ulang setiap percobaan ulang, mereka tidak pernah mempercayai jam lokal, dan mereka mencatat permintaan kabel daripada permintaan yang mereka maksudkan untuk dikirim.
Siap membangun? Buat dan cakup kunci Anda di halaman API WEEX, mulai dengan kunci hanya baca terhadap endpoint publik, dan hanya tambahkan izin trading setelah daftar periksa triase Anda berjalan bersih dari awal hingga akhir.
FAQ
1. Apa arti kesalahan 40009 pada API WEEX?
API validation failed adalah ketidakcocokan tanda tangan jauh lebih sering daripada kunci yang buruk. Bangun ulang string prehash sebagai timestamp + METHOD + requestPath + "?" + queryString + body, konfirmasikan metodenya huruf besar, dan pastikan pustaka HTTP Anda tidak menyerialisasi ulang isi JSON setelah Anda menandatanganinya.
2. Mengapa permintaan API WEEX saya berfungsi secara lokal tetapi gagal dengan 40008 dalam produksi?
Hampir selalu drift jam host. Stempel waktu yang ditandatangani harus berada dalam 30 detik dari waktu server WEEX, dan container sering berjalan tanpa NTP. Sinkronkan jam host atau cache offset dari endpoint waktu server publik saat startup.
3. Berapa batas kecepatan API WEEX?
Defaultnya adalah 10 permintaan per detik kecuali endpoint menentukan sebaliknya, dihitung per kunci API untuk panggilan terautentikasi dan per IP publik untuk yang tidak terautentikasi, seperti yang didokumentasikan pada 27 Juli 2026. Melebihinya mengembalikan 429.
4. Bisakah saya menggunakan kunci API WEEX tanpa daftar putih IP?
Ya — dukungan WEEX menyarankan membuat kunci yang tidak terikat ke alamat IP saat 40018 Illegal IP request memblokir Anda. Cadangkan itu untuk kunci hanya baca. Kunci trading atau penarikan tanpa batasan IP berfungsi dari mana saja, yang merupakan penurunan keamanan yang berarti.
5. Mengapa saya mendapatkan 40102 untuk pasangan trading yang jelas ada?
Anda mungkin memanggil domain dasar yang salah. Permintaan spot pergi ke https://api-spot.weex.com dan permintaan kontrak ke https://api-contract.weex.com; simbol futures pada host spot menghasilkan kesalahan ini dengan tepat.
6. Apakah API WEEX sama dengan kerangka kerja Apache Weex?
Tidak. API bursa WEEX adalah antarmuka trading REST dan WebSocket. Apache Weex adalah kerangka kerja UI seluler yang dihentikan dengan kode kesalahan yang tidak terkait seperti -1001. Hasil pencarian untuk "weex api" mencampur keduanya.
Peringatan Risiko
Aset kripto tidak stabil, dan memperdagangkannya — secara manual atau melalui API WEEX — dapat mengakibatkan kerugian sebagian atau seluruh dana Anda. Trading otomatis menambahkan mode kegagalan yang tidak dimiliki trading manual: kode kesalahan yang tidak tertangani dapat membiarkan posisi terbuka atau terduplikasi, pembatalan yang dibatasi kecepatan dapat gagal sementara pengisian terus berlanjut, drift jam dapat menolak order pengurang risiko secara diam-diam, dan kunci API tanpa batasan IP atau batas cakupan adalah kredensial yang dapat digunakan penyerang dari mana saja. Trading futures di WEEX melibatkan leverage, yang memperbesar keuntungan dan kerugian serta dapat memicu likuidasi lebih cepat daripada bot dapat bereaksi. Uji dengan ukuran order legal terkecil, gunakan kunci hanya baca hingga penanganan kesalahan Anda terbukti, atur batas posisi dan kerugian di luar logika trading Anda, dan jangan pernah memberikan izin penarikan ke kunci yang tidak membutuhkannya. Tidak ada di sini yang merupakan saran investasi.
Konten ini disediakan hanya untuk tujuan informasi umum dan bukan merupakan nasihat keuangan, investasi, hukum, atau pajak. Setiap acara, reward, promosi online, atau informasi terkait yang disebutkan di sini tidak boleh dianggap sebagai rekomendasi, ajakan, atau undangan untuk membeli, menjual, memperdagangkan, atau melakukan transaksi aset kripto apa pun. Aset kripto sangat fluktuatif dan dapat mengakibatkan kerugian. Ketersediaan layanan, produk, dan acara terkait WEEX dapat berbeda-beda di setiap wilayah. Anda bertanggung jawab untuk memastikan bahwa partisipasi Anda sesuai dengan hukum dan peraturan setempat yang berlaku.
Anda mungkin juga menyukai

Apa Itu Trading Institusional Kripto? Bagaimana Trader Profesional dan Manajer Dana Mengakses Pasar Secara Berbeda

Cara Membangun Bot Trading Kripto dengan API WEEX: Panduan Pemula

Alat Trading Kuantitatif Kripto: Bagaimana Data, Backtesting, dan API Membangun Strategi Otomatis
Cara Menggunakan API Trading Kripto? Panduan untuk Pemula

Apakah Bitcoin Bersiap untuk Breakout Bullish? Indikator Teknis Utama dan Data On-Chain
Bisakah Trading Kuantitatif Kripto Menghasilkan Uang? Risiko dan Realita

Panduan Trading Kuantitatif Bitcoin: Strategi, Alat, dan Risiko

Bagaimana Broker Kripto Menghasilkan Uang dari Bagi Hasil Komisi? Begini Realitas Ekonominya

Penjelasan Batas Rate API WEEX: Angka yang Sering Dilewatkan Pemula
Biaya Trading API WEEX: Stack Biaya Lengkap, Bukan Hanya Maker-Taker

API Exchange Kripto: Apa Fungsinya dan Apa yang Bisa Dilakukan Kunci Anda

Batas Rate Limit API WEEX: Di mana Bot Sering Terkena Error 429

Cara Memulai Trading Kuantitatif Kripto sebagai Individu

Apa Itu Trading Kuantitatif? Panduan untuk Pemula

Saham NFLX: Apa yang Menggerakkan Netflix dan Cara Trading 24/5

Apa itu Bitcoin OTC dan Bagaimana Cara Membeli BTC OTC dengan PKR di Bursa WEEX?
Apa itu USDCoin OTC dan Bagaimana Cara Membeli USDC OTC dengan PKR di WEEX Exchange?

Apa itu Bitcoin OTC dan Bagaimana Cara Membeli BTC OTC dengan VND di WEEX Exchange?

Apa itu Dogecoin OTC dan Bagaimana Cara Membeli DOGE OTC dengan CAD di WEEX Exchange?
Analisis teknikal volatilitas dan kedalaman order book di WEEX

Bagaimana Arsitektur Trading Web Baru WEEX Memberikan Trading Kripto yang Lebih Cepat, Cerdas, dan Efisien
Pengaturan Mode Margin Sekali Klik untuk Semua Pasangan Futures

Apa itu Koin ZKML? Panduan untuk Kripto Privasi & AI





