- 25 Aug 2023
- 4 Minutes à lire
- Impression
- SombreLumière
- PDF
API Web Airtable - Utilisation des paramètres filterByFormula ou de tri
- Mis à jour le 25 Aug 2023
- 4 Minutes à lire
- Impression
- SombreLumière
- PDF
Découvrez comment filtrer ou trier les résultats d’une réponse d’API.
Introduction
Disponibilité avec les forfaits | Tous les types de forfaits |
Autorisations | Accès basé sur des jetons : pour effectuer des demandes d’API, vous devrez vous authentifier à l’aide de l’une des méthodes décrites ici. |
Filtrage des entrées dans les demandes d’API
Il existe deux méthodes pour filtrer les entrées dans les demandes d’API :
- La première consiste à appliquer un paramètre de vue dans une demande d’API qui contient la portée des listes d’entréesafin de n’obtenir que les entrées telles qu’elles apparaissent dans une vue de tableau spécifique. Le lien ci-dessus explique en détail comment appliquer le paramètre de vue dans une demande.
- La seconde méthode pour filtrer les entrées dans un appel qui contient la portée des listes d’entrées est d’utiliser le paramètrefilterByFormula, que nous allons aborder plus en détail ci-dessous.
Lorsque vous filtrez une réponse d’API à l’aide du paramètre filterByFormula, vous devez utiliser une formule valide, laquelle va évaluer chaque entrée. Vous devez inclure cette formule dans le tableau de la base dans laquelle l’appel d’API est demandé.
Pour illustrer nos propos, prenons l’exemple d’un tableau où figurent des parfums de glace :
Si nous incluons la portée des listes d’entrées dans une demande d’API dans ce tableau sans paramètres, tous les parfums seront renvoyés. Imaginons maintenant que nous souhaitions seulement renvoyer les parfums ayant obtenu une évaluation de 5 étoiles à l’aide du paramètrefilterByFormula :
La première étape consiste à créer un champ de formule dans le tableau contenant les parfums, qui permet d’évaluer si un parfum a 5 étoiles dans le champ « Évaluation ». Dans cet exemple, il est possible d’utiliser une formule simple (Évaluation = 5) qui donne un résultat booléen vrai/faux. Il est cependant probable que votre cas pratique soit plus complexe.
Comme vous pouvez le voir ci-dessous, la formule saisie fonctionne correctement : seuls les champs « Cookies & Cream » (Cookies et crème) et « Cookie Dough » ont une valeur de 1, car il s’agit des seuls parfums à disposer de 5 étoiles. Nous sommes à présent certains que si nous utilisons cette formule comme paramètre filterByFormula
, les valeurs correctes seront renvoyées avec le temps.
Vous allez ensuite devoir ajouter la formule au paramètre filterByFormula
dans votre demande.
Vous devriez maintenant avoir une URL codée qui ressemble à ceci :https://api.airtable.com/v0/{your_app_id}/Flavors?filterByFormula=Rating%3D5
Vous pouvez maintenant tester la demande dans un outil comme Postman. Dans le test ci-dessous, vous pouvez constater que seuls les parfums « Cookies & Cream » (Cookies et crème) et « Cookie Dough » ont été renvoyés :
Filtrage des dépendances
- Si la réponse ne filtre pas les entrées attendues, nous vous recommandons de commencer par vérifier que la formule figure bien dans la base Airtable, afin de vous assurer qu’elle renvoie les valeurs attendues dans le champ de formule des entrées censées être filtrées.
- Pour toute entrée qui apparaît avec une valeur
0
,false
,NaN
,[]
ou#Error!
dans la formule, le résultat ne sera pas inclus dans la réponse. - Lorsque les paramètres filterByFormula et de vue sont utilisés ensemble, seules les entrées de cette vue qui correspondent à la formule sont renvoyées.
Tri des entrées dans les demandes d’API
Il existe deux méthodes pour trier les entrées dans les demandes d’API :
- La première consiste à appliquer un paramètre de vue dans une demande d’API qui contient la portée des listes d’entréesafin de n’obtenir dans la réponse d’API que les entrées dans leur ordre d’apparition dans une vue de tableau spécifique. Le lien ci-dessus explique en détail comment appliquer le paramètre de vue dans une demande.
- La seconde méthode pour filtrer les entrées dans une demande des listes d’entrées est d’ utiliser le paramètre de tri. Nous allons aborder les principales étapes à suivre ci-dessous.
Nous allons nous servir du tableau des parfums de glace utilisé en tant qu’exemple ci-dessus. Vous voulez probablement renvoyer les parfums en les classant de l’évaluation la plus haute à l’évaluation la plus basse :
Vous allez tout d’abord devoir créer une URL codée à utiliser dans votre demande d’API. Comme avec filterByFormula
ci-dessus, vous pouvez utiliser cet outil pour coder une URL en filtrant sur le champ « Évaluation », avec le critère « desc ». L’URL obtenue devrait ressembler à ceci :
https://api.airtable.com/v0/{your_app_id}/Flavors?sort%5B0%5D%5Bfield%5D=Rating&sort%5B0%5D%5Bdirection%5D=desc
Vous devrez ensuite ajouter l’URL codée en tant qu’objet dans le paramètre de tri de votre demande d’API.
Vous pouvez désormais tester la demande avec un outil tel que Postman afin de voir si le paramètre a fonctionné. Les entrées renvoyées devraient être classées selon leur évaluation, de la plus haute à la plus basse.
Codage d’une URL
Si vous n’utilisez pas notre client JavaScript officiel, Airtable.js, vous allez probablement devoir appliquer un codage d’URL aux valeurs de vos paramètres pour obtenir une URL valide. Pour ce faire, vous pouvez utiliser notre encodeur d’URL en complétant votre formule et d’autres valeurs de paramètres et en copiant l’URL obtenue :
FAQ
Non, vous pouvez uniquement utiliser des noms de champ. Nous vous recommandons d’utiliser les descriptions de champ pour attirer l’attention sur les conséquences d’une modification d’un nom de champ utilisé dans des appels d’API.
Cette formule n’est peut-être pas valide. Nous vous recommandons de vérifier la formule en l’ajoutant dans un champ dans le tableur Airtable. Vous pourrez ainsi voir quelles valeurs la formule devrait normalement filtrer.