Filtering

Narrow collections with query parameters: titles, categories, types and date ranges.

Query parameters

Filters are query parameters on collection endpoints. Combine as many as you need; they all apply.

Shell
curl "https://api.loupe.ch/api/public/cms-events?organization.slug=riveville&title=writing&categories.id[]=0199…"

Text filters match partially and ignore case: title=writing finds "Creative writing workshop". Filters on identifiers match exactly; repeat them with [] to match any of several values.

Available filters

CollectionFiltersOrder
Events /api/public/cms-eventstitle, categories.idMost recently published first
Pages /api/public/cms-pagestitle, categories.id, parent.id, exists[parent]Most recently created first
Bookables /api/public/bookablestitle, bookableType (room or equipment)Alphabetical
Reservations /api/public/reservationsbookable.id, validated, startAt[after], startAt[before], endAt[after], endAt[before]Most recently created first

Only top-level pages: exists[parent]=false. Children of a page: parent.id=<uuid>.

Date ranges

Date filters take a comparison in brackets: after, before, strictly_after and strictly_before.

Shell
curl "https://api.loupe.ch/api/public/reservations?bookable.id=0199…&startAt[after]=2026-10-12&startAt[before]=2026-10-19"

Sorting

Collections come in the fixed order shown above; sort parameters are ignored. When you need another order, for example events by start date, sort on your side after fetching.

Availability

To find which rooms are free on a given day, use the dedicated availability search rather than filtering reservations yourself. See Bookings.