Liever iemand spreken? Bel ons op (+31)(0)85-487 4090 of mail naar support@neoforce.eu

Filteren via de Neoforce API

Toegevoegd op woensdag 18 december 2024 16:00 | Laatst gewijzigd op woensdag 8 januari 2025 16:48
75

Dit artikel beschrijft hoe je gegevens kunt filteren via de Neoforce API met behulp van een uitgebreid filtermechanisme. De API ondersteunt nu flexibele en uitgebreide filters waarmee je resultaten kunt ophalen op basis van specifieke zoekcriteria.


Standaardfiltering

De oorspronkelijke schrijfwijze van het filtermechanisme is nog steeds geldig en werkt als volgt:

?filter[createdDate]=2024-12-16 14:31:26

Deze schrijfwijze filtert resultaten waarbij het veld createdDate exact overeenkomt met de opgegeven waarde.


Uitgebreid Filtermechanisme

Met de uitgebreide schrijfwijze kun je flexibeler filters toepassen door gebruik te maken van verschillende vergelijkingsoperatoren. Dit biedt de mogelijkheid om resultaten te zoeken die aan specifieke voorwaarden voldoen.

Schrijfwijze
?filter[veldnaam][operator]=waarde
  • veldnaam: Het veld waarop je wilt filteren (bijvoorbeeld createdDate).
  • operator: De vergelijking die je wilt maken (bijvoorbeeld eq, lt, bt, enz.).
  • waarde: De waarde waarmee het veld moet worden vergeleken (bijvoorbeeld 2024-12-16 14:31:26).

Beschikbare vergelijkingsoperatoren

De volgende operatoren worden ondersteund:

Operator Betekenis Voorbeeld
eq Gelijk aan ?filter[createdDate][eq]=2024-12-16 14:31:26
neq Niet gelijk aan ?filter[createdDate][neq]=2024-12-16 14:31:26
lt Kleiner dan ?filter[createdDate][lt]=2024-12-16
lte Kleiner dan of gelijk aan ?filter[createdDate][lte]=2024-12-16
gt Groter dan ?filter[createdDate][gt]=2024-12-16
gte Groter dan of gelijk aan ?filter[createdDate][gte]=2024-12-16
sw Begint met ?filter[naam][sw]=Jan
nsw Begint niet met ?filter[naam][nsw]=Jan
ew Eindigt met ?filter[naam][ew]=sen
new Eindigt niet met ?filter[naam][new]=sen
ct Bevat ?filter[naam][ct]=an
nct Bevat niet ?filter[naam][nct]=an
in Zit in lijst ?filter[id][in]=1,2,3
nin Zit niet in lijst ?filter[id][nin]=4,5,6
bt Tussen ?filter[createdDate][bt]=2024-01-01,2024-12-31
nbt Niet tussen ?filter[createdDate][nbt]=2024-01-01,2024-12-31
em Is leeg ?filter[veld][em]=
nem Is niet leeg ?filter[veld][nem]=

Voorbeelden van uitgebreid filtergebruik
  1. Resultaten gelijk aan een specifieke datum

    ?filter[createdDate][eq]=2024-12-16 14:31:26
  2. Resultaten groter dan of gelijk aan een bepaalde datum

    ?filter[createdDate][gte]=2024-01-01
  3. Resultaten tussen twee datums

    ?filter[createdDate][bt]=2024-01-01,2024-12-31
  4. Resultaten binnen het eerste en derde kwartaal

    ?filter[createdDate][bt]=2024-01-01,2024-03-31;2024-07-01,2024-9-31
  5. Resultaten waarvan de naam begint met een specifieke tekst

    ?filter[naam][sw]=Jan
  6. Resultaten waarvan een veld leeg is

    ?filter[veld][em]=

Filteren op een Asset-veld

Om resultaten te filteren op gekoppelde assets, wordt de oude schrijfwijze gebruikt. Dit is handig als je bijvoorbeeld alle resultaten wilt zien waarbij een laptop met een specifieke ID is gekoppeld.

Schrijfwijze voor Asset-filtering
?filter[assets]=objecttype::id
Voorbeelden
  1. Resultaten waarbij een laptop met ID 42 is gekoppeld:

    ?filter[assets]=obj_laptops::42
  2. Resultaten waarbij meerdere laptops zijn gekoppeld:

    ?filter[assets]=obj_laptops::42;obj_laptops::43
  3. Resultaten met verschillende soorten assets:

    ?filter[assets]=obj_laptops::42;obj_telefoons::43

Met deze schrijfwijze kun je eenvoudig filteren op gekoppelde assets door het juiste objecttype en ID op te geven. Meerdere assets kunnen worden gescheiden door een puntkomma (;).


Backwards Compatibility

De oorspronkelijke filtervorm zonder operator blijft ondersteund. Dit betekent dat de volgende schrijfwijze nog steeds geldig is:

?filter[createdDate]=2024-12-16 14:31:26

Maar de nieuwe en uitgebreide schrijfwijze biedt meer flexibiliteit en wordt aanbevolen.

Inhoudsopgave