Paramètres de requête communs
Les endpoints de liste de WEEGLOO (les GET qui renvoient une collection, comme GET /spaces/{spaceId}/contents) acceptent des paramètres de requête communs. Avec ces paramètres, vous limitez le nombre d'éléments renvoyés par page, définissez le critère de tri, récupérez les ressources liées en même temps, ne sélectionnez que les champs dont vous avez besoin, restreignez la liste par des conditions, et passez à la page suivante ou précédente.
Ces paramètres se comportent de la même manière quel que soit le type de ressource. Chaque référence de ressource ne décrit que les conditions propres à cette ressource et renvoie à cette page pour les paramètres communs traités ici.
Paramètres
| Paramètre | Type | Description |
|---|---|---|
limit | integer | Nombre d'éléments à renvoyer par page. De 1 à 100. Valeur par défaut 15. |
skip | integer | Nombre d'éléments à ignorer. Valeur par défaut 0. Pour la pagination, utilisez le curseur (next, prev) plutôt que skip. Voir Pagination (curseur) ci-dessous. |
next | string | Curseur de la page suivante. Obtenu depuis links.next dans la réponse précédente. |
prev | string | Curseur de la page précédente. Obtenu depuis links.prev dans la réponse précédente. |
order | string | Critère de tri. Séparez plusieurs critères par des virgules pour un tri multiniveau (par exemple sys.createdAt,sys.id). Valeur par défaut sys.createdAt,sys.id. Un champ commençant par fields. inclut la locale (par exemple fields.title.en-US). |
include | integer | Niveau auquel les ressources liées sont dépliées et récupérées. 0=par défaut, 1=ressources liées, 2=relations imbriquées, 3=complet. Valeur par défaut 0. |
select | string | Liste, séparée par des virgules, des champs à inclure (par exemple sys.id,sys.createdAt) ou à exclure (par exemple -sys.id) dans le résultat. Ne mélangez pas inclusion et exclusion dans une même requête. |
filter | (condition) | Restreint la liste par des conditions. Voir Filtre ci-dessous pour le format. |
Les types de champs sys utilisés dans order et select sont répertoriés dans Propriétés système (sys).
Filtre
Les conditions de filtre ne sont pas encapsulées dans filter[] ; vous les envoyez directement comme paramètres de requête. Le format est {champ}[{opérateur}]={valeur}, et si vous omettez l'opérateur, il est interprété comme eq. Pour l'ensemble des opérateurs disponibles, voir Opérateurs ci-dessous.
{champ}[{opérateur}]={valeur}Par exemple, pour ne récupérer que les éléments dont le name commence par gourde, envoyez name[prefix]=gourde. Les règles et les points de vigilance sont les suivants.
- N'encapsulez pas les conditions dans
filter[]. Une encapsulation commefilter[name[prefix]]=gourdene fonctionne pas. - Plusieurs conditions sont combinées par un ET. Seuls les éléments qui les satisfont toutes sont conservés ; la recherche OU, où il suffit de satisfaire une seule de plusieurs conditions, n'est pas prise en charge. Pour faire correspondre l'une de plusieurs valeurs dans un même champ, utilisez
in. - Une condition
fields.inclut la locale. Par exemple,fields.file.ko-KR.mimeGroups=Imagene conserve que les fichiers image dans une liste Media, etsys.createdAt[gte]=2026-06-01T00:00:00Zne conserve que les éléments créés après ce moment. - Pour filtrer ou trier une liste Content par une condition
fields., vous devez aussi indiquer le Content Type. Vous devez envoyersys.contentType.sys.iden même temps (uniquement pour la liste/contents) ; un simplecontentType=ne peut pas s'y substituer. Pour plus de détails, voir la référence Content.
Opérateurs
| Opérateur | Signification | Valeur |
|---|---|---|
eq | Égal. Interprété ainsi si l'opérateur est omis. | Valeur unique |
ne | Différent | Valeur unique |
in | Égal à l'une des valeurs énumérées | Liste de valeurs |
nin | Différent de chacune des valeurs énumérées | Liste de valeurs |
all | Un champ de type tableau contient toutes les valeurs énumérées | Liste de valeurs |
exists | Présence ou non d'une valeur | true ou false |
prefix | Correspondance par préfixe | Valeur unique |
gt / gte | Supérieur à / supérieur ou égal à | Valeur unique |
lt / lte | Inférieur à / inférieur ou égal à | Valeur unique |
regex | Correspondance par expression régulière. Recherche avancée uniquement (voir Recherche avancée ci-dessous). | Expression régulière |
near | Un champ Location situé à une distance donnée d'un point. Recherche avancée uniquement. | longitude,latitude,distance (distance en kilomètres) |
within | Un champ Location à l'intérieur d'un polygone. Recherche avancée uniquement. | Au moins trois paires de coordonnées longitude,latitude jointes bout à bout |
Les champs RichText et Json ne peuvent pas faire l'objet d'une recherche, ils ne peuvent donc pas être utilisés dans des conditions de filtre.
Recherche avancée (Advanced Search)
Les opérateurs regex, near et within ainsi que la recherche plein texte ne fonctionnent qu'en recherche avancée. Vous activez la recherche avancée en ajoutant l'en-tête X-Weegloo-Advanced-Search: true à une requête de liste, et le même en-tête est renvoyé dans la réponse.
- Recherche plein texte : lorsque vous utilisez
eqsur un champ texte (LongText) pour lequel la recherche plein texte est activée, la requête trouve non seulement les valeurs exactement identiques, mais aussi les éléments qui contiennent cette valeur, par correspondance partielle et approchée. Si la recherche avancée n'est pas activée, ou si votre offre ne propose pas la recherche avancée, le mêmeeqfonctionne comme une correspondance exacte. - Recherche Location :
near(rayon) etwithin(polygone) ne s'appliquent qu'aux champs Location et ne fonctionnent qu'en recherche avancée. - Si vous envoyez
regex,nearouwithindans une requête où la recherche avancée n'est pas disponible, ils ne sont pas acceptés.
Pagination (curseur)
Le corps d'une réponse de liste contient un objet links, qui contient next et prev. links.next est le chemin complet vers la page suivante.
/v1/spaces/HnQ32YiH/contents?limit=15&next=<curseur>Il y a deux façons de récupérer la page suivante. Vous pouvez appeler le chemin links.next tel quel, ou extraire la valeur du curseur next depuis links.next et la passer comme paramètre next de votre requête suivante. S'il n'y a pas de links.next, c'est la dernière page. Vous passez à la page précédente de la même manière avec links.prev.
N'augmentez pas skip pour changer de page. Si des éléments sont ajoutés ou supprimés entre deux appels de liste, la position de skip se décale et des éléments peuvent être omis ou dupliqués. Le curseur (next, prev) ne présente pas ce problème.
Voici un exemple de la structure d'une réponse de liste. Le sys.type de l'enveloppe est TotalPageResponse, items contient le tableau d'éléments et links contient les chemins de navigation.
{
"sys": { "type": "TotalPageResponse" },
"limit": 15,
"totalCount": 42,
"items": [
{
"sys": {
"id": "3trmXRM3RqbgSnifyg7PUl8DzDgDzP",
"type": "Content",
"space": { "sys": { "id": "HnQ32YiH", "type": "Refer", "targetType": "Space" } },
"createdAt": "2026-06-18T09:51:14.597Z",
"updatedAt": "2026-06-18T09:51:44.128Z",
"version": 2,
"status": "Published"
}
}
],
"links": {
"self": "/v1/spaces/HnQ32YiH/contents?limit=15",
"next": "/v1/spaces/HnQ32YiH/contents?limit=15&next=Q3Vyc29yVmFsdWU"
}
}totalCount est le nombre total d'éléments qui correspondent aux conditions, et limit est la taille de page appliquée à cette réponse. items ne contient que les éléments appartenant à cette page.
Documents connexes
- Propriétés système (sys) : les champs
sysutilisés dansorderetselect. - Conventions : type de média, JSON Patch et concurrence.
