Integrationsguide
.NET / C#-integration
Delivery Zone API är en enkel JSON-ändpunkt över HTTP. Anropa den via HttpClient i valfri .NET-applikation — såsom ASP.NET Core, Azure Functions eller en bakgrundstjänst.
När API:et ska anropas
Anropa API:et från din ASP.NET-kontroller eller tjänstelager innan ordern bekräftas. Exponera aldrig API-nyckeln och dirigera inte anropet genom klienten.
Viktigt: håll API-nycklar på serversidan: Spara API-nyckeln i miljövariabler eller i
appsettings.json (via Secret Manager). Hårdkoda den aldrig och exponera den inte i klientkod.
Kodexempel
// .NET / C# — server-side, inject via IHttpClientFactory
var payload = new {
destinationPostcode = postcode,
basketValueCents = basketCents,
};
var response = await httpClient.PostAsJsonAsync(
"https://api.deliveryzone.fi/api/v1/delivery/check",
payload
);
var result = await response.Content.ReadFromJsonAsync<DeliveryCheckResult>();
if (!result.CanDeliver) {
// Reject order: result.ReasonCode
}
Felhantering
När canDeliver är false (eller null) innehåller svaret ett reasonCode-fält. Visa detta för kunden:
NOT_DELIVERABLE— postnumret ligger utanför dina leveranszoner eller känns inte igen (API:et använder avsiktligt en generell kod för båda för att skydda zongränser)MINIMUM_ORDER_NOT_MET— varukorgens värde understiger zonens minsta ordervärdeBASKET_VALUE_REQUIRED— ett varukorgsvärde krävs för att utvärdera denna destinations regel för minsta order eller fri frakt
Hantera alltid HTTP-fel (5xx, timeout) kontrollerat. Om API:et inte kan nås, använd felsäkert läge — avvisa antingen ordern eller tillåt manuell granskning.
Checklista för implementation
- Injicera HttpClient via beroendeinjektion (IHttpClientFactory)
- Spara API-nyckeln i miljövariabler eller user secrets
- Hantera HTTP-fel och timeouts med try/catch
- Testa mot en icke-produktionszon först
- Bekräfta avvisningsbeteendet i din stagingmiljö
Redo att lägga till postnummervalidering?
Gratis plan. Inget kreditkort. Riktig hjälp med start.