Standaard wordt in de suggest api (als ik het goed begrijp) gezocht in het veld ‘weergavenaam’. Dat betekent dat als ik ‘ams’ als q meegeef, ik alle straten in Amsterdam terugkrijg, terwijl ik alleen bijv. ‘Amstel’ en ‘Amstelkade’ wil hebben (20 resultaten moeten het zijn). Ik heb geprobeerd om een param ‘qf:straatnaam’ mee te geven, maar dan krijg ik geen resultaten meer. Is er een andere manier om het plaatsnaam gedeelte uit de weergavenaam uit te sluiten bij het zoeken?
Je kan het veld fq
met type:weg
gebruiken. Je krijgt dan:
https://api.pdok.nl/bzk/locatieserver/search/v3_1/suggest?q=ams&fq=type:weg
De default van het fq
veld is type:(gemeente OR woonplaats OR weg OR postcode OR adres)
. Dit is overigens ook terug te vinden in de openapi specificaties: https://api.pdok.nl/bzk/locatieserver/search/v3_1/ui/
Bedankt voor het meedenken! Ik heb de filters al op type: weg en gemeentenaam staan. De antwoorden die terugkomen met de gesuggereerde url hebben allemaal ams in de plaatsnaam (amstelveen, amsterdam).
De query die ik run is:
https://api.pdok.nl/bzk/locatieserver/search/v3_1/suggest?q=ams&fl=openbareruimte_id+straatnaam&start=0&fq=(gemeentenaam:(amsterdam OR weesp))AND (type:weg)
Dus er komen dan nog steeds teveel resultaten terug
Wellicht kan de free api hier uitkomst bieden. Daarin het je het df
veld waarmee je kan bepalen in welk veld er gezocht moet worden.
https://api.pdok.nl/bzk/locatieserver/search/v3_1/free?q=ams*&df=straatnaam&fl=weergavenaam
Je moet daarbij zelf wel een wildcard achter ams
zetten.
Hartelijk dank! dat is de oplossing.
Even voor de volledigheid: De gemeente Weesp bestaat al enige tijd niet meer, dat is Amsterdam geworden. Dus dit kun je inmiddels vervangen door alleen op gemeente Amsterdam te zoeken, want uit de locatieserver krijg je alleen de Woonplaats Weesp terug.
Goed om te weten. Dank!