ms
Fintech

Dokumentasi API

Tapak pelanggan, pejabat belakang dan semua modul platform berfungsi dengan fail pangkalan data melalui API, dan bukan secara langsung. API mengawal akses, integriti dan ketepatan data masuk.

Deskripsi umum

Bagaimanakah API berfungsi?

API - nod utama platform

Dokumentasi ini menerangkan semua kaedah API untuk tindakan berikut:

  • mendapatkan senarai objek (kaedah senarai)
  • penapisan senarai (kaedah senarai dengan data penapis)
  • mendapatkan maklumat terperinci tentang objek (kaedah tunjukkan)
  • mendapatkan data untuk borang tambah objek (kaedah tambah)
  • menyimpan data sebagai objek baharu (kaedah stor)
  • mendapatkan data untuk borang kemas kini objek (kaedah edit)
  • menyimpan data objek yang dikemas kini (kaedah kemas kini)

Menyemak melalui alamat IP

API hanya menerima permintaan daripada senarai terhad alamat IP (contohnya, daripada tapak akaun pelanggan atau tapak pejabat belakang).

Sebarang permintaan kepada API daripada alamat IP yang tiada dalam senarai yang dibenarkan akan ditolak.

Ini dilakukan untuk mengelakkan serangan DDoS pada API, percubaan untuk memalsukan permintaan dan percubaan penggodam.

Pengguna sentiasa mengakses tapak awam platform (pejabat pelanggan atau pejabat belakang), dan tapak ini sendiri meminta data yang diperlukan daripada API platform. Memandangkan alamat IP tapak ditetapkan, ia akan berada dalam senarai yang dibenarkan.

URL dan kaedah

Semua permintaan API dibuat menggunakan kaedah HTTP berikut:

  • GET untuk senarai, tunjukkan, tambah dan edit
  • POST untuk kedai
  • PUT untuk kemas kini
  • DELETE untuk memadam

Setiap bahagian API mengandungi URL yang permintaan dibuat untuk mendapatkan data yang berkaitan.

Kaedah permintaan HTTP dinyatakan di hadapan setiap URL.

Menghantar permintaan

Setiap permintaan API mesti sentiasa mengandungi 4 pembolehubah:

  1. data (rentetan json dengan tatasusunan data untuk API)
  2. user (rentetan json dengan tatasusunan data tentang pengguna semasa)
  3. time (masa semasa dalam zon waktu UTC)
  4. hash (tandatangan digital dalam bentuk cincang untuk mengesahkan bahawa permintaan kepada API pastinya daripada sumber yang dibenarkan)

Mendapat respons daripada API

Jika permintaan itu berjaya, API sentiasa mengembalikan dua pembolehubah:

  1. status = true (status kejayaan)
  2. data (rentetan json dengan tatasusunan data daripada API)

Jika permintaan gagal, API menunjukkan pembolehubah:

  1. status = false (status ralat)
  2. error (rentetan teks yang menerangkan ralat)

Tandatangan digital

Setiap permintaan API mesti mengandungi pembolehubah cincang yang merupakan tandatangan digital permintaan tersebut.

hash = md5($json . $time . $salt)

  • md5, sha256, bcrypt — algoritma penyulitan yang tersedia
  • $json — rentetan json dengan data permintaan
  • $time — masa dalam format "DD.MM.YYYY HH:MM:SS"
  • $salt — nilai unik tetap ("garam") untuk API platform

Fintech

Dokumentasi mengandungi contoh permintaan API sebenar