masalah dengan Panggilan API Quickbase

Oct 24 2020

Menggunakan Dokumentasi API JSON Quickbase di bawah ini. Quickbase API

Saya mencoba memperbarui catatan dengan quickbase melalui recordId seperti di bawah ini dan berfungsi dengan baik.

{
  "to": "my-table-id-goes-here",
  "data": [
    {


      "6": {
        "value": "nancy more is the value to be updated"
      },

"3": {
        "value": "recordId_to_be_used_to_make_updates"
      }

    }
  ]
  
}

Masalah saya: Saya ingin memperbarui di mana email dan userid sama dengan nilai tertentu.

Eg. in normal SQL Queries something like  "update mytable_name set name ='nancy more' where email='[email protected]' and userid=70";

apakah mungkin dengan quickbase. apakah ada cara untuk mencapai itu berdasarkan kode di atas dengan asumsi bidang email adalah 7 dan bidang userid adalah 8 atau apa pun.

Terima kasih

Jawaban

1 NathanHawe Oct 24 2020 at 19:33

Hasil akhirnya dimungkinkan tetapi tidak melalui satu panggilan API. Panggilan API sisipkan / perbarui catatan untuk Quick Base hanya memperbarui catatan ketika bidang kunci disertakan dalam muatan catatan (bidang kunci adalah ID catatan secara default tetapi dapat diubah ke bidang lain dalam tabel). Jika Anda belum mengetahui nilai bidang kunci, Anda harus membuat kueri untuk catatan yang cocok terlebih dahulu dan kemudian menggunakan ID catatan / bidang kunci yang dikembalikan untuk melakukan pembaruan itu.

Misalnya, Anda dapat membuat kueri untuk rekaman dengan email "[email protected]" dan id pengguna adalah 70:

POST https://api.quickbase.com/v1/records/query
QB-Realm-Hostname: host
Authorization: QB-USER-TOKEN userToken
Content-Type: application/json

{
    "from": "tableId",
    "where": "{7.EX.'[email protected]'}AND{8.EX.70}"
}

Anda kemudian dapat menggunakan id dari kumpulan rekaman yang dikembalikan untuk melakukan pembaruan Anda. Cara Anda membaca respons dan membuat permintaan upsert akan bergantung pada bahasa yang Anda gunakan.