Pagination, filtres & tris
Fonctionnalités récurrentes et paramètres
Pagination
Les endpoints de liste retournent des résultats paginés.
*/!* Les booléens doivent être figurés numériquement à l’intérieur des chaînes de requête !
Paramètres de chaîne de requête :
paginate=1|0=> Active/désactive la pagination. Par défaut :1.
Exemples :
api/formats=> Modèles paginés.api/formats?paginate=1=> Modèles paginés.api/formats?paginate=0=> Formats non paginés.
Filtres
Vous pouvez appliquer des critères de sélection de ressource. Il est possible de filtrer sur plusieurs critères en utilisant plusieurs paramètres de chaîne de requête filters, séparés par un ’&’ (comme pour chaque paramètre de chaîne de requête).
*/!* Les booléens doivent être figurés numériquement à l’intérieur des chaînes de requête !
Paramètres de chaîne de requête :
filters[champ][opérateur]=valeur=> Ressource filtrée surchampdont la valeur correspond àvaleuravecopérateurappliqué.
Exemples :
api/formats?filters[display_name][$contains]=postcard=> nécessite des formats avec “postcard” dans le nom d’affichage.api/formats?filters[display_name][$contains]=postcard&filters[rv][$eq]=0=> nécessite des formats avec “postcard” dans le nom d’affichage, mais pas rv.
Opérateurs autorisés :
| Opérateur | Description |
|---|---|
| $eq | Égal |
| $eqc | Égal (sensible à la casse) |
| $ne | Non égal |
| $lt | Inférieur à |
| $lte | Inférieur ou égal à |
| $gt | Supérieur à |
| $gte | Supérieur ou égal à |
| $in | Inclus dans un tableau |
| $notIn | Non inclus dans un tableau |
| $contains | Contient |
| $notContains | Ne contient pas |
| $containsc | Contient (sensible à la casse) |
| $notContainsc | Ne contient pas (sensible à la casse) |
| $null | Est null |
| $notNull | N’est pas null |
| $between | Est entre |
| $startsWith | Commence par |
| $startsWithc | Commence par (sensible à la casse) |
| $endsWith | Se termine par |
| $endsWithc | Se termine par (sensible à la casse) |
| $or | Joint les filtres dans une expression “ou” |
| $and | Joint les filtres dans une expression “et” |
Tris
Les collections de ressources peuvent être triées sur plusieurs champs, ascendant ou descendant (par défaut : ascendant).
Paramètres de chaîne de requête :
sort[ordre]=champ%3Adirection=> Ressources triées surchamp, ordonnées pardirection, le tri étant appliqué d’abord selonordre(facultatif).
Exemples :
/api/formats?sort=nb_page=> Formats par nb_page croissant./api/formats?sort[0]=nb_page%3Aasc&sort[1]=width%3Adesc=> Formats par nb_page croissant d’abord, largeur décroissante ensuite.
Inclusions
La plupart des ressources permettent l’inclusion de ses relations avec d’autres ressources. Les relations peuvent être simples ou multiples, directes ou imbriquées. Différentes relations peuvent être interrogées.
La convention de dénomination des relations est camelCase avec une lettre minuscule en premier, même lorsque le résultat doit être inclus dans un champ snake_case. Si la relation est une collection, elle doit alors être au pluriel, sauf pour les médias, qui sont déjà au pluriel.
Paramètres de chaîne de requête :
include=<relations>=> relations étant une liste séparée par ’,’, commerelation1,relation2,relation3. L’imbrication est symbolisée par un ’.‘. Par exemple,relation1.relation1b.
Exemples :
api/libraries/13dee9a4-949c-4e56-afef-3ce917c56d74?include=mediaType