WozApi.Client
1.0.2
dotnet add package WozApi.Client --version 1.0.2
NuGet\Install-Package WozApi.Client -Version 1.0.2
<PackageReference Include="WozApi.Client" Version="1.0.2" />
<PackageVersion Include="WozApi.Client" Version="1.0.2" />
<PackageReference Include="WozApi.Client" />
paket add WozApi.Client --version 1.0.2
#r "nuget: WozApi.Client, 1.0.2"
#:package WozApi.Client@1.0.2
#addin nuget:?package=WozApi.Client&version=1.0.2
#tool nuget:?package=WozApi.Client&version=1.0.2
WozApi voor .NET
WOZ-waarde, BAG-adresgegevens en kadastrale percelen van elk Nederlands adres via 1 endpoint. Dunne wrapper rond de WOZ API van woz-api.nl, zonder afhankelijkheden buiten de BCL.
dotnet add package WozApi.Client
Liever zonder pakketverwijzing? WozApiClient.cs staat op zichzelf en kun je ook los in je
project kopieren.
Gebruik
De client neemt bewust een HttpClient mee in plaats van er zelf een te maken: een eigen
HttpClient per instantie is de klassieke bron van socket-uitputting in langlopende processen.
Gebruik in ASP.NET dus IHttpClientFactory.
using WozApi.Client;
var client = new WozApiClient(httpClient, "jouw-api-key");
try
{
using var adres = await client.AdresAsync("Spuistraat 36C, 1012 TT Amsterdam");
foreach (var woz in adres.RootElement.GetProperty("woz").EnumerateArray())
{
Console.WriteLine($"{woz.GetProperty("peildatum").GetString()}: " +
$"{woz.GetProperty("vastgesteldeWaarde").GetInt32()}");
}
}
catch (WozApiException fout)
{
Console.Error.WriteLine($"{fout.Status}: {fout.Bericht}");
}
Registratie via IHttpClientFactory:
builder.Services.AddHttpClient<WozApiClient>()
.AddTypedClient((http, sp) => new WozApiClient(http, builder.Configuration["WozApi:ApiKey"]!));
Perceelgrenzen als GeoJSON meesturen:
using var adres = await client.AdresAsync("Spuistraat 36C, 1012 TT Amsterdam", geometrie: true);
Methoden
| Methode | Endpoint |
|---|---|
AdresAsync(adres, geometrie) |
GET /Api/Adres |
NummeraanduidingAsync(id, geometrie) |
GET /Api/Nummeraanduiding/{id} |
AdresseerbaarObjectAsync(id, geometrie) |
GET /Api/AdresseerbaarObject/{id} |
CreditsAsync() |
GET /Api/Credits |
Alle methoden geven een JsonDocument terug, die je zelf disposet (using). De client typeert
de respons bewust niet: de Nederlandse veldnamen uit de API blijven zo zichtbaar en je hoeft
niet mee te migreren als er een veld bijkomt.
Fouten
Een niet-2xx-respons geeft een WozApiException met Status, Bericht en de ruwe Body.
Het bericht komt uit de servermelding (fout, detail, message of title) en valt terug op
de HTTP-reden als de body geen JSON is.
Credits
Een gratis account op woz-api.nl geeft 10 credits. 1 credit is 1 uniek
adres; hetzelfde adres binnen 7 dagen opnieuw opvragen kost geen extra credit. Het resterende
saldo staat in de responseheader X-Credits-Remaining en is ook op te vragen met
CreditsAsync().
Licentie
MIT.
Wat het kost
EUR 0,59 per credit bij 100 credits, aflopend tot EUR 0,35 bij 1.000 credits, excl. btw. Geen abonnement en geen minimale afname, dus een maand zonder opvragingen kost niets. 1 credit is 1 uniek adres; hetzelfde adres binnen 7 dagen opnieuw opvragen kost geen extra credit. Een gratis account geeft 10 credits. De staffel staat op woz-api.nl/woz-api-prijs.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.