problèmes avec l'appel d'API Quickbase

Oct 24 2020

Utilisation de la documentation de l'API JSON Quickbase ci-dessous. API Quickbase

J'essaie de mettre à jour les enregistrements avec quickbase via recordId comme ci-dessous et cela fonctionne bien.

{
  "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"
      }

    }
  ]
  
}

My isssue: Je veux mettre à jour où l' email et l' ID utilisateur sont égaux à une certaine valeur.

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

est-ce possible avec quickbase. existe-t-il de toute façon pour y parvenir en fonction du code ci-dessus en supposant que le champ de courrier électronique est 7 et que le champ userid est 8 ou autre.

Merci

Réponses

1 NathanHawe Oct 24 2020 at 19:33

Le résultat final est possible mais pas via un seul appel API. L'appel API d'insertion / mise à jour des enregistrements pour Quick Base ne met à jour les enregistrements que lorsque le champ clé est inclus dans la charge utile d'enregistrement (le champ clé est l'ID d'enregistrement par défaut mais peut être remplacé par un autre champ de la table). Si vous ne connaissez pas déjà la valeur du champ clé, vous devrez d'abord rechercher les enregistrements correspondants, puis utiliser le champ ID / clé d'enregistrement retourné pour effectuer cette mise à jour.

Par exemple, vous pouvez rechercher des enregistrements où l'e-mail est "[email protected]" et l'ID utilisateur est 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}"
}

Vous pouvez ensuite utiliser les identifiants du jeu d'enregistrements renvoyé pour effectuer votre mise à jour. La façon dont vous allez lire la réponse et faire la demande d'upsert dépendra de la langue que vous utilisez.