DAKSRapport · Data API

API Guide til dataudtræk

Brug administratorudstedte API-tokens til sikkert at hente vare-, kasselinje- og rapportdata fra DAKSRapport. Guiden beskriver alle data-relaterede endpoints og viser konkrete eksempler.

Base URL
https://cloud.daks.nu

Alle eksempler i guiden bruger base URL'en ovenfor.

Autentificering

Alle data-endpoints kræver et API-token, som en DAKS administratore opretter for et firma.

Header format

Send tokenet i Authorization-headeren for hvert kald.

Authorization: <DIN_API_TOKEN>

Token-levetid

Tokens kan være tidsbegrænsede eller permanente. Permanenter bør undgås og holdes under 1 år i levetid.

  • Udløbne tokens returnerer HTTP 403.
  • Tilbagekaldte tokens afvises straks.
  • Rate-limit overskridelser returnerer HTTP 429.
  • Opbevar altid tokenet krypteret.

Typisk arbejdsflow

Brug nedenstående flow for at hente data til BI eller integrationer.

1

Hent registerliste

Find relevante terminalnumre i din terminal-opsætningen.

2

Hent stamdata

Læs varer, varegrupper og afdelinger via masterdata-endpoints.

3

Hent transaktioner

Brug receipt- og reconciliation-endpoints til salgsdata.

4

Automatisér

Planlæg kald og gem output i datavarehus eller BI-værktøj.

Data-endpoints

Alle endpoints kræver Authorization-headeren. Filter efter kategori efter behov.

GET /api/items/:register

Returnerer varer, afdelinger, grupper og parameterdata for det valgte register.

  • Path: register = terminalnummer
  • Respons: items[], departments[], groups[], summary
curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/items/1
GET /api/departments/:register

Hent vareafdelinger for et register.

  • Respons: departments[] med afdelingskoder og navne
curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/departments/1
GET /api/groups/:register

Hent varegrupper for et register.

  • Respons: groups[] med gruppe- og afdelingsrelationer
curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/groups/1
GET /api/cashiers/:register

Hent kassepersonale og tilknyttede koder for et register.

  • Respons: cashiers[] med navne og adgangskoder
curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/cashiers/1
GET /api/receipts/:register

Returnerer kvitteringsdata, inklusive stamdata og metadata for registeret.

  • Respons: receipts[], pending, summary
curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/receipts/1
GET /api/receipts/:cashregister/:date

Returnerer kvitteringslinjer fra salgsdatabasen for én kasse og én dato.

  • Parametre: :cashregister (kassenummer), :date i format yyyymmdd
  • Respons: register, date, receipts[] med cashier, datetime, cashRegister, paymentType, itemName, category, department, amount
curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/receipts/1/20260331
GET /api/receipts/:date

Returnerer kvitteringslinjer fra salgsdatabasen for alle kasser i virksomheden på én dato.

  • Parametre: :date i format yyyymmdd
  • Respons: date, receipts[] med cashier, datetime, cashRegister, paymentType, itemName, category, department, amount
curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/receipts/20260331
GET /api/reconciliation/dates

Liste over datoer hvor der findes afstemningsdata.

curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/reconciliation/dates
GET /api/reconciliation/:date

Hent afstemningsdata for en specifik dato (YYYY-MM-DD).

  • Respons: registers[], consolidation (totaler, kvitteringer, varer, aktive grupper)
curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/reconciliation/2024-06-30
GET /api/history/:companyName/:logName

Hent historiske CSV- eller logfiler, når virksomhed og lognavn er kendt.

curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/history/firmadb/saleslog.csv

Eksempler på requests og svar

Her er konkrete eksempler du kan bruge direkte i integrationer og tests.

Eksempel: Hent varer for register 1

curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/items/1
{
  "register": "1",
  "items": [
    {
      "itemcode": "1001",
      "itemname": "Burger Classic",
      "itemprice": "95,00"
    }
  ],
  "departments": [
    { "code": "01", "name": "Mad" }
  ],
  "groups": [
    { "code": "001", "name": "Burger" }
  ],
  "summary": {
    "totalItems": 438,
    "lastUpdatedAt": "2026-02-10T21:40:00.000Z"
  }
}

Eksempel: Hent afstemning med consolidation

curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/reconciliation/2026-02-10
{
  "date": "2026-02-10",
  "registers": [
    { "register": "1", "zReport": { "nettoSalg": 12450.5 } },
    { "register": "2", "zReport": { "nettoSalg": 9875.0 } }
  ],
  "consolidation": {
    "totalSales": 22325.5,
    "totalReceipts": 184,
    "averagePerReceipt": 121.33,
    "totalItems": 472,
    "itemsPerReceipt": 2.57,
    "uniqueItems": 96,
    "activeGroups": 8,
    "activeRegisters": 2,
    "activeDepartments": 0,
    "averageDailyEarned": 22325.5,
    "averageDailyReceipts": 184
  }
}

Eksempel: Hent kvitteringslinjer for en dato

curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/receipts/1/20260331
{
  "register": "1",
  "date": "20260331",
  "receipts": [
    {
      "cashier": "Mads",
      "datetime": "2026-03-31 12:08",
      "cashRegister": "Restaurant Vesterbro",
      "paymentType": "KORT",
      "itemName": "Burger Classic",
      "category": "Burger",
      "department": "Mad",
      "amount": 95
    },
    {
      "cashier": "Mads",
      "datetime": "2026-03-31 12:08",
      "cashRegister": "Restaurant Vesterbro",
      "paymentType": "KORT",
      "itemName": "Sodavand 0,5L",
      "category": "Drikkevarer",
      "department": "Bar",
      "amount": 30
    }
  ]
}

Eksempel: Hent kvitteringslinjer for alle kasser på en dato

curl -H "Authorization: <DIN_API_TOKEN>" \
  https://cloud.daks.nu/api/receipts/20260331
{
  "date": "20260331",
  "receipts": [
    {
      "cashier": "Mads",
      "datetime": "2026-03-31 12:08",
      "cashRegister": "Restaurant Vesterbro",
      "paymentType": "KORT",
      "itemName": "Burger Classic",
      "category": "Burger",
      "department": "Mad",
      "amount": 95
    },
    {
      "cashier": "Sofie",
      "datetime": "2026-03-31 12:15",
      "cashRegister": "Take Away Nørrebro",
      "paymentType": "KONTANT",
      "itemName": "Pommes Frites",
      "category": "Sides",
      "department": "Mad",
      "amount": 35
    }
  ]
}

Fejlhåndtering

API'et bruger standard HTTP-statuskoder.

401 Unauthorized

Token mangler eller er ikke sendt med request.

403 Forbidden

Token er udløbet, tilbagekaldt eller ikke gyldigt.

404 Not Found

Datafil eller register findes ikke.

Sikkerhed & drift

Anbefalinger til sikker brug af API-tokens.

  • Opbevar tokens i en secrets manager (ikke i kildekode).
  • Brug kortest mulige levetid og roter tokens regelmæssigt.
  • Log alle kald server-side for revision og incident-response.
  • Tilbagekald straks tokens, der mistænkes kompromitteret.