Minder velden ontvangenΒΆ

Met de ?_fields= parameter wordt de grootte van de resultaten ingeperkt tot enkel de relevante velden die de client nodig heeft. Dit geeft betere performance, voor zowel de client als server. Er zijn een aantal notatievormen mogelijk:

Parameter

Werking

?_fields=veld1,veld2

Alleen opgegeven velden worden teruggegeven.

?_fields=-veld1,-veld2

De uitgesloten velden worden NIET teruggegeven.

?_fields=veld1,veld2.subveld

Alleen opgegeven velden van relaties worden terugegeven.

?_fields=veld1,-veld2.subveld

Alleen veld1, maar alles van veld2 behalve het subveld.

Wanneer je alleen specifieke velden opgeeft, wordt de rest weggelaten:

curl 'https://api.data.amsterdam.nl/v1/fietspaaltjes/fietspaaltjes/?_fields=geometry,soortPaaltje'

Met het min-teken wordt aangegeven dat alle velden worden teruggegeven, met uitzondering van het opgegeven veld:

curl 'https://api.data.amsterdam.nl/v1/fietspaaltjes/fietspaaltjes/?_fields=-area,-noodzaak'

Notitie

In plaats van _fields wordt ook fields ondersteund, maar _fields heeft de voorkeur.

Notitie

Het is niet mogelijk om velden tegelijk in te sluiten en uit te sluiten op hetzelfde object/niveau.

Wanneer er relaties worden teruggegeven (zowel geneste structuren, als ingesloten relaties met ?_expandScope), werkt de ?_fields= logica hiervoor ook:

curl 'https://api.data.amsterdam.nl/v1/bag/woonplaatsen/?_expandScope=heeftDossier.heeftBrondocumenten&_fields=naam,heeftDossier,heeftDossier.heeftBrondocumenten.documentnummer'

Per niveau kunnen velden worden ingesloten en uitgesloten. Het opgeven van een geneste uitsluiting betekend dat het hoofdobject zelf wel ingesloten wordt.