Parámetros de consulta comunes
Los endpoints de listado de WEEGLOO (los GET que devuelven una colección, como GET /spaces/{spaceId}/contents) aceptan parámetros de consulta comunes. Con estos parámetros limitas cuántos elementos devuelve una página, defines el criterio de ordenación, traes recursos relacionados en la misma respuesta, seleccionas solo los campos que necesitas, acotas la lista mediante condiciones y avanzas a la página siguiente o anterior.
Estos parámetros se comportan igual con independencia del tipo de recurso. La referencia de cada recurso describe solo las condiciones propias de ese recurso y remite a esta página para los parámetros comunes que se tratan aquí.
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
limit | integer | Número de elementos que se devuelven por página. De 1 a 100. Valor predeterminado 15. |
skip | integer | Número de elementos que se omiten. Valor predeterminado 0. Para paginar, usa el cursor (next, prev) en lugar de skip. Consulta Paginación (cursor) más abajo. |
next | string | Cursor de la página siguiente. Se obtiene de links.next en la respuesta anterior. |
prev | string | Cursor de la página anterior. Se obtiene de links.prev en la respuesta anterior. |
order | string | Criterio de ordenación. Se separan varios criterios con comas para una ordenación de varios niveles (p. ej. sys.createdAt,sys.id). Valor predeterminado sys.createdAt,sys.id. Un campo que empieza por fields. incluye el locale (p. ej. fields.title.en-US). |
include | integer | Nivel hasta el que se despliegan y se traen los recursos relacionados. 0=predeterminado, 1=recursos relacionados, 2=relaciones anidadas, 3=todo. Valor predeterminado 0. |
select | string | Lista, separada por comas, de los campos que se incluyen (p. ej. sys.id,sys.createdAt) o se excluyen (p. ej. -sys.id) en el resultado. No mezcles inclusión y exclusión en una misma petición. |
filter | (condición) | Acota la lista mediante condiciones. Consulta el formato en Filtro más abajo. |
Los tipos de campos sys que se usan en order y select se pueden consultar en Propiedades del sistema (sys).
Filtro
Las condiciones de filtro no se envuelven en filter[], sino que se envían directamente como parámetros de consulta. El formato es {campo}[{operador}]={valor} y, si omites el operador, se interpreta como eq. Para ver el conjunto completo de operadores disponibles, consulta Operadores más abajo.
{campo}[{operador}]={valor}Por ejemplo, para obtener solo los elementos cuyo name empieza por Vaso, envía name[prefix]=Vaso. Las reglas y advertencias son las siguientes.
- No envuelvas las condiciones en
filter[]. Envolverlas como enfilter[name[prefix]]=Vasono funciona. - Varias condiciones se combinan con AND. Solo quedan los elementos que las cumplen todas; no se admite la búsqueda OR, en la que basta con cumplir una de varias condiciones. Para que un mismo campo coincida con uno de varios valores, usa
in. - Una condición
fields.incluye el locale. Por ejemplo,fields.file.ko-KR.mimeGroups=Imagedeja solo los archivos de imagen en una lista de Media, ysys.createdAt[gte]=2026-06-01T00:00:00Zdeja solo los elementos creados después de ese momento. - Para filtrar u ordenar una lista de Content por una condición
fields., también hay que indicar el Content Type. Debes enviar tambiénsys.contentType.sys.id(solo en la lista plana/contents); un simplecontentType=no lo sustituye. Para más detalles, consulta la referencia de Content.
Operadores
| Operador | Significado | Valor |
|---|---|---|
eq | Igual. Si omites el operador, se interpreta como este. | Un solo valor |
ne | Distinto | Un solo valor |
in | Igual a uno de los valores enumerados | Lista de valores |
nin | Distinto de todos los valores enumerados | Lista de valores |
all | Un campo de tipo array contiene todos los valores enumerados | Lista de valores |
exists | Si un valor está presente | true o false |
prefix | Coincidencia de prefijo | Un solo valor |
gt / gte | Mayor que / mayor o igual que | Un solo valor |
lt / lte | Menor que / menor o igual que | Un solo valor |
regex | Coincidencia con expresión regular. Solo búsqueda avanzada (consulta Búsqueda avanzada más abajo). | Expresión regular |
near | Un campo Location dentro de una distancia determinada de un punto. Solo búsqueda avanzada. | longitud,latitud,distancia (distancia en kilómetros) |
within | Un campo Location dentro de un polígono. Solo búsqueda avanzada. | Tres o más pares de coordenadas longitud,latitud encadenados |
Los campos RichText y Json no admiten búsqueda, por lo que no se pueden usar en condiciones de filtro.
Búsqueda avanzada (Advanced Search)
Los operadores regex, near y within y la búsqueda de texto completo funcionan solo en la búsqueda avanzada. La búsqueda avanzada se activa añadiendo la cabecera X-Weegloo-Advanced-Search: true a una petición de listado, y la respuesta incluye esa misma cabecera.
- Búsqueda de texto completo: cuando usas
eqen un campo de texto (LongText) que tiene habilitada la búsqueda de texto completo, no solo encuentra los valores exactamente iguales, sino también los elementos que contienen ese valor, mediante coincidencia parcial y aproximada. Si la búsqueda avanzada no está activada, o si tu plan no ofrece búsqueda avanzada, ese mismoeqfunciona como coincidencia exacta. - Búsqueda por Location:
near(radio) ywithin(polígono) solo se aplican a campos Location y solo funcionan en la búsqueda avanzada. - Si envías
regex,nearowithinen una petición que no puede usar la búsqueda avanzada, no se aceptan.
Paginación (cursor)
El cuerpo de una respuesta de listado contiene un objeto links, y dentro de él están next y prev. links.next es la ruta completa a la página siguiente.
/v1/spaces/HnQ32YiH/contents?limit=15&next=<cursor>Hay dos formas de obtener la página siguiente. Puedes llamar directamente a la ruta de links.next, o puedes extraer el valor del cursor next de links.next y pasarlo como parámetro next en tu siguiente petición. Si no hay links.next, es la última página. A la página anterior se llega de la misma manera con links.prev.
Al pasar de página, no aumentes skip. Si se añaden o eliminan elementos entre una llamada al listado y otra, la posición de skip se desajusta y pueden perderse o duplicarse elementos. El cursor (next, prev) no tiene este problema.
El siguiente es un ejemplo de la estructura de una respuesta de listado. El sys.type del envoltorio es TotalPageResponse, items contiene el array de elementos y links contiene las rutas de navegación.
{
"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 es el número total de elementos que cumplen las condiciones, y limit es el tamaño de página aplicado a esta respuesta. items contiene solo los elementos que pertenecen a esa página.
Documentos relacionados
- Propiedades del sistema (sys): los campos
sysque se usan enorderyselect. - Convenciones: tipo de medio, JSON Patch y concurrencia.
