Priser

API-nycklar. Hanterade i admin.

Skapa nycklar, sätt rättigheter per resurs, begränsa till IP-adresser, rotera med överlappning och återkalla direkt. Ingen supportticket, inget delat lösenord i en chatt.

Alla nycklar, alla miljöer.

Översikt i admin

Nyckeln visas aldrig i klartext efter att den skapats — bara prefixet, så att en nyckel i en logg går att identifiera utan att avslöjas.

Skapa nyckel

Rättigheter per resurs, inte allt eller inget.

Visas en gång hdl_live_7Kq2vR9pLm4XbTn8sWzQ1cYhE6… Kopiera

Hemligheten visas direkt efter att nyckeln skapats och sparas hashad. Tappas den bort roterar du nyckeln istället för att återskapa den.

Rotation utan driftstopp.

Två nycklar under övergången

01

Starta rotation

En ny hemlighet skapas för samma nyckel och samma rättigheter. Den gamla fortsätter fungera under den tid du väljer.

02

Byt i integrationen

Ni lägger in den nya hemligheten när det passar. Loggen visar vilken av de två som används per anrop.

03

Stäng den gamla

När all trafik gått över stängs den gamla hemligheten, direkt eller automatiskt när överlappningen löper ut.

Nycklar går också att sköta via API.

Endpoints och exempel

Endpointerna kräver en nyckel med rättigheten auth:rw, som bara kan skapas av en administratör i admin. En nyckel kan aldrig ge sig själv fler rättigheter än den redan har.

GET /v2/auth/keys Lista nycklar och rättigheter
POST /v2/auth/keys Skapa nyckel, hemlighet i svaret
POST /v2/auth/keys/{id}:rotate Rotera med överlappning
POST /v2/auth/keys/{id}/scopes Ändra rättigheter
DEL /v2/auth/keys/{id} Återkalla direkt
GET /v2/auth/keys/{id}/usage Anrop, fel och svarstider
keys.ts
// Skapa en nyckel för en ny integration
const key = await hdl.auth.keys.create({
  name: 'Fortnox-sync',
  environment: 'live',
  scopes: ['order:rw', 'article:rw', 'stock:r'],
  expiresAt: '2027-01-14',
  ipAllowlist: ['81.230.44.0/24'],
  rateLimit: { perMinute: 600 },
});

// key.secret finns bara i det här svaret
// { id, prefix: 'hdl_live_7Kq2', secret: 'hdl_live_…' }

// Rotera med 14 dagars överlappning
await hdl.auth.keys.rotate(key.id, { overlapDays: 14 });
Uppföljning

Vad nyckeln faktiskt gör.

Säkerhet

Inbyggda spärrar

Hemligheten visas en gång och lagras hashad

Rättigheter per resurs, läs och skriv separat

IP-begränsning och anropstak per nyckel

Test och produktion har separata nycklar

Kontroll

När något ska stängas

Återkalla direkt, anropen slutar gälla omedelbart

Utgångsdatum med påminnelse innan det passeras

Signeringshemligheter för webhooks roteras separat

Varje ändring hamnar i aktivitetsloggen

Frågor om nycklar.

Vanliga frågor

Vad händer om vi tappar hemligheten?+

Den kan inte visas igen. Du roterar nyckeln istället, vilket ger en ny hemlighet med samma namn och rättigheter — och en överlappning så att integrationen kan bytas i lugn och ro.

Kan en byrå få en egen nyckel?+

Ja. Ge nyckeln bara de rättigheter uppdraget kräver, sätt utgångsdatum och begränsa till deras IP-adresser. Nyckeln kan återkallas utan att röra era andra integrationer.

Är test- och produktionsnycklar separata?+

Ja. Prefixet visar miljön och en testnyckel kan aldrig nå produktionsdata.

Hur ser vi om en gammal nyckel fortfarande används?+

Listan visar senaste anrop per nyckel, och under en rotation visas antal anrop per hemlighet, så ni ser när det är säkert att stänga den gamla.

Vad händer vid anropstaket?+

Anropen svarar med 429 och ett Retry-After-huvud. Taket sätts per nyckel så att en integration inte kan tränga ut de andra.

Går det att signera webhooks?+

Ja. Varje webhook-endpoint har en egen signeringshemlighet som roteras separat från API-nycklarna.

Teknisk demo

Gå igenom er nyckelhantering.

Vi tittar på vilka integrationer som behöver vilka rättigheter, och sätter upp rotation innan ni går live.